woocommerce/plugins/woocommerce-admin/package.json

288 lines
13 KiB
JSON
Raw Normal View History

2018-04-17 21:03:14 +00:00
{
"name": "@woocommerce/admin-library",
"version": "3.4.0-dev",
"homepage": "https://woocommerce.github.io/woocommerce-admin/",
"repository": {
"type": "git",
"url": "https://github.com:woocommerce/woocommerce-admin.git"
},
"license": "GPL-3.0-or-later",
"author": "Automattic",
"files": [
"dist/**/*.css",
"dist/**/*.js",
"dist/feature-config-core.php",
"includes/class-wc-admin-loader.php",
"includes/features/**/*.php",
"languages/**/*.json",
"license.txt"
],
"scripts": {
"preinstall": "npx only-allow pnpm",
"prebuild": "pnpm run install-if-deps-outdated",
"run:packages": "pnpm run --filter ./packages",
"build": "pnpm run build:feature-config && cross-env NODE_ENV=production webpack",
Use Route based code splitting to optimize bundle size (https://github.com/woocommerce/woocommerce-admin/pull/4094) * Use lazy loading to split up the size of the js downloaded * Use lazy loading to split up the size of the js downloaded * Add Moment Timezone plugin to reduce size of data file. * Lazy load header panels and use Dashicons for faster loading * Load assets from the correct publicPath * Load assets from the correct publicPath * PHP cs fixes * Fix missing quotes on string literal. * Fix PropType warning for lazy loaded component. * Separate the task list and dashboard chunks. * Lazy load dashboard sections. * Restore original icons and reduce size by importing only the icons needed * Lazy load alerts to save more Kb on initial load * Minify built JS in production mode. * Add preload tags for WC Admin assets. (https://github.com/woocommerce/woocommerce-admin/pull/4162) * Fix linting errors. * Add modified UnminifiedWebpackPlugin. * Produce minified and unminified bundles for all builds. * Remove unused variable from webpack config. * Run unminify after sourcemap generation. * Only hook after optimization if we're using a devtool. * Add minification suffix in Loader::get_url(). * Lazy load OBW on new home screen. * Move OBW style up a level to layout. * Hydrate ProfileWizard independently of withSelect and withDispatch * Fix order of composition and fallback function when using hydration. Co-authored-by: Jeff Stieler <jeff.m.stieler@gmail.com> Co-authored-by: Paul Sealock <psealock@gmail.com>
2020-04-29 18:01:27 +00:00
"analyze": "cross-env NODE_ENV=production ANALYZE=true webpack",
"postbuild": "pnpm run -s i18n:pot && pnpm run -s i18n:build",
"build:feature-config": "php bin/generate-feature-config.php",
"build:packages": "cross-env NODE_ENV=production pnpm run:packages -- build",
"build:release": "./bin/build-plugin-zip.sh",
"clean": "rimraf ./dist && pnpm run:packages -- clean --parallel",
"predev": "pnpm run -s install-if-deps-outdated && php ./bin/update-version.php",
"dev": "cross-env WC_ADMIN_PHASE=development pnpm run build:feature-config && cross-env WC_ADMIN_PHASE=development pnpm run build:packages && cross-env WC_ADMIN_PHASE=development webpack",
"docs": "./bin/import-wp-css-storybook.sh && BABEL_ENV=storybook STORYBOOK=true pnpm exec build-storybook -c storybook/.storybook -o ./docs/components/storybook",
"i18n": "pnpm run -s i18n:js && pnpm run -s i18n:check && pnpm run -s i18n:pot && pnpm run -s i18n:build",
"i18n:build": "php bin/combine-pot-files.php languages/woocommerce-admin.po languages/woocommerce-admin.pot",
"i18n:check": "grunt checktextdomain",
"i18n:js": "pnpm run clean && cross-env NODE_ENV=production babel client packages -o /dev/null",
"i18n:json": "./bin/make-i18n-json.sh",
"i18n:pot": "grunt makepot",
"install-if-deps-outdated": "node bin/install-if-deps-outdated.js",
"install-if-no-packages": "node bin/install-if-no-packages.js",
"labels:dry": "github-label-sync --labels ./.github/label-sync-config.json --allow-added-labels --dry-run woocommerce/woocommerce-admin",
"labels:sync": "github-label-sync --labels ./.github/label-sync-config.json --allow-added-labels woocommerce/woocommerce-admin",
"lint": "pnpm run lint:js && pnpm run lint:css",
"lint:css": "stylelint '**/*.scss'",
"lint:css-fix": "stylelint '**/*.scss' --fix --ip 'storybook/wordpress'",
"lint:js": "wp-scripts lint-js ./packages ./client --ext=js,ts,tsx",
"lint:js:packages": "wp-scripts lint-js ./packages --ext=js,ts,tsx",
"lint:js:client": "wp-scripts lint-js ./client --ext=js,ts,tsx",
"lint:js-fix": "pnpm run lint:js --fix --ext=js,ts,tsx",
"lint:php": "./vendor/bin/phpcs --standard=phpcs.xml.dist $(git ls-files | grep .php$)",
"lint:php-fix": "./vendor/bin/phpcbf --standard=phpcs.xml.dist $(git ls-files | grep .php$)",
Enable Typescript checking on ./client folder (https://github.com/woocommerce/woocommerce-admin/pull/8372) * Copied .tsconfig into ./client to enable ts checking - Made sub-repos composite typescript packages where necessary * Prevent tsc from transpiling ./client - we use webpack for transpiling so no need for this * Added tsc resolution path for @automattic/explat-client - Seems like there's a type export issue (?) with @automattic/explat-client and @automattic/explat-client-react-helpers - adding the node_modules/@automattic/explat-client path in tsconfig seems to help TS resolve this using the source .ts files - found answer here: https://github.com/microsoft/TypeScript/issues/42873 - should figure out what's actually wrong with the type exports and fix that there instead * Removed mandatory checking from webpack - removed this for now as it will block all development until all type inconsistencies are fixed - for now, run the optional ts:check task either in console or vscode for highlighting type errors * Added vscode tasks for typescript checking * Patch @automattic/explat-client-react-helpers - this changes the installed code in node_modules (post-installation) for @automattic/explat-client-react-helpers so that it exports the necessary type interfaces required by us - attempted unsuccessfully to override type exports using declare module - not too sure how to fix this internally by other means - have to investigate what fixes to propose to @automattic/explat-client-react-helpers team * changed tests in ./client to use ts-jest instead of babel-jest - rewrote jest config to use ts-jest instead of babel-jest - set ts errors to warnings instead so that tests don't fail on type errors - created new tsconfig for ./packages/js-tests so that build and ts-check are separate, as js-tests need to be built for commonjs
2022-03-01 04:19:07 +00:00
"ts:check": "tsc --build ./tsconfig.json",
"ts:check:watch": "npm run ts:check -- --watch",
"reformat-files": "wp-scripts format-js -- --ignore-path .eslintignore",
"prepack": "pnpm install && pnpm run lint && pnpm run test && cross-env WC_ADMIN_PHASE=core pnpm run build",
"publish-packages:check": "pnpm run build:packages && pnpm publish --dry-run --filter ./packages --publish-branch main --report-summary && cat pnpm-publish-summary.json && rm pnpm-publish-summary.json",
"publish-packages:dev": "pnpm run build:packages && pnpm publish --filter ./packages --publish-branch main --tag next",
"publish-packages:prod": "pnpm run build:packages && pnpm publish --filter ./packages --publish-branch main",
"prestart": "pnpm run install-if-deps-outdated",
"start": "cross-env WC_ADMIN_PHASE=development pnpm run build:packages && cross-env WC_ADMIN_PHASE=development pnpm run build:feature-config && concurrently \"cross-env WC_ADMIN_PHASE=development webpack --watch\" \"cross-env WC_ADMIN_PHASE=development pnpm run:packages -- start --parallel\"",
"start:package": "pnpm run:packages -- start --parallel",
"pretest": "pnpm run -s install-if-no-packages",
Enable Typescript checking on ./client folder (https://github.com/woocommerce/woocommerce-admin/pull/8372) * Copied .tsconfig into ./client to enable ts checking - Made sub-repos composite typescript packages where necessary * Prevent tsc from transpiling ./client - we use webpack for transpiling so no need for this * Added tsc resolution path for @automattic/explat-client - Seems like there's a type export issue (?) with @automattic/explat-client and @automattic/explat-client-react-helpers - adding the node_modules/@automattic/explat-client path in tsconfig seems to help TS resolve this using the source .ts files - found answer here: https://github.com/microsoft/TypeScript/issues/42873 - should figure out what's actually wrong with the type exports and fix that there instead * Removed mandatory checking from webpack - removed this for now as it will block all development until all type inconsistencies are fixed - for now, run the optional ts:check task either in console or vscode for highlighting type errors * Added vscode tasks for typescript checking * Patch @automattic/explat-client-react-helpers - this changes the installed code in node_modules (post-installation) for @automattic/explat-client-react-helpers so that it exports the necessary type interfaces required by us - attempted unsuccessfully to override type exports using declare module - not too sure how to fix this internally by other means - have to investigate what fixes to propose to @automattic/explat-client-react-helpers team * changed tests in ./client to use ts-jest instead of babel-jest - rewrote jest config to use ts-jest instead of babel-jest - set ts errors to warnings instead so that tests don't fail on type errors - created new tsconfig for ./packages/js-tests so that build and ts-check are separate, as js-tests need to be built for commonjs
2022-03-01 04:19:07 +00:00
"test:debug": "node --inspect-brk ./node_modules/.bin/jest --config client/jest.config.js --watch --runInBand --no-cache",
"test:client": "jest --config client/jest.config.js",
"test:packages": "pnpm run:packages -- test",
2022-03-22 02:28:50 +00:00
"test": "pnpm nx build @woocommerce/js-tests && pnpm run test:client",
"test:e2e": "pnpm run build && test -z \"$(docker ps | grep woocommerce-admin-e2e)\" || pnpm exec wc-e2e docker:down && pnpm run e2e:docker-up && pnpm exec wc-e2e test:e2e",
"e2e:docker-up": "WC_E2E_FOLDER=../../../ pnpm exec wc-e2e docker:up ./tests/e2e/docker/initialize.sh",
"test-staged": "pnpm run test:client -- --bail --findRelatedTests",
"test:help": "wp-scripts test-unit-js --help",
"test:php": "docker-compose -f docker/wc-admin-php-test-suite/docker-compose.yml run --rm phpunit",
"posttest:php": "docker-compose -f docker/wc-admin-php-test-suite/docker-compose.yml down",
"test:update-snapshots": "pnpm run test:client -- --updateSnapshot && pnpm run --filter @woocommerce/components test:update-snapshots",
"test:watch": "tsc --build || concurrently \"pnpm run test:client -- --watch\" \"pnpm run:packages -- test:nobuild --parallel -- --watch\"",
"test:zip": "pnpm run clean && composer i && ./bin/build-test-zip.sh",
"example": "webpack --config docs/examples/extensions/examples.config.js --watch",
"pre-release": "./bin/pre-release.sh",
"create-wc-extension": "node ./bin/starter-pack/starter-pack.js",
"storybook": "./bin/import-wp-css-storybook.sh && BABEL_ENV=storybook STORYBOOK=true start-storybook -c ./storybook/.storybook -p 6007 --ci",
"storybook-rtl": "USE_RTL_STYLE=true pnpm run storybook",
"build-storybook": "build-storybook -c ./storybook/.storybook",
"changelog": "node ./bin/changelog --changelogSrcType='ZENHUB_RELEASE'",
"bump-version": "pnpm run -s install-if-deps-outdated && php ./bin/update-version.php",
"wp-env-mysql-port": "node ./docker/wc-admin-wp-env/mysql-port.js",
"create-hook-reference": "node ./bin/hook-reference/index.js",
"changelogger": "./vendor/bin/changelogger",
2022-03-18 21:07:30 +00:00
"test-instruction-logger": "./bin/test-instruction-logger/bin/test-instruction-logger"
},
"dependencies": {
"@automattic/explat-client": "^0.0.3",
"@automattic/explat-client-react-helpers": "^0.0.4",
"@automattic/interpolate-components": "^1.2.0",
"@react-spring/web": "^9.4.3",
"@woocommerce/api": "^0.2.0",
"@woocommerce/e2e-environment": "^0.3.0",
"@woocommerce/e2e-utils": "^0.2.0",
"@wordpress/a11y": "^2.15.3",
"@wordpress/api-fetch": "^6.0.1",
"@wordpress/base-styles": "^3.6.0",
"@wordpress/components": "^19.5.0",
"@wordpress/compose": "^5.1.2",
"@wordpress/core-data": "^4.1.2",
"@wordpress/data-controls": "^2.3.2",
"@wordpress/date": "^4.3.1",
"@wordpress/dom": "^3.3.2",
"@wordpress/dom-ready": "^3.3.1",
"@wordpress/element": "^4.1.1",
"@wordpress/hooks": "^2.12.3",
"@wordpress/html-entities": "^3.3.1",
"@wordpress/i18n": "^4.3.1",
"@wordpress/icons": "^6.3.0",
"@wordpress/keycodes": "^3.3.1",
"@wordpress/notices": "^3.3.2",
"@wordpress/plugins": "^4.1.3",
"@wordpress/primitives": "^3.1.1",
"@wordpress/url": "^3.4.1",
"@wordpress/viewport": "^4.1.2",
"@wordpress/warning": "^2.3.1",
"classnames": "^2.3.1",
"core-js": "^3.21.1",
"debug": "^4.3.3",
"dompurify": "^2.3.6",
"github-label-sync": "^2.0.2",
"grapheme-splitter": "^1.0.4",
"gridicons": "^3.4.0",
"history": "^4.10.1",
"lodash": "^4.17.21",
"memize": "^1.1.0",
"memoize-one": "^5.2.1",
"qs": "^6.10.3",
"react": "^17.0.2",
"react-dates": "^17.2.0",
"react-dom": "^17.0.2",
"react-router-dom": "^5.3.0",
"react-transition-group": "^4.4.2",
"react-visibility-sensor": "^5.1.1",
"redux": "^4.1.2"
},
"devDependencies": {
"@automattic/color-studio": "^2.5.0",
"@babel/cli": "^7.17.6",
"@babel/core": "^7.17.5",
"@babel/plugin-proposal-class-properties": "^7.16.7",
"@babel/plugin-proposal-private-methods": "^7.16.11",
"@babel/plugin-proposal-private-property-in-object": "^7.16.7",
"@babel/plugin-transform-async-to-generator": "^7.16.8",
"@babel/plugin-transform-react-jsx": "^7.17.3",
"@babel/preset-env": "^7.16.11",
"@babel/preset-typescript": "^7.16.7",
"@babel/runtime": "^7.17.2",
"@octokit/core": "^3.5.1",
"@storybook/addon-a11y": "^6.4.19",
"@storybook/addon-actions": "^6.4.19",
"@storybook/addon-console": "^1.2.3",
"@storybook/addon-controls": "^6.4.19",
"@storybook/addon-docs": "^6.4.19",
"@storybook/addon-knobs": "^6.4.0",
"@storybook/addon-links": "^6.4.19",
"@storybook/addon-storysource": "^6.4.19",
"@storybook/addon-viewport": "^6.4.19",
"@storybook/addons": "^6.4.19",
"@storybook/api": "^6.4.19",
"@storybook/builder-webpack5": "^6.4.19",
"@storybook/components": "^6.4.19",
"@storybook/core-events": "^6.4.19",
"@storybook/manager-webpack5": "^6.4.19",
"@storybook/react": "^6.4.19",
"@storybook/theming": "^6.4.19",
"@testing-library/dom": "^8.11.3",
"@testing-library/jest-dom": "^5.16.2",
"@testing-library/react": "^12.1.3",
"@testing-library/react-hooks": "^7.0.2",
"@testing-library/user-event": "^13.5.0",
"@types/cookie": "^0.4.1",
"@types/dompurify": "^2.3.3",
"@types/expect-puppeteer": "^4.4.7",
"@types/history": "^4.7.11",
"@types/jest": "^27.4.1",
"@types/lodash": "^4.14.179",
"@types/puppeteer": "^4.0.2",
"@types/react-router-dom": "^5.3.3",
"@types/react-transition-group": "^4.4.4",
"@types/wordpress__components": "^19.3.0",
"@types/wordpress__data-controls": "^2.2.0",
"@types/wordpress__notices": "^3.3.0",
"@typescript-eslint/eslint-plugin": "^5.14.0",
"@typescript-eslint/parser": "^5.14.0",
"@woocommerce/admin-e2e-tests": "workspace:*",
"@woocommerce/components": "workspace:*",
"@woocommerce/csv-export": "workspace:*",
"@woocommerce/currency": "workspace:*",
"@woocommerce/customer-effort-score": "workspace:*",
"@woocommerce/data": "workspace:*",
"@woocommerce/date": "workspace:*",
"@woocommerce/dependency-extraction-webpack-plugin": "workspace:*",
"@woocommerce/eslint-plugin": "workspace:*",
"@woocommerce/experimental": "workspace:*",
"@woocommerce/explat": "workspace:*",
"@woocommerce/js-tests": "workspace:*",
"@woocommerce/navigation": "workspace:*",
"@woocommerce/notices": "workspace:*",
"@woocommerce/number": "workspace:*",
"@woocommerce/onboarding": "workspace:*",
"@woocommerce/style-build": "workspace:*",
"@woocommerce/tracks": "workspace:*",
"@wordpress/babel-plugin-makepot": "^2.1.3",
"@wordpress/babel-preset-default": "^6.5.1",
"@wordpress/browserslist-config": "^4.1.1",
"@wordpress/custom-templated-path-webpack-plugin": "^2.1.2",
"@wordpress/eslint-plugin": "^11.0.0",
"@wordpress/jest-preset-default": "^8.0.1",
"@wordpress/postcss-plugins-preset": "^1.6.0",
"@wordpress/postcss-themes": "^1.0.5",
"@wordpress/prettier-config": "^1.1.2",
"@wordpress/scripts": "^12.6.1",
"@wordpress/stylelint-config": "^20.0.2",
"autoprefixer": "^10.4.2",
"await-exec": "^0.1.2",
"babel-jest": "^27.5.1",
"babel-loader": "^8.2.3",
"babel-plugin-transform-class-properties": "^6.24.1",
"babel-plugin-transform-es2015-template-literals": "^6.22.0",
"chalk": "^5.0.0",
"comment-parser": "^1.3.0",
"concurrently": "^7.0.0",
"config": "^3.3.7",
"copy-webpack-plugin": "^10.2.4",
"cross-env": "^7.0.3",
"css-loader": "^6.7.0",
"docsify-cli": "^4.4.3",
"eslint": "^8.10.0",
"eslint-import-resolver-typescript": "^2.5.0",
"eslint-import-resolver-webpack": "^0.13.2",
"eslint-plugin-import": "^2.25.4",
"eslint-plugin-react": "^7.29.2",
"fork-ts-checker-webpack-plugin": "^6.5.0",
"fs-extra": "^8.1.0",
"grunt": "^1.4.1",
"grunt-checktextdomain": "^1.0.1",
"grunt-wp-i18n": "^1.0.3",
"husky": "^7.0.0",
"jest": "^27.5.1",
"jest-environment-jsdom": "~27.5.0",
"jest-environment-node": "^27.5.1",
"lint-staged": "^12.3.5",
"md5": "^2.3.0",
"merge-config": "^2.0.0",
"mini-css-extract-plugin": "^2.6.0",
"moment": "^2.29.1",
"moment-timezone": "^0.5.34",
"moment-timezone-data-webpack-plugin": "^1.5.0",
"node-watch": "^0.7.3",
"postcss": "^8.4.7",
"postcss-color-function": "^4.1.0",
"postcss-loader": "^3.0.0",
"prettier": "npm:wp-prettier@^2.2.1-beta-1",
"promptly": "^3.2.0",
"prop-types": "^15.8.1",
"puppeteer": "^2.0.0",
"raw-loader": "^4.0.2",
"readline-sync": "^1.4.10",
"replace": "^1.2.1",
"rimraf": "^3.0.2",
"rtlcss": "^2.6.2",
"sass": "^1.49.9",
"sass-loader": "^10.2.1",
"style-loader": "^0.23.1",
"stylelint": "^14.5.3",
"ts-jest": "^27.1.3",
"typescript": "^4.6.2",
"url-loader": "^1.1.2",
"webpack": "^5.70.0",
"webpack-bundle-analyzer": "^3.9.0",
"webpack-cli": "^4.9.2",
"webpack-fix-style-only-entries": "^0.6.1",
"webpack-merge": "^5.8.0",
"webpack-rtl-plugin": "^2.0.0"
},
"peerDependencies": {
"@wordpress/data": "^6.3.0"
},
"engines": {
"node": ">=12.20.1 <15",
"pnpm": "^6.24.2"
}
}