2a302603c6
* Refactor low stock variable to be the count instead of a boolean. * Add initial render of the Stock panel on the homescreen. * Move existing Stock panel to homescreen accordion. * Ensure int value for low stock product count. * Update ProductImage styling. * Update stock activity car styles. * Only show 5 low stock products. * Add "undo" action to the stock updated snackbar. * Fix check for explicit notice dismissal when taking actions. * Hide now-in-stock products after updating. By cllearing "edited" flag on successful update. * Fetch more products after updating stock. * Fix the number of product placeholders shown. * Only show products placeholders on the initial fetch. * Fix placeholder style. * Fetch low stock count dynamically. * Let initialOpen prop toggle Accordion panels if they haven't been toggled by the user. * Refactor item total count state. Allows for auto-updating item totals whenever identical queries (from a totals perspective) are issued. * Add last order date to low stock products API response. * Allow non-date strings in ActivityCard date prop. * Add last order date to stock panel cards. * Remove empty stock panel view. * Add test file for StockPanel. * Only request necessary fields from products endpoint. * Add test for products fetch after stock update. * Fix field name. * Add test for last order date in low stock products API response. * Stock panel should be initially closed. * Skip updating a product if the quantity is unchanged. |
||
---|---|---|
.. | ||
.github | ||
bin | ||
client | ||
config | ||
docs | ||
images | ||
includes | ||
languages | ||
packages | ||
src | ||
storybook | ||
tests | ||
.browserslistrc | ||
.distignore | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.nvmrc | ||
.prettierrc.json | ||
.stylelintrc.json | ||
.travis.yml | ||
CONTRIBUTING.md | ||
Gruntfile.js | ||
LICENSE.md | ||
README.md | ||
babel.config.js | ||
chunk-src-version-param.js | ||
composer.json | ||
composer.lock | ||
docker-compose.yaml | ||
lerna.json | ||
license.txt | ||
lint-staged.config.js | ||
package-lock.json | ||
package.json | ||
phpcs.xml.dist | ||
phpunit.xml.dist | ||
readme.txt | ||
renovate.json | ||
tsconfig.json | ||
uninstall.php | ||
unminify.js | ||
webpack.config.js | ||
woocommerce-admin.php |
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 versionnpm run dev
: Build a development versionnpm start
: Build a development version, watch files for changesnpm 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