In this PR we introduce dev-only SPR-4 autoloader, so newly introduced PHP classes are available without dumping autoload (specific the core autoloader).
* Add order attribution install banner in core analytics overview (#51672)
* Implement order attribution install banner in analytics overview page
* Add a hook for setting banner dismissed option
* Use the hook the decide whether to show banner and call dismiss funtion
when clicking dismiss CTA
* Do not show banner when the plugin is already installed
* Add event tracking for banner viewed and clicked
* UI adjustments based on PR reviews
* Move client/order-attribution to client/order-attribution-install-banner
* Prevent the banner viewed event from being sent again wehn rerendering
* Add a comment to the hook useOrderAttributionInstallBanner
* Remove the prop of eventContext since it uses the default value
* Rename the css class name to make it more general
* Add order attribution install banner in analytics overview's header (#51908)
* Export useOrderAttributionInstallBanner from the first level of the folder
* Add OA install banner in analytics overview page header
* Refactor to use the same component for main and header banners
* Add order attribution install banner in order editor's order attribution metabox (#52282)
* Move OA install banner folder in favour of #49647
* Use slotfill to render OA install banner in order editor's OA metabox
* Don't show badge and image for the banner under OA metabox
* Pass title and description as props
* Pass dismissable as props to decide whether to show the Dismiss button
* Adjust the banner style to make it more customisable
* Show the banner even if the analytics overview banner was dismissed
* Adjust header banner spacing to match the items in the activity panel
* Refactor based on review suggestions
* Add JSDoc and comments and add target=_blank for header banner
* Add changefile(s) from automation for the following project(s): woocommerce, woocommerce/client/admin
* Add mechanism to promote OA install banner to a percentage of merchants (#52532)
* Add promoting to % of merchants based on WC version
* Add a marketing API to get the misc recommendation from woocommerce.com
* Update the transient expiry to 1 day
The default is 7 days.
* Add actions, reducers, resolvers, selectors for misc recommendations API
* Update logic to decide showing OA banner
* Fix linting and unit tests error
* Update code based on review suggestions
* Fix linting error
* Bump version for order attribution details template
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove experimental flags
* changelog
* Check theme is block theme
* adjust test since this setting is only visible with block themes
* Hide dark mode option if password input is disabled
* Normalize cart on load in Store API
* Remove change notices; this cannot happen with normalised API endpoints
* Add test to verify normalization works
* changelog
* Remove test for removed notices
* Fix test linting
* Check $cart_item['data'] is a product
* Migrate setup script into monorepo
* Need to include zip files of the plugins that we can install from
* Update install paths to the monorepo
* Remove zip files of plugins
* Add missing cache flush plugin
* Change setup script to download, zip and install plugins
* Fix linting error
* Resolve new linting errors
* Added a line to solve linting crimes against humanity
---------
Co-authored-by: Jon Lane <jon.lane@automattic.com>
* Pass cart item data to the deprecated filter to support validation better.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove shipping modal fonts
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update ExtensionCartUpdateArgs to allow overwriting dirty data
* Set isCustomerDataDirty when updating billing/shipping addresses
* Update docs
* Add e2e test to ensure overwriting dirty state isn't possible
* Organise tests better and add check pushed data isn't overwritten
* Check if data is changing when updating shipping/billing addresses
* Check input values in test
* Add test to ensure data can still be overwritten by extensions
* Add changelog
* Fix lint errors
* Remove rogue console log
* Remove unused import
* Update plugins/woocommerce-blocks/assets/js/data/cart/reducers.ts
* Fix lint error
* Remove unneeded mdlint ignore
* Update test to select a value instead of fill
* Add methods to get/set dirty customer data in local storage
* Push all customer data, not just dirty fields
* Update e2e test
* Update push changes unit test
* Update keys in mock expected arg
* Align localstorage key name with Gutenberg uppercase style
* Fix lost code after merge conflict
* Remove unnecessary metadata set in reducer
* Reimplement TS changes
* Debounce writing to localStorage
* Only update localStorage if billing/shipping changed
* Remove localStorage key when checkout is complete
* Remove unused import
* Remove clear button when setting is disabled
* Add clear button when setting is enabled
* Move logic to a React hook
* Fix error preventing clear button from being inserted after full page reload
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Add e2e test
* Fix ancestor
* Fix clear button settings for the Status filter
* Move hook to the root Product Filters folder
* refactor: divide the logic into multiple functions
* refactor: move util functions to their own files
* feat: add clear button hook to all individual filters
* test: add e2e test to the Product Filter Price block
* fix: block being created with the wrong default attributes
* fix: eslint errors
---------
Co-authored-by: github-actions <github-actions@github.com>
* Introducing order status constants
* Replacing static calls
* Additional comment blocks
* Updating PHP docs
* Updating PHP docs
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint issues
* Fix lint issues
* Fix lint issues
* Removing unnecessary order statuses group constants + more documentation
* Including the 'new' status (legacy)
* Merge branch 'dev/introducing-order-status-constants' of https://github.com/woocommerce/woocommerce into dev/introducing-order-status-constants
* Moving statuses to a new enum class
* Fix CS issues
* Fix lint issues
* Minor doc improvement
* Changing namespace to make it less granular
* Adding missing documentation for existing filters
* Update plugins/woocommerce/src/Enums/OrderStatus.php
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Update plugins/woocommerce/includes/class-wc-order.php
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Update plugins/woocommerce/src/Enums/OrderStatus.php
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Making the order status class final
* Adding missing filter comments
* Moving conditional filter back to if statement
* Merge branch 'dev/introducing-order-status-constants' of https://github.com/woocommerce/woocommerce into dev/introducing-order-status-constants
* Adding 'since' annotation to fix lint errors
* Adding 'since' annotation to fix lint errors
* Introducing order legacy status constants
* Removing unnecessary status
* Add changefile(s) from automation for the following project(s): woocommerce
* Renaming legacy status class to internal status
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
Co-authored-by: Vladimir Reznichenko <kalessil@gmail.com>
* Add To Cart With Options - Stepper layout: implement feature under feature flag
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce, woocommerce/client/admin
* fix E2E tests
* fix E2E test
* fix E2E test
* use setFeatureFlag across e2e test suite
* use the right feature flag
---------
Co-authored-by: github-actions <github-actions@github.com>
Drop mirrors.yml workflow from GitHub actions, passing but trying to update a non-existent production repository. The production repositories project is on hold, and we can restore the workflow if the project gets traction.
* Remove inspector notice
* Replace placeholder with generic version
* Implement new placeholder
* Fix shipping method count so it excludes rows which do not link to installed payment method
* changelog
* Set default so tests pass
* unused vars
* unused import
* Remove return type and fix import warnings
* Add card last 4 to order totals payment method row
* Add changelog file
* Only append when last4 actually contains a string
---------
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
* Create files with Gutenberg CSS code
* Prefix .edit-site class names with .woocommerce
* Add changelog file
* Fixes and linting
* Minor CSS fixes after merging Gutenberg stylesheets
* Show the payment method as text if there's no brand or last4 digits
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove CouponPageMoved note
* Stop displaying the legacy coupon menu for the newer versions
* Revert back should_display_legacy_menu logic change -- no need as we are not displaying the menu anymore
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Changed cron event schedule to twice daily for greater freshness.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Herman <KokkieH@users.noreply.github.com>
* Added wc_sanitize_phone_number() to remove invalid characters.
* Add changefile(s) from automation for the following project(s): woocommerce
* Added wc_sanitize_phone_number() to remove invalid characters.
---------
Co-authored-by: github-actions <github-actions@github.com>