Commit Graph

35 Commits

Author SHA1 Message Date
Alba Rincón e8e2c5d554
Show the "Design your own" banner when editing a theme which is not TT4 (#45481)
* Show the "Design your own" banner when editing a theme which is not TT4

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix lint errors

* Pass the active theme to the context

* Fix lint errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-13 14:55:04 +01:00
Patricia Hillebrandt ed624844f8
[CYS on Core] Ensure the user is directed to the in app marketplace whenever clicking on 'Browse all themes' (#45288)
* Ensure the user is directed to the in app marketplace whenever clicking on 'Browse all themes' on core.

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-05 10:15:09 +00:00
Luigi Teschio 6a30974ad4
Fix activeThemeHasMods undefined error (#45255)
* Fix activeThemeHasMods undefined error

* remove comment

* fix naming

* improve comment

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-04 19:09:36 +00:00
Alba Rincón 27ee0fd9d1
[CYS] Update path to intro when exiting the assembler (#44771)
* Update path to intro when exiting the assembler

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix styling

* Fix linting error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-27 09:28:24 +01:00
Alba Rincón 856fae433b
[CYS] Fetch the `activeThemeHasMods` right before is used to improve intro loading time (#44647)
* Fetch the activeThemeHasMods right before is used

* Add changelog
2024-02-22 09:30:11 +01:00
Luigi Teschio 159d47434b
[CYS - Core] Before installing the fonts, ensure that the font library is available (#44358)
* Avoid duplicating the `/onboarding/themes/recommended` request

* Use `fetchActiveThemeHasMods` in the `fetchIntroData` function

* Add changefile(s) from automation for the following project(s): woocommerce

* WIP

* WIP

* WIP

* WIP

* Move the `activeThemeHasMods` to outside the `intro` key, since it's used also in other places

Refactor, add comments and cleanup

* Remove unnecessary log

* Set the `activeThemeHasMods` on the parent window to true after the design step to avoid having to fetch it again

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove unused import

* Add comment and ref to the new issue

* CYS - Core: fix flow when Font Library is not installed

* Add changefile(s) from automation for the following project(s): woocommerce

* improve naming

---------

Co-authored-by: Alba Rincón <alba.rincon@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-02-06 11:28:26 +01:00
Alba Rincón a943de24fa
[CYS] Avoid duplicating requests during the CYS flow (#44179)
* Avoid duplicating the `/onboarding/themes/recommended` request

* Use `fetchActiveThemeHasMods` in the `fetchIntroData` function

* Add changefile(s) from automation for the following project(s): woocommerce

* WIP

* WIP

* WIP

* WIP

* Move the `activeThemeHasMods` to outside the `intro` key, since it's used also in other places

Refactor, add comments and cleanup

* Remove unnecessary log

* Set the `activeThemeHasMods` on the parent window to true after the design step to avoid having to fetch it again

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove unused import

* Add comment and ref to the new issue

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2024-02-05 12:36:33 +01:00
Luigi Teschio 42a2d00cba
CYS - Core - Check the Font Library availability (#44206)
* Ensure that the Font Library is available

* Add changefile(s) from automation for the following project(s): woocommerce

* fix iframe issue

* improve comment

* don't return any object

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 11:30:50 +00:00
Alba Rincón 4ad6b41026
Fix ai status missing on CYS transitional page (#44121)
* Fetch the ai status on the transitional page of the CYS flow

* Only check AI status on WooExpress

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-30 09:54:16 +01:00
Luigi Teschio 0a1c4a6920
[CYS - Core] Handling errors during the setup for the `NoAI` flow (#43810)
* CYS - Core: handling errors during the setup

* fix CSS format

* remove export

* fix CSS

* Add changefile(s) from automation for the following project(s): woocommerce

* fix import

* fix style notice

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-25 12:04:44 +01:00
Alba Rincón a44a45b56a
CYS Redirect to intro screen if theme is not modified (#43736)
* Redirect to intro screen if theme is not modified

* Add changefile(s) from automation for the following project(s): woocommerce

* Add and fix test for the redirection

* Redirect with the proper url 'intro'

* Remove only

* Avoid completing the cys task when switching themes

* Revert prev commit and reset `woocommerce_admin_customize_store_completed` before each test

* Set the `woocommerce_admin_customize_store_completed` to `no` before each test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-23 11:15:19 +01:00
Luigi Teschio c409fcd050
[CYS - Core] introduce route guards for the AI flow (#43481)
* CYS - Core: Setup the site with a default homepage when the assembler is loaded

* CYS - Core: Implement route guards

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-11 16:12:41 +01:00
Luigi Teschio c686f605e6
[CYS - Core] Update the homepage with default patterns when the assembler is loaded (#43457)
CYS - Core: Setup the site with a default homepage when the assembler is loaded
2024-01-11 15:32:16 +01:00
Luigi Teschio 1453597400
CYS - Core: implement 'noAI' flowType (#43368)
* CYS - Core: implement 'noAI' flowType

* Add changefile(s) from automation for the following project(s): woocommerce

* remove unused import

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-09 15:49:59 +01:00
Moon 212c5bca3e
CYS - AI Offline flow (#41656) 2023-12-06 20:49:28 +08:00
Chi-Hsuan Huang 73692a3b9b
[CYS] Hide feedback button when survey has already been completed (#41352)
* Fix cys feedback button should not appear if it has already been completed

* Add changelog
2023-11-10 16:35:46 +08:00
Chi-Hsuan Huang 3c839b04c0
Add SlotFill for custom buttons on Transitional Page (#41153)
* Enqueue scripts in translation page

* Add cys transitiona page secondary button slotfill

* Add changelog

* Fix slot

* Fix lint
2023-11-01 19:40:12 +08:00
Ilyas Foo 6805e5c5e6
Add fullscreen class to body when CYS component is shown (#41056)
* Add fullscreen class to body when CYS component is shown

* Changelog

* Update import and lint
2023-10-27 17:06:13 +08:00
Ilyas Foo b108e19a93
Try using iframe for loading assembler hub behind the scenes (#40936)
* Try using iframe for loading assembler behind the scenes

* Add css

* Lint

* Changelog

* Update plugins/woocommerce-admin/client/customize-store/design-with-ai/actions.ts

* Handle navigations around CYS if we're using iframe

* Add better loading handler

* Increase loader screen intervals

* Fix navigation

* Increase loader timeout to 30 seconds

* Much better loading detect from editor hook as suggested by Chi

* Unused import

* Lint css
2023-10-26 16:46:50 +08:00
RJ b436d40be3
add: CYS task-completed intro flow (#40616)
* add: UI work for task completed flow

* added spinner for intro page loading

* add: save ai generated theme id to options

* resolve rebase conflict

* fixed tests
2023-10-09 13:19:08 +08:00
Moon a99a52947e
Use themes REST API - CYS intro page (#40552)
* Use themes REST API

* Add changefile(s) from automation for the following project(s): woocommerce

* Use browse_all.href and set default value to /:admin-dir/themes.php

* Fix lint

* Fix tests

* Fix tests

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2023-10-05 08:33:50 -05:00
Chi-Hsuan Huang 06ea7ae24a
[Customize your store] Fix site preview in transitional screen (#40588)
* Replace mshot image with preview editor frame in transitional screen

* Add changelog

* Fix test

* Use current xstate to check if it is transitional page
2023-10-05 07:36:08 -05:00
Chi-Hsuan Huang de1fe1bf96
Fix Customize Your Store UI bugs (#40456)
* Add woocommerce_customize_store_ai_suggestions option to allowed list

* Add z-index=1 to tour-kit close btn to ensure it's clickable

* Fix cys container classname

* Fix color palette border style and frame spinner position

* Fix janky ai loader

* Add changelog

* Fix classname and section header spacing

* Fix cannot save cys logo changes

* Add use-selected-pattern hoook to add selected style to pattern

* Fix opacity preview issue

* Revert interval change

* Add test

* Fix findPatternByBlock

* Fix range input focus style

* Fix lint
2023-10-02 16:28:13 +08:00
Moon 4798829bbd
CYS -- Intro design updates (#40503)
* Update intro banner background image

* Remove unused graphic

* Add site icon and title

Also updated the intro banner background CSS

* Fix typo

* Remove assembler hub button -- not used here

* Fix image pos and import the correct image

* Change banner to offline when the user network goes offline

* CSS fixes

* Redirect to users to themes.php on Browse all themes clicked

* Change banner text, title, and button text depending on the network and jetpack status

* Add active theme design -- still needs API to get the active theme

* Add color variations

* Update info card margin

* Update info card margin

* Separate out ColorPalettes component

* Separate out ThemeCard

* Update site-title font color

* Update margin between banner p and button

* Update theme card row-gap

* Remove use of color palette border color

* Lint fixes

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix errors after rebase

---------

Co-authored-by: Chris Runnells <chris.runnells@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2023-09-29 17:17:36 -07:00
Moon 4d41109ca2
Customize Store -- Show warning modal when the active theme has mods (#40362)
* Add new context values

* Implement design with A.I change warning modal

* Add count-active-theme-mods endpoint

* Add count-active-theme-mods selector in the frontend

* Set mods_count correctly

* Fetch activeThemeHasMods and customizeStoreTaskCompleted

* Use activeThemeHasMods and customizeStoreCompleted

* Add changefile(s) from automation for the following project(s): @woocommerce/data, woocommerce

* Use correct APIs to check  template, pages, and styles modifications

* Fix hasModifiedPages resolve error

* Assign hasErrors on fetchIntroData errors

* Add changefile(s) from automation for the following project(s): @woocommerce/data, woocommerce

* Ignore TS error

* Fix css lint errors

* Fix broken test

* Fix broken test

* Revert changes -- no longer needed

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-09-29 16:03:50 -07:00
Chi-Hsuan Huang 79442edf1d
[Customize Your Store] Add track events to intro page (#40484)
* Add tracks to cys intro page

* Add changelog
2023-09-29 15:44:22 +08:00
Moon a9d6a3aa39
Customize Your Store - Implement back to home buttons (#40321)
* Implement back to home buttons

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-09-20 19:06:39 -07:00
Chi-Hsuan Huang 0b7aee458f
Implement customize your store task completion logic (#40267)
* Mark CYS task completed when clicking done button

* Mark CYS task completed after switching theme

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-09-19 19:02:02 +08:00
Chi-Hsuan Huang 8ce2611326
Add track events to customize store transitional page (#40143)
* Add cys transitional page tracks

* Add changefile(s) from automation for the following project(s): woocommerce

* Update plugins/woocommerce-admin/client/customize-store/transitional/index.tsx

Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>

* Update plugins/woocommerce-admin/client/customize-store/transitional/index.tsx

Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>

* Update plugins/woocommerce-admin/client/customize-store/transitional/index.tsx

Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>

* Fix tests

* Update query step for transitional step

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
2023-09-18 19:01:12 +08:00
Chi-Hsuan Huang 80eaece265
Add customize store transitional screen (#40122)
* Add CYS transitional screen

* Add changefile(s) from automation for the following project(s): woocommerce

* Add tests

* Update preview loading style and add requeue param

* Fix visible logic

* Fix img size

* Update comments

* Fix lint

* Pre-fetch image and wait a 5s before redirecting to transitional page after clicking on done button

* Remove unneed overflow

* Move pre-fetch logic to xstate and use spinner for button loading state

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-09-15 12:01:02 +08:00
RJ e52d11a87e
add: url navigation to cys (#40068)
* add: url navigation to cys

* bugfix for url not updating

* url handling for design-with-ai

* fixed url syncing so that it's working with @woocommerce/navigation

* changed useLocation to useQuery in assembler-hub save-hub
2023-09-12 14:32:50 +08:00
Moon c45335b936
CYS - Add LookAndFeel and ToneOfVoice pages (#39979)
* Add ProgressBar component to @woocommerce/components

* Add changelog

* Remove html.wp-toolbar in fullscreen mode

* Add base style

* Add Tell us a bit more about your business page

* Fix merge conflict issues

* Send BUSINESS_INFO_DESCRIPTION_COMPLETE event when continue button is clicked

* Remove duplicated style import

* Add changefile(s) from automation for the following project(s): @woocommerce/components, woocommerce

* Lint fix

* Add 'Look and Feel' and 'Tone of voice' pages';

* Use correct classname

* Minor changes

* Textearea color should be gray-900 after the user enter text
* guide font weight should be 500

* Fix layout shift when a choice is selected

* Fix choices width for tone of voice page

* Use context value for the default

* Revert button margin top

* Fix default selection

* Add X button

* Decrease the margin by 20px to accommodate the height of the close button

* Add close action

* Include @woocommerce/ai package

* Add AI service

* Use AI service

* Parse JSON from in function

* Fix assignLookAndTone event type

* Update plugins/woocommerce-admin/client/customize-store/design-with-ai/components/choice/choice.scss

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

* Update plugins/woocommerce-admin/client/customize-store/design-with-ai/services.ts

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

* Log when AI API endpoint request fails

* Add spinner when user clicks the continue button

* streamlined unnecessary isRequesting context and forwarded close event

* pnpm-lock changes from trunk

* lint fixes

* ai package test passWithNoTests

* changelog

* reset pnpm-lock to trunk

* Dev: update pnpm-lock.yaml and jest preset config (#40045)

* Update pnpm-lock.yaml

* Update jest-preset config to fix unexpected token error

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: rjchow <me@rjchow.com>
2023-09-06 14:21:09 +08:00
RJ af9ef856e5
add: customize your store AI wizard xstate scaffolding (#39863)
* add: customize your store AI wizard xstate scaffolding

* Update plugins/woocommerce-admin/client/customize-store/design-with-ai/index.tsx

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

---------

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2023-08-29 14:00:54 +08:00
Chi-Hsuan Huang 56f4ad623f
Add customize store assembler hub (#39843)
* Add @wordpress dependencies for customize store task

* Update webpack config to bundle wp edit-site package instead of using external

* Add customize-store task list item fill

* Update CustomizeStore task to load editor scripts and settings

* Update customize store routing path

Use /* since we want to match any path that starts with customize-store

* Add assembler-hub

* Ignore some wp packages from syncpack for customize store assembler hub

We need to use specific versions of these packages for the customize store
"@wordpress/interface", "@wordpress/router", "@wordpress/edit-site"

* Add changefile(s) from automation for the following project(s): woocommerce

* Tweak style

* Use CustomizeStoreContext and send xstate event

* Update assembler-hub style

* Fix nav width

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-08-28 09:28:05 +08:00
RJ d663c304c9
add: customize your store xstate scaffolding (#39619)
* add: customize your store xstate scaffolding

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

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

* improved findComponentMeta

---------

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2023-08-18 13:30:25 +08:00