* 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
* 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
* 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
* 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>
* Create initial version of TextControl
* Extract 'label' component for reusability
* Reduce gap
* Add label component to number control and add tooltip and required attributes
* Add changelog
* Remove unused CSS
* Add tooltip to type definitions
* Update doc for number block
* Add text block documentation
* Update parameters definition
* Set label to 'mandatory' in TypeScript
* Set label to mandatory
* Organize to alphabetical order
* Refactor required validation to be more consistent with name field
* Generify documentation
* Use createInterpolateElement for label with required indicator
* Invalidate variations upon generation and fix formatted name
* Add aditional invalidates to keep cache up to date
* Update formatted name to always return attribute term name list
* Move empty-variations-image to the images folder so it can be used in other components
* Create TableEmptyState component
* Add TableEmptyState to the Variations table component
* Add changelog file
* Fix linter error
* Show notice when price is empty
* Add changelog
* Add variation check
* Allow multiple errors
* Show unique errors
* Change error text
* Rename wpError to wpErrors
* Show single error
* Add error type
* Refactor catch
* Replace hidden icon by seen icon
* The 'visible' icon is only shown when the Show in product details box in the variation option is checked
* The tooltip displayed when the user hovers over the 'hidden' icon is updated to: Visible in product details
* On hover, the cursor changes to help
* Add changelog file
* Create product page skeleton
* Load skeleton in product and variation pages
* Let each page to define own loading/skeleton when the router is resolving the page.
* Add changelog files
* Fix linter error
* Fix unit test
* Invalidate resolution for paginated variations after removing any from the single variation page
* Add changelog file
* Invalidate resolution also for getProductVariationsTotalCount
* Add @woocommerce/number to @woocommerce/components
* Create a component for checkbox and use it on the block
* Create a component for number and use it on the block
* Add changelogs
* Remove scss import
* Rename Numbercontrol prop
* Expose useProductEntityProp
* Move components to product-editor package and fix UI bug created in checkbox component
* Revert unnecessary changes in components and update changelogs
* Revert changes in use-number-input-props
* Fix issue in checkbox
* Revert css change
* Improve has_price filter so it can matches when the price record does not exist or it's empty/null
* Get the exact variation ids of those ones that do not have price
* Add changelog files
* Fix linter errors
* Create ManageDownloadLimitsModal component
* Integrate ManageDownloadLimitsModal with product downloads block
* Add changelog file
* When there's at least 1 file uploaded, we add a Manage limits button to the Downloads section heading
* Both fields only accept numbers
* Add suffix to each input
* Add integer validation message
* Fix validation to support -1 and 0 values
* Add virtual section to the product variation template
* Add changelog file
* Let the toogle block to use inverted value to be checked
* Fix virtual toggle to be inverted
* Add changelog file
* Add support to downloads block to use the context postType
* Register the downloads block into the ProductVariationTemplate
* Add changelog files
* Fix compilation error
* Fix download block init function
* Add variation switcher hook for easier use across multiple components
* Add unregister function for validation
* Add changelogs
* Remove stray console
* Add unRegisterValidator function
* Add edit button to each variation to redirect to the single variation page
* Add changelog file
* Fix blocks and plugin registration
* Add router redirection
* Fix css conflicts with the prev experience
* Fix linter errors
* Add changelog file
* Create downloads menu component
* Add the menu to the downloads section
* Create upload-files-menu-item component
* Add upload-files-menu-item to the downloads menu
* Create media-library-menu-item component
* Fix media library menu item zindex conflict with the media upload modal
* Create insert-url-menu-item component
* Add insert-url-menu-item to the downloads menu
* Add support for digital product when product-virtual-downloadable feature is enabled
* Add changelog files
* Remove non needed style
* Fix linter errors
* Fix redirection logic
* Keep drop zone on to of the table
* Avoid duplicate files
* Stringify download ids before persist them
* Fix summary block property value under SimpleProductTemplate
* Fix linter error
* Create DeleteVariationMenuItem to be added to the Header's MoreMenu
* Move registration menu item fills to each product/variation page
* Export RemoveConfirmationModal from the product editor package
* Request for variation deletion
* Show notice when deleting variation
* Redirect to parent product page after deleting the variation
* Add tracking event
* Manage isRemoving state under RemoveConfirmationModal
* Add changelog files
* Fix linter error
* Fix delete variation modal title
* Add tracking events
* Use the right prop to get the variation name
* Add name and parent_id to the ProductVariation type definition
* Add changelog file
* Feedback modal should get the correct product id when editing a variation
* Fix rebase conflicts
* Fix unit test
* Add variation switcher in footer for variation page
* Add productId to make sure template is updated correctly
* Don't show bar when less then 2 variations.
* Add class for when page is scrolled to bottom
* Add changelogs
* Add tracks
* Fix lint error
* Fix css lint issues