* Load the product template from the product meta data
* Save product template id as part of the product meta data
* Add changelog file
* Fix linter error
* Create a relation between the product type and the product block template
* Add 'patterns' to name the kind of products that can be created for a specific template
* Resolve template using its id as a template query param
* Rename ProductEditPattern to ProductTemplate
* Rename get_patterns hook to woocommerce_product_editor_get_product_templates
* Return the list of templates to the client
* Set layout template events as array
* Register the layout template based on the product template or the post type in case of product variations
* Registering non supported product types
* Create and register the woocommerce/product-details-section-description block
* Add the product type to the section description
* Create product type selector
* Fix menu item style
* Highlight selected menu item
* Set the selected product template
* Set product template title to lowercase in the content description
* Rename blocks by blockTemplates under the AbstractBlockTemplate class
* Rename to woocommerce_product_editor_product_templates filter
* Remove product_template_ prefix from the supported_product_types map
* Rename get_formatted to to_JSON and convert the props to client side like
* Refactor get_product_templates
* Fix icon resolution
* Add a confirmation modal for unsupported product templates
* Add changelog files
* Remove product types using for testing
* Fix redirection when changing to a non supported product template
* Set the change button state to busy when it is saving the product
* Fix php linter errors
* Fix rebase conflict
* Move ProductTemplate to Automattic\WooCommerce\Admin\Features\ProductBlockEditor namespace
* Add the to_json definition to the BlockTemplateInterface
* Create default product template by custom product type if it does not have a template associated yet
* Fix some comments and product template creation validation
* Add support to load the product template icon from an external resource
* Fix php linter
* Fix the changelog description
* Create BlockSlotFill component
* Add section-actions BlockSlot to the section-block
* Fill the section actions BlockSlot from the ProductList action buttons
* Add changelog file
* Use the BlockSlot/BlockFill to define the description of a section-block
* Pick the closest ancestor that contains the Slot
* Extract 'downloadable product' class and include it for API endpoint calls as well
* Re-add mediauploader component
* Restore UploadFilesMenuItem
* Provide additionalData type
* Restore MediaUploader component
* Lint PHP
* Add changelogs
* Update pnpm-lock
* Revert "Update pnpm-lock"
This reverts commit b61ee5813aa0b7b8b1ea8e71423bedbb6f876139.
* Revert pnpm-lock.yaml
* Fix unit tests
* Use WC_ABSPATH
* Remove use of deprecated conditional block
* Remove use of deprecated context usage
* Remove use of deprecated positoin on Dropdown in favour of popoverProps
* Add changelogs
* Remove unused import
* Fix lint errors
* Remove popoverProps.position with popoverProps.placement
* Update missed items replacing position to placement
* Fix lint error
* Fix placement position
* Update changelogs
* Add re-order modal
* Consolidate some of the styling and components
* Add changelog
* Only show reorder when products are added, and remove 'x' from reorder modal
Similarly to `build:project`, a new `watch:build:project`
script will watch individual projects for changes. The
`watch:build` script has been updated so that it does
a deep watch in the same vein as `build`. We have also
hooked up tool-level watching for faster performance.
When using a preset we need to keep in mind that the transformation
paths are relative to the preset, not the consuming package. We get
around this by using `<rootDir>` in the transform paths. However,
doing this means fixing the root directory for all of the jest tests.
This keeps the tests working in the same way but lets us fix the
preset too.
Having an explicit `"files"` definition will allow us to fingerprint
dependencies in `wireit` more granularly. This avoids problems
that can be caused by different source files and directories that
trigger a rebuild in a dependee before a dependent finishes.
This makes some adjustments for consistency in style as well as making
improvements to usability and performance. It also updates all of the
pinned hashes to pull in any fixes that have been made.
We're adding this to _every_ package since they have their own
configuration and scripts to run. This also keeps them
isolated so that they can operate independently.
Once a feature plugin has been merged it is no longer necessary for it
to be activated. In some cases, having it activated can actually
lead to problems. This will automatically disable any packages
that we have marked as "merged".
* Create section description block
* Add changelog files
* Change section description block to receive its content from the attributes instead of innerBlocks
* Show feedback bar only once
* Add changelog
* Add isFeedbackBarHidden
* rename showFeedbackBarOnce
---------
Co-authored-by: Fernando Marichal <fernandomarichal@fernandos-mbp.lan>
* When the user clicks the search field, we immediately display the list of all existing products. It is sorted alphabetically. Clicking an item closes the search and adds the product to the list.
* Fix linter errors
* Create useDraggable hook
* Add dragging to sort products in the modal
* Fix product row padding
* Improve product petching
* Add changelog file
* When the user selects a grouped product type, we show an additional Products in this group section in the General tab.
* When the user selects a grouped product type, we hide the Pricing and Shipping tabs.
* When empty, the grouped products card has an empty state with an illustration
* When the user clicks Add products, we show a modal
* When the user clicks the search field, we immediately display the list of all existing products. It is sorted alphabetically. Clicking an item closes the search and adds the product to the list.
* Add remove button to the product list
* When the user clicks Add, we close the modal and display the list of added products in the product form
* Clicking the product name will open it in the editing view in a new tab
* Clicking the arrow button will open the product's page in a new tab
* Prevent adding already added products
* If the name or SKU extends beyond this width, we truncate the text
* Add changelog files
* Fix linter errors