* 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
* 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>
* Avoid requesting product with id -1
* Add changelog
* Move changelog
* Add options to useEntityRecord type
* Fix editedRecord
* Add comment
* Undo early return
* Avoid making a request for product if it isn't already loaded
* Avoid making a request for product if it isn't already loaded
* Add typing for useEntityId
* Rework header to avoid requesting product unless we have a product ID
* Avoid requesting product when getting productTemplateId and blocks
* Remove unused import (fix lint error)
---------
Co-authored-by: Matt Sherman <matt@jam123.com>
* Allow saving a product as a draft when hitting ctrl/cmd + S
* Increment logic to keep product published/scheduled after it is published when using shortcut
* Use editedRecord instead of record
* Always use productTemplateId when available
* Change private methods to protected in ProductVariationTemplate
* Use editedRecord in hook useEntityRecord
* Update changelogs
* Restore attribute renamed by mistake
* Change useProductTemplate unit test
* Add meta_data parameter in generateProductVariations
* Apply filter to get meta_data to generate variations
* Add meta_data parameter in generate variations endpoint
* Update name and add documentation
* Fix useEntityRecord in blockEditor
* 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
* Adding initial pricing block
* Have price block render in form
* Make sure price is loaded correctly and fix template rendering
* Make pricing block abstract and add list and sale price to template
* Add changelogs
* Revert changes in wc/data package
* Fix lint issues
* Fix type error
* Add styling
* Fix styling lint issues
* Revert config change missed in rebase
* Make use of base control help text for field info
* Allow additional callbacks for onFocus and onKeyUp