* 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
* Create media library component
* Use media library component instead of the MediaUpload from the @wordpress/media-utils
* Remove UploadFilesMenuItemm from the DownloadsMenu until we solve the insecure file upload using the wp/v2/media endpoint
* Remove the @woocommerce/components/MediaUploader from downloads block until we solve the insecure file upload using the wp/v2/media endpoint
* Remove the FormFileUpload from EditDownloadsModal until we solve the insecure file upload using the wp/v2/media endpoint
* Add changelog file
* Fix manage limits for downloads in a single variant are not working
* Fix invalid download id when saving after editing one download file
* Add changelog file
* enable enter to select
* Add changefile(s) from automation for the following project(s): @woocommerce/components
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add buy button section
* Enable external product support into the product block editor
* Hide buy button section when product type is not external
* Remove BaseControl from TextControl since it's not required anymore, InputControl takes care of that now
* Add type and suffix support to the product-text-field block
* Add the placeholder to the external url input and remove required constraint to the buy button text
* Set the url icon link type to external
* Fix input border to be red when invalida now that base control is not present twice
* Set the min height to 36px to match others non InputControls components height
* Extends required constrain to also support a custom error message
* Extends the product-text-field validation system
* Add product-text-field documentation
* Add changelog files
* Fix php linter error
* Fix compilation error
* Fix linter errors
* Move variations table row to its own component
* Add alert icon to the left of the variation row
* Render a tag when the variation option is not present in the product variable attributes
* Only shows the tooltip when the variation option is not present in the product variable attributes
* Add changelog file
* Fix linter errors
* fix: fixed all instances of translator lint rule violations
* Add changefile(s) from automation for the following project(s): @woocommerce/eslint-plugin, @woocommerce/components, woocommerce
* fix i18n lint violations in @woo/components
* fix all i18n lint rule violations in @woo/product-editor
* Add changefile(s) from automation for the following project(s): @woocommerce/product-editor, @woocommerce/eslint-plugin, @woocommerce/components, woocommerce
* empty commit to trigger CI
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove fixed height to the variations table and add per row skeletong when loading
* Add changelog file
* Add last variations instead of the current per page var given that there it is not accessible anymore
* Use ' instead of backspace for escaping
* Update tests
* Update dead link
* Update test case title
* Add changelog
* Fix typo in changelog
* Escape tab and carriage return chars too
---------
Co-authored-by: Anurag Bhandari <anurag@automattic.com>
* Add disable conditions functionality to back-end
* Evaluate _templateBlockDisableConditions in registerWooBlockType
* Add 'disabled' support for number, pricing, and text
* Add disabled support for checkbox
* Add disabled for taxonomy block
* Add changelogs
* Update documentation
* Add unit tests
* Augment attribute with disabled in back-end
* Fix disabled styling
* Remove disabled from toggle since it's being added for all blocks
* Improve CSS for disabled fields
* Only add disabled attribute when it's not added on the block json and refactor
* Allow adding disable conditions in the constructor
* Fix lint issue
* Fix test
* Add disableConditions to dependencies
* We display the number of selected items, e.g., '5 selected'
* We display a number of all existing items next to the button, e.g., "Select all (25)".
* When only some items are selected on the page, we show an additional button that says "Select page (X)" where X stands for the number of rows on the page. Clicking it selects all rows on the page.
* Clicking "Select all" selects all existing items
* Add changelog file
* Add tracking events
* Saving progress on variations table
* Manage tracking events and error handling
* Hide edition features when at least one variation is selected
* Fix linter errors
* Resolve rebase conflicts
* Remove use selection hook since is not needed anymore
* Fix filter items vertical alignment
* Add changelog files
* Fix inconsistent loading and variations state
* Do not show EmptyTableState when the product has variations but the filter get empty list
* Invalidate cache state before generating variations
* Fix select all after filtering variations
* Remove delete variations from the selection list
* Retreive the product after generating variations
* Fix linter
* Invalidate variations cache after generating variations
* Add 2 additional steps between the loader steps
* Support onChange callback
* Add loader progress transition
* Add smooth transition story
* Set the initial percentage to 5 to make the transition smoother
* Add changefile(s) from automation for the following project(s): @woocommerce/onboarding, woocommerce
* Add smooth-transition class to the progressbar
* Fix lint
* Update AssembleHubLoader
* Fix e2e
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Copy WelcomeGuide from gutenberg
* Remove CSS copied from guide component since it's not influencing the product Welcome Guide and it's interfering with the block editor welcome guide
* Fix issue with box-sizing
* Fix lint issues
* Show guide only when modal is open
* Add changelog
* Remove template and fix issue with component not re-rendering
* Add comment
* Add additional changelog
* Rename component
* Create product variations filter component
* Add slug to the product and variation attributes
This is needed to be able to filter variations by specific attribute slugs
* Add support to filter variations by many attribute options
* Integrate attribute options filter in variations table
* Fix rebase conflicts
* Set initial filter values
* Improve intial filter values and cache invalidation
* Add changelog files
* Fix linter errors
* Fix unit tests
* Change the min amount of options to show the search input
* Fix invalid cache key generation for the datastore
* Fix unit tests
* Fix linter errors
* Fix js tests
* Add terms pagination for varition filters
* Load terms on demand plus pagination
* Show selected option names as the dropdown button toggle text
* Fix invalida state when reset and on close the popover
* Revert adding selected options as part of the dropdown toggle text
---------
Co-authored-by: Fernando Marichal <ultimoround@gmail.com>