-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Devcon 2025 headless meets pages #6777
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Devcon 2025 headless meets pages #6777
Conversation
… the scope group ID
…ries and vocabularies
…erting the cases of category and vocabulary with and without scope, and also a missing reference
…s asserting class reference and collection item types, with and without scope, as well as the missing reference
… by using the fragment entry link user to create the usage
…of type itemSelector
…rting items, with and without scope, with and without template, as well as the missing reference
…of the contextual menus
…of type navigationMenuSelector
…values asserting all the navigation menu types, with and without scope, as well as the missing reference
…ass name in the item external reference because of redundancy
…lette and color picker
…lette and color picker
…of the types colorPalette and colorPicker
…guration field values
…of the types url and videoSelector
…use of never-configured fragments when expecting a configuration JSONObject
…ve it from the parent children list
… the setter methods, and by removing the invocation to the setType method too, as the type could be given by the class that is being instanciating
…g with the SitePage. The Batch Engine does not support the nested fields annotated with NestedFields yet, so we could use the factory here to call the same code in the end
…nt experiences) if the import is being executed using Batch
Summary of ChangesHello @lfbesada, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request introduces substantial improvements to the headless site administration features, focusing on greater flexibility in page element and fragment configurations. It includes new utility classes and extensive modifications to DTO converters to accommodate a broader range of content types and layout options. Additionally, it incorporates several fixes and adjustments to internal processes such as asset list usage tracking, layout structure updates, and object entry validation, aiming to enhance the robustness and functionality of the platform's headless capabilities. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request introduces a significant expansion of Liferay's headless page and fragment capabilities, focusing on new configuration field types and improving import/export robustness. Key changes include adding support for numerous new fragment field types (like category, collection, color, item, navigation, URL, and video), which involved substantial updates to DTO converters and importer utilities. The code has been refactored to be cleaner and more modern, for instance by removing anonymous inner classes in DTO converters. The changes also improve API robustness by returning empty collections instead of null and gracefully handling missing references. Additionally, the PR contains important bug fixes and is well-supported by extensive new integration tests. Overall, this is a high-quality contribution that greatly enhances the platform's features. I have one suggestion for code simplification.
No description provided.