Commit Graph

1080 Commits

Author SHA1 Message Date
louwie17 4bff4d1302 Fix php notice when selecting paid theme (https://github.com/woocommerce/woocommerce-admin/pull/8493)
* Add initial E2E tests for purchase task

* Update paid theme logic to remove PHP warning and keep the correct price

* Fix php unit tests

* Address some PR feedback

* Add changelog

* Include the purchase task e2e test

* Disable test

* Delete purchase E2E test file
2022-03-18 16:05:38 -03:00
Chi-Hsuan Huang c05605fddf Update linting, testing, `@types/*` dependencies (https://github.com/woocommerce/woocommerce-admin/pull/8475)
* Update husky from 4 to 7

* Update @types/jest from 26 to 27

* Update lint-staged from 10 to 12

* Update babel-jest from 26 to 27

* Update @typescript-eslint/eslint-plugin from 4 to 5

* Update @typescript-eslint/parser from 4 to 5

* Update chalk from 4 to 5

* Update concurrently from 5 to 7

* Update stylelint from 9 to 14 and stylelint-config-wordpress from 13 to 17

* Update @wordpress/prettier-config from 0.4 to 1.1

* Update eslint from 7 to 8, @wordpress/eslint-plugin from 8 to 10, eslint-plugin-testing-library to 5

* Fix lint errors after updating eslint-plugin-testing-library

* Fix style lint

* Rename .stylelintrc.json -> stylelint.config.js & add todo comment

Fix stylelint.config.js

* Remove @wordpress/e2e-test-utils

* Add changelogs for eslint-plugin

* Update storybook/preview.js since addDecorator has been deprecated

Remove parameters

* Import directly from @storybook/addon-docs

* Migrate some stories to use @storybook/addon-controls

Add a comment for @storybook/addon-knobs

* Update changelogs

* Update preview.js to fix lint warning

* Update pnpm-lock.yaml

* Fix eslint layout errors (https://github.com/woocommerce/woocommerce-admin/pull/8484)
2022-03-18 19:45:14 +08:00
RJ d9714b55c3 Update webpack 4 to webpack 5 (https://github.com/woocommerce/woocommerce-admin/pull/8476)
* updated webpack to 5

* fix dependency extraction config

* port unminify.js to webpack 5

* updated packages webpack version

* changelogs

* Updated @wordpress/custom-templated-path-webpack-plugin

- also removed Terser from package.json

* Upgraded storybook config to webpack 5
2022-03-18 18:59:05 +08:00
Chi-Hsuan Huang 0a75b1b657 Refactor the `onFilterChange` method in the `AdvancedFilters` component (https://github.com/woocommerce/woocommerce-admin/pull/8459)
* Refactor the onFilterChange method in the AdvancedFilters component to use object params

* Fix advanced-filters/stories currency undefined error

* Add changelog

* Update changelog
2022-03-18 09:16:32 +08:00
Tomek Wytrębowicz ae89e6ae20 Suppress `lint:js` warnings in CI and GitHub PRs (https://github.com/woocommerce/woocommerce-admin/pull/8020)
- Add returned type annotations to `packages/admin-e2e-tests/src/elements/*.ts` and `packages/admin-e2e-tests/src/*.ts`.
- Remove unused vars from `packages/admin-e2e-tests/src/*.ts`.
- Simplify `unknown` type union.

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2022-03-17 12:13:37 +01:00
Chi-Hsuan Huang 6d139e063d Fix industry tab not clickable after going back (https://github.com/woocommerce/woocommerce-admin/pull/8469)
* Fix industry tab not clickable after going back

* Add changelog

* Add e2e test for testing industry tab going back

* Add changelog

* Add navigate to fix the test
2022-03-17 17:39:50 +08:00
renovate[bot] 8e6d8c829e Update dependency @automattic/explat-client-react-helpers to ^0.0.4 (https://github.com/woocommerce/woocommerce-admin/pull/8471)
* Update dependency @automattic/explat-client-react-helpers to ^0.0.4

* Reverted patch for building @automattic/explat-client-react-helpers

* Updated pnpm-lock.yaml

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: rjchow <me@rjchow.com>
2022-03-17 11:15:12 +08:00
Chi-Hsuan Huang a9fe13e80b Add capability for ExPlat integration to authenticate WPCOM users (https://github.com/woocommerce/woocommerce-admin/pull/8428)
* Add @wordpress/api-fetch to explat/package.json

* Export auth exPlat utils

* Support request assignment as wpcom user

* Add experiments proxy api for js

* Update error response

* Add changelog

* Update pnpm-lock.yaml

* Change error type

* Update explat/README.md

* Update includes/class-experimental-abtest.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Fix get explat /assignments

* Fix url & add comment to assignment.ts

* Fix cors issue

* Fix php test

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2022-03-16 11:03:10 +08:00
louwie17 f37af20b5f New task list version 1 (https://github.com/woocommerce/woocommerce-admin/pull/8457)
* Allow for easy task component switch

* Add past tense feature addition with cross out

* Add visible option for task lists and make use of new feature config

* Fix lint errors

* Fix lint errors

* Fix css lint

* Fix js unit tests

* Address PR feedback

* Add js tests for task list changes

* Add php tests for updated logic

* Add changelog

* Update copy

* Make snooze test a little more robust
2022-03-15 14:40:22 -03:00
Chi-Hsuan Huang 7514af2801 Update `@woocommerce/date` documentation (https://github.com/woocommerce/woocommerce-admin/pull/8465)
* Update packages/date README.md

* Update headings
2022-03-15 17:34:33 +08:00
Moon b2d32e9e72 Add required dependencies for pnpm nx build {package} command (https://github.com/woocommerce/woocommerce-admin/pull/8436)
* Add required dependencies for pnpm nx install {package} command

* Update pnpm lock file

* Add missing deps for packages/*

* Change to use relative imports for packages/components

* Move ts from deps to devDeps

* Add rimraf to packages/* devDependencies for clean command

* Add webpack cli to packages dependencies

* Add jest-cli to packages devDependencies

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2022-03-14 20:04:46 -07:00
Chi-Hsuan Huang d797b658c6 Add `moment-timezone` to `@woocommerce/components` package.json (https://github.com/woocommerce/woocommerce-admin/pull/8458)
* Add moment-timezone to package.json

* Add changelog
2022-03-14 17:07:21 +08:00
berislav grgičak a2a53ab6c2 Fix legend item width (https://github.com/woocommerce/woocommerce-admin/pull/8442)
* Fix legend item width

* Add testing instructions

* Add changelog entry

* Fix changelog

* Add changelog
2022-03-10 15:09:45 +01:00
renovate[bot] eeaafb911a Update dependency @woocommerce/e2e-environment to ^0.2.3 || ^0.3.0 (https://github.com/woocommerce/woocommerce-admin/pull/8438)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2022-03-09 11:34:45 +08:00
Chi-Hsuan Huang 9aba93d127 Update all js packages with minor/patch version changes (https://github.com/woocommerce/woocommerce-admin/pull/8392)
* Update all js packages with minor/patch version changes

* Add changelog

* Fix packages/data types errors

* Update data/CHANGELOG.md

* Fix puppeteer version

* Fix packages/data > countries error types

* Make data key optional in RestApiError
2022-03-08 10:11:12 +08:00
Joshua T Flowers 834307e155 Merge payment gateway suggestion classes into single source of truth (https://github.com/woocommerce/woocommerce-admin/pull/8252)
* Rename route to payment gateway suggestions

* Create separate payment gateway suggestions controller

* Move payment gateway logic into feature class

* Merge payment gateway information into single source of truth

* Filter out WCPay client-side

* Fix up frontend

* Redirect to payment settings page on install

* Add test around showing installed gateways

* Remove check for marketplace suggestions at the endpoint level

* Fix up payment gateway conflicts after rebase

* Handle PR feedback

* Optimistically dismiss the payment gateway suggestions

* Add changelog entry

* Add square_image support for new API param

* Fixed lint error

Co-authored-by: Lourens Schep <lourensschep@gmail.com>
2022-03-07 09:15:06 -04:00
Chi-Hsuan Huang ac660167a0 Reintroduce emphasis on inbox note action button (https://github.com/woocommerce/woocommerce-admin/pull/8411)
* Reintroduce emphasis on inbox note action button

* Add changelog

* Remove actioned note gray color style
2022-03-07 17:14:49 +08:00
Chi-Hsuan Huang 86fc8b62e5 Switch to pnpm (https://github.com/woocommerce/woocommerce-admin/pull/8349)
* Add pnpm-workspace.yaml

* Add missing dependencies & replace file: with workspace:* in
package.json

* Replace "npm" with "pnpm"

* Replace "npx" with "pnpx"

* Remove package-lock.json

* Add pnpm setup action to github workflows

* Update webpack babel exclude path

* Upgrade woo e2e and fix e2e test command

Update e2e.yml

Use pnpm run e2e:docker-up in e2e.yml

* Remove unused docker-compose.yaml

* Replace lerna with pnpm commands

Update publish commands

* Exclude _locutus_shared_bc.js in babel.config.js

* Add .npmrc to set enable-pre-post-scripts=true by default

* Fix storybook babel config

Update babel.config.js

* Add changelog

* Update pnpm-lock.yaml

* Replace pnpx with pnpm exec

* Update pnpm-lock.yaml

* Remove js-tests/package-lock.json

* Fix @woocommerce/tracks -> workspace:*

* Update pnpm-lock.yaml

* Add @woocommerce/experimental to onboarding/package.json

* Add "@woocommerce/component" to onboarding/package.json

* Update pnpm-lock.yaml

* Use || instead of && for "test:watch"

Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>

* Fix packages/number "clean" command

* Add root: true to .eslintrc.js to enforce it to use the root config file

* Exclude packages/**/node_modules from babel transpiling

* Fix js-tests build config

Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>
2022-03-04 12:01:16 +08:00
Francesco 1ace2bbf1e add: `@woocommerce/block-data` in Webpack deps extraction (https://github.com/woocommerce/woocommerce-admin/pull/7911) 2022-03-02 10:31:30 -06:00
louwie17 b871cbf09b Fix/8251 woocommerce payments task list logic (https://github.com/woocommerce/woocommerce-admin/pull/8332)
* Allow the support of multiple task lists with overlapping tasks

* Add filter by task ids

* Revert getTaskListById call

* Fix notices

* Move prefix event to task and task list classes instead

* Fix track events and extended task list

* Fix php unit tests

* Remove the seperate task list classes as this was unnecessary.

* Fix tests

* Remove unneeded allowed-tasks

* Change onboarding task list redux store structure

* Add extra id for handling hidden param for experimental task lists

* Fix lint errors

* Fix forgotten change

* Add changelog
2022-03-01 08:34:18 -04:00
louwie17 212d1c6e96 Remove the use of preloaded countries (https://github.com/woocommerce/woocommerce-admin/pull/8380)
* Remove the use of preloaded countries and make use of country data store instead

* Fix shipping task

* Add changelog

* Fix lint errors
2022-03-01 08:33:41 -04:00
RJ f306cc2ba5 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 12:19:07 +08:00
louwie17 84e6a1e317 Add missing dependency to onboarding package (https://github.com/woocommerce/woocommerce-admin/pull/8378)
* Add missing dependency

* Add changelog
2022-02-25 08:44:07 -04:00
Chi-Hsuan Huang f052c3fed1 Replace deprecated wp.compose.withState with wp.element.useState (https://github.com/woocommerce/woocommerce-admin/pull/8338)
* Update search-list-control

* Update tag

* Update stories

* Add packages/components changelog
2022-02-23 09:35:50 +08:00
berislav grgičak e2dfe225b8 Increase chart selection to 10 and allow color overriding (https://github.com/woocommerce/woocommerce-admin/pull/8258)
* Increase selection limit to 10

* Add filter for overriding chart colors

* Add filter documentation

* Update chart story

* Add testing instructions

* Changelogs

* Remove broken changelog entires

* Update changelogs

* Fix changelogs

* Add filter example

* Improve filter example
2022-02-22 09:01:14 -04:00
Chi-Hsuan Huang bda55d99f3 Bump package versions (https://github.com/woocommerce/woocommerce-admin/pull/8333) 2022-02-21 11:27:45 +08:00
Chi-Hsuan Huang c05ed7777a Update dependencies to support react 17 (https://github.com/woocommerce/woocommerce-admin/pull/8305)
* Upgrade dependencies to support react17

Update pkg

Update @wordpress/api-fetch and gridicons

* Update test snapshots

* Update SnackbarList with latest react-spring

* Mock data.dispatch for task-list-item.test.tsx

* Remove '@wordpress/components/src/visually-hidden/style' import

wp-components has included it

* Update interpolateComponents import path

* Fix display-options test

* Add changelogs

Update changelogs

* Add @automattic/explat-client-react-helpers back

* Update webpack.config for explat-client-react-helpers

Update webpack config comment

Fix grammar
2022-02-21 10:34:25 +08:00
Moon 718bac6981 Prompt a modal to save any unsaved changes in OBW (https://github.com/woocommerce/woocommerce-admin/pull/8278)
* Add a modal to show when unsaved changes are detected

* Add functions to track value changes from the steps

* Warn unsaved changes for the store details

* Add styles for the unsaved modal

* Warn unsaved changes for the Industry

* Warn unsaved changes for the Product Types

* Warn unsaved changes for the Business Details

* Add changelog

* Add testing instructions.

* Sort array values before comparison

* Use only the array values to compare the diff

* Catch rejected promise on continue

* Set initial value to an empty object

* Fix failing tests
2022-02-17 11:15:11 -08:00
rjchow 99a382c649 Fixed typing errors in Stepper component after typescript conversion 2022-02-17 10:35:39 +08:00
rjchow 0a314f1a97 Renamed stepper components to .tsx 2022-02-17 10:35:39 +08:00
Paul Sealock e41441f83e Add hook reference generator README and documentation (https://github.com/woocommerce/woocommerce-admin/pull/8004)
* Add hook reference README

* update hook reference

* better

* changelog

* add pr number

* remove example

* add desc

* add stats

* jsdoc REPORTS_FILTER

* Category configs

* configs

* data

* dashboard

* dashboard charts

* save

* save

* save

* done with filters

* Add scope to slotFill docs

* data

* add all slotfills

* data

* Fix error when scope is not present, and make use of typedef imports

* Move chart and filter jsdoc definitions to the reports index file

* Update hook reference data.json

* Make use of import for filter typedef and address some typos

Co-authored-by: Lourens Schep <lourensschep@gmail.com>
2022-02-11 10:38:38 -04:00
RJ 087ce5aa61 Enable type definitions output for @woocommerce/components (https://github.com/woocommerce/woocommerce-admin/pull/8282)
* Output typedefs for @woocommerce/packages
2022-02-11 19:39:34 +08:00
louwie17 d41906267a Dev/e2e reset (https://github.com/woocommerce/woocommerce-admin/pull/8219)
* Add payment_setup track for WooCommerce Payments

* Add WooCommerce Reset Plugin to E2E environment

* Add resetWoComerceState util

* Add state reset before obw test

* Refactor resetWooCommerceState

resetWooCommerceState now makes the HTTP request locally instead of from inside the browser context.

* Update reset functionality

* Add custom settings reset function for onboarding

* Update reset functionality

* Add action-scheduler run helper function

* Fix add section test

* Add plugin removal helper functions

* Fix lint errors

* Fix broken e2e tests

* Add changelog

* Remove unused imports

* Add comment for extra timeout

* Add helper function to wait until button stops moving, incase of animations

* Fix lint error

* Add variable for string used in multiple places

Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
2022-02-02 08:55:10 -04:00
Moon 52fbcffe92 Make ExPlat request URL args filterable (https://github.com/woocommerce/woocommerce-admin/pull/8231)
* Support woocommerce_explat_request_args filter to modify ExPlat request args

* Add ExPlat test

* Add ExPlat test for PHP

* Add changelog

* Add doc for the filter

* Fix syntax
2022-02-01 14:17:03 -04:00
Jacob Sewell 5002a1498a Fix distorted Country/Region label at some zoom levels (https://github.com/woocommerce/woocommerce-admin/pull/8186)
* Override overflow rule for label in select controls in OBW store address inputs.

* Changelog for 7893/8186.

* Rather than specifically override the overflow for store addresss country/region, remove the specific rule that was causing the issue.

* Increase line-height on SelectControl label.

* Restore overflow: hidden rule for profile wizard control label.

* Update changelog for 7893/8186.

* Add package changelog entry for 7893/8186.
2022-01-31 15:56:15 -06:00
RJ ed27652e35 fix: onboarding wizard checkmarks go missing sometimes (https://github.com/woocommerce/woocommerce-admin/pull/8222)
- checkmarks in the stepper component go missing if the first checkmark is hidden
- happens because of html id collision between the checkmarks
- added some randomness to the mask ids
2022-01-27 19:08:31 +08:00
Ilyas Foo af2f0f7a78 Bump versions for multiple WooCommerce packages (https://github.com/woocommerce/woocommerce-admin/pull/8214)
* Bump versions for multiple packages

* Bump all package versions

* Fix spacing
2022-01-25 19:22:58 +08:00
louwie17 3742be465e Add performance tracks to onboarding flow (https://github.com/woocommerce/woocommerce-admin/pull/8042)
* Add payment_setup track for WooCommerce Payments

* Add timing props to tracks in onboarding when installing extensions

* Update extension key logic

* Add changelog

* Add tests for extension installation data for tracks

* Add util function for plugin slug parsing

* Only install and activate plugins that are not already active
2022-01-24 12:23:12 -04:00
Jacob Sewell 2b1dd08040 Fix/7174 dismiss button alignment (https://github.com/woocommerce/woocommerce-admin/pull/8168)
* Combine all the .woocommerce-task-dashboard__container .woocommerce-task-card rules in one block.

* Move the .woocommerce-task-card__section-controls text-align center rule up in specificity so it overrides the rule in experimental-list.
Do we need the experimental-list package still?

* Changelog for 7174/8168.

* Expand button to container width and center text rather than centering the entire button in the ellipsis menu.

* Move ellipsis menu button style to _global so it applies, um, globally.

* Update changelog description for 7174/8186.

* Move ellipsis-menu popover button style to package from _global.

* Add components package changelog for Dismiss button in Unreleased section.
2022-01-22 11:48:01 -06:00
Chi-Hsuan Huang ff1e31cfd4 Enhance report chart i18n support (https://github.com/woocommerce/woocommerce-admin/pull/8129)
* Support i18n texts for report chart

* Add changelogs

* Add d3-time-format to date pkg devDependencies

* Fix date php format and add tests

* Add date changelog

* Fix date test

* Escape week of string for php formatter
2022-01-20 08:20:18 +08:00
Fernando b74600593e Change the reviews empty state panels logic (https://github.com/woocommerce/woocommerce-admin/pull/8147)
* Add unapproved reviews check

* Add tests

* Add changelog

* Create a review e2e test

* Fix lint

* Rename some constants (https://github.com/woocommerce/woocommerce-admin/pull/8178)

* Renamed `countUnapprovedReviews`

* Renamed `lowStockProductsCount`

* Renamed `unreadOrdersCount`

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-01-19 13:45:17 -03:00
Chi-Hsuan Huang 9cfd69d778 Fix incorrect date options when the "Default Date Range" is set from Analytics settings (https://github.com/woocommerce/woocommerce-admin/pull/8189)
* Add defaultDateRange argument to getAllowedIntervalsForQuery function for default period value

* Fix incorrect date options when the "Default Date Range" is set

* Add changelog
2022-01-19 10:15:33 +08:00
Joel Thiessen 96c7eb4e26 Adding tooltip to describe the lack of refund deductions from revenue summaries (https://github.com/woocommerce/woocommerce-admin/pull/8187) 2022-01-18 12:07:32 -08:00
Chi-Hsuan Huang 3b8c6662e8 Fix incorrectly displayed note created date (https://github.com/woocommerce/woocommerce-admin/pull/8179)
* Fix incorrectly displayed note created date

* Add changelog

* Add package changelog
2022-01-18 18:24:15 +08:00
Chi-Hsuan Huang 08acc3e2f7 Fix incorrect reader text generated for data points on charts table (https://github.com/woocommerce/woocommerce-admin/pull/8181)
* Fix incorrect screen reader text generated for data points on charts table

* Add changelog
2022-01-18 18:10:23 +08:00
Joshua T Flowers 666f740659 Add localized validation to store address (https://github.com/woocommerce/woocommerce-admin/pull/8123)
* Use locale labels for store info

* Get address validation errors based on locale

* Fix validation rules based on locale

* Fix up store address in location task step

* Add changelog entry
2022-01-14 08:39:25 -05:00
Joshua T Flowers 3c20d0f007 Add countries data store (https://github.com/woocommerce/woocommerce-admin/pull/8119)
* Add countries data store

* Add countries state type to reducer

* Add changelog entry
2022-01-13 14:43:56 -05:00
Chi-Hsuan Huang f47a5c7898 Fix misaligned status column on orders report (https://github.com/woocommerce/woocommerce-admin/pull/8121)
* Fix misaligned status column on order report

Add labelPositionToLeft prop to order-status component

Set labelPositionToLeft=true for <OrderStatus> on orders report table

Remove style import

* Add changelogs

Add changelogs
2022-01-07 11:37:47 +08:00
louwie17 3998f88597 Remove unpublished wc-admin-settings package and update getSetting usage (https://github.com/woocommerce/woocommerce-admin/pull/8057)
* Remove use of wc-admin-settings from packages

* Move getSetting to getAdminSetting and remove wc-admin-settings package

* Add changelog

* Update package.json and remove last use of wc-admin-settings
2022-01-06 08:53:30 -04:00
Chi-Hsuan Huang 91fc05dcfe Fix misaligned rows per page dropdown (https://github.com/woocommerce/woocommerce-admin/pull/8113)
* Fix misaligned rows per page dropdown

* Add changelogs

Add changelogs
2022-01-05 18:01:42 +08:00