* Add useParentMetadata hook
* Move functionality to existing useProductMetadata hook
* Update changelog
* Remove deleted hook from index
* Update useProductMetadata API and unit tests
* Initial changes to fix the toolbar in the iframe editor
* Moved toolbar to header and respect fixedToolbar preference
* Only render Gutenberg toolbar with specific version
* Update GB version
* Fix build issue
* Add fixed toolbar menu
* Remove unused import
* Add changelogs
* Fix lint errors
* Fix PHP lint error
* Add Include downloads to show/hide the Downloads section
* Fix margin top for none first child nested sections
* Add changelog files
* Fix php linter errors
* Track (props: ids, ids)
* Track ( props: ( template id ), : ( if unsupported or not ) )
* Track ( props: ( template id ) )
* Track ( props: : | , same as product value )
* Fix advice card to support persistent dismiss via a preference id or non persistent one using the local state
* Track ( props: : | , same as product value )
* Track ( props: : | , same as product value )
* Track ( props: : | , same as product value )
* Track ( props: : | , same as product value )
* Add changelog file
* Fix linter error
* Track linked_products_product_add when adding a new product to the linked product list
* There's a star button on the right side of the name field. It's centered vertically.
* Clicking it marks the product as featured
* When hovered, we show a tooltip that reads: Mark as featured
* When clicked, the icon changes from star-outline to star-filled. Clicking it again reverts to the original icon.
* Add changelog file
* Change the tooltip text depending on the featured flag
* store is loading when chossing products for me
* disable choose btn when it's loading
* changelog
* restore is busy animation styles when disables
* restore changes
* fiox rebase issue
* restore disabling button
* add fallbackToRandomProducts option to getRelatedProducts()
* fallback to random when there isn't related products
* changelog
* update and tweak doc
* introduce POSTS_NUMBER_TO_PICK const
This bumps the version to 0.14.3 so that we can take advantage of some
upstream improvements. It also makes some changes to the way our
builds and watches work to minimize the number of unnecessary
Node processes involved in the execution.
* handle section actions styles from section block
* rename DownloadBlockEdit
* remove unneeded wrap el from linked product list
* put Choose an Image button in the actions section
* move attribute control to block actions section
* changelog
* remove unused clientId prop
* tweak Image button
* remove `should show subtitle and "Add new" button` test
This adds support for using the `pnpm utils ci-jobs` command in our `ci.yml` file. One of the bigger benefits to this change too is that we're now distributing a bundled version of the utils tool. This lets us run it without actually having to install the repo and will let us speed up any workflows that currently do.
* Remove variable-product-template from the product template list
* Add changelog files
* Redirect the variable product to the new experience now that is does not have a product template anymore
* Fix php linter error
* Move ProductTemplate type
* useProductTemplate
* Use useProductTemplate
* Use useLayoutTemplate
* Handle if window.productBlockEditorSettings doesn't exist
* Unit tests for useProductTemplate
* Fix fallback in useProductTemplate
* Remove layoutTemplates from ProductEditorSettings on client
* Fallback to simple-product layout template
* Unit test to verify the standard product template is used if product type is variable
* Use standard product template if product type is variable
* Unit test to verify product type is used to match if product template id matches a template with a different product type
* Make sure product type matches on product template, unless variable, in which case we match simple
* Remove layoutTemplates and layoutTemplateEvents from global
* Changelog
* Changelog
* Import types only
* pick clientId by using hook
* do not pass clientId to BlockFill component
* pick clientId from core hook
* introduce SectionActions slot component
* expose SectionActions slot component
* fix ts issue
* changelog
* fix closing component bug
* do not pass clientId to the BlockSlot instance
* revert changes in the description block
* fix name for the section actions component
* export section actions properly
* add a warning when the slot DOM doesn't exist
* define the name explicitely
* export SectionActions component name
* import SectionActions from product list cmp
* rename ProductListBlockEdit component fn
* implement `Choose products for me` button
* clean
* selectSearchedProductDispatcher accepts products array
* rename component with LinkedProductListBlockEdit
* pull and set linked products from choose button
* changelog
* rollback minor changes
* fix typo in fn
* pull the related product from core entities
* minor
* Redirect supported product types to the new experience based on the product template associated to it
* Add changelog file
* Fix linter error
* Redirect using the product type first and then the associated product template
* Set the product template id also for unsupported product templates
* Add changelog file
* Remove supported_product_types from the RedirectionController since the product_templates is used instead
* Fix php linter error
* Add showStepButtons attribute for Number block and component
* Use native step buttons
* Revert "Use native step buttons"
This reverts commit 8425d17399.
* Use custom step buttons and hide them when field is not focused
* Revert type="number" as it's not working well with number formatting
* Disable autocomplete
* Remove leftover showStepButtons from documentation
* Prevent default event when pressing up/down
* Change to onKeyDown event
* Implement timeout to hold + and - buttons
* Remove unnecessary onBlur and prevent default event when onKeyUp
* Fix TS issue
* Update changelog
* set max height for the AdviceCard component
* changelog
* remove Flex components
* tweak dismiss button size
* update changelog
* tweak layout depending on isDismissible or not
* set min-height fior advice card instead
* add bottom padding to card boddy
* Add product search field to the linked product list block
* Add empty state to the linked product list block
* Fix AdviceCard styles
* Create skeleton for the linked product list block
* Fix linter errors
* Move the product list skeleton to the product list component folder
* Revert AdviceCard changes
* Remove upsells and cross-sells block to use linked-product-list block instead
* Add changelog files
* Add expression-evaluation package
* Export useEvaluationContext
* Add HOC to hide collapsible block when nothing is inside it
* Add changelog
* Create a separate place for WP hooks and move existing hook to it
* Reintroduce line deleted automatically
* Refactor to useSelect
* introduce packages/js/data/src/user/types.ts pref
* be able to dismiss the Upsells advice
* rename user pref key
* typify product_advice_card_dismissed prop
* store is dismissed state in the user pref
* delegate the dismiss state to the component
* changelog
* remove console.log :'(
* fix TS issue
* fix TS issue
* changelog
* Create and register product-linked-list-field block
* Add upsells and cross-sells blocks to the simple product template
* Create formatted price component
* Add linked product table to the linked product list block
* Add remove product button to each product row
* Add see product page button
* Add link to the product name so it can be edited in a new tab
* Fix some styles
* Add product search field to the linked product list block
* Fix styles
* Add changelog files
* Fix linter error
* Fix rebase conflicts
* Use useProductEntityProp instead of useEntityProp within product-linked-list-field block
* Move the product list to its own component
* Move the product select to its own component
* Move the product image to its own component
* Fix linter error
* Add tooltip attr to Pricing field
* Remove Fragment reference
* Add tooltip to regular price
* Add tooltip to sale price
* Remove "labelToShow" const
* Add changelog
* Update woocommerce.com URLs in documentation and code files
* Add changelog
* Fix github repository link in extend-rest-api-add-custom-fields.md
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
* Add github reporter (#42974)
* Add github reporter
* Add changelog
---------
Co-authored-by: Jon Lane <jon.lane@automattic.com>
* Fix product task redirect to support grouped and external products (#43051)
* Rearrange product redirection logic to better accept grouped and external produc types
* Add changelog
* Modify feedback modal actions (#43005)
* Adapt feedback modal actions
* Add changelogs
* Modify comments
* Fix tests
* Fix test
* Update class-wc-gateway-bacs.php (#43054)
* Update class-wc-gateway-bacs.php
Fix typo in textdomain
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* [Product Block Editor]: Add `Linked product` tab (#43009)
* add linked-products to group IDs
* add Linked Products tab
* tweak hideConditions condition
* changelog
* fix typo in doc comment
* Introduce a product type selection within the new experience (#41823)
* 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
* [Experimental] Interactivity Dropdown multi-select mode, ratings filter and introduce each directive (#42981)
---------
Co-authored-by: David Arenas <david.arenas@automattic.com>
* Introduce the transient files engine (#42877)
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Change marketplace install API request to POST instead of GET (#43033)
* Change marketplace install API to using POST instead of GET
* Fix linting error
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Prep trunk for 8.6 cycle (#43021)
Prep trunk for 8.6 cycle with version bump to 8.6.0-dev
Co-authored-by: WooCommerce Bot <no-reply@woo.com>
* Add Playwright tests for All Reviews, Reviews by Product and Reviews by Category blocks (#42903)
* Remove Reviews blocks Puppeteer tests
* Minor code cleanup
* Typos
* Create publishAndVisitPost() editor util
* Fix subcategories when importing products in Playwright and add reviews
* Add Reviews blocks tests in Playwright
* More typos
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Create a 'reviews' object in data.ts so we can store reviews data in one single place
* Update test so instead of creating a new post in each test, we go to the already-created post
* Add source comments to reviews data to match it with the script
---------
Co-authored-by: github-actions <github-actions@github.com>
* Release: Remove 8.5 change files (#43022)
Delete changelog files from 8.5 release
Co-authored-by: WooCommerce Bot <no-reply@woo.com>
Co-authored-by: Alex López <alex.lopez@automattic.com>
* Delete changelog files based on PR 43033 (#43079)
Delete changelog files for 43033
Co-authored-by: WooCommerce Bot <no-reply@woo.com>
* Delete changelog files based on PR 43051 (#43081)
Delete changelog files for 43051
Co-authored-by: WooCommerce Bot <no-reply@woo.com>
* Interactive Price Filter: use `context` instead of `state` (#42980)
* feat: use context instead of state
* fix: temporary move the context to inner element for diffing to work
* fix: update context before navigation for optimistic UI
* Load google analytics gtag script asynchronously in WooCommerce Blocks (#43040)
Co-authored-by: github-actions <github-actions@github.com>
* set WOOCOMMERCE_BLOCKS_PHASE to 1 for the production build (#43074)
* set WOOCOMMERCE_BLOCKS_PHASE to 1 for the production build
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Revert "Fix schedule sales error" (#43094)
Revert "Fix schedule sales error (#42700)"
This reverts commit 9b800aa179.
* [Product Block Editor]: add Linked product sections. First approach. (#43013)
* add Linked products, Upsell section
* changelog
* add Cross-lens section
* add links to the Upsell sections
* changelog
* fix lint issues
* fix lint issus
* fix linting issue :-|
* check whether the linked product group is defined
* [Product Block Editor]: introduce ShoppingBags component (#43042)
* add ShoppingBags component
* Add ShoppingBag story
* changelog
* Fix: Collection data being leaked between Collection Filters blocks (#43044)
* fix: CYS - change heading color (#43076)
* fix: CYS - change heading color
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
* Delete changelog files based on PR 43074 (#43118)
Delete changelog files for 43074
Co-authored-by: WooCommerce Bot <no-reply@woo.com>
* [Product Block Editor]: fix feature flag to hide the Linked products (#43119)
* fix flag to hide/show product editor
* changelog
* Add changelog
---------
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
Co-authored-by: Jonathan Lane <lanej0@users.noreply.github.com>
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: louwie17 <lourensschep@gmail.com>
Co-authored-by: Fernando Marichal <fernando.marichal@automattic.com>
Co-authored-by: Marc Guay <marc.guay@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Damián Suárez <rdsuarez@gmail.com>
Co-authored-by: Maikel David Pérez Gómez <maikel.perez@automattic.com>
Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
Co-authored-by: Kyle Nel <22053773+kdevnel@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: WooCommerce Bot <no-reply@woo.com>
Co-authored-by: Alex López <alex.lopez@automattic.com>
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
* Fix typo introduced in #43116
* Add changefile(s) from automation for the following project(s): @woocommerce/product-editor
---------
Co-authored-by: github-actions <github-actions@github.com>
* 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
* 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
* 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
* Add Toggle shipping item to the variations quick actions menu
* Add Downloads -> Set download limit item to the variations quick actions menu
* Add Downloads -> Set download expiry item to the variations quick actions menu
* Add Downloads -> Upload files item to the variations quick actions menu
* Add changelog file
* Fix some styles conflicts and set default uploaded files
* Hide the toggle shipping and downloads menu items behind the feature flag product-virtual-downloadable
* Fix unit tests
* Add downloads section
* Create and register the downloads block
* Conditionally remove the upload button from the media upload component
* Create upload image component
* Add media uploader component to the downloads block
* Add downloads table
* Add remove file feature to the downloads table
* Set downloadable to false when there are no download files
* Add support to remove uploaded file
* If the file has a custom name added by the user, we show it first. The actual file name is then shown in a second line.
* Add changelog files
* Fix linter error
* Address feedback from comments
* Fix allowed media types
* Register the new feature flag product-virtual-downloadable
* Hide the downloads section behind the feature flag product-virtual-downloadable
* Update editor settings after sync blocks with template
* Get allowedMimeTypes from the editor settings
* Fix linter errors
* Add description to the Variation details section
* Add Image section block to the Single Variation page
* Add support to the checkbox block for changing non boolean properties and extend it to use the entity context
* Register the product-variation-visibility block into the ProductVariationTemplate
* Null is a valid value but not updafined
* Fix type definitions
* Add changelog files
* Fix linter errors
* Add changelog file
* Change onValue and offValue for checkedValue and unchackedValue for the checkbox block to avoid event naming conflicts
* Set multiple value dynamically into the media uploader component
* Prevent uploading multiple files when multiple is set to false
* Remove cover label when multiple is set to false
* Fix DropZone min height in Image section
* Fix rebase conflict
* Fix linter error
* Update blocks with postType context
* Add tax class
* Pass context into get_tax_class
* Add parent option
* Add changelog
* Update changelog
* Add isRequired attribute to regular price block for use in variations
* Add additional condition to avoid error in date time picker
* Add changelog
* Fix lint errors
* Add support to multiple types in useProductEntityProp
* Migrate 'checkbox' to useProductEntityProp
* Migrate 'pricing' to useProductEntityProp
* Migrate 'radio' to useProductEntityProp
* Migrate 'taxonomy' to useProductEntityProp
* Migrate 'text' to useProductEntityProp
* Migrate 'toggle' to useProductEntityProp
* Add changelog
* Update unit tests
* Add postType context to generic blocks and use-product-entity-props and add code review suggestions
* Use postType for meta_data as well
* Fix unit tests
* Fix shipping blocks ids into ProductVariationTemplate
* Add support to postType context to product-shipping-class-field block
* Add support to postType context to product-shipping-dimensions-fields block
* Add changelog files
* Remove advance section from the inventory section in the ProductVariationTemplate
* Add support to postType context to product-sku-field block
* Add support to postType context to product-toggle-field block
* Add support to postType context to product-inventory-quantity-field block
* Add support to postType context to product-radio-field block
* Fix inventory blocks ids into ProductVariationTemplate
* Add changelog files
* Initial changes needed to get product variation to load in its own form
* Allow the publishing of an individual variation
* Address some PR feedback and do some general cleanup
* Update template with new attribute name
* Add changelogs
* Update label of note field and allow for optional param in summary block
* Remove helpText in variation note field
* Fix PHP lint errors
* Make editor type more abstract
---------
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
* Create 'generic' and 'product-fields' and separate blocks between the two
* Refactor 'BlockRegistry' to include new directory structure
* Increment README
* Add param documentation
* Add changelogs
* Lint markdown
* Add block directory doc
* Fix jest test
* Update handbook reference
* Add documentation for woocommerce/product-radio-field
* Update woocommerce/product-taxonomy-field documentation
* Rename checkbox section for consistency
* Edit pricing attribute name for consistency
* Add documentation for woocommerce/product-pricing-field
* Add 'conditional' documentation
* Update README.md
* Add usage text
* Add documentation to collapsible
* Fix details across all readmes
* Add changelog
* Try adding video html tag
* Allow video html tag
* Fix wrong position in doc
* Rename 'name' to 'property' on InputControl props
* Fix mistake in label position
* Rename title
* Remove common-tasks section as it's currently made redundant by template API documentation
* Create index for reusable blocks doc
* Update reference to the handbook
* Add references to new documentation to the handbook
* Add changelog
* Update README.md
* Fix invalid focus state of the experimental select control
* Add changelog file
* Fix regression setting readOnlyWhenClosed to false by default
* Add changelog file
* Fix the position of pagination controls in the variations table
* Fix the sizing of controls in the variations table
* Add changelog file
* Fix linter errors
* Fix server error when generating variations after delete an attribute term, stock_quentity=null and low_stock_amount=null brake
* Show a summary when adding or removing variation option values
* Fix linter error
* Make sure to show variations notice only if the attribute is used for variation
* Optimize crud totalCount queries to avoid two requests
* Make use of same request params for totalCount as getVariations
* Add support for default_values when generating product variations
* Add test for default_values
* Add changelogs
* Only use default values of first variation
* Address some PR feedback
* Update types
* Redirect to product editing page when product was still in auto draft
* Make sure the prevent page does not show up when creating variations
* Add changelog and fix tests
* Decode html escaped characters in SelectTree
* Escape special characters when searching for taxonomies
* Add changelogs
* Remove unneeded decodeEntities
* Increment escapeHTML function to comply with what is happening in the legacy taxonomy editor
* Extract escapeHTML to @woocommerce/components
* Move the header data to the body as the header prop does not exist anymore
* Remove explicit setting of __unstableResolvedAssets given get_block_editor_settings already does this
* Remove use of woocommerce-page class in admin to avoid theme conflicts
* Add changelogs
* Revert change for quick test
* Two additional tweaks for admin related styling
* Add 'dialogNameHelpText' attribute to show on create taxonomy dialog
* Tweak CSS margins
* Add changelogs
* Rename "Save" to "Create" and set cancel button to Tertiary
* Add gray color to (optional)
* Create attribute to personalize label for parent
* Change the Visible to customers checkbox label and tooltip
* Set default visibility to true if the atribute is non used for variations, false otherwise
* Add changelog file
* Add auto select first or all terms when an attribute is selected
* Set auto select all terms in variations tab
* Set auto select the first term in Organization tab
* Add changelog file
* Change termsAutoselection to be camel case
* Remove error suppersion when retreiving attribute terms
* Fix select control dropdown menu width, double scroll and item aligment
* Fix attributes dropdown jumping on focus and slot position
* Add changelog files
* Fix double scroll and label margin on Category Select
* Add className to sortable and perPageOptions to Pagination
* Refactor pagination into seperate components
* Add PageArrowsWithPicker pagination component and usePagination hook
* Add hook to Pagination story
* Update Pagination readme
* Add changelogs
* Make sure input is updated if currentPage updates outside of PageArrowsWithPicker component
* Only show pagination if total count exceeds the minimum page size
* Add missing doc
* Fix lint errors
* Move totalCount to seperate useSelect to avoid multiple calls on page switch
* Fix merge conflict
* Fix lint error
* Create variations actions menu
* Disable Quick update dropdown menu when no variations are selected
* Add onDelete all selected variations
* Add update stock menu item to the quick updates global menu
* Add changelog file
* Fix linter error
* Add Pricing item to Quick update menu
* Add Set list price to the Quick update menu
* Fix some unit tests
* Make sure we also save default attributes prior to variation generation
* Add changelog
* Remove unused code
* Add changelog
* Fix lint errors
* Update and consolidate isDefault logic
* Remove unused function
* Fix tests and add a few more for testing default attributes
* Fix lint error
* Add product_options_add tracking event to add variation options
* Add product_options_edit tracking event to variation options
* Add product_options_update tracking event to variation options
* Fix set default attribute when editing it
* Add changelog file
* Add product_options_add_button_click tracking event
* Get attribute options from the terms prop instead of options, this ensures to get the updated values when the user edits the options
* Add Variation options section back
* Add changelog file
* Add new inventory submenu to variations actions
* Move pricing submenu up to its own function
* Add tests
* Move inventory markup to seperate component
* Remove menu group label
* Add changelog
* Move pricing menu to own component
* Fix lint errors
* Update use of handlePrompt to make return more flexible
* Add a checkbox to each variation row to select the current variation
* Add an indeterminate checkbox to the header of the variations table
* Add Select all and Clear selection buttons to the variations table
* Disable Select all if all items are selected and disable Clear selection when there is no items selected
* Add changelog file
* Fix linter error
* Make sure the iframe block toolbar still contains full width with latest WP version
* Add min height
* Add changelog
* Revert one change
* Remove unused imports
* Move the Quick Actions menu to its own component
* Add Set list price item to the Pricing sub menu
* Add notice when a variation gets updated
* Add Set sale price to Pricing sub menu
* Do not fire change if the user cancel the window propmt
* Add Increase list price to Pricing sub menu
* Add Decrease list price to Pricing sub menu
* Add Increase sale price to Pricing sub menu
* Add Decrease sale price to Pricing sub menu
* Add Schedule sale to Pricing sub menu
* Add changelog file
* Fix lint error
* Fix typo
* Add Sale end date to the Schedule sale to Pricing sub menu
* Add tracking events
* Fix tracking event params from camelcase to snakecase
* Initial set up and migration for the BlockTemplate
* Migrate remaining fields to the new SimpleProductTemplate
* Remove re-usable functions and clean up
* Add interfaces
* Add changelogs
* Remove unused id from block attributes
* Update changelog
* Address refactor suggestions
* Fix lint errors
* Add tests
* Address PR feedback
* Extend from BlockContainerInterface instead of BlockInterface
* Save changes
* Remove restriction from the variations dropdown to let users create multiple attributes with the same name
* Add support for autogenerate slug in the create attribute endpoint
* Add a tooltip to specify the slug of the attribute when there are more than one listed in the dropdown list
* Add changelog files
* Revert filtering to the prev implementation
* Add review suggestions
* Add return description to the generate_unique_slug function description