Commit Graph

289 Commits

Author SHA1 Message Date
Moon 3c2bae196b
Add navigation and progress-bar components for the new core profiler (#37741)
* add: core profiler scaffolding using xstate

* Add navigation and progress-bar components

* fix css lint error

* Update plugins/woocommerce-admin/client/core-profiler/components/navigation/woologo.tsx

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

* Update plugins/woocommerce-admin/client/core-profiler/components/progress-bar/progress-bar.tsx

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

* Update plugins/woocommerce-admin/client/core-profiler/components/navigation/navigation.tsx

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

* Import HTMLAttributes

* Remove var from __ function

* Make progress bar color configurable

* Destruct props directly in the function and use const to define the comp

* Refactor fillerStyles

* Use woocommerce prefix for classnames

* Use inherit for display -- initial did not work properly

* Fix css lint error

* Remove unused WooLogo var

* Use named export

* Fix js style

* Add changelog

* Fix broken tests

---------

Co-authored-by: rjchow <me@rjchow.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2023-04-26 17:27:53 -07:00
Joel Thiessen 6f7eeeaf49
Refactoring LayoutContext and implementing with product editor (#37720) 2023-04-25 15:17:33 -07: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
Joshua T Flowers 868fbbf23a
Register product editor blocks server-side (#37339)
* Move product block editor to new feature name

* Register all blocks and block assets server-side

* Add changelog entry

* Disable phpcs rule for file_get_contents
2023-04-06 10:13:48 -07:00
Gan Eng Chin 4f7705f691
Always use MarketingOverviewMultichannel for marketing page. 2023-03-23 23:19:34 +08:00
Matt Sherman b27f6023f8
Move remaining CES-related components to @woocommerce/customer-effort-score (#37316)
* Add @woocommerce/tracks to dev dependencies
* Move remaining CES-related components to @woocommerce/customer-effort-score
* Update imports in woocommerce/client/admin
2023-03-21 11:58:35 -04:00
Matt Sherman b94d38458d
Add components to @woocommerce/customer-effort-score (#37112)
* Update src structure of @woocommerce/customer-effort-score

* Changelog

* Add dependencies to @woocommerce/customer-effort-score

* Move useCustomerEffortScoreExitPageTracker and utils to @woocommerce/customer-effort-score

* Fix up imports from @woocommerce/customer-effort-score

* Changelog

* Fix import of constant

* Mock @woocommerce/customer-effort-score in tests

* Move tests to @woocommerce/customer-effort-score

* Update lock file

* Update lock file from trunk

* Update lock file again... this time, tests pass
2023-03-14 12:16:19 -04: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
Maikel David Pérez Gómez 2896a8cd13
Add the new feature to enable the new product editor blocks experience (#37137)
* Add the new feature to enable the new product editor blocks experience

* Add the type definition of the feature flag

* Add the feature to the beta_featues in Features.php file

* Keep the page routes when the feature is anabled

* Add the feature php class to manage page assets

* Add changelog file
2023-03-09 15:33:39 -03:00
Maikel David Pérez Gómez 3ded2b46e9
Create editor skeleton on add/edit product pages (#37023)
* Add required dependencies

* Create the block editor component

* Create the header component

* Create the sidebar component

* Create the editor component

* Remove comments

* Export the block editor from its package

* Enqueue wp-edit-site

* Create the new block mode product page

* Register the new ProductPage component in /add-product route

* Add temporal layout styles

* Fix rebasing conflicts

* Fix linter errors

* Redirect to the new product-editor page when edit

* Add changelog files

* Fixing dependencies conflicts and ignoring some non running test

* Add comment suggestions

* Fix conflicts after rebasing

* Add comment suggestions
2023-03-08 05:51:59 -04:00
Joshua T Flowers 04089f37e6
Add product variation flag to hide WIP (#36311)
* Add product variations feature flag

* Add changelog entry
2023-01-05 18:30:23 -08:00
Joshua T Flowers d46a1045e8
Add product variation form and routes (#36033)
* Add route for editing product variation

* Fix up ID selector for getItem in CRUD data store

* Add product variation form

* Add changelog entries
2022-12-16 11:20:10 -03:00
louwie17 613e58c061
CES exit prompt for product editing screens (#35728)
* Add exit page tracker logic and implement it for product pages

* Add changelog

* Fix lint errors and add comments

* Add ces_location prop

* Add mock to fix broken test

* Add CES exit page survey tests

* Fix a bug with React pages redirects and update actions

* Fix test

* Fix lint

* Add default inside location prop

* Remove exit prefix within action

* Address PR feedback and make sure its not triggered on save

* Update copy of exit feedback notice

* Add changelog

* Update name of param

* Fix lint error

* Use hasFinishedResolution vs isResolved in customerEffortScoreTracks
2022-12-12 09:56:28 -04:00
louwie17 e7dd1a0be9
Add/35300 ces feedback product mvp (#35690)
* Add ability to show CES modal through share Feedback button

* Make use of showCesModal in footer

* Update CES action for share feedback

* Update changes to support second CES question

* Add changelog

* Address some PR feedback
2022-12-02 11:59:42 -04:00
louwie17 0e8fbe083d
Add/35129 product mvp ces (#35652)
* Add product mvp ces footer

* Add changelog

* Reset action option name after CES action

* Make sure we make use of cesAction

* Add close button

* Fix formatting

* Fix css styling issues

* Add icon to success notice

* Add product mvp CES hook and modify logic a little bit

* Update the CES product action name

* Address PR feedback and fix styling for smaller screens

* Add second question to CES product footer and update options

* Add changelog

* Fix lint error

* Fix tests
2022-12-02 05:35:47 -04:00
Maikel David Pérez Gómez 79566d7e6b
Add a bottom padding to the whole form (#35721) 2022-11-29 15:11:57 -03:00
Maikel David Pérez Gómez 64ee20ff0f
Show a dismissible snackbar if the server responds an error (#35160)
* Show a dismissible snackbar if the server responds an error

* Removed the default value New shipping class from the Name field and replaced it with a placeholder: e.g. Fragile products

* Only used the category's name when the user creates a new shipping class for the first time

* Fix linter errors

* Update grammar error

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

* Add empty initial values to form field to prevent controlled/uncontrolled react error

* Tune error handling

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2022-10-22 10:47:17 -03:00
Gan Eng Chin 4b4b5f36e2
Feature integration: UI Revamp on Marketing Page (#34642)
Co-authored-by: Nima <nima.karimi@automattic.com>
Co-authored-by: Nima Karimi <73110514+nima-karimi@users.noreply.github.com>
2022-09-14 15:43:30 +08:00
Eric Jinks 3739c425ac
Remove WCPay Subscriptions offer page experiment code (#34317)
* Remove WCPay Subscriptions offer page experiment

This removes all code added in PR#32957 as experiment has ended.

(WooCommerce > Subscriptions admin menu item and empty state offer screen)

* Add changelog entry
2022-08-17 15:07:39 +12:00
Chi-Hsuan Huang 71ffd2c548
Update "context" prop of task list click/view event (#34297)
* Update Update context prop of wcadmin_tasklist_/view event

* Add changelog
2022-08-16 08:41:59 +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
louwie17 470fc899e1
Add/33 two column product page layout (#34113)
* Add product page layout components

* Add a quick sample page to test the product form layout

* Add changelog

* Add option 2

* Refactor the product field layout structure

* Update page component structure of product form

* Add simple SlotFill support

* Update product page chunk name

* Add order to slot fill and move product field layout wrapper into product category layout

* Remove unused import

* Consolidate the slot fill ordering logic

* Rename category component to section component to prevent confusion

* Remove edit product page and use the new add product page instead

* Add tests

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-08-04 10:15:30 -03:00
Fernando 835f3d548e
Add/42 new product page (#34115)
* Add feature falg

* Modify href to menu item

* Modify page title href button

* Add product files on Client

* Change button's URL for new Nav

* Add changelog

* Moved changelog

* Fix URL for new nav

* Change URL for add product task

* Add Tracks event

* Change const name

* Renamed tracks event name

* Undo Add New Product redirect

* Undo use Products addition

* Undo lint fix to woocommerce_admin.js

* Rename component and file (AddProductPage)

* Set flag in core.json to false

* Fix typo

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-08-03 14:42:22 -03:00
aezazs-multidots 0cbaab737d
Added the border bottom of the modal's header (#33807)
* Added the border bottom of the modal's header

* Created changelog entry

* Changelog entry update
2022-07-15 14:35:34 +08: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
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
Joel Thiessen 183ac65c82
Adding context property to tasklist tracks event, introducing LayoutContext (#33287) 2022-06-14 11:31:50 -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
Joel Thiessen ddafa8e380
Tasks chaining side panel (#33124) 2022-06-01 10:10:20 -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
Chris Aprea b6bc8d5c95 Add plumbing to render the "Subscription" admin menu item and page. 2022-04-22 16:11:24 +10:00
RJChow 1ba60ee69d Codemod to change i18n text domain from 'woocommerce-admin' to 'woocommerce' in WCA Client 2022-04-01 11:41:32 +08:00
Chi-Hsuan Huang 3dc5f95254 Update test mocks
Fix lint
2022-03-22 11:24:58 +08: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
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
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
Joshua T Flowers ace300b4cd Fix setup wizard title and flash of content (https://github.com/woocommerce/woocommerce-admin/pull/8201)
* Fix setup wizard title and flash of content

* Redirect to profiler server-side if landing on the homepage

* Add changelog entry
2022-01-26 15:28:52 -05:00
Jacob Sewell 917545577f Task List: Personalize your store / Import products - error message is not formatted correctly (https://github.com/woocommerce/woocommerce-admin/pull/8173)
* Use __() to display a generic error message on sample item import rather than passing through the server message because it probably has tags.

* Add changelog for 4314/8173.

* Add support for __unstableHTML option to Snackbar.

* Use __unstableHTML option to display server-side error messages as they come in.

* Update changelog description for 4314/8173.
2022-01-25 13:06:38 -06:00
Ilyas Foo a0ffceec06 Move WC Pay welcome page from wc-calypso-bridge (https://github.com/woocommerce/woocommerce-admin/pull/8151)
* Move WC Pay welcome page from wc-calypso-bridge (https://github.com/woocommerce/woocommerce-admin/pull/8083)

* Add wc-pay-welcome-screen flags

* Add wc pay welcome page from wc calpyso bridge

* Add changelog

* Rename var to pageViewTimestamp to prevent confusion

* Remove unused code

* Make sure hasViewedWelcomePage is a boolean value

* Simplify storeViewWelcome

* Add payments remind me later note (https://github.com/woocommerce/woocommerce-admin/pull/8085)

* Add payments remind me later note

Fix wcpay path

* Add changelogs

* Update src/Notes/PaymentsRemindMeLater.php

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

* Fix possibly_add_note syntax error

Update Events.php

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

* Replace flag icon with component and svg background to png (https://github.com/woocommerce/woocommerce-admin/pull/8101)

* Activate promo note after WC Pay is activated (https://github.com/woocommerce/woocommerce-admin/pull/8104)

* Activate promo after wcpay is a\ctivated

* Add changelogs

* Add experimental to promo API path and limit the promo names

* Use ExPlat to render the WC Pay menu conditionally (https://github.com/woocommerce/woocommerce-admin/pull/8115)

* Check ExPlat to render the menu conditionally

* Update the experiment name

* Fix letter case to follow feature class naming convention

* Enable wc-pay-welcome-page feature in core config (https://github.com/woocommerce/woocommerce-admin/pull/8124)

* Use wc_calypso_bridge_payments_dismissed option name to respect the previously saved setting from wp.com

* Missed wc_calypso_bridge_payments_dismissed rename

* Use the existing code to prevent duplication

* Fix warning (https://github.com/woocommerce/woocommerce-admin/pull/8141)

* Change experiment to come after checks (https://github.com/woocommerce/woocommerce-admin/pull/8142)

* Change track path to (https://github.com/woocommerce/woocommerce-admin/pull/8143)

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Replace deprecated wc-admin-settings package

Co-authored-by: Moon <moon.kyong@automattic.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2022-01-12 14:46:33 +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
Joshua T Flowers 7aeb0a19d2 Migrate header items to slot fills (https://github.com/woocommerce/woocommerce-admin/pull/7805)
* Add SlotFill area to header

* Add activity panel fill

* Move activity panel to root client folder

* Move activity panel registration to its own folder

* Add navigation fill

* Add page title slotfill

* Slot fill the back button

* Move mobile banner to slot fill

* Fix navigation fill on embed pages

* Add changelog entry

* Allow order prop to header item fill

* Split header into before and after

* Fix header title gaps

* Fix nav and mobile app banner placement

* Fix display options import

* Only use last item for page header title fill

* Use function to pass fill props instead of bind

* Rename header slots

* Fix mobile banner dismissal check

* Fix up inbox panel rename

* Update task title in tests

* Fix up task status retrieval
2021-12-14 11:56:42 -05:00
Moon 6747e90ceb Remove the Spinner component while loading the store alerts (https://github.com/woocommerce/woocommerce-admin/pull/7886)
* Remove Spinner

* Add changelog

* Use null so it render nothing

* Update changelog
2021-11-02 21:17:26 -07:00
Tomek Wytrębowicz cc5b2d9f58 Set the scope of `wpNavMenuClassChange` to wp-admin's menu. (https://github.com/woocommerce/woocommerce-admin/pull/7773)
Fixes woocommerce/woocommerce-admin#7772
2021-10-25 15:59:35 +02:00
louwie17 f16039684f Tests for task list components (https://github.com/woocommerce/woocommerce-admin/pull/7757)
* Added first set of task-list tests

* Fix event prefix and add two extra task list tests

* Add test for task list item

* Update package to allow tests with slotfill to work

* Add tests for Task component

* Add tasks tests

* Revert package.json changes

* Update prefixEvent function and revert package.json changes

* Remove class additions to body tag

* Add missing styles to tasks container as well
2021-10-15 16:56:17 -03:00
Joshua T Flowers 816776b02b Add route and layout for unmatched path (https://github.com/woocommerce/woocommerce-admin/pull/7503)
* Add route and layout for unmatched path

* Add NoMatch to catch missing report pages

* Load WooCommerce Admin scripts on all pages

* Move NoMatch inside default page layout

* Add permission checks to tabs

* Allow update_option_extended_task_list to be called on non-admin pages

* Check for task list task count in extended list update function

* Add changelog entry

* Add PR number to changelog entry

* Remove deprecated extended task list filter and tests
2021-10-14 10:04:17 -04:00
Joshua T Flowers 0b8596f53c Remove tasks feature flag and old components (https://github.com/woocommerce/woocommerce-admin/pull/7736)
* Remove feature flag

* Remove unused task status items

* Remove old task list components

* Remove more unused task status items

* Move completion checking to TaskList class

* Move completion checking to Task class

* Add changelog entry

* Fix up old task-list component references

* Remove flag around slotfill area

* Add back missing task stylesheet

* Move task specific styles to respective fills

* Add PR number to changelog entry
2021-10-05 14:20:28 -04:00
Joel Thiessen f187c6763a Adding SlotFill support for API-driven tasks components (https://github.com/woocommerce/woocommerce-admin/pull/7616) 2021-09-21 12:33:44 -07:00
Joel Thiessen 3ee60dc833 Fixing an unwanted page refresh when using Woo Navigation (https://github.com/woocommerce/woocommerce-admin/pull/7615)
* Adding changelog

* Fixing page refresh on woo navigation

* Narrowing scope of navigation slot fills
2021-09-15 09:42:54 -07:00
louwie17 022f7a173a Remove depreciated shared settings hook (https://github.com/woocommerce/woocommerce-admin/pull/7480)
* Initial set up for the WCAdminSettingsRegistry

* Make use of filter for admin settings

* Add wc/settings package and remove depreciated dropzone wrapper

* Make use of the getSetting function instead of accessing window directly

* Add comments

* Add changelog

* Remove un needed changes

* Update dropzone provider logic and fix styling

* Remove old css
2021-08-24 08:39:48 -03:00