Commit Graph

1122 Commits

Author SHA1 Message Date
Sam Seay e8c3808527
Upgrade TypeScript to v5.1 (#39531) 2023-08-08 16:35:31 +12:00
Sam Seay 4a2fd63b99
Use syncpack customTypes to keep pnpm and node in sync. Update pnpm to 8.6.7 (#39245) 2023-07-18 14:27:18 +12:00
Sam Seay 957fb2b07e
Update pnpm to 8.6.5 (#38990) 2023-06-29 16:51:29 +12:00
Tomek Wytrębowicz f569f333a1
Fix Layout Controller forwarding arrays from the URL query string. (#38593)
* Revert part of "Remove `qs` dependency from `woocommerce-admin` (#35128)"

This reverts Layout- and Filter-related changes from commit 00c151f9aa, reversing
changes made to eef417fe39.

Removes the fix (keeping the test) from https://github.com/woocommerce/woocommerce/pull/38542 as it's not needed for `qs`

Fixes https://github.com/woocommerce/woocommerce/issues/38582.

* Simplify the use of query params in `ProductTour`

* Add changelog entry
2023-06-05 04:55:20 -03:00
Sam Seay b076a7b521
Fix linter issues and update Syncpack (#38523) 2023-05-31 11:45:10 +12:00
RJ 38dc82b4b1
dev: add core profiler state machine tests (#38154)
dev: added tests for core profiler state machine

- added tests to demonstrate model based testing with @xstate/test
2023-05-16 08:56:39 +08:00
Tomek Wytrębowicz 0d45b0f107 Merge branch 'trunk' into remove/qs 2023-05-07 16:18:32 +02:00
RJ d15f62241f
dev: added xstate inspector toggling (#38022)
* dev: added xstate inspector toggling

* dev: added eslint-plugin-xstate
2023-04-28 15:30:52 +08:00
Sam Seay 7cbc3811d8
Update monorepo to pnpm 8 and Node to 16.14 (#37915) 2023-04-25 18:49:30 +12:00
RJ f0109e89ac
add: new core profiler scaffolding in xstate (#37628)
* add: core profiler scaffolding using xstate

* address review feedback and questions

* changed path to use setup-wizard

* default new core-profiler feature flag to false
2023-04-24 10:08:24 +08:00
Christopher Allford 67cde87fd1
Enforce Strict `@types` Dependencies (#37351) 2023-03-23 18:02:20 -07:00
Christopher Allford 3d614cd862
Removed TypeScript Incremental Build Support (#37374) 2023-03-23 11:25:42 -07:00
Chi-Hsuan Huang a6e3398e06 Disable React Fast Refresh completely in webpack when running start command 2023-03-17 17:52:24 +08:00
Chi-Hsuan Huang a643fef112
Fix woocommerce-admin "packages" commands (#37204)
Fix WCA run packages command

Add changelog
2023-03-17 15:11:33 +08:00
Chi-Hsuan Huang c804e76156
Set up "React Fast Refresh" in woocommerce-admin (#37165)
* Add @pmmmwh/react-refresh-webpack-plugin, react-refresh, webpack-dev-server and add start:hot command

* Set up react fast fresh

* Add changelog

* Run prestart in hot command

* Update pnpm-lock.yaml

* Update pnpm-lock.yaml
2023-03-16 11:52:03 +08:00
Matt Sherman af24637439
Create @woocommerce/admin-layout package (#37094)
* Initial admin-layout package skeleton

* Changelog files

* Use createOrderedChildren and sortFillsByOrder from @woocommerce/components for WooFooterItem

* Move WooFooterItem to @woocommerce/admin-layout

* Use WooFooterItem from @woocommerce/admin-layout

* Suppress errant TS lint errors

* Exports for @woocommerce/admin-layout

* Fill updates and eslint suppression

* Changelogs

* Remove suppression of tslint errors

* Fix react and @types/react versions

* Load @woocommerce/admin-layout script and styles

* Move WooHeaderItem, WooHeaderNavigationItem, and WooHeaderPageTitle to @woocommerce/admin-layout

* Regenerate lock file post-rebase

* Remove duplicate import post-rebase

* Add wc-admin-layout to app style dependency

* Fix jest mock of @woocommerce/admin-layout

* Fix spacing.

* Export slot names

* Fix typo in .npmrc

* Update lock file

* Try updating lock file

* Update lock file

* Update lock file

* Update to latest lock file from trunk

* Update lock file

* Sync dependencies of @woocommerce/admin-layout

* Manually sync @wordpress dependencies
2023-03-10 09:58:02 -05:00
Sam Seay bec3ec18ac
Update Syncpack and use it to pin @wordpress packages to wp-6.0 (#37034) 2023-03-09 10:13:25 +13:00
louwie17 2ef4f8a9da
Fix create wc extension script (#36917)
* Run create-extension for create-wc-extension script

* Add changelog

---------

Co-authored-by: Sam Seay <samueljseay@gmail.com>
2023-02-24 04:28:07 -04:00
Tomek Wytrębowicz c5cbc8d4ab
Update `config@3.3.7` (from `3.3.3`) (#33828)
* Update `config@3.3.7` (from `3.3.3`)

Add it to syncpack, to avoid `ReferenceError: node_env_var_name is not defined` when external extension imports and transforms the `admin-e2e-tests` directly from `node_modules`.

Include https://github.com/node-config/node-config/pull/642
2023-02-14 18:34:00 +13:00
Leif Singer d0a2b582fe
Consolidate eslint versions (#36700)
* pin eslint in .syncpackrc

run `pnpm run sync-dependencies` to ensure pinned version is used across projects, then run `pnpm install` to update `pnpm-lock.yaml`

* add changelog files

ran `pnpm run --no-bail --filter='[HEAD^1]' changelog add --significance=patch --type=dev --entry='Update eslint to 8.32.0 across the monorepo.'`

* re-run `pnpm install` to fix what broke while merging
2023-02-02 23:25:04 +13:00
louwie17 5f0572664f
Add new `@woocommerce/product-editor` JS package (#36600)
* Bootstrap product-editor package

* Move product section components over to product editor package

* Add changelogs

* Remove unused import leftover from rebase
2023-01-31 09:38:28 -04:00
Nathan Silveira 121bfe3a29
Add tracks event for "View product" and dismiss action after update (#35582)
* Record an event 'product_view_product_click' when the 'View Product' link is clicked after creating or updating a product

* Add product_view_product_dismiss tracks events (WIP, not currently working)

* Add changelog

* Fix whitespace in addEventListener and remove console.logs

* Change link tag id to be more specific and comply with CSS guidelines
Move HTML code out of translation function

* Run phpcs in class-wc-admin-post-types

* Add tinyMCE types to add global tinymce variable in typescript code

* Add additional data in getProductData

TODO: I'm not sure if it's possible, or if it makes sense, to include stock_quantity_update in the object

* Add code review suggestions, including:

* Create isElementVisible function to backfill jQuery implementation
* Fix wrong value for is_downloadable, is_virtual, manage_stock
* Fix wrong radix
* Update menu_order implementation
* Add missing ? to weight

* Add stock_quantity_update implementation which is not working as intended

Since the page reloads after product update, the initialStockValue is updated as well

* Remove stock_quantity_update property and adjust is_downloadable, is_virtual, and manage_stock for consistency
2022-11-28 22:01:10 -03:00
Sam Seay 03dbab0edd
Fix some bugs in syncpack configuration (#35651)
* Fix syncpack config

* Loosen the matched version for typescript eslint

* Add changelog entries

* Update lockfile
2022-11-22 12:06:47 +13:00
Tomek Wytrębowicz dafbfec094 Merge branch 'trunk' into remove/qs 2022-10-31 17:21:26 +01:00
Joshua T Flowers 3c6681054a
Add product management description (#34961)
* Add label prop to rich text editor

* Create feature class and enqueue styles

* Add description editor and parsing

* Fix up incorrect context for product data

* Add styling to rich text editors in product form

* Fix editor initialization on new product

* Add changelog entries

* Use trunk lock file

* Add component changelog entry

* Update lock file

* Register block store provider in tests

* Fix up phpcs errors in product feature file
2022-10-18 08:55:31 -07:00
Tomek Wytrębowicz 9adc8a733f Remove `@types/qs` devDependency from `woocommerce-admin` 2022-10-17 23:57:53 +02:00
Tomek Wytrębowicz 4754b2e560 Remove `qs` dependency from `woocommerce-admin` 2022-10-17 17:13:15 +02:00
Fernando Marichal 98162b9d42
Images Product management MVP 1.0 (#34769)
* Add image section

# Conflicts:
#	plugins/woocommerce-admin/client/products/add-product-page.tsx

* Add `keepSpaceWhenDragging` to sortable

# Conflicts:
#	packages/js/components/src/sortable/sortable-item.tsx
#	packages/js/components/src/sortable/sortable.tsx

# Conflicts:
#	packages/js/components/src/sortable/sortable.tsx

* Export ImageGalleryItem

* Add props to `image-gallery`

# Conflicts:
#	packages/js/components/src/image-gallery/image-gallery-item.tsx
#	packages/js/components/src/image-gallery/image-gallery.tsx

* Changed `media-uploader` label

* Add changelogs

* Fix image-gallery and sortable components

# Conflicts:
#	packages/js/components/src/sortable/sortable-item.tsx
#	packages/js/components/src/sortable/sortable.tsx

# Conflicts:
#	packages/js/components/src/image-gallery/image-gallery.tsx
#	packages/js/components/src/sortable/sortable.tsx

* Set gallery min-height

* Add onOrderChange

* Show images section edit-product

# Conflicts:
#	plugins/woocommerce-admin/client/products/edit-product-page.tsx

# Conflicts:
#	plugins/woocommerce-admin/client/products/edit-product-page.tsx

# Conflicts:
#	plugins/woocommerce-admin/client/products/edit-product-page.tsx

* Fix styles

* Fix styles

* Fix image alt

* Fix TS any

* Add prop `onDragOver`

# Conflicts:
#	packages/js/components/src/image-gallery/image-gallery.tsx

* Fix styles

* Fix padding

* Fix image area min-height

* Fix subtitle copy

* Fix image margin

* Change `draggedImageId`

* Fix `setDraggedImageId` reset

* Rename `isRemoveZoneVisible`

* Add `CardBody` and remove redundant `setValue`

* Fix card styles

* Remove `getUniqueImages`

* Use url as a key when there is no image id

* Fix `orderedImages`

* Add hover to gallery images

* Fix gallery arrows and set cover problems

* Altering blur handler to prevent toolbar closure on media modal

* Fix toolbar drag and drop

* Add replace fn

* Restoring modal class for blur function

* Fix storybook

* Ensuring onBlur doesn't happen while dragging, resolving issue in Firefox

* Adding expected event object to drag callbacks

* Fix image size

* Fix lint

* Another fix lint

* Update plugins/woocommerce-admin/client/products/sections/images-section.tsx

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Fix `draggedImageId` default value

* Fix toolbar icon style

* Rename consts

* Update pnpm-lock.yaml

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joel <dygerati@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2022-10-12 15:16:22 -03:00
Sam Seay aec442139f
Update pnpm once again to fix issues with auto-install-peers (#35007) 2022-10-10 16:59:51 +13:00
Sam Seay 59e0c80f3c
Update the pnpm constraint to 7.12.2+ now auto-install is fixed. (#34872) 2022-10-03 10:52:42 +13:00
Joshua T Flowers 3fd736c72f
Update plugins installer component to TS, Fix TS bugs and Syncpack TypeScript (#34787) 2022-09-30 10:59:07 +13:00
Sam Seay c0fe3ec18f
Fix pnpm version to 7.11.0 in engines and in CI (#34773) 2022-09-27 11:30:52 +13:00
Paul Sealock a0c13abd83
pnpm 7 update: Remove unused dashes (#34754)
* remove unused dashes in pnpm scripts calling other pnpm commands

* changelog
2022-09-21 15:34:24 +12:00
Sam Seay 04b74c1053
Upgrade to pnpm 7 (#34661)
* Remove -- -- from scripts that fixed issue in pnpm 6, fix a couple TS issues in sep packages
* Minor fixes to analyzer scripts and doco based on pnpm 7
* Add dompurify types to data package to avoid TS errors
* Remove pnpx in favor of pnpm exec
* Modify the code analyzer to respect pnpm version if present.
* Update instructions for running recursive lint, add comments to explain
2022-09-16 09:21:42 +12:00
Christopher Allford 6457348a97
Validate React Admin Changelog Files (#34520)
This maps the changelog command of the React Admin in order to ensure that they're validated and able to be added.
2022-09-05 13:02:00 -07:00
Chi-Hsuan Huang e687a48abf
Update dependencies and jest config to pass admin tests for pnpm 7 (#34428)
* Update @wordpress/data version to ^6.15.0

* Update jest.config.js to transform is-plain-obj js

* Update pnpm-lock.yaml

* Add changelog

* Add babel configs and update jest config

* Update tsconfig.json to exclude babel.config.js

* Add missing @types packages

* Add changelog

* Update pnpm-lock.yaml

* Update pnpm-lock.yaml

* Fix DateTimePickerControl type errors
2022-08-31 12:06:51 +08:00
Paul Sealock e651a46fb6
Turbo: Avoid caching result of `build:feature-config` (#34296) 2022-08-22 16:28:57 +12:00
Chi-Hsuan Huang 58ff656764
Remove @wordpress/eslint-plugin from woo admin package.json (#34240)
* Remove @wordpress/eslint-plugin from woo admin package.json

* Add changelog

* Update pnpm-lock.yaml
2022-08-10 14:45:40 +08:00
RJ f3e436f991
fix: type definition issues related to pnpm hoisting rules in preparation for pnpm 7 upgrade (#34154)
- added missing TS definition dependencies
2022-08-05 15:19:08 +08:00
Sam Seay 5becf47d60
Simplify turbo commands (#34055)
* Change package json commands and turbo repo config to allow for greatly simplifying running turbo
* Remove require-turbo script which was causing caching issues
* Colorize CI output from scripts
* Add missing changelog script to extend-cart-checkout-block
2022-08-05 12:03:17 +12:00
louwie17 383c96f0ca
Update woocommerce admin scripts to align more with turborepo (#33982)
* Update woocommerce admin scripts to align more with monorepo

* Add changelog

* Add dev script back in

* Add install-if-deps-outdated back into build script

* Remove --force from dev script and add WC_ADMIN_PHASE to turbo cache key

* Remove install-if-deps-outdated from build

* Add composer install step to pr unit tests workflow

* Remove old install scripts, that are not needed anymore

* Make sure client changes are part of the cache hit

* Add composer install to code coverage and code sniff as well

* Add composer_no_dev input to install-build workflow

* Add sass dependency to woocommerce/admin/client turbo cache
2022-07-22 08:32:03 -03:00
Chi-Hsuan Huang 2e167ca088
Fix borken react admin commands (#33649)
* Fix admin build:packages and test:packages

* Add changelog
2022-06-29 13:02:56 +08:00
jonathansadowski d48a0b2d90
Add helper tool for making sure build, lint, and test are run through Turborepo (#33573)
* Add helper tool for making sure build, lint, and test are run through Turborepo

* Update node version for require-turbo
2022-06-28 13:17:05 -05:00
Chi-Hsuan Huang 93c15e9f7d
Switch to ESLint to fix admin lint command (#33577)
* Switch woo admin lint command from wp-script to eslint

* Add changelog
2022-06-23 12:00:28 +08:00
Christopher Allford c0b76f70cc
Rename @woocommerce/admin-library (#33460)
This commit changes it to woocommerce/client/admin. This is an invalid NPM package name and an invalid Composer package name. This will prevent conflicts but also identify it as a component of Core.
2022-06-17 13:28:34 -07:00
Christopher Allford b7931409f2
Migrate From Nx to Turborepo (#33079)
This replaces all `nx` commands with `turbo` commands and removes Nx from the repository. All of the `project.json` files have been removed and any commands that broke with Turborepo have been adjusted.
2022-06-09 14:40:07 -07:00
Christopher Allford bb320a935a
Removed `@woocommerce/notices` Internal Prefix (#33283)
Since we're exposing the package in some form,
we cannot rename it since that would break backwards
compatibility.  This commit changes it back.
2022-06-03 16:05:26 -07:00
Christopher Allford 112b9ac67a
Prefixed Private JS Packages (#33218)
In order to ease the identification of private packages within the monorepo, this adds an `internal-` prefix to all of the current private packages. This makes it immediately clear when reviewing `packages/js` what is and isn't a private package.
2022-05-31 15:42:00 -07:00
RJ b051ed88db
Update react-router-dom to v6 for woocommerce-admin (#33156) 2022-05-30 14:51:33 +08:00
Chi-Hsuan Huang 4a6c6e739c
Update woocommerce-admin `test:watch` command (#33202)
* Update woocommerce-admin test:watch command

Only watch admin ./client folder

* Add changelog
2022-05-27 10:08:34 +08:00
moon 8adcae1072 Remove @types/history -- it is part of history 5.3.0 2022-05-12 18:34:13 -07:00
moon aa7853edbd Update history package to the latest 5.3.0 version 2022-05-12 18:28:43 -07:00
Moon 9720874f50
Merge pull request #32954 from woocommerce/update/32883-update-react-dates-dependency
Update react-dates to 21.8.0
2022-05-11 12:49:16 -07:00
moon 15ecfd9b16 Update react-dates to 21.8.0 2022-05-10 18:12:32 -07:00
Chi-Hsuan Huang 43af801d46 Remove memoize-one from wca & update it to ^6.0.0 for woo components 2022-05-10 14:17:03 +08:00
Christopher Allford 0519045d20 Added Missing Dependencies
Some kind of branch switching related mishap it seems.
2022-05-06 14:58:33 -07:00
Christopher Allford 31d7249080 Removed "prebuild" Script
PNPM does not execute "pre" and "post"
scripts for user-defined scripts. This removes
the "prebuild" from the React Admin's build.
2022-05-06 12:16:57 -07:00
Roy Ho ad0d71dcff
Merge pull request #32795 from woocommerce/fix/standardize-lint-woocommerce-plugin
Standardize linting: plugins
2022-04-29 06:01:37 -07:00
moon dc00aff77e Run dev after clean command 2022-04-28 14:28:01 -07:00
moon 082f55bee1 Run clean before running build commands 2022-04-28 13:42:06 -07:00
Paul Sealock 4275eb002b admin fix scripts 2022-04-28 11:04:20 +12:00
Paul Sealock 6100df9a04
Storybook: Move code to `tools/` (#32729) 2022-04-28 09:54:54 +12:00
Paul Sealock e70b75cf81
Update `create-extension` to work in monorepo context (#32514)
* Update create-wc-extension to work in monorepo context

* update lock file
2022-04-26 08:51:35 +12:00
Chi-Hsuan Huang 0c554fddad Add @wp/plugins, data, compose types dev deps to woo admin
Add their type definitions and remove them from index.d.ts declare module
2022-04-15 17:08:31 +08:00
Chi-Hsuan Huang e66b78b892 Add @types/testing-library__jest-dom to fix client ts errors 2022-04-15 17:04:53 +08:00
Chi-Hsuan Huang 3ead227cdc
Merge branch 'trunk' into update/admin-docs 2022-04-15 11:53:08 +08:00
Chi-Hsuan Huang 5a74e9cba6 Add WC_ADMIN_PHASE=core to build:feature-config 2022-04-14 17:25:29 +08:00
Chi-Hsuan Huang 30a2fc18d6 Pass WC_ADMIN_PHASE=core to build commands 2022-04-14 17:13:23 +08:00
Chi-Hsuan Huang 20736a5280 Remove docsify-cli and releated files 2022-04-14 13:50:29 +08:00
Chi-Hsuan Huang 96a5a7b75d Remove building ./docs storybook 2022-04-14 13:49:51 +08:00
Chi-Hsuan Huang 13720a663e Fix admin clean command 2022-04-12 15:47:03 +08:00
Chi-Hsuan Huang f3e460f055 Remove i18 commands and their dependencies
i18 routines have been handled inside plugins/woocommerce.
2022-04-08 12:45:34 +08:00
Chi-Hsuan Huang 870d523455 Reorder woocommerce admin package.json scripts 2022-04-08 12:38:17 +08:00
Chi-Hsuan Huang a649fe6ae2 Remove no needed commands and fields in package.json 2022-04-08 12:36:26 +08:00
Chi-Hsuan Huang ba17630dca
Merge pull request #32515 from woocommerce/update/32296-wordpress-dependencies
Update @wordpress/* dependencies
2022-04-08 10:08:48 +08:00
Chi-Hsuan Huang dc243bd34c
Merge pull request #32411 from woocommerce/fix/32399-husky
Fix husky git hooks
2022-04-08 10:08:27 +08:00
Christopher Allford 1e3a3d8af5
Merge pull request #32500 from woocommerce/fix/feature-config-file-location
Move feature flag config files to Woocommerce plugin
2022-04-07 12:49:03 -07:00
Chi-Hsuan Huang 3443387045 Update @wordpress/icons from ^6.3.0 to ^8.1.0 2022-04-07 14:24:19 +08:00
Chi-Hsuan Huang 317dd7c9e9 Update @wordpress/base-styles from ^3.6.0 to ^4.3.0 2022-04-07 14:21:33 +08:00
Chi-Hsuan Huang c60db1215e Update @wordpress/hooks from ^2.12.3 to ^3.5.0 2022-04-07 14:18:13 +08:00
Chi-Hsuan Huang 70359c8d11 Update @wordpress/a11y from ^2.15.3 to ^3.5.0 2022-04-07 14:16:46 +08:00
Chi-Hsuan Huang 2b1f54b09d Set up lint-staged configuration for each package 2022-04-06 17:31:32 +08:00
Chi-Hsuan Huang a4ece1b7b9 Remove husky lint-staged from plugins/* 2022-04-06 17:31:32 +08:00
Paul Sealock 407b225133 Move feature flag config files to Woocommerce plugin to support unit test execution in the wp-env environment. 2022-04-06 14:12:24 +12:00
Chi-Hsuan Huang 277b1acdf5 Downgrade chalk to v4 2022-04-05 14:45:13 +08:00
RJChow 6e8d620f00 Copied and modified package-update-textdomain.js script for modifying PHP i18n textdomain 2022-04-01 11:41:32 +08:00
Lourens Schep 775e7117a1 Add build-watch to most js packages and remove packages watch from woocommerce-admin command 2022-03-30 11:46:12 -03:00
Chi-Hsuan Huang 0be52342b7
Merge pull request #32372 from woocommerce/add/test-lint-js-action
Add lint-test JS Github action
2022-03-30 10:23:50 +08:00
Moon c13d126f11
Merge pull request #32390 from woocommerce/update/32177-deprecate-wc-admin-version-number
Deprecate WC_ADMIN_VERSION_NUMBER constant
2022-03-29 13:59:04 -07:00
Chi-Hsuan Huang 0cc5c6d515 Add expose-loader for storybook webpack config 2022-03-29 16:46:40 +08:00
Chi-Hsuan Huang 71350b4e8b Change script lint:js:packages to lint:js-packages 2022-03-29 16:38:26 +08:00
Chi-Hsuan Huang f2a6f93684 Update wca test command and ignore api-core-test
Update test:packages cmd
2022-03-29 16:38:06 +08:00
RJChow e9eac24793 tsconfig modifications
- moved and updated .vscode/tasks.json up to root level, and add exclusion to .gitignore
- added --pretty to ts:check in wca package.json (because otherwise there's no syntax highlighting in the output, not sure why this is needed with nx and not without)
- added references to root tsconfig.base.json
- update development.md with instructions for ts checking
2022-03-29 16:08:07 +08:00
Chi-Hsuan Huang df5b506b97 Add lint command to js packages
Update lint js commands

Update customer-effort-score/package.json
2022-03-29 16:08:06 +08:00
moon d915587f5d Update version 2022-03-28 17:55:07 -07:00
louwie17 2215c9ab3e
Merge pull request #32347 from woocommerce/add-dev-scripts
Add build-watch command for woocommerce-admin
2022-03-28 08:55:57 -03:00
Lourens Schep 8508a46f31 Update watch command so there are no conflicts between build commands 2022-03-25 10:04:02 -03:00
Chi-Hsuan Huang 554fc86441
Merge pull request #32322 from woocommerce/fix/lint_js-fix
Fix paths and argument forwarding for `script lint:js-fix`
2022-03-25 15:01:10 +08:00
Lourens Schep 9a6c077b69 Add build-watch command for woocommerce-admin 2022-03-24 15:09:15 -03:00
Chi-Hsuan Huang 096759862f Update woo admin node version to ^16 2022-03-24 16:33:53 +08:00