* Create add to custom fields documentation
* Update the checkout custom field docs
* Add back end steps and examples
* Make it clear that we are building a field block
* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Mention that the block will not render if parent isn't required
* Add more details about `seExtensionData`
* Add additional code examples for the backend
* Avoid extending store API inside an IntegrationInterface
* Add code example that invokes the extend store endpoint class
---------
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Update extensibility doc
This PR adds a missing link to the Extensibility page for a new doc that was added about the migrated hood.
* Update docs/third-party-developers/extensibility/README.md
Co-authored-by: Tarun Vijwani <tarun.vijwani@automattic.com>
---------
Co-authored-by: Tarun Vijwani <tarun.vijwani@automattic.com>
* Update smoke testing docs to mention the Product Collection block instead of the Products block
* Mention that Cart and Checkout blocks need to be added to the template instead of the pages
* Update docs/internal-developers/testing/smoke-testing.md
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
---------
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
* Adds a state example for the payment data store
* Update docs/third-party-developers/extensibility/data-store/payment.md
Co-authored-by: Niels Lange <info@nielslange.de>
* Update docs/third-party-developers/extensibility/data-store/payment.md
Co-authored-by: Niels Lange <info@nielslange.de>
* Update docs/third-party-developers/extensibility/data-store/payment.md
Co-authored-by: Niels Lange <info@nielslange.de>
* Full stop
---------
Co-authored-by: Niels Lange <info@nielslange.de>
* Empty commit for release pull request
* Add changelog entries to readme.txt
* Update version numbers
* Add testing instructions
* Update the changelog with woocommerce/woocommerce-blocks#11421
* Always show the `Enable the shipping calculator on the cart page` option in WC Admin (https://github.com/woocommerce/woocommerce-blocks/pull/11421)
* Always show `Enable the shipping calculator ...`
Always show the `Enable the shipping calculator on the cart page` option
no matter of what is used for the cart page.
* Update remove_shipping_settings docblock to accurately describe its purpose.
---------
Co-authored-by: Mike Jolley <mike.jolley@me.com>
* Add a safe guard that the variable is set before accessing it (https://github.com/woocommerce/woocommerce-blocks/pull/11424)
* Update zip package link
* Modify the <main> HTML tag in the title to 'main' to ensure the title remains intact
* Revert "Use the <header> element for the checkout header (https://github.com/woocommerce/woocommerce-blocks/pull/11222)"
This reverts commit 9e9ebc5039.
* Remove woocommerce/woocommerce-blocks#11222 from the Changelog and the Testing Notes
* Remove woocommerce/woocommerce-blocks#11190 from the Changelog and Testing Notes as it was never merged
* Update .zip file with latest changes
* Release: 11.4.2 (https://github.com/woocommerce/woocommerce-blocks/pull/11452)
* Empty commit for release pull request
* Do a version bump to 11.4.1
* Add Instruction Notes and update the Changelog
* Update the testing instructions and the changelog and the .zip link
* Empty commit for release pull request
* Remove the fontSize for the button (https://github.com/woocommerce/woocommerce-blocks/pull/11433)
* [Store Customization MVP] Ensure the AI-generated content in patterns is updated on plugin update (https://github.com/woocommerce/woocommerce-blocks/pull/11210)
* Update the patterns content after updating the plugin
* Remove unused variable and use statement
* Schedule action for updating the patterns content on plugin update (for both WooCommerce and WooCommerce Blocks.)
* Update condition to remove the plugin folder name
* Remove the update function from bootstrap.php
* Remove unused use
* Fix the condition, since $options['plugin'] is an array
* Remove pattern file
This was left empty by mistake in a merge, we need to remove the file or we get an error
---------
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
* Fix outer space and title (https://github.com/woocommerce/woocommerce-blocks/pull/11434)
* Store Customization > Update products with AI generated content (https://github.com/woocommerce/woocommerce-blocks/pull/11155)
* Introduce the ProductUpdater class.
* Update the image assignment for the default products content.
* Update the default products content.
* Introduce the generate_content and get_placeholder_products methods.
* Update the get_placeholder_products method and introduce the new create_new_product method.
* Verify the hash of the product content and compare it with the hash of the ai generated content to ensure we wont override products modified by the store owner.
* Add docblocks and update the structure for the ProductUpdater class.
* Pass the vertical images as a param for the PatternUpdater and the ProductUpdater.
* Update the provided variable to the PatternUpdater class.
* Update the ProductUpdater class to include the requirements for usage of the media_sideload_image method outside the wp-admin area (via API) and other adjustments to the products generation and hashes
* remove unnecessary calls to post/product images.
* Update the loop for generating products.
* Further adjustments to the Product Updater.
* Provide the business_description as a param for the generate_content ProductUpdates
* Update the default timeout for the AI connection; update the path to the default image. Add a limit of 6 when quering the total products created by the store owner.
* Add new neutral placeholder images for products and patterns.
* Update the prompt and the logic for the placeholder images.
* Remove placeholder images.
* Increase max execution time
* Update the products query.
* Move the media_sideload_image function dependencies to outside of the loop and add comment.
* Update text content.
* Address code review.
* bail early if no business description provided.
* Add an extra safety check in case of query errors.
* Address CR.
* Patterns > Upload optimized version of placeholder image (https://github.com/woocommerce/woocommerce-blocks/pull/11441)
* Improve vars name and remove duplicated user name (https://github.com/woocommerce/woocommerce-blocks/pull/11430)
* Add overlay with 30% opacity (https://github.com/woocommerce/woocommerce-blocks/pull/11428)
* [Store Customization] Update the "Footer with 3 Menus" (https://github.com/woocommerce/woocommerce-blocks/pull/11379)
* Fix search bar, spacing and show text in one line
* Set site log width
* Adjust margins and search bar
* Make the search bar fill space on mobile
* Update column sizes
* Remove width from site logo
* [CYS Woo Express] Update large footer (https://github.com/woocommerce/woocommerce-blocks/pull/11413)
* Update large footer
* Update space between icons
* Remove with from site logo
* update changelog and testing instructions
* bump to 11.4.2 version
* [CYS Woo Express] Fix essential header (https://github.com/woocommerce/woocommerce-blocks/pull/11449)
* Fix essential header
* Fix spacing
* update testing instructions
* Make groups to adapt better to mobile views (https://github.com/woocommerce/woocommerce-blocks/pull/11463)
* update testing instructions and changelog
* Unify the search bar layout across patterns (https://github.com/woocommerce/woocommerce-blocks/pull/11445)
* Unify the search bar layout across patterns
* restore changes
* [CYS Woo Express] Footer with simple menu and cart (https://github.com/woocommerce/woocommerce-blocks/pull/11409)
* Update footer simple menu cart
* Change structure to use rows not columns
* Make search fill space
* Fix spacing and switch mini-cart and menu
* Unify the search bar
* Remove mini cart
* update testing instructions and changelog
* Store Customization > Fetch product images from the Pexels API (https://github.com/woocommerce/woocommerce-blocks/pull/11280)
* Introduce the ProductUpdater class.
* Update the image assignment for the default products content.
* Update the default products content.
* Introduce the generate_content and get_placeholder_products methods.
* Update the get_placeholder_products method and introduce the new create_new_product method.
* Verify the hash of the product content and compare it with the hash of the ai generated content to ensure we wont override products modified by the store owner.
* Add docblocks and update the structure for the ProductUpdater class.
* Pass the vertical images as a param for the PatternUpdater and the ProductUpdater.
* Update the provided variable to the PatternUpdater class.
* Update the ProductUpdater class to include the requirements for usage of the media_sideload_image method outside the wp-admin area (via API) and other adjustments to the products generation and hashes
* remove unnecessary calls to post/product images.
* Update the loop for generating products.
* Further adjustments to the Product Updater.
* Provide the business_description as a param for the generate_content ProductUpdates
* Update the default timeout for the AI connection; update the path to the default image. Add a limit of 6 when quering the total products created by the store owner.
* Add new neutral placeholder images for products and patterns.
* Update the prompt and the logic for the placeholder images.
* Remove placeholder images.
* Pass the AI connection as a param and update the get_images_for_pattern method to rely on the results returned from the Pexels API.
* update the product updater class to rely on Pexels images and add the ai_connection as a param.
* Remove the unused get_random_images method.
* Update the patterns endpoint.
* Delete unused ChatGPTClient class.
* Introduce the new Pexels class.
* Remove the Verticals references.
* Update the reference for the alt description for images.
* Update the scheduled action to populate patterns and products.
* Remove unused Verticals classes.
* Ensure the Pexels class already returns the array with the expected format for assignment to Patterns and Products.
* Introduce the select_image_src_based_on_format method.
* Increase max execution time
* Increase max execution time
* Update the request to rely on the WP.com external-media endpoint instead.
* Improve performance for product content update.
* Improve quality of images used in products and update queries.
* Update the products query.
* Move the media_sideload_image function dependencies to outside of the loop and add comment.
* Update text content.
* Merge base branch
* Introduce the should_update_dummy_product method.
* Update the method to be triggered on scheduled action to return true.
* Change the image format for products to improve performance.
* Make portrait the default fallback image format.
* Address code review.
* bail early if no business description provided.
* Add an extra safety check in case of query errors.
* Address CR.
* Raise the default memory limit.
* Update the prompt for the search term for images.
* Make sure the 'woocommerce_blocks_allow_ai_connection' option is set to true if the site is connected to AI.
* Update the prompt for AI generated content in patterns and initialize the images and alts for the patterns.
* Update the prompt for products and introduce the update_dummy_products method.
* Update the default number of images returned by Pexels.
* Update the default fallback for the expected image format.
* Update the prompt for selecting the images.
* Add a character limit to the testimonials.
* Increase timeout to fetch products data
* Address code review.
* update changelog
* add zip link
* fix markdown
* remove duplicate testing instructions
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
Co-authored-by: Tom Cafferkey <tjcafferkey@gmail.com>
Co-authored-by: Luigi <gigitux@gmail.com>
* Release: 11.4.3 (https://github.com/woocommerce/woocommerce-blocks/pull/11496)
* bump to 11.4.3
* Empty commit for release pull request
* Improve Hero Product Chessboard pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11423)
* improve pattern
* remove hardcoded font-size
* address feedback
* update to h2
* Remove group and separator to get rid of the extra space (https://github.com/woocommerce/woocommerce-blocks/pull/11477)
* [Store Customization] Update the design for the Product Gallery pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11464)
* Remove rating, show only title and price
* Improve title spacing and level
* Patterns with Search Bar: improve style (https://github.com/woocommerce/woocommerce-blocks/pull/11478)
* "Product Collection X Columns" patterns: align "no reviews" text with the star (https://github.com/woocommerce/woocommerce-blocks/pull/11468)
* improve line-height
* use variable
* add testing instructions
* Rename pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11487)
* update readme
* Store Customization > Enhance the Hero Product Split pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11505)
* Update the bottom margin for the Hero Product Split and the heading from h3 to h2.
* Update heading comment
* update testing instructions
* Simplify the `Hero Product 3 Split` pattern design (https://github.com/woocommerce/woocommerce-blocks/pull/11495)
* Simplify the pattern design
* Add char limits to the AI generated content
* Fix url
* update testing instructions
* Product Search Block: unify border-radius (https://github.com/woocommerce/woocommerce-blocks/pull/11515)
* add testing instructions
* [Store Customization] Update the Centered Header Menu with Search Pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11304)
* Fix hidden elements on mobile and margins
* Increase navigation items spacing
* Add site logo width
* Improve search bar and title font weight
* Remove width from site logo
* Unify search bar
* Remove search, improve margins
* Use columns to improve the mobile view
* add testing instructions
* Large Header pattern: improve the layout on mobile view (https://github.com/woocommerce/woocommerce-blocks/pull/11490)
* Improve Large header
* improve large header
* use lens
* add padding
* add testing instructions
* Fix "Large footer" left spacing (https://github.com/woocommerce/woocommerce-blocks/pull/11520)
* Fix large footer left spacing
* Use esc_html_e
* add testing instructions
* add zip file
* improve testing instructions
* update testing instructions
* update testing instructions
---------
Co-authored-by: Luigi <gigitux@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
Co-authored-by: Saad Tarhi <saad.trh@gmail.com>
Co-authored-by: Mike Jolley <mike.jolley@me.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
Co-authored-by: Tom Cafferkey <tjcafferkey@gmail.com>
* Update data store docs
* Link related docs to /docs/third-party-developers/extensibility/data-store
* Improve data store overview
* Remove obsolete entry
* Update TOC of docs/third-party-developers/extensibility/data-store/store-notices.md
* Update TOCs
* Update link titles
* Replace primary key with import statement
* Optimise Validation Store description
* Keep store IDs in title
* Correct wrong key
* Optimise data store docs overview
* Explain the difference between cart and checkout store
* Add example to Validation Store
* Add example to Validation Store
* Add overview text to collections.md
* Add example to store-notices.md
* Update TOC of store-notices.md
* Update overview description of store-notices.md
* Add code snippets for displaying the validationError message
* Update data store docs
* Link related docs to /docs/third-party-developers/extensibility/data-store
* Improve data store overview
* Remove obsolete entry
* Update TOC of docs/third-party-developers/extensibility/data-store/store-notices.md
* Update TOCs
* Update link titles
* Replace primary key with import statement
* Optimise Validation Store description
* Keep store IDs in title
* Correct wrong key
* Optimise data store docs overview
* Explain the difference between cart and checkout store
* Add example to Validation Store
* Add example to Validation Store
* Add overview text to collections.md
* Add example to store-notices.md
* Update TOC of store-notices.md
* Update overview description of store-notices.md
* Add code snippets for displaying the validationError message
* Mention full link in assets/js/data/cart/README.md
* Changed Store-Notices to Store Notices
* Adkust text of sidebar notice
* Adjust text of sidebar notice
* Rename folder to “incompatible-extension-notice”
* Rename main component and interface
* Rename constants
* Add new files for splitting logic
* WIP: Semi-hardcoded solution
* WIP: Add new data store
* Fetch incompatible extensions dynamically
* Fix broken dismiss notice functionality
* Minor refactor
* Remove data store
* Remove console.log
* Remove obsolete data store fragment
* Update package-lock.json and composer.lock
* Change wording from “might be” to “may be”
* Show single incompatible extension within notice instead of as list
* Fix *.md linting error
* Remove order and checkout order endpoint feature flag
* Remove Order Route and Checkout Order Route from experimental flag list
* Remove order and checkout order endpoint feature flag
* Remove Order Route and Checkout Order Route from experimental flag list
* Update e2e tests selector
* Revert "Update e2e tests selector"
This reverts commit 2a6b561a883c701be1da2ffc39200cd19a85f1e3.
---------
Co-authored-by: Niels Lange <info@nielslange.de>
* Upgrade terser-webpack-plugin to version 4.2.3
* Upgrade webpack-bundle-analyzer to 4.7.0
* Upgrade to Webpack version 5
* Upgrade @wordpress/dependency-extraction-webpack-plugin to 4.6.0
* Upgrade dependency copy-webpack-plugin to version 11.0.0
* Upgrade dependency terser-webpack-plugin to version 5.3.6
* Replace webpack-rtl-plugin with the new @automattic/webpack-rtl-plugin
* Replace module.issuer with the new ModuleGraph API
There is a warning appearing in the console when running the application. This is due to the fact that the module.issuer has been deprecated on Webpack 5 and replaced with the new ModuleGraph API. This commit replaces the deprecated API with the new one.
* Upgrade babel and babel plugins to latest version
* Replace jsonpFunction with the new uniqueName property
Add a unique name of the webpack build to avoid multiple webpack runtimes to conflict when using globals. It defaults to output.library name or the package name from package.json in the context, if both aren't found, it is set to an ''.
* Replace cacheDirectory inline configuration with options.cacheDirectory
* Upgrade @wordpress/e2e-tests dependency to version 5.6.0
* Remove babel-plugin-transform-react-jsx dependency
Remove babel-plugin-transform-react-jsx dependency because it is already included in @wordpress/babel-preset-default
* Remove unnecessary Babel dependencies
Remove some unnecessary babel dependencies that are already included in the @babel/preset-env package.
* Upgrade puppeteer dependency to version 16.2.0
* Remove caret from package.json dependencies
* Fix Storybook build error
This commit fixes the Storybook build error that was being caused because of Storybook by default uses Webpack 4, but since we are currently upgrading our webpack to version 5, we need to install some required dependencies and also explicitly tell Storybook to use Webpack 5.
* Fix package-lock.json after merging with trunk
* Add own webpack-rtl-plugin implementation to the project
Before upgrading Webpack to version 5, we were using the original `webpack-rtl-plugin` released by Romain Berger; unfortunately, this plugin is not compatible with Webpack 5, so we replaced it with `@automattic/webpack-rtl-plugin`. The problem is that `@automattic/webpack-rtl-plugin` by default generates files with the '.rtl.css' suffix and does not provide a way to change that.
This commit adds our own implementation of the `webpack-rtl-plugin` (adapted from `@automattic/webpack-rtl-plugin`) that is compatible with Webpack 5 and allows us to change the suffix of the generated files to follow the recommended way defined by Wordpress (https://codex.wordpress.org/Right-to-Left_Language_Support)
* Change conditional clause to be multiline
* Fix package-lock.json after merge with trunk
* Fix package-lock.json after merge with trunk
* Rename files to fix ESLint errors
This commit renames files that have the .js extension but contain JSX code. This is causing ESLint to throw errors because by default our Eslint configuration expects only files with the .jsx extension to contain JSX code.
* Fix package-lock.json file
* Add is-plain-obj module to the transformIgnorePatterns of jest config
* Update package-lock.json
* Fix package-lock.json
* Upgrade @wordpress/i18n dependency to version 4.31.0
* Update package-lock.json
* Update composer lock file
* Fix Webpack config for Webpack 5
* Add the package-lock.json
* Remove unsupported config from webpack
* Fix error with Webpack build
* Add wait for network idle to the tests
* Attempt to fix e2e test
* Restore promise.all
* Upgrade puppeteer to v17.1.3
* Upgrade expect-puppeteer
* Update expect-puppeteer
* Downgrade expect-puppeteer
* Revert "Upgrade puppeteer to v17.1.3"
This reverts commit 61ed52a56f131961f3970b6fb22cdd8b540bada3.
* Upgrade Puppeteer to version 17.1.3
* Fix executionContext.frame is not a function error
* Fix e2e tests
* Remove isExperimentalBuild from Product Gallery inner blocks
* Upgrade Webpack and Webpack-cli to latest version
* Upgrade postcss and mini-css plugins
* Fix error with mini-cart block
* Fix styling error with filter blocks
* Fix issue when running unit tests
* Fix storybook script not loading
* Fix a11y issue in Storybook
* Fix error when multiple isExperimentalBuild was being used
* Prevent error when layout is not present in the attributes object
* Update `chunkIds` to `named` in Webpack
* Add cache groups to the Webpack configs
* Add escaping to unescaped style attribute variable
* Empty commit for release pull request
* update testing instructions
* bump version to 11.1.1
* add zip link
---------
Co-authored-by: Daniel W. Robert <danielwrobert@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Luigi <gigitux@gmail.com>
* Features Flags and Experimental Interfaces doc: Update blocks behind the experimental flag
* Product Gallery Next Previous: Add missing experimental flag