woocommerce/plugins/woocommerce-admin
Bec Scott 17c149f66e Only allow Customer Effort Score gathering if tracking is allowed (https://github.com/woocommerce/woocommerce-admin/pull/5365)
* Spike out customer effort score

* Refactor CustomerEffortScore as Package (https://github.com/woocommerce/woocommerce-admin/pull/5342)

* Tidy up _webpack.config.js

* Fix linter issues

* refactor setting up CES tracking, add try..catch around loading from localStorage

* Add CES feature toggle (https://github.com/woocommerce/woocommerce-admin/pull/5387)

* Add feature toggle to only enable the customer effort score in development

* Move check into Loader

* fix logic 🙄

Co-authored-by: Rebecca Scott <me@becdetat.com>

* Add client-side check of the feature flag

* fix tabs in config

* Fix comment

* Use product lifecycle and options

* Add product count to tracks props

* Display CES modal once per event per store

* Remove TODO

* appease the formatting gods

* Use Loader::load_features instead of DIY

* Drop CustomerEffortScoreTracks singleton

* Fix tracks event name

* Only add the CES JS if tracking is allowed

* Only display the CES modal if tracking is allowed

* bump ci

* Pull package-lock.json from main

* Refactor to remove some duplication

* Revert to keep toggleVisible etc

Co-authored-by: Rebecca Scott <me@becdetat.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
2020-11-04 10:30:34 +10:00
..
.github Changelog: Use author's note, if supplied 2019-06-18 22:11:58 +12:00
bin Update dependencies in prep for Composer 2.x. (https://github.com/woocommerce/woocommerce-admin/pull/5462) 2020-10-28 13:12:14 -04:00
client Only allow Customer Effort Score gathering if tracking is allowed (https://github.com/woocommerce/woocommerce-admin/pull/5365) 2020-11-04 10:30:34 +10:00
config Basic customer effort score survey functionality (https://github.com/woocommerce/woocommerce-admin/pull/5324) 2020-10-30 16:52:52 +10:00
docs Add navigation plugin example (https://github.com/woocommerce/woocommerce-admin/pull/5425) 2020-10-26 14:26:48 -04:00
images Add missing prompts to installed extensions (https://github.com/woocommerce/woocommerce-admin/pull/4060) 2020-04-09 08:43:34 +09:30
includes Update dependencies in prep for Composer 2.x. (https://github.com/woocommerce/woocommerce-admin/pull/5462) 2020-10-28 13:12:14 -04:00
languages Master -> main. (https://github.com/woocommerce/woocommerce-admin/pull/4618) 2020-06-17 13:39:41 -04:00
packages Add width: 100% style to the container of the popover menu to expand menu item width to 100% (https://github.com/woocommerce/woocommerce-admin/pull/5519) 2020-11-02 18:03:56 -08:00
src Only allow Customer Effort Score gathering if tracking is allowed (https://github.com/woocommerce/woocommerce-admin/pull/5365) 2020-11-04 10:30:34 +10:00
storybook Migrate the devdocs examples to Storybook CSF stories (https://github.com/woocommerce/woocommerce-admin/pull/5271) 2020-10-15 14:55:55 +13:00
tests Use the Puppeteer waitForSelector to fix flakyness in e2e tests. (https://github.com/woocommerce/woocommerce-admin/pull/5504) 2020-10-30 07:51:37 +13:00
.browserslistrc
.distignore Add Feature Flags (https://github.com/woocommerce/woocommerce-admin/pull/1500) 2019-02-12 15:02:02 -05:00
.editorconfig Align WooCommerce javascript code standards/linting/styles with WordPress core. (https://github.com/woocommerce/woocommerce-admin/pull/3674) 2020-02-14 15:23:21 +13:00
.eslintignore Add initial end to end test suite (https://github.com/woocommerce/woocommerce-admin/pull/5028) 2020-09-04 14:31:09 +12:00
.eslintrc.js Replace useFilters with wp's withFilters (https://github.com/woocommerce/woocommerce-admin/pull/4962) 2020-08-21 11:14:55 +12:00
.gitattributes Create GH tag release process (https://github.com/woocommerce/woocommerce-admin/pull/3190) 2019-11-18 11:39:27 +13:00
.gitignore Migrate the devdocs examples to Storybook CSF stories (https://github.com/woocommerce/woocommerce-admin/pull/5271) 2020-10-15 14:55:55 +13:00
.nvmrc Add nvmrc for newest lts release (https://github.com/woocommerce/woocommerce-admin/pull/1108) 2018-12-18 16:06:27 -06:00
.prettierrc.json Add @woocommerce/eslint-plugin (https://github.com/woocommerce/woocommerce-admin/pull/4714) 2020-07-28 14:32:58 +12:00
.stylelintrc.json Align WooCommerce javascript code standards/linting/styles with WordPress core. (https://github.com/woocommerce/woocommerce-admin/pull/3674) 2020-02-14 15:23:21 +13:00
.travis.yml Add initial end to end test suite (https://github.com/woocommerce/woocommerce-admin/pull/5028) 2020-09-04 14:31:09 +12:00
CONTRIBUTING.md Fix failing order stats tests (https://github.com/woocommerce/woocommerce-admin/pull/4719) 2020-06-30 11:02:28 -04:00
Gruntfile.js Align WooCommerce javascript code standards/linting/styles with WordPress core. (https://github.com/woocommerce/woocommerce-admin/pull/3674) 2020-02-14 15:23:21 +13:00
LICENSE.md update to consistent license 2019-05-16 13:14:03 -03:00
README.md Add initial end to end test suite (https://github.com/woocommerce/woocommerce-admin/pull/5028) 2020-09-04 14:31:09 +12:00
babel.config.js Add initial end to end test suite (https://github.com/woocommerce/woocommerce-admin/pull/5028) 2020-09-04 14:31:09 +12:00
chunk-src-version-param.js Remove dynamic content hash from chunk names. (https://github.com/woocommerce/woocommerce-admin/pull/5229) 2020-10-06 08:58:15 -04:00
composer.json Add PSR-4 naming checks to PHP linting (https://github.com/woocommerce/woocommerce-admin/pull/5512) 2020-11-02 14:47:00 -05:00
composer.lock Add PSR-4 naming checks to PHP linting (https://github.com/woocommerce/woocommerce-admin/pull/5512) 2020-11-02 14:47:00 -05:00
docker-compose.yaml Add initial end to end test suite (https://github.com/woocommerce/woocommerce-admin/pull/5028) 2020-09-04 14:31:09 +12:00
lerna.json Align WooCommerce javascript code standards/linting/styles with WordPress core. (https://github.com/woocommerce/woocommerce-admin/pull/3674) 2020-02-14 15:23:21 +13:00
license.txt include license.txt and update component package.json files 2019-05-18 01:19:20 -03:00
lint-staged.config.js Improve the pre-commit hook setup for wc-admin (https://github.com/woocommerce/woocommerce-admin/pull/5233) 2020-10-02 17:38:13 +13:00
package-lock.json Basic customer effort score survey functionality (https://github.com/woocommerce/woocommerce-admin/pull/5324) 2020-10-30 16:52:52 +10:00
package.json Basic customer effort score survey functionality (https://github.com/woocommerce/woocommerce-admin/pull/5324) 2020-10-30 16:52:52 +10:00
phpcs.xml.dist Add PSR-4 naming checks to PHP linting (https://github.com/woocommerce/woocommerce-admin/pull/5512) 2020-11-02 14:47:00 -05:00
phpunit.xml.dist Update PHPUnit to version 7 (https://github.com/woocommerce/woocommerce-admin/pull/3571) 2020-01-16 10:03:44 -04:00
readme.txt Add 1.6.x changelog entries (https://github.com/woocommerce/woocommerce-admin/pull/5464) 2020-10-27 12:54:15 -07:00
renovate.json Adjust renovate to automerge devDependencies. (https://github.com/woocommerce/woocommerce-admin/pull/4979) 2020-08-14 13:11:09 +12:00
tsconfig.json Remove usage of __experimentalResolveSelect (https://github.com/woocommerce/woocommerce-admin/pull/4949) 2020-08-20 16:02:01 +12:00
uninstall.php Fix usage of "package" tag in file headers (https://github.com/woocommerce/woocommerce-admin/pull/4940) 2020-08-11 16:18:47 -03:00
unminify.js Use Route based code splitting to optimize bundle size (https://github.com/woocommerce/woocommerce-admin/pull/4094) 2020-04-29 12:01:27 -06:00
webpack.config.js Basic customer effort score survey functionality (https://github.com/woocommerce/woocommerce-admin/pull/5324) 2020-10-30 16:52:52 +10:00
woocommerce-admin.php Update version to 1.7.0-dev. (https://github.com/woocommerce/woocommerce-admin/pull/5397) 2020-10-15 13:18:02 -07:00

README.md

WooCommerce Admin

This is a feature plugin for a modern, javascript-driven WooCommerce Admin experience.

Prerequisites

WordPress 5.3 or greater and WooCommerce 3.6.0 or greater should be installed prior to activating the WooCommerce Admin feature plugin.

For better debugging, it's also recommended you add define( 'SCRIPT_DEBUG', true ); to your wp-config. This will load the unminified version of all libraries, and specifically the development build of React.

Development

After cloning the repo, install dependencies:

  • npm install to install JavaScript dependencies.
  • composer install to gather PHP dependencies.

Now you can build the files using one of these commands:

  • npm run build : Build a production version
  • npm run dev : Build a development version
  • npm start : Build a development version, watch files for changes
  • npm run build:release : Build a WordPress plugin ZIP file (woocommerce-admin.zip will be created in the repository root)

For more helper scripts see here

For some debugging tools/help see here

Testing

End-to-end tests

Tests live in ./tests/e2e. E2E tests have their own Docker container to run the WordPress server. Start the server using:

npm run docker:up

Run tests using:

npm run test:e2e-dev

or in headless mode:

npm run test:e2e

Run a single test by adding the file name:

npm run test:e2e-dev complete-onboarding-wizard.test.js

Privacy

If you have enabled WooCommerce usage tracking ( option woocommerce_allow_tracking ) then, in addition to the tracking described in https://woocommerce.com/usage-tracking/, this plugin also sends information about the actions that site administrators perform to Automattic - see https://automattic.com/privacy/#information-we-collect-automatically for more information.

Contributing

There are many ways to contribute reporting bugs, adding translations, feature suggestions and fixing bugs. For full details, please see CONTRIBUTING.md