With the upgrade of the Emogrifier package we can't use the Emogrifier
class, since it was removed in v4 (we need to use at least v5 for
compatibility with PHP 8); so we now use the CssInliner class.
Note that this is a potential breaking change for consumers of the
woocommerce_emogrifier hook, which was getting an Emogrifier object
as parameter (now it gets a CssInliner object, which is partially
compatible).
Fix tests where PHPUnit 8 would throw "this method is deprecated
and will be removed in PHPUnit 9, use this other one instead"
warnings, by replacing all those with the proper ones. This will help
once we are able to use PHP 8 (once WP requirement is bumped to 5.9)
This includes:
- Changing "Requires PHP" in woocommerce.php
- Changing "require-php" and "config-platform-php" in composer.json
- Bumping pelago/emogrifier to ^6.0 in composer.json
- Bumping maxmind-db/reader to ^1.6 in composer.json
- Bumping composer/installers to ^1.9 in composer.json
(bump to 2.0 not possible due to conflict with Admin package)
- Removing jobs for 7.0/.1 unit test runs in CI
- Explicitly specifying the PHPUnit version to be 7.5,
otherwise it will install v8 which isn't compatible with
WordPress <5.9
Adding a `woocommerce_generate_{$type}_html` action hook allows to generate the HTML output of a custom field type for those classes extending the `WC_Settings_API` (e.g. `WC_Email`).
Since the smoke and E2E tests don't use `nx` commands to build, we need to make sure
that the command they run builds our dependencies. In the future we should change
all of the scripts and Nx executors to make this all simpler.
This commit removes the WooCommerce Admin package from Core. The
result of this change is that the code for WooCommerce Admin will come
from the included content, rather than the previous package.
This commit moves all of the PHP code from `plugins/woocommerce-admin`
to its new home in `plugins/woocommerce`.
- `plugins/woocommerce-admin/src` -> `plugins/woocommerce/src/Admin`
- `plugins/woocommerce-admin/src-internal` -> `plugins/woocommerce/src/Internal`
- `plugins/woocommerce-admin/includes` -> `plugins/woocommerce/includes/react-admin`
With the migration of the feature plugin into the `woocommerce/woocommerce` repository, we're going to use this workflow to block content from being merged into `main`.
* Add initial E2E tests for purchase task
* Update paid theme logic to remove PHP warning and keep the correct price
* Fix php unit tests
* Address some PR feedback
* Add changelog
* Include the purchase task e2e test
* Disable test
* Delete purchase E2E test file
* Update husky from 4 to 7
* Update @types/jest from 26 to 27
* Update lint-staged from 10 to 12
* Update babel-jest from 26 to 27
* Update @typescript-eslint/eslint-plugin from 4 to 5
* Update @typescript-eslint/parser from 4 to 5
* Update chalk from 4 to 5
* Update concurrently from 5 to 7
* Update stylelint from 9 to 14 and stylelint-config-wordpress from 13 to 17
* Update @wordpress/prettier-config from 0.4 to 1.1
* Update eslint from 7 to 8, @wordpress/eslint-plugin from 8 to 10, eslint-plugin-testing-library to 5
* Fix lint errors after updating eslint-plugin-testing-library
* Fix style lint
* Rename .stylelintrc.json -> stylelint.config.js & add todo comment
Fix stylelint.config.js
* Remove @wordpress/e2e-test-utils
* Add changelogs for eslint-plugin
* Update storybook/preview.js since addDecorator has been deprecated
Remove parameters
* Import directly from @storybook/addon-docs
* Migrate some stories to use @storybook/addon-controls
Add a comment for @storybook/addon-knobs
* Update changelogs
* Update preview.js to fix lint warning
* Update pnpm-lock.yaml
* Fix eslint layout errors (https://github.com/woocommerce/woocommerce-admin/pull/8484)
* Refactor the onFilterChange method in the AdvancedFilters component to use object params
* Fix advanced-filters/stories currency undefined error
* Add changelog
* Update changelog
* Separate onboarding concerns into separate classes
* Fix up onboarding product types
* Fix up references to profile data option
* Fix up call to allowed themes
* Move onboarding features to internal namespace
* Remove old onboarding redirect
* Fix failing tests
* Add changelog entry
* Move inernal classes to the new src-internal folder
* Fix lint error
* Add deprecated class for Onboarding
* Add empty construct method
* Remove some of the unnecessary static functions and make sure OnboardingTasks still gets initialized
* Fix missed changes during rebase
* Fix tests
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
- Add returned type annotations to `packages/admin-e2e-tests/src/elements/*.ts` and `packages/admin-e2e-tests/src/*.ts`.
- Remove unused vars from `packages/admin-e2e-tests/src/*.ts`.
- Simplify `unknown` type union.
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Fix industry tab not clickable after going back
* Add changelog
* Add e2e test for testing industry tab going back
* Add changelog
* Add navigate to fix the test
* Internalize all WooCommerce Admin main API controllers
* Internalize all report and report stat controllers
* Make function public and label as internal to fix PHP unit tests
* Add changelog
* Add args_to_where_clauses() and lookup_notes() methods to Admin\Notes\DataStore.
For use by internal code to bypass woocommerce_note_where_clauses filter.
* Changelog for 8385/8387.
* Add some linter whitelist notation to preexisting warnings in class-wc-test-notes-data-store.
* Add unit tests for the differences between lookup_notes() and get_notes().
* Minor text fix in changelog for 8385/8387.
* Better explanation in pagination tests in test_lookup_notes_versus_get_notes().
* All Notes created by WC_Tests_Notes_Data_Store should have source and name values.
* Add tearDown method to WC_Tests_Notes_Data_Store to delete test-created Notes.
* Allow for easy task component switch
* Add past tense feature addition with cross out
* Add visible option for task lists and make use of new feature config
* Fix lint errors
* Fix lint errors
* Fix css lint
* Fix js unit tests
* Address PR feedback
* Add js tests for task list changes
* Add php tests for updated logic
* Add changelog
* Update copy
* Make snooze test a little more robust
* Add WC_ADMIN_IMAGES_FOLDER constant
* Use WC_ADMIN_IMAGES_FOLDER to construct image URL
* Rename WC_ADMIN_IMAGES_FOLDER to WC_ADMIN_IMAGES_FOLDER_URL
* Use WC_ADMIN_IMAGES_FOLDER_URL to construct image URLs
* Move wcpay-banner.png to client dir
* Move wcpay-banner.png to client dir
* Use WC_ADMIN_IMAGES_FOLDER_URL for wcAdminAssetUrl
* Use WC_ADMIN_IMAGES_FOLDER_URL to construct image URLs
* Use WC_ADMIN_IMAGES_FOLDER_URL to construct image URLs
* Revert to images
* Add / to the path
* Query for admin survey note_ids directly in Notes::possibly_delete_survey_notes().
* Add get_notes_with_type( $note_type ) method to Automattic\WooCommerce\Admin\Notes.
Name selected for consistency with preexisting get_notes_with_name( $name ) method.
* Use new get_notes_with_type() in Notes::possibly_delete_marketing_notes().
* Use new get_notes_with_type() in Notes::possibly_delete_survey_notes().
* Correct copy-pasta error querying for MARKETING notes instead of SURVEY notes in possibly_delete_survey_notes().
* Only delete actioned notes in possibly_delete_survey_notes(), which was the previous behavior.
* Changed get_notes_with_type() to get_note_ids_by_type() in Notes data store.
* Changelog for 7987/8206.
* Add missing method name in changelog for 7987/8206.
* Assert the pending action explicitly to fix failing test_cancel_import with latest woo
* Use function lambda
* Fix WC_Tests_API_Reports_Variations by assigning parent_id to variations
Adding a new parameter to the existing check_response method could cause
backwards incompatibility issues in inherited classes, so we deprecate
the old method and create a new one instead.
* Seperated Asset, page, and translation logic into seperate classes out of Loader.php
* Move user, and assets logic out of Loader.php
* Move Loader to Internal and move page helper functions to PageController
* Fix unit tests
* Add changelog