Commit Graph

6774 Commits

Author SHA1 Message Date
Moon d51f69d2d7
Update track name prefix for core profiler (#38710)
* Use coreprofiler_ prefix

* Add Changelog

* Track name changes

* Rename intro_optin to intro_opt_in

* Extracted out recordFailedPluginInstallations and recordSuccessfulPluginInstallation to tracks

* Fix js lint error -- remove unused import
2023-06-15 13:37:14 -07:00
RJ 723c68e240
fix: core profiler plugins list race condition (#38732) 2023-06-15 12:45:54 -07:00
Maikel David Pérez Gómez fe7933e7a9
Implement experiment within code for new users (#38700)
* Configure the expiriment to redirect variation treatment to the new product editor

* Add changelog file

* Fix experiment name

* Fix changelog description
2023-06-15 14:42:57 -04:00
Nathan Silveira bfd720c28f
Extract usePublishedProductsCount hook and use it in about-the-editor-menu-item (#38742) 2023-06-15 13:03:18 -03:00
Maikel David Pérez Gómez 2471dcba05
Replace 'use classic editor' with 'Turn off the new product editor' in options menu (#38693)
* Options menu in product editor view should show Turn off the new product editor with some subtext

* Record event product_editor_options_turn_off_editor_click when clicking Turn off the new product form menu item

* Add changelog file
2023-06-15 10:55:11 -04:00
Nathan Silveira 5f94b411f0
Product Editor Onboarding: Add About the editor... option the more menu in product block editor (#38691)
* Add 'About the Editor' menu item

* Show the guide when clicking the menu item

* Add track event when clicking about the editor

* Add changelog

* Remove from product more menu
2023-06-15 10:07:46 -03:00
Matt Sherman 9d7b68b82c
Update product editor tour design (#38726) 2023-06-15 08:23:13 -04:00
Moon e50fb51b26
Set skipped flag when guided setup is skipped (#38730)
* Set woocommerce_onboarding_profile.skipped when guided setup is skipped

* Add Changelog
2023-06-14 21:12:03 -07:00
Chris Runnells 1e19d186c2
Fix task list header overlap (#38707) 2023-06-14 11:44:30 -10:00
Matt Sherman de6f77d8be
Fix transient notices overlapping product editor footer (take 2) (#38698)
* Use WooFooterItem for Footer

* Use WooFooterItem fill for TransientNotices

* Adjust TransientNotices styling to work in footer

* Fix footer width when in setup wizard

* Change export of TransientNotices from default to named

* Add border to footer

* Changelog

* Changelog

* Mock WooFooterItem to allow unit tests to pass

* Fix lint error in test
2023-06-14 16:32:28 -04:00
Fernando Marichal 47481490d8
CES modal modifications (#38643)
* Add extraFields prop

# Conflicts:
#	packages/js/product-editor/src/components/product-mvp-ces-footer/product-mvp-ces-footer.tsx

* Add changelog

* Add changelogs

* Fix styles

# Conflicts:
#	packages/js/product-editor/src/components/product-mvp-ces-footer/style.scss

* Add extraFields validation

* Remove files

* Add styles and js

* Modify the other share feedback form

* Change modal title

* Fix feedback-bar

* Fix return

* Fix params types

* Rename `extraFields` to `getExtraFieldsToBeShown`

* Fix styles

* Fix error handling

* Fix styles

* Rename prop

* Fix error message
2023-06-14 11:25:51 -03:00
Moon 604132391a
Visual changes for Intro, guided setup, and skipped guided setup pages (#38709)
* Change Skip this setup to Skip this step

* Visual changes on intro, user profile, and skip guided page

* Always check tracking agreement

* Change border to 2px

* Change Give yoru store a name font-size to 13

* Add Changelog

* Update test to reflect the text change

* Remove !important

* Update test snapshot

* Update test snapshot

* Remove test that is no longer necessary
2023-06-13 22:10:43 -07:00
Moon 620ff93e5a
Additional changes for the core profiler plugins page (#38616)
* Add install-and-activate-plugins-async action to onboarding

* Add label and learn_more_link types

* Use label and learn_more_link

* Fix type

* Add changelog

* Add changelog

* Add install_priority -- this will be used in the core profiler

* Sort selected plugins by install_priority for installation

* Remove unused imports

* dev: refactor installAndActivatePlugins to xstate

* ts fixes

* Sort plugins by install_priority

* Make sure WooCommerce Shipping is always visible

* Update free extension list content

* Updated WC payment description
* Updated logo images

* Visual changes on the plugin page

* Change CTA font size from 13px to 14px
* Change spacing between the chebox and logo to 24px
* Change heading font-weight to 500

* Fix css lint error

* Fix gray-900 variable name

* Hide learn more link on mobile view

* Add back learn more link that was removed from rebase

* Send pluginsAvailable to pluginInstallermachine

* Use is_activated to determine plugin availability and install status

* Update packages/js/data/src/onboarding/types.ts

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

* Update plugins/woocommerce/src/Internal/Admin/RemoteFreeExtensions/DefaultFreeExtensions.php

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

* Add back recordTracksPluginsLearnMoreLinkClicked

* Use install-and-activate-plugins-async when timer is up

* Record plugin and link with learn more linked clicked event

* Fix failign tests

* Add comment for install_priority

---------

Co-authored-by: rjchow <me@rjchow.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2023-06-13 15:03:03 -07:00
Chris Runnells 6e39164cea Update task list CSS to prevent text from overlapping the background image 2023-06-13 12:02:43 -10:00
Nathan Silveira bc3edb0ae1
Update style of Block product editor TourKit (#38640)
* Increment style of first step of block editor tour

* Changelog
2023-06-13 16:44:01 -03:00
Nathan Silveira 0fc765beb3
Product Editor Onboarding: Add "tell me more" button to wc.com page (#38639)
* Copy Guide component from @wordpress/components and fix focus issue

* Add 'tell me more' button and behavior

* Move Guide component from components package to admin package
Implement assigning an href to the finish button, sending the current page and origin as a parameter on the onFinish callback

* Remove dependency

* Restore pnpm-lock.yaml

* Add changelog

* Add comment in Guide component

* Dismiss modal only when it's finished or X button is clicked

* Add 'rel' when opening link in a new tab
2023-06-12 14:54:29 -03:00
Matt Sherman 2039d8915e
Show feedback bar after product editor tour/guide (#38669) 2023-06-12 12:43:19 -04:00
Nathan Silveira 18f2de2bc4
Always show pricing group fields, disable if not available for a product type (#38531)
* Always show General product tab

* Add info messages for variable and grouped products

* Add logic to disable/enable fields and labels based on product type

* Tweak CSS and fix links

* Add tracks events for links

* Add filters to pricing disabled message

* Tweak logic to only enable fields on certain product types instead of disabling in the opposite ones

Add fallback message when pricing is disabled but it's not Variable or Grouped product

* Add docblocks

* Fix more lint issues

* Fix last lint issues

* Update selector in e2e test

* Refactor PHP echo

* Attach to #woocommerce-product-data instead of attaching to body
2023-06-12 12:58:26 -03:00
Maikel David Pérez Gómez 72f7e6ebbb
Publishing product in classic editor redirects back to new editor (#38551)
* Changes the feature given it's id and a toggle value as a query param

* Swap classic editor and new product block editor url when product_block_editor feature changes

* Turn off the product_block_editor feature when user choose to use the classic editor

* Add changelog files

* Fix linter errors

* Add nonce to each feature change request

* Change the hooks name for better readability

* Use get_current_screen function to better identify if the current screen is the product creation or edition

* Add wp_die if the nonce verification failed

* Change regex for explode/parse_url for better reading
2023-06-09 11:18:40 -04:00
RJ 622711c48b
dev: refactor installAndActivatePlugins to xstate (#38577)
* dev: refactor installAndActivatePlugins to xstate

* ts fixes

* fixed first plugin install progress bar reset issue

* clean up todo comments

* fixed bug where errors were not reported if past 30s timeout

* fix lint
2023-06-09 15:08:45 +08:00
Matt Sherman dadc0eb777
Show feedback footer on product editor page (#38599) 2023-06-08 20:56:07 -04:00
RJ 5c4746cefc
add: core profiler url routing (#38620)
* added url routing

* fixed tests and changelog
2023-06-08 12:52:22 +08:00
Gan Eng Chin 99dbdbe3f2
Fix WooCommerce name typo in Codisto extension description in test (#38302) 2023-06-07 23:45:52 +08:00
RJ 1b1f86066f
dev: refactor core profiler pages (#38606)
* dev: refactor core-profiler - modularise each page

- wrapped each page's pre, post, and main states into their top level states for tidiness
- tagged them with id so that we can easily jump to them when doing routing
- generalised component finder code such that it recursively traverses the state meta object until it finds a component key
- fixed css label to use top level state key

* moved initializing into introOptIn so it's not a special case by itself
2023-06-07 11:39:38 +08:00
Nathan Silveira 52fe3c4a5a
Product Editor Onboarding: Show spotlight for first time visitors (#38590)
* Add placeholder TourKit in product-page

* Create component and configure it to show to the right of wp menu

* Finish TourKit and start creating features guide

* Implement CSS changes and background color

* Create Wrapper to facilitate showing the tour and guide without relying on the options in the future

* Refactor
Add tracks events

* Add changelog

* Fix lint problems

* Fix CSS

* Refactor styles

* General refactor and extract BlockEditorGuide component

* Add changelog

* Fix lint issues
2023-06-06 12:06:26 -03:00
RJ e1bdd2f73b
dev: refactor core profiler tracks actions (#38603)
* dev: refactor core-profiler - consolidate tracks

* dev: refactor core-profiler - moved tracks out

* dev: moved tracks up one level

* dev: fixed spawn warning

- caused by this xstate bug https://github.com/statelyai/xstate/issues/1429

* dev: standardised ctx -> context
2023-06-06 15:20:34 +08:00
Chris Runnells a5bbe0ed7c
Add Core Profiler loading spinner (#38598) 2023-06-05 10:32:07 -10: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
Chris Runnells 3ae3a0df8d Lint fixes 2023-06-02 15:08:33 -10:00
Chris Runnells 3082b21b1e Added ProfileSpinner component to display when Core Profiler assets are loading 2023-06-02 14:27:17 -10:00
Adrian Duffell bb2fcce173 Update task header max width
Fixes a bug where on 2-col layouts, text was overlapping the image because the overall container size is less than 500px.

75% is the equivelent of 500px for single-col layout.
2023-06-02 21:51:32 +08:00
louwie17 7d4f65b8c7
Fix save settings error within Analytics (#38542)
* Filter out undefined query params

* Add changelog
2023-05-31 09:35:54 -03:00
Sam Seay b076a7b521
Fix linter issues and update Syncpack (#38523) 2023-05-31 11:45:10 +12:00
Ilyas Foo edf95bf3f4
Update shipping partner suggestions to use data from API (#38457)
* Added shipping partner suggestions data handling in JS

* Add woocommerce services real info

* Add dynamic layout components, remove unused JS, added images to proper asset paths

* Changelog

* Update changelog and removed unused variable

* Remove console.log

* Lint fix

* Add shipping methods module in woocommerce/data

* Update data usage

* Revert "Added shipping partner suggestions data handling in JS"

This reverts commit 6a87ef2658.

* Lint fix
2023-05-30 15:56:32 +08:00
RJ ab18828e84
add: core profiler business info page (#38412)
* add: core profiler business info page
2023-05-30 15:05:38 +08:00
Maikel David Pérez Gómez b0ac1607b9
View should scroll to the top when navigating between tabs (#38484)
Override the interface skeleton container so it can be scrollable
2023-05-29 15:28:50 -04:00
Moon 6946ef384a
Core Profiler - Add extensions page (#38405)
* Initial design impl. without the full functionality

* Delete unused icons

* Add is_installed and plugins_page_skipped

* Add plugin-card component to render an installable plugin

* Implement plugins page

* Add loaders for plugins

* Add changelog

* Remove unused type

* Add changelog

* Remove unnecessary return statement

* Add obw/core-profiler

* Replace extensions with plugins

* Temp -- use window.location.href for Woo Home redirection

* Minor: code refactor

* Refactor isntallAndActivatedPlugins

* Skip plugins page when there is no available plugin

* Apply mobile styles

* Update plugins/woocommerce-admin/client/core-profiler/components/plugin-card/plugin-card.scss

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

* Update plugins/woocommerce-admin/client/core-profiler/components/plugin-card/plugin-card.scss

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

* Update plugins/woocommerce-admin/client/core-profiler/style.scss

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

* Bold errored plugin name

* Fix checkbox alignment

* Update changelog

* Fix object type for formatToParts function

* Fix lint issues

* Fix CSS lint issues

* Fallback to en-US when locale is not available

* Fix error with siteLocale

---------

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2023-05-29 07:45:30 -07:00
Nathan Silveira c44ee9649f
Filter by date_paid and date_completed on list table orders (#38428)
* Filter by date_paid and date_completed on list table orders based on configuration

* Use separate query param 'order_date_type' to filter orders

* Add clarifying comment

* Add missing phpcs ignore

* Refactor to use 'm' and 'order_date_type' query parameters
2023-05-26 05:19:01 -03:00
RJ 80f6d0a6a6
add: wccom migrate link in nux (#38441)
* add: wccom migrate link in nux

* Update plugins/woocommerce-admin/client/profile-wizard/steps/business-details/flows/selective-bundle/style.scss
2023-05-25 20:25:03 +10:00
Chi-Hsuan Huang af26209886
Update "Set up additional payment options" task view & complete logic (#38273)
* Cache WooCommercePayments task is_complete() result

* Update Set up additional payment task view logic

* Add changelog

* Update additional payment task view & complete logic

* Add changelog

* Fix lint and view logic

* Fix lint

* Fix lint

* Update payment task section heading logic
2023-05-25 12:24:15 +08:00
Joshua T Flowers 353e01eb65
Tweak typography and element spacing in product editor (#38351)
* Update header font size

* Remove icons from sections

* Update radio block label and spacing

* Make checkbox tooltips larger and vertically align

* Update description colors

* Update h4 font sizes in editor

* Add changelog entry

* Add core changelog entry

* Handle initial design feedback

* Remove copy of assets in client webpack config
2023-05-24 10:11:00 -04:00
Chi-Hsuan Huang 4547922f3f
Add core profiler user profile page (#38328) 2023-05-22 11:21:16 +08:00
Maikel David Pérez Gómez ebf0b92960
Use feature the new feature flags engine to guard the access to the new product blocks experience (#37122)
Unregister the product-block-editor feature flag from WC Admin Test Helper, and enable product block editor feature.
2023-05-19 12:53:55 -04:00
Nathan Silveira 869b897ddd
Rename tracks event `product_attributes_add` to `product_attributes_save` on the product page and update attributes (#38278)
* Change attributes of tracks event product_attributes_add

* Don't send used_for_variations_count if it's not variable product type

* Explicitly add null values in product_attributes_add when the attribute is sent on the other call

* Rename product_attributes_add on the product page to product_attributes_save
Fix inverted local and global attributes count
Remove unnecessary parameters
Refactor code

* Update changelog
2023-05-19 12:44:54 -03:00
louwie17 2843fbb7a8
Fix editor header hidden in Firefox (#38247)
* Update page config to add support for layout header/footer

* Fix lint error
2023-05-18 13:00:42 -03:00
Joshua T Flowers 81e92392d5
Fix double scrollbars on product editor page (#38281)
* Refactor Layout component to functional component

* Add class to pages based on page path

* Add styling for interface skeleton on product pages

* Add changelog entries

* Move product page styles out of product editor package and into client

* Fix linting issues

* Check for location before checking path in page tracking

* Dont add body classes when no page path exists

* Record page view without router location for embed pages
2023-05-18 05:25:36 -03:00
Chi-Hsuan Huang b8aa7eb1fe
Update task list documentation and example (#38245)
* Update woocommerce task list examples

* Update onboarding-tasks.md

* Add changelog

* Update changelog

* Update task list doc

* Update onboarding-tasks.md

* Update examples readme

* Fix lint

* Update onboarding-tasks.md

* Fix build wca example cmd

* Update plugins/woocommerce-admin/docs/features/onboarding-tasks.md

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

* Update plugins/woocommerce-admin/docs/features/onboarding-tasks.md

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

* Update plugins/woocommerce-admin/docs/features/onboarding-tasks.md

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

* Update plugins/woocommerce-admin/docs/features/onboarding-tasks.md

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

* Update task list image

---------

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2023-05-18 11:21:53 +08:00
RJ 00952e8b95
add: core profiler fetch extensions (#38270)
add: fetch extensions and countries from API for core profiler

- prefetch it once in the machine init so that it's instant when used later
- fetch it again in preExtensions state and store it to context
- added prefetch for getCountries as well
2023-05-18 10:50:59 +08:00
Chi-Hsuan Huang dcbfbe2748
Cleanup task list and re-organize file structure (#38271)
* Deprecate onboarding task snooze APIs

* Cleanup task list and organize tasks file structure

* Add changelog

* Fix lint

* Fix tests

* Remove two-columns check logic

* Fix mock path
2023-05-17 09:54:31 +08:00
Maikel David Pérez Gómez 4b3479595b
Only register blocks when user navigates to the product edit page (#38303)
* Remove block registration from within the Editor component

* Expose the initBlocks function to be used outside of the product package

* Register blocks within the ProductPage component

* Add changelog files

* Unregister blocks when product page gets unmounted
2023-05-16 07:41:26 -03:00