-
Notifications
You must be signed in to change notification settings - Fork 215
Feat/vendor product form manager #3052
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
base: feat/product-form-manager
Are you sure you want to change the base?
Feat/vendor product form manager #3052
Conversation
Introduces a new React-powered product form manager with dynamic field rendering and section support. Updates PHP asset registration and enqueuing to load the new form manager scripts and styles, and exposes product form sections and fields to the frontend. Adds new TypeScript components, types, and styles for the form manager, and updates Webpack entries accordingly. Also adds a hook to inject the React mount point in the product content area.
Introduces a dedicated layout.ts file to define the product form layout structure, replacing dynamic layout generation in ProductForm.tsx. Updates field rendering to sanitize HTML, adds support for 'rich_text' field type, and improves select option handling. Also updates CSS for better card and layout styling, and adjusts PHP field definitions to use 'Product Title' and 'rich_text' types for descriptions.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Introduces a 'tooltip' property to product form fields in both PHP and TypeScript, including getter/setter methods and data serialization. Updates field titles and descriptions for clarity, and ensures tooltips are available for frontend rendering.
Replaces index.css with index.scss for the ProductForm manager, updates class names and imports to use the new SCSS file, and scopes styles under the new .dokan-product-form-manager class for better maintainability.
…ptions for sections
- Introduced left icon property in form field configuration. - Implemented left icon handling in the ProductForm component. - Added TextWithAddon component for rendering fields with icons. - Updated styles for form manager price input.
- Introduced CREATE_SCHEDULE_FOR_DISCOUNT constant in Elements class. - Added a new checkbox field for creating a discount schedule in the product form. - Implemented DateTimePickerEdit component for date selection. - Integrated TreeSelectPicker for product categories selection. - Updated layout configuration to include new fields and improve structure. - Enhanced styling for product image and gallery sections.
Introduces a new 'Brands' select field to the product form in both backend (PHP) and frontend (React). Updates the purchase note field to use a card layout with improved description handling and styles. Also adds support for radio fields and refines select field handling in the field renderer.
Introduced FormData.php to provide product brands and tags for dropdowns. Updated Init.php to use FormData for populating brand and tag options, and added value callbacks for image and gallery fields. Refactored getFieldConfig in FieldRenderer to remove section dependency and improved value handling. Minor layout update to make a card non-collapsible.
All Submissions:
Changes proposed in this Pull Request:
Related Pull Request(s)
Closes
How to test the changes in this Pull Request:
Changelog entry
Title
Detailed Description of the pull request. What was previous behaviour
and what will be changed in this PR.
Before Changes
Describe the issue before changes with screenshots(s).
After Changes
Describe the issue after changes with screenshot(s).
Feature Video (optional)
Link of detailed video if this PR is for a feature.
PR Self Review Checklist:
FOR PR REVIEWER ONLY: