* 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>
* Rename Google Listings and Ads with Google for WooCommerce
* Revert change regarding changelog
* Add changelogs
* Add changefile(s) from automation for the following project(s): @woocommerce/data, packages/php/remote-specs-validation, woocommerce
* Lint
* Lint
* Lint
* Rename Google Listings and Ads with Google for WooCommerce
* Lint
* Lint
* Tweak updated tests
* Add changefile(s) from automation for the following project(s): @woocommerce/data, packages/php/remote-specs-validation, woocommerce
* Lint
* Fix flaky tests
---------
Co-authored-by: github-actions <github-actions@github.com>
In this PR, we are consolidating babel-loader caching and adding Jest caching, improving build/testing times locally and in CI. The improvement comes from cache covering transpile steps in the mentioned processes.
* 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
* Hide help text in create-taxonomy-modal
* Expose onKeyDown and onBlur events in SelectedItems
* Increment isEventOutside function to consider remove button tags as well
* Add label to remove all button
* Handle navigation between added items and input using tab and arrow keys
* Add changelogs
* Prevent unwanted scroll
* Revert change in product editor and fix issue in component itself
* Change onKeyDown and onBlur to optional
* Move tags navigation to selectedItems and create lastRemoveButtonRef to avoid long CSS query
* Small refactor
* use useImperativeHandle hook in SelectedItems to abstract focusing on last remove button
* Hide variation related notices when product type is not variable
* Revert "Hide variation related notices when product type is not variable"
This reverts commit 66a67b6ada.
* Hide variation related notices when product type is not variable
* 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>
* Allow returning to input on selectTree when pressing escape
* Call onEscape in single mode as well
* Close the menu on escape
* Extract handleEscapePress function
* 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
* Fix "fullfilled" typo
* Add changefile(s) from automation for the following project(s): @woocommerce/admin-e2e-tests
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove duplicate
* Add is-coming-soon-page endpoint
* Render invalid cache warning
* Use meta tag instead
* Add url for debug purpose
* Use a different copy for the congrats page when the cache is still shown
* Clean up unused codes
* Guard the api with permission
* Add changefile(s) from automation for the following project(s): woocommerce
* Reuse $is_fse_theme
* Lint fixes
* Update 48586-update-48516-detect-cache-when-launching-store
* Add changefile(s) from automation for the following project(s): woocommerce
* Add changefile(s) from automation for the following project(s): woocommerce
* Update plugins/woocommerce/changelog/48586-update-48516-detect-cache-when-launching-store
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
* Add changefile(s) from automation for the following project(s): woocommerce
* changed to js method
* Add changefile(s) from automation for the following project(s): @woocommerce/data, woocommerce
* empty commit to trigger CI
* Add changefile(s) from automation for the following project(s): @woocommerce/data, woocommerce
* empty commit to trigger CI
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: rjchow <me@rjchow.com>
* 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
* Automated change: Prep @woocommerce/extend-cart-checkout-block for release.
* Re-add removed items from changelog with updated prefixes
---------
Co-authored-by: opr <opr@users.noreply.github.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
* Fix review error type
* Add changelog
* Rename global error-boundary class to avoid conflict
* Rename global error-boundary class to avoid conflict
* Wrap panels in error boundary
* Remove console
* Reformat
* Fix test
* Fix test
* Add changelog
* 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
* Temp commit
* Clean up unused codes and streamline logic
* More cleanups and add comment
* Better naming and fix logic
* Rename and comment
* Changelog
* Changelog
* Lint
* Moved leap year utils to date package, added tests
* Moved functions to utils, add tests
* Add more test
* Fix changelog
* 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
* minor change in reducer
* use organizeItemsById to compute new items
* add reducer test with pick optimisticUrlParameters
* rename constant name
* add optimisticUrlParameters to CRUD actions types
* use organizeItemsById to generate store IDs
* add more reducer tests
* compute nextItemsData based on ids
* tessstssssss
* add a order_by: name test
* fix sorting data when url parameters
* add tests
* introduce filterDataByKeys helper fn
* fix process to sort items optimistically
* rollback wrong change in actions
* changelog
* set action `options` as optional
* set default value for options
* Explicitly check whether the only block is a paragraph
* Update comment
* Move handling of empty block array into clearDescriptionIfEmpty
* Add areBlocksEmpty util function
* Check for empty block inside iframe editor
* Remove check for empty block from description block
* Add unit tests for areBlocksEmpty
* Changelog
* Update comment to clarify
* Lazy load the PluginArea and the ModalEditor
* Remove repeated product request when editing a specific product
* Fix linter errors
* Add changelog files
* Fix linter errors
* Refactor the block editor to remove some extra rerenders
* Defer the publish button processing
* Defer the tab content render 500ms to reduce the total blocking time
* Fix linter errors
* Fix unit test and tabs unexpected rerender
* Fix linter errors
* Reduce the defered time to 300ms
* Fix get product url when the product has been duplicated since the new copy does not have permalink
* Fix the invalid unregistration of wc-admin-more-menu in the product page
* Fix compilation errors