Commit Graph

279 Commits

Author SHA1 Message Date
louwie17 a7127a8456
Revert a condition change on third param in onChange prop (#34626)
* Revert back isValid condition on third param

* Add changelog
2022-09-09 09:57:56 -03:00
louwie17 1b2e9c120d
Fix form onchange callback (#34614)
* Fix onChange method, so it contains the newValues object

* Add changelog

* Update storybook to add onChange values

* Update tests and fix onChange isValidForm callback

* Fix radio control example
2022-09-08 16:24:39 -03:00
Joshua T Flowers 43a24bc6c3
Add image gallery component (#34435)
* Add initial ImageGallery component

* Add changelog entry

* Extract list item component and styles

* Rename SortableList to Sortable

* Add placeholders for dropping items

* Fix drag throttling delays

* Use placeholder component

* Move handles back to sortable

* Add horizontal option to sortable

* Use CSS for placeholder styles

* Remove placeholder component

* Add image gallery styles

* Add last droppable class

* Extract class utils and add tests

* Add list item stories

* Add readmes

* Handle PR feedback
2022-09-06 12:46:32 -07:00
Tomek Wytrębowicz a86e387667
Update/unify jest@27 across all packages (#34322)
* Update `jest-puppeteer@5.0.4` (from `4.4.0`)

to be albe to run with jest 28.

* Update `jest` and `ts-jest@^27` (from `25`),

to match `e2e-environment` needs.

* Update api-core-tests' `jest@^27` (from `25`),

to unify the used version across the stack.

* Update e2e-env's `jest@^27` & co.  (from `25`),

to unify the used version across the stack.

* Update e2e-env's `@jest/test-sequencer@^27`  (from `25`),

to unify the used version across the stack.

* Update admin-e2e-tests' `@jest/globals@^27`  (from `26`),

to unify the used version across the stack.

* Update woocommerce's `jest@^27.5.1`  (from `25`),

to unify the used version across the stack.

* Replace `mocked` from `ts-jest` to the one from `jest`,

Update `@types/jest@27.4.1` from `27.0.2`.
Try to fix broken tsc build.

* Update `e2e-core-tests`' `@jest/globals@^27.5.1`

from `^26.4.2`.

* Remove changelog entry for bumpin jest in `api-core-tests`

It was already covered in `trunk`.

Addresses https://github.com/woocommerce/woocommerce/pull/34322#discussion_r956019567

* Updated package-lock.yaml

* Updated timeout

* Added changelogs

Co-authored-by: jamelreid <jnoelreid@gmail.com>
2022-09-06 09:29:45 -05:00
Matt Sherman b7606083e1
Update DateTimePickerControl's onChange signature (TypeScript) (#34561)
* Omit HTML onChange evnt from DateTimePickerControl

* Changelog entry for DateTimePickerControl's onChange change.
2022-09-02 15:46:27 -04: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
Joshua T Flowers dc4a2ba741
Update tag component styling (#34457)
* Update tag to new style

* Add changelog entry
2022-08-30 07:45:50 -07:00
Fernando 33405283cd
Add Pricing section (#34382)
* Add pricing inputs

# Conflicts:
#	plugins/woocommerce-admin/client/products/add-product-page.tsx
#	plugins/woocommerce-admin/client/products/layout/product-section-layout.scss
#	plugins/woocommerce-admin/client/products/sections/product-details-section.tsx

* Add pricing inputs

* Add validation

* Fix scss

* Moved validations

* Add tests

* Add regex validations

* Add tax settings

* Fix comment

* Add product name validation

* Fix validation copy

* Rename `woocommerce-add` classes

* Fix texts i18n

* Remove image section

* Fix decimal separator error

* Add `FormSection` component

* Fix `Enriched-label` component

* Add packages changelog

* Removed not used styles

* Add error handling

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-08-30 10:26:24 -03:00
jonathansadowski 74f8d5f17a
Use syncpack to verify consistent versions for react and react-dom (#34397)
* Add GitHub action and pre-push hook for syncpack for react and react-dom

* Fix typo in pre-push script

* Don't execute suggested command to fix mismatches automatically.

* Update react and react-dom to 17.0.2

* Move changelog check to last, so that pre-push still fails if check isn't successful

* Add changelog files

* Correct issue with syncpack.yml referencing an internal action

* Add command to top-level package.json for fixing mismatches

* Update syncpack action to only run when package.json files are affected

* Update workflow to just run syncpack list-mismatches

* Add version pinning to syncpackrc
2022-08-24 10:15:22 -05:00
Joel Thiessen 668244b2d7
Adding DateTimePicker component (#34293)
* Rudimentary functional version of datetimepicker

* Adding changelog

* Adding package changelog

* Making component more than barely functional

* Removing unnecessary export

* Rename directory to date-time-picker

* Add initial story

* Pass datetime to onChange callback

* Localize error string

* Remove initial error prop

* Rename currentDate to initialDate

* Simplify state for selected date

* Add extra stories around component

* Trigger onChange whenever date is changed

* Add readme

* Allow currentDate to be changed via props

* Update readme

* Update name to DateTimePickerControl

Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
2022-08-23 15:19:46 -07:00
louwie17 78c28ae9f3
Add product link field (#34313)
* Add initial product field and modal for editing product link

* Create a product link modal for editing product link

* Only show permalink when product is published

* Add changelogs

* Add changelog for data package

* Change save button to primary

* Fix merge conflcts

* Add getPermalinkParts selector to products store

* Made use of getPermalinkParts to support draft products
2022-08-19 12:05:13 -03:00
Joshua T Flowers e73ffbe088
Add FormSection component (#34348)
* Add FormSection component

* Add changelog entry

* Move card styling outside component

* Add readme

* Allow JSX elements for title and description

* Fix lint errors
2022-08-18 10:36:43 -07:00
Joshua T Flowers 32de8bee6f
Add SearchControl component (#34159)
* Add initial SearchControl component

* Add async example

* Reorganize getItemPropsType type

* Create separate MenuItem component

* Update items to use value/label pairs

* Add fuzzy matching example

* Use MenuItem component in example

* Add callback method example and onSelect prop

* Add custom render example

* Add styling

* Simplify Menu component

* Add changelog entry

* Update SelectControl to DeprecatedSelectControl

* Rename SearchControl to SelectControl

* Add readme

* Add placeholder prop

* Add icon to combox box

* Rename deprecated SelectControl classes

* Add changelog entries

* Pass menu props to menu to fix ref issues

* Update lock file

* Rebase and update lock file

* Fix up IDs in e2e tests

* Make list structure more semantic

* Fix update conflict with pnpm-lock

* Move new SelectControl to experimental

* Change experimental class name to avoid style conflicts

* Fix up latest lock file from rebase

* Remove onboarding e2e changes

* Update changelogs

* Update lock file again

* Update pnpm-lock and fix lint error

Co-authored-by: Lourens Schep <lourensschep@gmail.com>
2022-08-18 10:36:20 -07:00
Joshua T Flowers a98f0fef52
Add Media Uploader component (#34181)
* Add media uploader component

* Expand on mocked examples in storybook

* Add styling

* Move MediaUploder out of index

* Add changelog entry

* Handle PR feedback

* Add readme

* Fix missing media utils types

* Rebase and use variant instead of isSecondary for Button

* Fix up lock file

* Fix up lint errors
2022-08-12 12:58:25 -07:00
Joshua T Flowers 19853e1577
Add SortableList component (#34237)
* Add initial draggable list component

* Add changelog entry

* Add drag and drop index

* Add util for checking target drop index

* Add handle component

* Rename component to SortableList

* Use dragged list item for placeholder height

* Add onOrderChange prop to subscribde to updates

* Throttle the drag over event

* Add base styles

* Add utils tests

* Add component tests

* Export component

* Update changelog entry

* Add readme

* Escape pipe in readme
2022-08-12 11:45:26 -07:00
Jacob Sewell 46762dab29
Add SplitDropdown component (#34180)
* Early draft of SplitButton component.

* Changelog for SplitButton component.

* Rename SplitButton to SplitButtonDropdown, apply styles to address toggle button location/size, take primary button from children.

* Address button variant styles

* Rename 'Default' SplitButtonDropdown story to 'Secondary' for clarity.

* Add a SplitButtonDropdown story where the component is disabled.

* README for SplitButtonDropdown component.

* Add disabled prop to SplitButtonDropdown README.

* Add a SplitButtonDropdown story where some but not all actions are disabled.

* Restore PrimaryDisabled story for SplitButtonDropdown.

* Reorganize SplitButtonDropdown properties inheritance to allow both disabled and variant to apply to both the main and toggle buttons.

* Rename SplitButtonDropdown to SplitDropdown.

* Hardcode menuIcon and menuIconExpanded in SplitDropdown.

* Fix outdated stylesheet import for SplitDropdown.

* Update SplitDropdown changelog to new component name.

* Update variable names that reference Actions to Items.

* Hardcode expanded/collapsed toggle button icons without extraneous const declarations.

* Use classNames() helper fn for className concatenation.

* Increase width of SplitDropdown toggle button.

* Add a specific className to the root ButtonGroup element of SplitDropdown.

* Simple rendering test for SplitDropdown.

* For consistency, move Button text out of props in SplitDropdown README and story.

* SplitDropdown does not render a toggle button if there is nothing to put in the menu.

* Fix variant prop type declaration in SplitDropdown.

* Improve SplitDropdown test: remove snapshot, add toggle click.

Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
2022-08-12 12:47:39 -05:00
Fernando 4693e251f7
Add product name and checkboxes for Product details (#34214)
* Add product details

# Conflicts:
#	plugins/woocommerce-admin/client/products/sections/product-details-section.tsx

# Conflicts:
#	plugins/woocommerce-admin/client/products/sections/product-details-section.tsx

* Rename folder

* Fix help icon

* Fix form

* Removed useless `useState`

* Add `getCheckboxProps`

* Add params to getCheckboxProps

* Add recordEvent

* Rename event

* Add changelog

* Fix texts

* Remove Fragment

* Fix useState initial state

* Convert EnrichedLabel to TS

* Fix unknown value prop

* Rename event

* Move EnrichedLabel

* Fix js warning

* Add storybook

* Add readme

* Add components changelog

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-08-12 10:47:54 -03:00
github-actions[bot] 3e7c2e52cd
Prepare Packages for Release (#34299)
Automated change: Prep @woocommerce/components for release.

Co-authored-by: ilyasfoo <ilyasfoo@users.noreply.github.com>
2022-08-12 16:05:13 +08:00
louwie17 a498cc8280
Add product form buttons and specific product edit page (#34211)
* Add initial product form action buttons to form

* Add new edit page and allow for updating and creating products

* Move crud functions to helper hook to keep things seperated better

* Add changelog

* ADd package changelogs

* Add isPending selector to products store

* Fix trash screen showing up when deleting product and add loading indicators

* Add extra types to Product type

* Update track names and add product data to tracks

* Update track logic when product is published

* Remove the Image section for now, to prevent confusion as it is not ready yet

* Add tests for the product form actions

* Update copy for publish & duplicate

* Remove unused code

* Set window.location correctly with href

* Reset changes in pnpm lock

* Moved pending action variables to product helper and updated buttons to reflect new suggestions

* Fix backwards compabitibility issue with Form changes

* Add switch to draft button
2022-08-11 11:04:14 -03:00
RJ 8af95fb700
fix: removed Step 1 of 1 for 1 step tours (#34249) 2022-08-11 11:42:07 +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 339756ff7a
Add/32 react provider to form component (#34082)
* Add a FormContext to the Form component, to prevent the need for property drilling

* Add changelog

* Add PR number to changelog

* Replace some of the unknown types with any types to keep things more generic
2022-08-04 11:14:16 -03:00
Joel Thiessen fd04261cab
Adding CollapsibleContent component (#34129)
* Basic version of CollapsibleContent component

* Adding changelog

* Add story for component

* Update styling to match designs

* Add initially expanded example

Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
2022-08-03 08:09:00 -07:00
RJ cb09649a4c
add: store location settings tour (#34137) 2022-08-02 11:10:34 +08:00
github-actions[bot] 42401f212d
Prepare Packages for Release (#33970)
Automated change: Prep @woocommerce/components for release.

Co-authored-by: psealock <psealock@users.noreply.github.com>
2022-07-19 16:21:14 +12:00
Chi-Hsuan Huang 8952dac7c0
Set up i18n-text-domain rule and fix missing text domain (#33780)
* Set allowedTextDomain to only allow woocommmerce text domain

* Set allowedTextDomain to only allow woocommerce text domain

* Fix wrong or missing i18n text domain

* Add changelog

* Add changelog
2022-07-08 18:37:30 +08:00
github-actions[bot] c33212e612
Prepare Packages for Release (#33776)
Automated change: Prep all packages for release.

Co-authored-by: psealock <psealock@users.noreply.github.com>
2022-07-08 14:04:49 +12:00
Paul Sealock 72925142f3
Packages: Fix postinstall errors on install (#33724) 2022-07-07 14:53:59 +12:00
Paul Sealock 7229b65bc9
Changelogger: Fix PHPCS violations (#33664) 2022-07-07 08:54:48 +12:00
Miguel Pérez Pellicer bdb057c1ad
Add Tree Select Control Component (#33384)
* Add Tree Select Control Component

* Tweak test and code

* Fix Story path

* Restore .at

* Changelog

* Fix prettier error

* Update packages/js/components/src/tree-select-control/README.md

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>

* Update packages/js/components/src/tree-select-control/tags.js

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>

* Add comment regarding filter length

* Replace translate domain

* Document handleKeydown

* Refactor option object check

* Remove redundant check for disabled state

* Refactor tags & documentation

* Replace wrong domain for translations

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2022-07-06 10:07:50 +12: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
Roy Ho 98cf4e7160
Add PR numbers to changelog entries on code freeze process (#33627)
* Add PR numbers to changelog entries on code freeze process

* Add markdown links to PR
2022-06-28 11:15:39 -07:00
Ilyas Foo b178e8a1f6
Add new flow shipping recommendation task (#33620)
* Plugins component skip button is now optional

* Add link from payment settings page

* Add new experimental shipping task flow

* Changelog

* Update plugins/woocommerce/src/Admin/Features/OnboardingTasks/Tasks/ExperimentalShippingRecommendation.php

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>

* Rename all tracks to shipping_recommendation

* Add back skip installer bind

* Pass plugins list to pluginSlugs to be more predictable

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2022-06-28 13:53:03 +08:00
Chi-Hsuan Huang 7068c78101
Fix JS lint errors (#33484)
* Fix @woocommerce/data lint errors

* Fix internal-e2e-builds lint error

* Fix lint errors
2022-06-21 16:37:34 +08:00
RJ a78670bfec
Updated @automattic/tour-kit to 1.1.1 which has live resize functionality (#33452) 2022-06-16 15:49:03 +08:00
Paul Sealock b79e54eb09
Update JS packages changelogs (#33412) 2022-06-16 10:06:31 +12:00
Ilyas Foo 27041efdc5
Add event tracking product page spotlight tour (#33400)
* Update WooStep to have name in meta

* Add useProductStepChange hook and use it to detect form value changes in product tourkit, added tracking for tour view, tour dismiss, tour complete, and step complete

* Add tour view, tour dismiss, tour completion track to old product walkthrough

* Changelog

* Fix test

* Add listener to publish button for product spotlight tour

* Add track for old walkthrough publish button
2022-06-14 16:19:32 +08:00
Chi-Hsuan Huang 7a1df3d1cd
Tweak tour kit gap between content and controls (#33394)
* Tweak tour-kit gap between content and controls

* Add changelog
2022-06-14 10:22:31 +08:00
Paul Sealock 413e327e4a
@woocommerce/components: Prep changelog for release (#33359)
* Prep changelog

* bump version in package.json
2022-06-14 14:21:02 +12: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
Chi-Hsuan Huang 5db5c8b110
Add tour kit component (#33229)
* Add tour-kit component

* Add @types/wordpress__viewport to @woocommerce/components devDeps

* Add tour-kit README.md

* Add primaryButtonText option to tour kit step meta

* Add changelog

* Remove unneeded style import

* Set position and z-index style for tour-kit

* Add disable primary button feature for tour kit

* Export TourKitTypes

* Update style-build config for @automattic/* packages

* Add @automattic/* deps for components

* Ignore fs in webpack.config.js

* Update tour-kit stories

* Add tour-kit tests

* Update tour-kit README.md

* Update tour-kit types

* Update webpack.config.js

* Update style.scss

* Add auto focus feature

* Update type doc
2022-06-08 17:16:31 +08: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
Christopher Allford 2101bf5c9c
Set Composer Platform Requirements (#33245)
This commit sets a platform requirement for all `composer.json` files to ensure that they are compatible with CI.
2022-05-27 14:57:33 -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
Chi-Hsuan Huang 79814ccccf
Merge pull request #32936 from woocommerce/update/memoize-one
Remove `memoize-one` from woo admin & update it to ^6.0.0 for woo components
2022-05-11 09:55:40 +08:00
moon 15ecfd9b16 Update react-dates to 21.8.0 2022-05-10 18:12:32 -07:00
Christopher Allford f41258a9f2 Added EOF Newlines
We put an extra newline at the end of all
files to detect those that have been
malformed or truncated.
2022-05-10 13:35:31 -07:00
Christopher Allford ec2e90540e Added Changelogs 2022-05-10 13:31:13 -07:00
Christopher Allford 37ad4c5a70 Converted Spaces To Tabs In JSON
Since we almost universally use tabs instead
of spaces, this commit replaces all of the spaces
with tabs in various JSON files across the monorepo.
2022-05-10 13:31:01 -07:00
Chi-Hsuan Huang 4f1e7af7c7 Add changelogs 2022-05-10 14:29:45 +08: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
Paul Sealock 5537da6e9d
Packages: Add Changelogger scripts (#32813) 2022-05-05 15:26:36 +12:00
Paul Sealock e82e3cc49e changelog 2022-04-28 10:00:29 +12:00
Paul Sealock 931845a53a reference local eslint plugin package 2022-04-28 10:00:29 +12:00
Paul Sealock 12fef88354 Add lint:fix to admin js packages 2022-04-28 10:00:29 +12:00
Chi-Hsuan Huang 841692d14d Add changelogs 2022-04-21 13:16:54 +08:00
Chi-Hsuan Huang fbc1cf0e61 Correct stepper component props types 2022-04-21 12:45:02 +08:00
Chi-Hsuan Huang 95276dddfb Make Pill classname optional 2022-04-19 16:29:36 +08:00
Ilyas Foo 5bd497b384
Merge pull request #32605 from woocommerce/update/32132-payment-logic-in-task-and-settings
Update payment gateway logic in payment task
2022-04-14 18:36:44 +08:00
Chi-Hsuan Huang 863316ade7
Merge pull request #32518 from woocommerce/update/32516-woocommerce-admin-links
Update woocommerce-admin links to point to woocommerce repo
2022-04-14 13:40:25 +08:00
Ilyas Foo 1a129a2354 Change recommended ribbon to Pill 2022-04-14 10:52:12 +08:00
Sakri Koskimies 52732f2bc1 Add changelog entry 2022-04-11 11:06:08 +03:00
Sakri Koskimies b6310900de Fix TableCard component docs 2022-04-08 11:21:53 +03: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 3fc88f0a71 Update links of woocommerce-admin to https://github.com/woocommerce/woocommerce 2022-04-07 17:02:43 +08:00
Chi-Hsuan Huang a1a63e9433 Update package changelogs 2022-04-07 14:34:42 +08: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 c60db1215e Update @wordpress/hooks from ^2.12.3 to ^3.5.0 2022-04-07 14:18:13 +08:00
Chi-Hsuan Huang 2b1f54b09d Set up lint-staged configuration for each package 2022-04-06 17:31:32 +08:00
RJChow 2c630ccd9e Manually change i18n text domain from 'woocommerce-admin' to 'woocommerce' in WCA JS packages .md files 2022-04-01 11:41:32 +08:00
RJChow 12a818c04d Codemod to change i18n text domain from 'woocommerce-admin' to 'woocommerce' in JS packages 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 6f03e42dd1 Add @babel/runtime to dev dependencies of js packages 2022-03-29 16:46:06 +08:00
Chi-Hsuan Huang 81a1f4244a Add .eslintrc config to each packages
Update packages .eslintrc.js

Update components & admin-e2e-tests lint command
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
rjchow 43f81cbf69 Bumped WCA JS package version numbers 2022-03-22 16:08:24 +08:00
Christopher Allford d2d8d78be1 Moved WCA Packages
This commit moves all of the packages in
`plugins/woocommerce-admin/packages` to their
new home in `packages/js`.
2022-03-18 14:25:26 -07:00