* Updated storybook and renamed stories to use the *.story.js/tsx format
* Renamed stories within product editor and wc admin package
* Include *story files in product editor package
* Add storybook pages workflow
* Remove the 'on' param in storybook-pages
* Add changelogs
* Fix failing tests
* Add dirname for any other webpack configs that rely on the woocommerce-admin one
* Fix React 18 warnings
* Remove unneeded storybook packages from components package
* Remove storybook workflow, to be added as a follow up instead
* Revert @storybook/react back to fix unit tests
* Make use of GB Combobox for the product select
* Update E2E tests
* Add changelog
* Small CSS changes
* Fix create variable product E2E test
* Add changelogs
* Use our internal wrapper of the combobox
* A couple small fixes
* Fix bug and address feedback
* Address small formatting in comments
* Move search products back to consolidated function
* Create combobox-control
* Exporting the combobox control
* Integrate the combobox control into the custom field names component
* Remove some non needed styles
* Add changelog file
* Fix comment text typo
Co-authored-by: louwie17 <lourensschep@gmail.com>
* Fix linter errors
---------
Co-authored-by: louwie17 <lourensschep@gmail.com>
* Add media query rules for mobile and fix rule for .block-editor-list-view-tree
* Add missing translation call
* Add small screen title to show product name on mobile
* Add changelog
* Add media-query for inserter-sidebar
* Close inserter when is mobile viewport
* Add inputMode decimal to regular price and sale price fields and useNumberInputProps
* Change min and max numbers for NumberControl
* Allow typing minus in number
* Fix number control CSS issues in modals
* Allow providing elements as label and add onFocus handler
* Migrate manage downloads limits modal to NumberControl
* Migrate shipping dimension fields to NumberControl
* Add changelog
* Avoid passing NaN to onChange
* Move limits to individual fields
* Update max limits and add underscores for readability
* Moving to a Combobox
* Create CustomFieldNameControl component
* Fix combobox styles
* Change Combobox to behave as an Autocomplete
* Integrate CustomFieldNameControl within the CustomFieldCreateModal
* Fix the ref type from CustomFieldNameControl
* Integrate CustomFieldNameControl within CustomFieldEditModal
* Fix CustomFieldNameControl default/focus border style
* Fix custom field value control height to be 36px like other controls
* Add changelog file
* Fix linter errors
* Add ->esc_like to the search criteria when searching for a product custom field name
* Add changelog file
* Add comments explaining why the implamentation was made that way
* Remove non existing classname
* Fix wrong border color when the field is invalid and focused
* Fix linter errors
* Hide props from the internal input element
* Rename comboboxRef with inputElementRef
* Fix invalid empty value when the combobox has a selected value
* Remove portal and use inline popup
* Allow selecting existing values through , or ENTER
* Add help to taxonomy block
* Provide help attribute to taxonomy block
* Add changelogs
* Remove help text
* Add help text and a11y instructions
* Try to fix unit test
* Add changelog
* Fix E2E test
* Allow navigating up from first list item into the input
* Add scenario for single selection as well
* Only load product editor styles on WC admin pages
* Manually load interface styles to exclude fullscreen styles
* Add changefile(s) from automation for the following project(s): @woocommerce/product-editor, woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove selected tab state from Tabs, handle via props
* Pass selected tab via props to Header
* Fix Tabs unit tests
* Remove unused imports
* Changelog
* fix doc. improve doc
* disabe `Add` button when not terms nor options
* variant="primary" > isPrimary
* move helpers to utils file. improve jsdoc
* add tests for hasTermsOrOptions helper
* add isAttributeFilledOut unit tests
* changelog
* allow any type in unit tests
* show a toolip with not possible to add attributes
* fix wrong inline code comment
* expect the Add button is initially disabled
* check the `Add attributes` button is enabled
* changelog
* remove obvios jsdoc
* check all terms are accepted
* minor changes
* update tests
* remove console.log to dev purpose
* improve E2E testing remviing attr row
* Add a new event called wcadmin_product_variations_inline_select that fires when the user selects one of the inline options
* Add a new event prop called updated_options to wcadmin_product_variations_change to identify the options updated by the user
* Add changelog file
* prevent creating duplicated items with different cases
* changelog
* allow terms with same name for local attributes
* fix wrong const name to identy local attributes
* use more complext terms for E2E test
* encode URL to pass E2E test
* split E2E when creating new terms
* introduce `slug` property to TokenItem
* rename terms with globalAttributeTerms
* jsdoc
* minor test name change
* changelog
* show terms optimistically
* define values as TokenItem array
* introduce TokenItem type
* add token animation when adding
* terms could be undefined
* remove unused action
* changelog
* minor doc enhancements
* rename consts
* simplify items selector
* clean the temporary items, one by one
* do not pass selectedTerms when adding a new one
* pull and update form terms when creating new ones
* fix typo
* do not export TokenItem type
* rename and tweak jsdoc
* skip E2E test
* Move productBlockEditorSettings type to global.d.ts
* Set maxUploadFileSize to system settings
* Changelog
* Add maxUploadFileSize to test
* Set maxUploadFileSize for downloads
* Set maxUploadFileSize for variation image quick action
* Remove unused EditDownloadsModal props
* Fix typo in EditDownloadsModal prop
* Remove unused EditDownloadsModalProps prop
* Remove unused function
* Show specific error message when upload of download file fails
* Show error notice when upload fails for variation image quick action
* Set maxUploadFileSize for download files menu item
* Close downloads menu on error
* Fix up types to avoid duplicate definitions
* Show specific link error
* Create VariationStockStatusForm component
* Integrate VariationStockStatusForm within the VariationsTableRow component
* Add woocommerce_manage_stock option to the default_option_permissions list in the Options rest controller
* Enable track inventory when woocommerce_manage_stock is set to yes
* Add stock_status radio component to the VariationStockStatusForm component
* Fix VariationStockStatusForm padding
* Fix control spacing
* Add stock_quantity to the VariationStockStatusForm component
* Add changelog files
* Fix linter errors
* Fix invalid sortable state in the variations table
* switch setting templates order
* pull product_form from the entity store
* fix typo
* set post excerpt with template description
* update the description for the Simple template
* rename type for product form post
* introduce isProductFormTemplateEnabled() helper
* render the PFTs into the templates selector
* changelog
* tscripting
* remopve dropdown
* re-write changelog files
* change and rename isProductFormTemplateSystemEnabled
* remove unused component
* try change the template version name
* Add tests for ProductPage
* Add tests for ProductVariationPage
* Add test for product_tab_click event
* Add test for product_editor_feedback_bar_turnoff_editor_click event
* Add test for product_dropdown_option_click event
* Add test for product_add_view track
* Changelogs
* Changelog
* Lint
* Add product_edit_view test and falsey test
* Fix test name
* Only run layout effect after product is resolved
* Fix edit variable product test
* Add changelog
---------
Co-authored-by: Jon Lane <jon.lane@automattic.com>
* Remove template matching from front-end
* Create 'woocommerce_rest_get_product' filter to allow extensions to change the product when it's fetched through the REST API
* Stop defaulting to 'standard-product-template' product template and handle defaults only in getLayoutTemplateId function
* Use created hook to determine and persist the product template ID when it's not defined.
Also introduce 'match_fn' in ProductTemplate to allow extensions to provide robust ways of matching the template
* Add changelog
* Fix tests
* Remove outdated tests
* Fix issue in filter because $product can be false and move API change to v3
* Add comments to continue statements
* Small refactor
* Only send layout template id to useLayoutTemplate after product is loaded
* Revert front-end changes
* Remove match_fn and create filter to allow extensions to determine the product template id
* Avoid loading layout template before product is loaded
* Create woocommerce_product_editor_determine_product_template filter and use it
* Update changelogs and remove unused code
* Remove _product_template_id for products that were created with the new product editor.
* Use only id to find productTemplate
* Turn hook into experimental
* Remove deprecated tests
* Rename filter
* Add more typings to useEntityRecord
* Use hasResolved boolean to check whether product has been resolved
* Add changelog
* Add 'variation' to ProductType
* Don't default to the standard-product-template for variations
* Update changelog
* Accept null in getLayoutTemplateId
* Fix edit variable product test
* Rename hook
* Revert changed logic to avoid regressions
* Increment useProductTemplate logic
* Default to standard-product-template instead of undefined when no matches
* Re-import Features class
---------
Co-authored-by: Jon Lane <jon.lane@automattic.com>
* introduce ProductFormTemplateProps type
* pull and set the default product form template
* render the PFT when it exists
* render a temporeary form templates selector
* changelog
* rollback TS global changes
* fix typo
* focus description when generating slug
* focus the name once the modal renders
* changelog
* do not focus on description field
* isSecondary is depcreated. use "variant" prop
* move changelog file
* Focus tab shows focus style
* Tabbing when inside the tabs takes you to the first focusable element inside the current tab's tab panel
* Users can press the left and right arrow keys to move between tabs
* When a tab is focused and the Home key is pressed the first tab in the list should be focused. When the End key is pressed the last tab should be focused
* Add changelog file
* Fix e2e tests
* Add changelog file
* Get last tab by index
* Fix linter errors