diff --git a/plugins/woocommerce-admin/client/customize-store/assembler-hub/hooks/use-home-templates.ts b/plugins/woocommerce-admin/client/customize-store/assembler-hub/hooks/use-home-templates.ts index 43d2964a35d..ae5bf2d1ec6 100644 --- a/plugins/woocommerce-admin/client/customize-store/assembler-hub/hooks/use-home-templates.ts +++ b/plugins/woocommerce-admin/client/customize-store/assembler-hub/hooks/use-home-templates.ts @@ -12,7 +12,7 @@ import { parse } from '@wordpress/blocks'; import { usePatterns, Pattern, PatternWithBlocks } from './use-patterns'; // TODO: It might be better to create an API endpoint to get the templates. -const LARGE_BUSINESS_TEMPLATES = { +export const LARGE_BUSINESS_TEMPLATES = { template1: [ 'a8c/cover-image-with-left-aligned-call-to-action', 'woocommerce-blocks/featured-products-5-item-grid', @@ -42,7 +42,7 @@ const LARGE_BUSINESS_TEMPLATES = { ], }; -const SMALL_MEDIUM_BUSINESS_TEMPLATES = { +export const SMALL_MEDIUM_BUSINESS_TEMPLATES = { template1: [ 'woocommerce-blocks/featured-products-fresh-and-tasty', 'woocommerce-blocks/testimonials-single', @@ -68,7 +68,16 @@ const SMALL_MEDIUM_BUSINESS_TEMPLATES = { ], }; -const getTemplatePatterns = ( +const TEMPLATES = { + template1: LARGE_BUSINESS_TEMPLATES.template1, + template2: LARGE_BUSINESS_TEMPLATES.template2, + template3: LARGE_BUSINESS_TEMPLATES.template3, + template4: SMALL_MEDIUM_BUSINESS_TEMPLATES.template1, + template5: SMALL_MEDIUM_BUSINESS_TEMPLATES.template2, + template6: SMALL_MEDIUM_BUSINESS_TEMPLATES.template3, +}; + +export const getTemplatePatterns = ( template: string[], patternsByName: Record< string, Pattern > ) => @@ -88,27 +97,26 @@ const getTemplatePatterns = ( } ) .filter( ( pattern ) => pattern !== null ) as PatternWithBlocks[]; +export const patternsToNameMap = ( blockPatterns: Pattern[] ) => + blockPatterns.reduce( + ( acc: Record< string, Pattern >, pattern: Pattern ) => { + acc[ pattern.name ] = pattern; + return acc; + }, + {} + ); + export const useHomeTemplates = () => { - // TODO: Get businessType from option - const businessType = 'SMB' as string; const { blockPatterns, isLoading } = usePatterns(); - const patternsByName = useMemo( () => { - return blockPatterns.reduce( - ( acc: Record< string, Pattern >, pattern: Pattern ) => { - acc[ pattern.name ] = pattern; - return acc; - }, - {} - ); - }, [ blockPatterns ] ); + const patternsByName = useMemo( + () => patternsToNameMap( blockPatterns ), + [ blockPatterns ] + ); const homeTemplates = useMemo( () => { if ( isLoading ) return {}; - const recommendedTemplates = - businessType === 'SMB' - ? SMALL_MEDIUM_BUSINESS_TEMPLATES - : LARGE_BUSINESS_TEMPLATES; + const recommendedTemplates = TEMPLATES; return Object.entries( recommendedTemplates ).reduce( ( diff --git a/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/constants.ts b/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/constants.ts index 2ab392fb6ab..497c7fc64df 100644 --- a/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/constants.ts +++ b/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/constants.ts @@ -124,6 +124,68 @@ export const COLOR_PALETTES = [ }, wpcom_category: 'Neutral', }, + { + title: 'Purple Twilight', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#301834', + name: 'Primary', + slug: 'primary', + }, + { + color: '#6a5eb7', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#090909', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#fefbff', + name: 'Background', + slug: 'background', + }, + { + color: '#f3eaf5', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Neutral', + }, { title: 'Midnight Citrus', version: 2, @@ -186,6 +248,440 @@ export const COLOR_PALETTES = [ }, wpcom_category: 'Neutral', }, + { + title: 'Lemon Myrtle', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#3E7172', + name: 'Primary', + slug: 'primary', + }, + { + color: '#FC9B00', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#325C5D', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#ffffff', + name: 'Background', + slug: 'background', + }, + { + color: '#E3F2EF', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--foreground)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Neutral', + }, + { + title: 'Green Thumb', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#164A41', + name: 'Primary', + slug: 'primary', + }, + { + color: '#4B7B4D', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#164A41', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#ffffff', + name: 'Background', + slug: 'background', + }, + { + color: '#CEEAC4', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Neutral', + }, + { + title: 'Golden Haze', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#232224', + name: 'Primary', + slug: 'primary', + }, + { + color: '#EBB54F', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#515151', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#ffffff', + name: 'Background', + slug: 'background', + }, + { + color: '#FFF0AE', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--secondary)', + text: 'var(--wp--preset--color--foreground)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Neutral', + }, + { + title: 'Golden Indigo', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#4866C0', + name: 'Primary', + slug: 'primary', + }, + { + color: '#C09F50', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#405AA7', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#ffffff', + name: 'Background', + slug: 'background', + }, + { + color: '#FBF5EE', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Neutral', + }, + { + title: 'Arctic Dawn', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#243156', + name: 'Primary', + slug: 'primary', + }, + { + color: '#DE5853', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#243156', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#ffffff', + name: 'Background', + slug: 'background', + }, + { + color: '#E7E7E7', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Neutral', + }, + { + title: 'Jungle Sunrise', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#1a4435', + name: 'Primary', + slug: 'primary', + }, + { + color: '#ed774e', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#0a271d', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#fefbec', + name: 'Background', + slug: 'background', + }, + { + color: '#f7decb', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Bright', + }, + { + title: 'Berry Grove', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#1F351A', + name: 'Primary', + slug: 'primary', + }, + { + color: '#DE76DE', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#1f351a', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#fdfaf1', + name: 'Background', + slug: 'background', + }, + { + color: '#ecf6eb', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Bright', + }, { title: 'Fuchsia', version: 2, @@ -310,6 +806,68 @@ export const COLOR_PALETTES = [ }, wpcom_category: 'Bright', }, + { + title: 'Canary', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#0F0F05', + name: 'Primary', + slug: 'primary', + }, + { + color: '#353535', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#0F0F05', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#FCFF9B', + name: 'Background', + slug: 'background', + }, + { + color: '#E8EB8C', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--foreground)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Bright', + }, { title: 'Gumtree Sunset', version: 2, @@ -434,6 +992,133 @@ export const COLOR_PALETTES = [ }, wpcom_category: 'Bright', }, + { + title: 'Cinder', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#c14420', + name: 'Primary', + slug: 'primary', + }, + { + color: '#2F2D2D', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#863119', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#f1f2f2', + name: 'Background', + slug: 'background', + }, + { + color: '#DCDCDC', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + border: { + radius: '0', + }, + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Bright', + }, + { + title: 'Blue Lagoon', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#004DE5', + name: 'Primary', + slug: 'primary', + }, + { + color: '#0496FF', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#0036A3', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#FEFDF8', + name: 'Background', + slug: 'background', + }, + { + color: '#DEF2F7', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--secondary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Bright', + }, { title: 'Sandalwood Oasis', version: 2, @@ -496,6 +1181,130 @@ export const COLOR_PALETTES = [ }, wpcom_category: 'Dark', }, + { + title: 'Rustic Rosewood', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#F4F4F2', + name: 'Primary', + slug: 'primary', + }, + { + color: '#EE797C', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#ffffff', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#1A1A1A', + name: 'Background', + slug: 'background', + }, + { + color: '#3B3939', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Dark', + }, + { + title: 'Cinnamon Latte', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + slug: 'primary', + color: '#D9CAB3', + name: 'Primary', + }, + { + slug: 'secondary', + color: '#BC8034', + name: 'Secondary', + }, + { + slug: 'foreground', + color: '#FFFFFF', + name: 'Foreground', + }, + { + slug: 'background', + color: '#3C3F4D', + name: 'Background', + }, + { + slug: 'tertiary', + color: '#2B2D36', + name: 'Tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Dark', + }, { title: 'Lilac Nightshade', version: 2, @@ -558,4 +1367,314 @@ export const COLOR_PALETTES = [ }, wpcom_category: 'Dark', }, + { + title: 'Lightning', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#ebffd2', + name: 'Primary', + slug: 'primary', + }, + { + color: '#fefefe', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#ebffd2', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#0e1fb5', + name: 'Background', + slug: 'background', + }, + { + color: '#0A1680', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--foreground)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Dark', + }, + { + title: 'Aquamarine Night', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#deffef', + name: 'Primary', + slug: 'primary', + }, + { + color: '#56fbb9', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#ffffff', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#091C48', + name: 'Background', + slug: 'background', + }, + { + color: '#10317F', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Dark', + }, + { + title: 'Charcoal', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#dbdbdb', + name: 'Primary', + slug: 'primary', + }, + { + color: '#efefef', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#dbdbdb', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#1e1e1e', + name: 'Background', + slug: 'background', + }, + { + color: '#000000', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Dark', + }, + { + title: 'Evergreen Twilight', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + color: '#ffffff', + name: 'Primary', + slug: 'primary', + }, + { + color: '#8EE978', + name: 'Secondary', + slug: 'secondary', + }, + { + color: '#ffffff', + name: 'Foreground', + slug: 'foreground', + }, + { + color: '#181818', + name: 'Background', + slug: 'background', + }, + { + color: '#636363', + name: 'Tertiary', + slug: 'tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--secondary)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + }, + }, + }, + }, + wpcom_category: 'Dark', + }, + { + title: 'Slate', + version: 2, + settings: { + color: { + palette: { + theme: [ + { + slug: 'primary', + color: '#FFFFFF', + name: 'Primary', + }, + { + slug: 'secondary', + color: '#FFDF6D', + name: 'Secondary', + }, + { + slug: 'foreground', + color: '#EFF2F9', + name: 'Foreground', + }, + { + slug: 'background', + color: '#13161E', + name: 'Background', + }, + { + slug: 'tertiary', + color: '#303036', + name: 'Tertiary', + }, + ], + }, + }, + }, + styles: { + color: { + background: 'var(--wp--preset--color--background)', + text: 'var(--wp--preset--color--foreground)', + }, + elements: { + button: { + color: { + background: 'var(--wp--preset--color--primary)', + text: 'var(--wp--preset--color--background)', + }, + }, + link: { + color: { + text: 'var(--wp--preset--color--foreground)', + }, + ':hover': { + color: { + text: 'var(--wp--preset--color--primary)', + }, + }, + }, + }, + }, + wpcom_category: 'Dark', + }, ]; diff --git a/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/index.tsx b/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/index.tsx index 5cb2ea582d6..ff67f4b71b4 100644 --- a/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/index.tsx +++ b/plugins/woocommerce-admin/client/customize-store/assembler-hub/sidebar/global-styles/color-palette-variations/index.tsx @@ -21,7 +21,8 @@ export const ColorPalette = () => { gap={ 4 } className="woocommerce-customize-store_color-palette-container" > - { COLOR_PALETTES.map( ( variation, index ) => ( + { /* TODO: Show 9 colors based on the AI recommendation */ } + { COLOR_PALETTES.slice( 0, 9 ).map( ( variation, index ) => ( diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/actions.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/actions.ts index f51259c427a..ee6d4f2987f 100644 --- a/plugins/woocommerce-admin/client/customize-store/design-with-ai/actions.ts +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/actions.ts @@ -14,6 +14,8 @@ import { designWithAiStateMachineEvents, FontPairing, LookAndToneCompletionResponse, + Header, + Footer, } from './types'; import { aiWizardClosedBeforeCompletionEvent } from './events'; import { @@ -110,6 +112,42 @@ const assignFontPairing = assign< }, } ); +const assignHeader = assign< + designWithAiStateMachineContext, + designWithAiStateMachineEvents +>( { + aiSuggestions: ( context, event: unknown ) => { + return { + ...context.aiSuggestions, + header: ( + event as { + data: { + response: Header; + }; + } + ).data.response.slug, + }; + }, +} ); + +const assignFooter = assign< + designWithAiStateMachineContext, + designWithAiStateMachineEvents +>( { + aiSuggestions: ( context, event: unknown ) => { + return { + ...context.aiSuggestions, + footer: ( + event as { + data: { + response: Footer; + }; + } + ).data.response.slug, + }; + }, +} ); + const logAIAPIRequestError = () => { // log AI API request error // eslint-disable-next-line no-console @@ -178,6 +216,8 @@ export const actions = { assignLookAndTone, assignDefaultColorPalette, assignFontPairing, + assignHeader, + assignFooter, logAIAPIRequestError, updateQueryStep, recordTracksStepViewed, diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/footer.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/footer.ts new file mode 100644 index 00000000000..b3c5a321656 --- /dev/null +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/footer.ts @@ -0,0 +1,47 @@ +/** + * External dependencies + */ +import { z } from 'zod'; + +const footerChoices = [ + { + slug: 'woocommerce-blocks/footer-simple-menu-and-cart', + label: 'Footer with Simple Menu and Cart', + }, + { + slug: 'woocommerce-blocks/footer-with-3-menus', + label: 'Footer with 3 Menus', + }, + { + slug: 'woocommerce-blocks/footer-large', + label: 'Large Footer', + }, +]; + +const allowedFooter: string[] = footerChoices.map( ( footer ) => footer.slug ); + +export const footerValidator = z.object( { + slug: z.string().refine( ( slug ) => allowedFooter.includes( slug ), { + message: 'Footer not part of allowed list', + } ), +} ); + +export const defaultFooter = { + queryId: 'default_footer', + + // make sure version is updated every time the prompt is changed + version: '2023-09-19', + prompt: ( businessDescription: string, look: string, tone: string ) => { + return ` + You are a WordPress theme expert. Analyse the following store description, merchant's chosen look and tone, and determine the most appropriate footer. + Respond only with one footer and only its JSON. + + Chosen look and tone: ${ look } look, ${ tone } tone. + Business description: ${ businessDescription } + + Footer to choose from: + ${ JSON.stringify( footerChoices ) } + `; + }, + responseValidation: footerValidator.parse, +}; diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/header.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/header.ts new file mode 100644 index 00000000000..ac087c59934 --- /dev/null +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/header.ts @@ -0,0 +1,51 @@ +/** + * External dependencies + */ +import { z } from 'zod'; + +const headerChoices = [ + { + slug: 'woocommerce-blocks/header-essential', + label: 'Essential Header', + }, + { + slug: 'woocommerce-blocks/header-centered-menu-with-search', + label: 'Centered Menu with search Header', + }, + { + slug: 'woocommerce-blocks/header-minimal', + label: 'Minimal Header', + }, + { + slug: 'woocommerce-blocks/header-large', + label: 'Large Header', + }, +]; + +const allowedHeaders: string[] = headerChoices.map( ( header ) => header.slug ); + +export const headerValidator = z.object( { + slug: z.string().refine( ( slug ) => allowedHeaders.includes( slug ), { + message: 'Header not part of allowed list', + } ), +} ); + +export const defaultHeader = { + queryId: 'default_header', + + // make sure version is updated every time the prompt is changed + version: '2023-09-19', + prompt: ( businessDescription: string, look: string, tone: string ) => { + return ` + You are a WordPress theme expert. Analyse the following store description, merchant's chosen look and tone, and determine the most appropriate header. + Respond only with one header and only its JSON. + + Chosen look and tone: ${ look } look, ${ tone } tone. + Business description: ${ businessDescription } + + Headers to choose from: + ${ JSON.stringify( headerChoices ) } + `; + }, + responseValidation: headerValidator.parse, +}; diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/index.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/index.ts index b0533ec1dc8..58c7c7a684c 100644 --- a/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/index.ts +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/index.ts @@ -1,3 +1,5 @@ export * from './colorChoices'; export * from './lookAndTone'; export * from './fontPairings'; +export * from './header'; +export * from './footer'; diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/test/footer.test.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/test/footer.test.ts new file mode 100644 index 00000000000..f8299e970a9 --- /dev/null +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/test/footer.test.ts @@ -0,0 +1,47 @@ +/** + * Internal dependencies + */ +import { footerValidator } from '..'; + +describe( 'footerValidator', () => { + it( 'should validate when footer is part of the allowed list', () => { + const validFooter = { slug: 'woocommerce-blocks/footer-large' }; + expect( () => footerValidator.parse( validFooter ) ).not.toThrow(); + } ); + + it( 'should not validate when footer is not part of the allowed list', () => { + const invalidFooter = { + slug: 'woocommerce-blocks/footer-large-invalid', + }; + expect( () => footerValidator.parse( invalidFooter ) ) + .toThrowErrorMatchingInlineSnapshot( ` + "[ + { + \\"code\\": \\"custom\\", + \\"message\\": \\"Footer not part of allowed list\\", + \\"path\\": [ + \\"slug\\" + ] + } + ]" + ` ); + } ); + + it( 'should not validate when slug is not a string', () => { + const invalidType = { slug: 123 }; + expect( () => footerValidator.parse( invalidType ) ) + .toThrowErrorMatchingInlineSnapshot( ` + "[ + { + \\"code\\": \\"invalid_type\\", + \\"expected\\": \\"string\\", + \\"received\\": \\"number\\", + \\"path\\": [ + \\"slug\\" + ], + \\"message\\": \\"Expected string, received number\\" + } + ]" + ` ); + } ); +} ); diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/test/header.test.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/test/header.test.ts new file mode 100644 index 00000000000..ca62507c68c --- /dev/null +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/prompts/test/header.test.ts @@ -0,0 +1,47 @@ +/** + * Internal dependencies + */ +import { headerValidator } from '..'; + +describe( 'headerValidator', () => { + it( 'should validate when header is part of the allowed list', () => { + const validHeader = { slug: 'woocommerce-blocks/header-large' }; + expect( () => headerValidator.parse( validHeader ) ).not.toThrow(); + } ); + + it( 'should not validate when header is not part of the allowed list', () => { + const invalidHeader = { + slug: 'woocommerce-blocks/header-large-invalid', + }; + expect( () => headerValidator.parse( invalidHeader ) ) + .toThrowErrorMatchingInlineSnapshot( ` + "[ + { + \\"code\\": \\"custom\\", + \\"message\\": \\"Header not part of allowed list\\", + \\"path\\": [ + \\"slug\\" + ] + } + ]" + ` ); + } ); + + it( 'should not validate when slug is not a string', () => { + const invalidType = { slug: 123 }; + expect( () => headerValidator.parse( invalidType ) ) + .toThrowErrorMatchingInlineSnapshot( ` + "[ + { + \\"code\\": \\"invalid_type\\", + \\"expected\\": \\"string\\", + \\"received\\": \\"number\\", + \\"path\\": [ + \\"slug\\" + ], + \\"message\\": \\"Expected string, received number\\" + } + ]" + ` ); + } ); +} ); diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/services.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/services.ts index f8b7cc1671b..211856d035a 100644 --- a/plugins/woocommerce-admin/client/customize-store/design-with-ai/services.ts +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/services.ts @@ -1,16 +1,32 @@ +/* eslint-disable @woocommerce/dependency-group */ +/* eslint-disable @typescript-eslint/ban-ts-comment */ /** * External dependencies */ import { __experimentalRequestJetpackToken as requestJetpackToken } from '@woocommerce/ai'; import apiFetch from '@wordpress/api-fetch'; import { recordEvent } from '@woocommerce/tracks'; +import { OPTIONS_STORE_NAME } from '@woocommerce/data'; import { Sender, assign, createMachine } from 'xstate'; +import { dispatch, resolveSelect } from '@wordpress/data'; +// @ts-ignore No types for this exist yet. +import { store as coreStore } from '@wordpress/core-data'; +// @ts-ignore No types for this exist yet. +import { mergeBaseAndUserConfigs } from '@wordpress/edit-site/build-module/components/global-styles/global-styles-provider'; /** * Internal dependencies */ import { designWithAiStateMachineContext } from './types'; import { lookAndTone } from './prompts'; +import { FONT_PAIRINGS } from '../assembler-hub/sidebar/global-styles/font-pairing-variations/constants'; +import { COLOR_PALETTES } from '../assembler-hub/sidebar/global-styles/color-palette-variations/constants'; +import { + patternsToNameMap, + getTemplatePatterns, + LARGE_BUSINESS_TEMPLATES, + SMALL_MEDIUM_BUSINESS_TEMPLATES, +} from '../assembler-hub/hooks/use-home-templates'; const browserPopstateHandler = () => ( sendBack: Sender< { type: 'EXTERNAL_URL_UPDATE' } > ) => { @@ -192,8 +208,185 @@ export const queryAiEndpoint = createMachine( } ); +export const updateStorePatterns = async ( + context: designWithAiStateMachineContext +) => { + try { + // TODO: Probably move this to a more appropriate place with a check. We should set this when the user granted permissions during the onboarding phase. + await dispatch( OPTIONS_STORE_NAME ).updateOptions( { + woocommerce_blocks_allow_ai_connection: true, + } ); + + await apiFetch( { + path: '/wc/store/patterns', + method: 'POST', + data: { + business_description: + context.businessInfoDescription.descriptionText, + }, + } ); + } catch ( error ) { + recordEvent( 'customize_your_store_update_store_pattern_api_error', { + error: error instanceof Error ? error.message : 'unknown', + } ); + throw error; + } +}; + +// Update the current global styles of theme +const updateGlobalStyles = async ( { + colorPaletteName = COLOR_PALETTES[ 0 ].title, + fontPairingName = FONT_PAIRINGS[ 0 ].title, +}: { + colorPaletteName: string; + fontPairingName: string; +} ) => { + const colorPalette = COLOR_PALETTES.find( + ( palette ) => palette.title === colorPaletteName + ); + const fontPairing = FONT_PAIRINGS.find( + ( pairing ) => pairing.title === fontPairingName + ); + + const globalStylesId = await resolveSelect( + coreStore + // @ts-ignore No types for this exist yet. + ).__experimentalGetCurrentGlobalStylesId(); + + // @ts-ignore No types for this exist yet. + const { saveEntityRecord } = dispatch( coreStore ); + + await saveEntityRecord( + 'root', + 'globalStyles', + { + id: globalStylesId, + styles: mergeBaseAndUserConfigs( + colorPalette?.styles || {}, + fontPairing?.styles || {} + ), + settings: mergeBaseAndUserConfigs( + colorPalette?.settings || {}, + fontPairing?.settings || {} + ), + }, + { + throwOnError: true, + } + ); +}; + +// Update the current theme template +const updateTemplate = async ( { + headerSlug, + businessSize, + homepageTemplateId, + footerSlug, +}: { + headerSlug: string; + businessSize: 'SMB' | 'LB'; + homepageTemplateId: + | keyof typeof SMALL_MEDIUM_BUSINESS_TEMPLATES + | keyof typeof LARGE_BUSINESS_TEMPLATES; + footerSlug: string; +} ) => { + const patterns = ( await resolveSelect( + coreStore + // @ts-ignore No types for this exist yet. + ).getBlockPatterns() ) as Pattern[]; + + const patternsByName = patternsToNameMap( patterns ); + + const headerPattern = patternsByName[ headerSlug ]; + const footerPattern = patternsByName[ footerSlug ]; + + const homepageTemplate = getTemplatePatterns( + businessSize === 'SMB' + ? SMALL_MEDIUM_BUSINESS_TEMPLATES[ homepageTemplateId ] + : LARGE_BUSINESS_TEMPLATES[ homepageTemplateId ], + patternsByName + ); + + const content = [ headerPattern, ...homepageTemplate, footerPattern ] + .filter( Boolean ) + .map( ( pattern ) => pattern.content ) + .join( '\n\n' ); + + const currentTemplate = await resolveSelect( + coreStore + // @ts-ignore No types for this exist yet. + ).__experimentalGetTemplateForLink( '/' ); + + // @ts-ignore No types for this exist yet. + const { saveEntityRecord } = dispatch( coreStore ); + + await saveEntityRecord( + 'postType', + currentTemplate.type, + { + id: currentTemplate.id, + content, + }, + { + throwOnError: true, + } + ); +}; + +export const assembleSite = async ( + context: designWithAiStateMachineContext +) => { + try { + await updateGlobalStyles( { + colorPaletteName: context.aiSuggestions.defaultColorPalette.default, + fontPairingName: context.aiSuggestions.fontPairing, + } ); + recordEvent( 'customize_your_store_ai_update_global_styles_success' ); + } catch ( error ) { + // TODO handle error + // eslint-disable-next-line no-console + console.error( error ); + recordEvent( + 'customize_your_store_ai_update_global_styles_response_error', + { + error: error instanceof Error ? error.message : 'unknown', + } + ); + } + + try { + await updateTemplate( { + headerSlug: context.aiSuggestions.header, + // TODO: Get from context + businessSize: 'SMB', + homepageTemplateId: 'template1', + footerSlug: context.aiSuggestions.footer, + } ); + recordEvent( 'customize_your_store_ai_update_template_success' ); + } catch ( error ) { + // TODO handle error + // eslint-disable-next-line no-console + console.error( error ); + recordEvent( 'customize_your_store_ai_update_template_response_error', { + error: error instanceof Error ? error.message : 'unknown', + } ); + } + + // @ts-ignore No types for this exist yet. + const { invalidateResolutionForStoreSelector } = dispatch( coreStore ); + + // Invalid the selectors so that the new template/style are used in assembler hub. + invalidateResolutionForStoreSelector( 'getEntityRecord' ); + invalidateResolutionForStoreSelector( + '__experimentalGetCurrentGlobalStylesId' + ); + invalidateResolutionForStoreSelector( '__experimentalGetTemplateForLink' ); +}; + export const services = { getLookAndTone, browserPopstateHandler, queryAiEndpoint, + assembleSite, + updateStorePatterns, }; diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/state-machine.tsx b/plugins/woocommerce-admin/client/customize-store/design-with-ai/state-machine.tsx index 50bc7fb8298..83d59516093 100644 --- a/plugins/woocommerce-admin/client/customize-store/design-with-ai/state-machine.tsx +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/state-machine.tsx @@ -11,6 +11,8 @@ import { designWithAiStateMachineContext, designWithAiStateMachineEvents, FontPairing, + Header, + Footer, ColorPaletteResponse, } from './types'; import { @@ -21,7 +23,12 @@ import { } from './pages'; import { actions } from './actions'; import { services } from './services'; -import { defaultColorPalette, fontPairings } from './prompts'; +import { + defaultColorPalette, + fontPairings, + defaultHeader, + defaultFooter, +} from './prompts'; export const hasStepInUrl = ( _ctx: unknown, @@ -72,6 +79,8 @@ export const designWithAiStateMachineDefinition = createMachine( aiSuggestions: { defaultColorPalette: {} as ColorPaletteResponse, fontPairing: '' as FontPairing[ 'pair_name' ], + header: '' as Header[ 'slug' ], + footer: '' as Footer[ 'slug' ], }, }, initial: 'navigate', @@ -273,48 +282,158 @@ export const designWithAiStateMachineDefinition = createMachine( type: 'parallel', states: { chooseColorPairing: { - invoke: { - src: 'queryAiEndpoint', - data: ( context ) => { - return { - ...defaultColorPalette, - prompt: defaultColorPalette.prompt( - context.businessInfoDescription - .descriptionText, - context.lookAndFeel.choice, - context.toneOfVoice.choice - ), - }; - }, - onDone: { - actions: [ - 'assignDefaultColorPalette', - ], + initial: 'pending', + states: { + pending: { + invoke: { + src: 'queryAiEndpoint', + data: ( context ) => { + return { + ...defaultColorPalette, + prompt: defaultColorPalette.prompt( + context + .businessInfoDescription + .descriptionText, + context.lookAndFeel + .choice, + context.toneOfVoice + .choice + ), + }; + }, + onDone: { + actions: [ + 'assignDefaultColorPalette', + ], + target: 'success', + }, + }, }, + success: { type: 'final' }, }, }, chooseFontPairing: { - invoke: { - src: 'queryAiEndpoint', - data: ( context ) => { - return { - ...fontPairings, - prompt: fontPairings.prompt( - context.businessInfoDescription - .descriptionText, - context.lookAndFeel.choice, - context.toneOfVoice.choice - ), - }; + initial: 'pending', + states: { + pending: { + invoke: { + src: 'queryAiEndpoint', + data: ( context ) => { + return { + ...fontPairings, + prompt: fontPairings.prompt( + context + .businessInfoDescription + .descriptionText, + context.lookAndFeel + .choice, + context.toneOfVoice + .choice + ), + }; + }, + onDone: { + actions: [ + 'assignFontPairing', + ], + target: 'success', + }, + }, }, - onDone: { - actions: [ 'assignFontPairing' ], + success: { type: 'final' }, + }, + }, + chooseHeader: { + initial: 'pending', + states: { + pending: { + invoke: { + src: 'queryAiEndpoint', + data: ( context ) => { + return { + ...defaultHeader, + prompt: defaultHeader.prompt( + context + .businessInfoDescription + .descriptionText, + context.lookAndFeel + .choice, + context.toneOfVoice + .choice + ), + }; + }, + onDone: { + actions: [ 'assignHeader' ], + target: 'success', + }, + }, }, + success: { type: 'final' }, + }, + }, + chooseFooter: { + initial: 'pending', + states: { + pending: { + invoke: { + src: 'queryAiEndpoint', + data: ( context ) => { + return { + ...defaultFooter, + prompt: defaultFooter.prompt( + context + .businessInfoDescription + .descriptionText, + context.lookAndFeel + .choice, + context.toneOfVoice + .choice + ), + }; + }, + onDone: { + actions: [ 'assignFooter' ], + target: 'success', + }, + }, + }, + success: { type: 'final' }, + }, + }, + updateStorePatterns: { + initial: 'pending', + states: { + pending: { + invoke: { + src: 'updateStorePatterns', + onDone: { + target: 'success', + }, + onError: { + // TODO: handle error + target: 'success', + }, + }, + }, + success: { type: 'final' }, }, }, }, + onDone: 'postApiCallLoader', + }, + postApiCallLoader: { + invoke: { + src: 'assembleSite', + onDone: { + actions: [ + sendParent( () => ( { + type: 'THEME_SUGGESTED', + } ) ), + ], + }, + }, }, - postApiCallLoader: {}, }, }, }, diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/tests/services.test.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/tests/services.test.ts index 0810302dfbb..07ad3775b64 100644 --- a/plugins/woocommerce-admin/client/customize-store/design-with-ai/tests/services.test.ts +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/tests/services.test.ts @@ -19,6 +19,13 @@ jest.mock( '@woocommerce/ai', () => ( { jest.mock( '@wordpress/api-fetch', () => jest.fn() ); +jest.mock( + '@wordpress/edit-site/build-module/components/global-styles/global-styles-provider', + () => ( { + mergeBaseAndUserConfigs: jest.fn(), + } ) +); + describe( 'getCompletion', () => { beforeEach( () => { jest.clearAllMocks(); diff --git a/plugins/woocommerce-admin/client/customize-store/design-with-ai/types.ts b/plugins/woocommerce-admin/client/customize-store/design-with-ai/types.ts index a639755078e..d6a6160569b 100644 --- a/plugins/woocommerce-admin/client/customize-store/design-with-ai/types.ts +++ b/plugins/woocommerce-admin/client/customize-store/design-with-ai/types.ts @@ -7,8 +7,10 @@ import { z } from 'zod'; */ import { colorPaletteValidator, - colorPaletteResponseValidator, fontChoiceValidator, + headerValidator, + footerValidator, + colorPaletteResponseValidator, } from './prompts'; export type designWithAiStateMachineContext = { @@ -24,6 +26,8 @@ export type designWithAiStateMachineContext = { aiSuggestions: { defaultColorPalette: ColorPaletteResponse; fontPairing: FontPairing[ 'pair_name' ]; + header: Header[ 'slug' ]; + footer: Footer[ 'slug' ]; }; // If we require more data from options, previously provided core profiler details, // we can retrieve them in preBusinessInfoDescription and then assign them here @@ -60,3 +64,7 @@ export type ColorPaletteResponse = z.infer< >; export type FontPairing = z.infer< typeof fontChoiceValidator >; + +export type Header = z.infer< typeof headerValidator >; + +export type Footer = z.infer< typeof footerValidator >; diff --git a/plugins/woocommerce-admin/client/customize-store/index.tsx b/plugins/woocommerce-admin/client/customize-store/index.tsx index 4f0fcd12dd7..3bba97c3e0f 100644 --- a/plugins/woocommerce-admin/client/customize-store/index.tsx +++ b/plugins/woocommerce-admin/client/customize-store/index.tsx @@ -4,7 +4,11 @@ import { Sender, createMachine } from 'xstate'; import { useEffect, useMemo, useState } from '@wordpress/element'; import { useMachine, useSelector } from '@xstate/react'; -import { getQuery, updateQueryString } from '@woocommerce/navigation'; +import { + getNewPath, + getQuery, + updateQueryString, +} from '@woocommerce/navigation'; import { OPTIONS_STORE_NAME } from '@woocommerce/data'; import { dispatch } from '@wordpress/data'; @@ -59,6 +63,10 @@ const updateQueryStep = ( } }; +const redirectToWooHome = () => { + window.location.href = getNewPath( {}, '/', {} ); +}; + const markTaskComplete = async () => { return dispatch( OPTIONS_STORE_NAME ).updateOptions( { woocommerce_admin_customize_store_completed: 'yes', @@ -78,6 +86,7 @@ const browserPopstateHandler = export const machineActions = { updateQueryStep, + redirectToWooHome, }; export const customizeStoreStateMachineActions = { @@ -184,7 +193,7 @@ export const customizeStoreStateMachineDefinition = createMachine( { target: 'assemblerHub', }, CLICKED_ON_BREADCRUMB: { - target: 'backToHomescreen', + actions: 'redirectToWooHome', }, SELECTED_NEW_THEME: { target: 'appearanceTask', @@ -263,11 +272,10 @@ export const customizeStoreStateMachineDefinition = createMachine( { }, on: { GO_BACK_TO_HOME: { - target: 'backToHomescreen', + actions: 'redirectToWooHome', }, }, }, - backToHomescreen: {}, appearanceTask: {}, }, } ); diff --git a/plugins/woocommerce/changelog/BL-prevent-non-orders-on-order-received-page b/plugins/woocommerce/changelog/BL-prevent-non-orders-on-order-received-page deleted file mode 100644 index 7e40a6cee15..00000000000 --- a/plugins/woocommerce/changelog/BL-prevent-non-orders-on-order-received-page +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: fix - -Avoid a fatal error on the order received page if the order ID is not for a valid order. diff --git a/plugins/woocommerce/changelog/add-39126_add_tags_to_product_editor b/plugins/woocommerce/changelog/add-39126_add_tags_to_product_editor deleted file mode 100644 index 224de5a9c41..00000000000 --- a/plugins/woocommerce/changelog/add-39126_add_tags_to_product_editor +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add tags (or general taxonomy ) block diff --git a/plugins/woocommerce/changelog/add-39421_make_use_of_new_block_template b/plugins/woocommerce/changelog/add-39421_make_use_of_new_block_template deleted file mode 100644 index 6c7e7879fea..00000000000 --- a/plugins/woocommerce/changelog/add-39421_make_use_of_new_block_template +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: update - -Update the simple product template implementation to use the product form template API. diff --git a/plugins/woocommerce/changelog/add-39452 b/plugins/woocommerce/changelog/add-39452 deleted file mode 100644 index f1021c282d1..00000000000 --- a/plugins/woocommerce/changelog/add-39452 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add support for slug auto generation to the create attribute endpoint diff --git a/plugins/woocommerce/changelog/add-39528-intro-components b/plugins/woocommerce/changelog/add-39528-intro-components deleted file mode 100644 index 92163218af1..00000000000 --- a/plugins/woocommerce/changelog/add-39528-intro-components +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Update intro screen for the new Customize Your Store task diff --git a/plugins/woocommerce/changelog/add-39709-ai-wizard-business-info-step b/plugins/woocommerce/changelog/add-39709-ai-wizard-business-info-step deleted file mode 100644 index 8f59e546361..00000000000 --- a/plugins/woocommerce/changelog/add-39709-ai-wizard-business-info-step +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add AI wizard business info step for Customize Your Store task diff --git a/plugins/woocommerce/changelog/add-39719-cys-footer b/plugins/woocommerce/changelog/add-39719-cys-footer deleted file mode 100644 index ff6a4122ff0..00000000000 --- a/plugins/woocommerce/changelog/add-39719-cys-footer +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add sidebar to customize your store task. diff --git a/plugins/woocommerce/changelog/add-39720-cys-homepagel-template b/plugins/woocommerce/changelog/add-39720-cys-homepagel-template deleted file mode 100644 index 11373bcc064..00000000000 --- a/plugins/woocommerce/changelog/add-39720-cys-homepagel-template +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add component to Customize Your Store task. diff --git a/plugins/woocommerce/changelog/add-39831 b/plugins/woocommerce/changelog/add-39831 deleted file mode 100644 index 542a6fb0e7f..00000000000 --- a/plugins/woocommerce/changelog/add-39831 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: fix - -Add Variation options section back to the product blocks template diff --git a/plugins/woocommerce/changelog/add-40003_plugin_to_enable_experimental_features b/plugins/woocommerce/changelog/add-40003_plugin_to_enable_experimental_features deleted file mode 100644 index b9bb692a16b..00000000000 --- a/plugins/woocommerce/changelog/add-40003_plugin_to_enable_experimental_features +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Create a plugin to enable Variations feature #40027 diff --git a/plugins/woocommerce/changelog/add-40042_prices_not_set_notice b/plugins/woocommerce/changelog/add-40042_prices_not_set_notice deleted file mode 100644 index 73d2e6c7747..00000000000 --- a/plugins/woocommerce/changelog/add-40042_prices_not_set_notice +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add has_price param to the variations REST API query. diff --git a/plugins/woocommerce/changelog/add-40069_test_new_product_type b/plugins/woocommerce/changelog/add-40069_test_new_product_type deleted file mode 100644 index 8a034931980..00000000000 --- a/plugins/woocommerce/changelog/add-40069_test_new_product_type +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add variable product experiment diff --git a/plugins/woocommerce/changelog/add-RIN-in-not-in-comparison b/plugins/woocommerce/changelog/add-RIN-in-not-in-comparison deleted file mode 100644 index d6f9ab2c518..00000000000 --- a/plugins/woocommerce/changelog/add-RIN-in-not-in-comparison +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Update Remote Inbox Notifications to add in and !in comparison operators for comparing values against arrays diff --git a/plugins/woocommerce/changelog/add-appearance-theme-tracks b/plugins/woocommerce/changelog/add-appearance-theme-tracks deleted file mode 100644 index 4ddce766a9f..00000000000 --- a/plugins/woocommerce/changelog/add-appearance-theme-tracks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add Tracks events to Appearance > Themes screen diff --git a/plugins/woocommerce/changelog/add-assemble-site b/plugins/woocommerce/changelog/add-assemble-site new file mode 100644 index 00000000000..8dbeafa1b67 --- /dev/null +++ b/plugins/woocommerce/changelog/add-assemble-site @@ -0,0 +1,4 @@ +Significance: minor +Type: add + +Persist CYS AI assembled site diff --git a/plugins/woocommerce/changelog/add-block-template-after-add-remove-hooks b/plugins/woocommerce/changelog/add-block-template-after-add-remove-hooks deleted file mode 100644 index 8ed094455e4..00000000000 --- a/plugins/woocommerce/changelog/add-block-template-after-add-remove-hooks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add after_add_block and after_remove block hooks to the block template API. diff --git a/plugins/woocommerce/changelog/add-block-template-registry-hook b/plugins/woocommerce/changelog/add-block-template-registry-hook deleted file mode 100644 index 2e7489281bc..00000000000 --- a/plugins/woocommerce/changelog/add-block-template-registry-hook +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add woocommerce_block_template_register action. diff --git a/plugins/woocommerce/changelog/add-call-wc-store-patterns-api b/plugins/woocommerce/changelog/add-call-wc-store-patterns-api new file mode 100644 index 00000000000..203c246ba80 --- /dev/null +++ b/plugins/woocommerce/changelog/add-call-wc-store-patterns-api @@ -0,0 +1,4 @@ +Significance: minor +Type: add + +Call wc store patterns API to update patterns for CYS diff --git a/plugins/woocommerce/changelog/add-customize-store-assembler-hub b/plugins/woocommerce/changelog/add-customize-store-assembler-hub deleted file mode 100644 index e0c485730fa..00000000000 --- a/plugins/woocommerce/changelog/add-customize-store-assembler-hub +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add customize store assembler hub diff --git a/plugins/woocommerce/changelog/add-customize-store-assembler-hub-logo b/plugins/woocommerce/changelog/add-customize-store-assembler-hub-logo deleted file mode 100644 index 8bb5c0d8fc2..00000000000 --- a/plugins/woocommerce/changelog/add-customize-store-assembler-hub-logo +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Implement customize store assembler hub - logo feature diff --git a/plugins/woocommerce/changelog/add-customize-store-assembler-hub-onboarding b/plugins/woocommerce/changelog/add-customize-store-assembler-hub-onboarding deleted file mode 100644 index 2d85e56acc4..00000000000 --- a/plugins/woocommerce/changelog/add-customize-store-assembler-hub-onboarding +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add customize store assembler hub onboarding tour diff --git a/plugins/woocommerce/changelog/add-customize-store-best-colours b/plugins/woocommerce/changelog/add-customize-store-best-colours deleted file mode 100644 index 2486bf313fb..00000000000 --- a/plugins/woocommerce/changelog/add-customize-store-best-colours +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add customize store AI wizard call for best colour palette suggestions. diff --git a/plugins/woocommerce/changelog/add-customize-store-color-palette b/plugins/woocommerce/changelog/add-customize-store-color-palette deleted file mode 100644 index e65132fbdf5..00000000000 --- a/plugins/woocommerce/changelog/add-customize-store-color-palette +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add customize store AI wizard call for color palette suggestion diff --git a/plugins/woocommerce/changelog/add-customize-store-design-with-ai-loader b/plugins/woocommerce/changelog/add-customize-store-design-with-ai-loader deleted file mode 100644 index e5c08aa4d81..00000000000 --- a/plugins/woocommerce/changelog/add-customize-store-design-with-ai-loader +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Implemented loader design for Customize your store - Design with AI diff --git a/plugins/woocommerce/changelog/add-customize-store-font-pairing b/plugins/woocommerce/changelog/add-customize-store-font-pairing deleted file mode 100644 index e5724ead763..00000000000 --- a/plugins/woocommerce/changelog/add-customize-store-font-pairing +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add customize store AI wizard call for font pairing suggestion diff --git a/plugins/woocommerce/changelog/add-cys-fonts b/plugins/woocommerce/changelog/add-cys-ai-header-footer similarity index 52% rename from plugins/woocommerce/changelog/add-cys-fonts rename to plugins/woocommerce/changelog/add-cys-ai-header-footer index b6e6400d8d0..4667721b860 100644 --- a/plugins/woocommerce/changelog/add-cys-fonts +++ b/plugins/woocommerce/changelog/add-cys-ai-header-footer @@ -1,4 +1,4 @@ Significance: minor Type: add -Add customize store - fonts +Add cys ai header/footer diff --git a/plugins/woocommerce/changelog/add-cys-ai-wizard-tracks b/plugins/woocommerce/changelog/add-cys-ai-wizard-tracks deleted file mode 100644 index e4476909422..00000000000 --- a/plugins/woocommerce/changelog/add-cys-ai-wizard-tracks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: add - -Add track events to customize store AI wizard diff --git a/plugins/woocommerce/changelog/add-cys-ai-wizard-xstate b/plugins/woocommerce/changelog/add-cys-ai-wizard-xstate deleted file mode 100644 index 129ed3f5d12..00000000000 --- a/plugins/woocommerce/changelog/add-cys-ai-wizard-xstate +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Added xstate scaffolding for AI Wizard in customize your store feature diff --git a/plugins/woocommerce/changelog/add-cys-assembler-hub-tracks b/plugins/woocommerce/changelog/add-cys-assembler-hub-tracks deleted file mode 100644 index 9f3151cc8a7..00000000000 --- a/plugins/woocommerce/changelog/add-cys-assembler-hub-tracks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: add - -Add tracks to CYS assembler-hub and hide pages sidebar screen diff --git a/plugins/woocommerce/changelog/add-cys-color-palette b/plugins/woocommerce/changelog/add-cys-color-palette deleted file mode 100644 index 96ca0128d0a..00000000000 --- a/plugins/woocommerce/changelog/add-cys-color-palette +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add customize store color palettes diff --git a/plugins/woocommerce/changelog/add-cys-transitional-screen b/plugins/woocommerce/changelog/add-cys-transitional-screen deleted file mode 100644 index 91edc6d1698..00000000000 --- a/plugins/woocommerce/changelog/add-cys-transitional-screen +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add customize store transitional screen diff --git a/plugins/woocommerce/changelog/add-cys-transitional-tracks b/plugins/woocommerce/changelog/add-cys-transitional-tracks deleted file mode 100644 index df7acf51d34..00000000000 --- a/plugins/woocommerce/changelog/add-cys-transitional-tracks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: add - -Add track events to customize store transitional page diff --git a/plugins/woocommerce/changelog/add-cys-url-navigation b/plugins/woocommerce/changelog/add-cys-url-navigation deleted file mode 100644 index 7be829e43a4..00000000000 --- a/plugins/woocommerce/changelog/add-cys-url-navigation +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Added URL navigation support to customize-store feature diff --git a/plugins/woocommerce/changelog/add-filter-hpos-query-override b/plugins/woocommerce/changelog/add-filter-hpos-query-override deleted file mode 100644 index 53172b92ece..00000000000 --- a/plugins/woocommerce/changelog/add-filter-hpos-query-override +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add a filter to OrdersTableQuery to allow overriding of HPOS queries. diff --git a/plugins/woocommerce/changelog/add-filter-sync-on-read b/plugins/woocommerce/changelog/add-filter-sync-on-read deleted file mode 100644 index f1bdd04a448..00000000000 --- a/plugins/woocommerce/changelog/add-filter-sync-on-read +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: add - -Add filter woocommerce_hpos_enable_sync_on_read to disable sync on read with HPOS sync enabled. diff --git a/plugins/woocommerce/changelog/add-hpos_by_default b/plugins/woocommerce/changelog/add-hpos_by_default deleted file mode 100644 index 983f44d074b..00000000000 --- a/plugins/woocommerce/changelog/add-hpos_by_default +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: enhancement - -Enable HPOS by default for new installs. diff --git a/plugins/woocommerce/changelog/add-instructions-for-testing-contribution b/plugins/woocommerce/changelog/add-instructions-for-testing-contribution deleted file mode 100644 index 630ac6debb2..00000000000 --- a/plugins/woocommerce/changelog/add-instructions-for-testing-contribution +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: dev -Comment: Update CONTRIBUTING.md file to include instructions on how adding unit, API and E2E tests when applicable. - - diff --git a/plugins/woocommerce/changelog/add-look-and-tone-api b/plugins/woocommerce/changelog/add-look-and-tone-api deleted file mode 100644 index 9388bf5ac6d..00000000000 --- a/plugins/woocommerce/changelog/add-look-and-tone-api +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Made ai completion for look and tone more robust and added tracks diff --git a/plugins/woocommerce/changelog/add-new-e2e-test-myaccount-addreses b/plugins/woocommerce/changelog/add-new-e2e-test-myaccount-addreses deleted file mode 100644 index 178c5ef8730..00000000000 --- a/plugins/woocommerce/changelog/add-new-e2e-test-myaccount-addreses +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: add - -Add new e2e test to cover My Account Addresses section diff --git a/plugins/woocommerce/changelog/add-new-e2e-test-myaccount-downloads b/plugins/woocommerce/changelog/add-new-e2e-test-myaccount-downloads deleted file mode 100644 index 83fb3495de0..00000000000 --- a/plugins/woocommerce/changelog/add-new-e2e-test-myaccount-downloads +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: add - -Add new e2e test for Shopper My Account Downloads section diff --git a/plugins/woocommerce/changelog/add-regression-test-user-meta b/plugins/woocommerce/changelog/add-regression-test-user-meta deleted file mode 100644 index 52ede0eec5e..00000000000 --- a/plugins/woocommerce/changelog/add-regression-test-user-meta +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: dev -Comment: Adds regression test for https://github.com/woocommerce/woocommerce/pull/40221. - - diff --git a/plugins/woocommerce/changelog/add-simple-product-template-order b/plugins/woocommerce/changelog/add-simple-product-template-order deleted file mode 100644 index 7db56efee20..00000000000 --- a/plugins/woocommerce/changelog/add-simple-product-template-order +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: tweak - -Add order property to every block in SimpleProductTemplate diff --git a/plugins/woocommerce/changelog/add-template-api-remove-block b/plugins/woocommerce/changelog/add-template-api-remove-block deleted file mode 100644 index 9f041169287..00000000000 --- a/plugins/woocommerce/changelog/add-template-api-remove-block +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add ability to remove blocks from templates. diff --git a/plugins/woocommerce/changelog/add-woocommerce-pay-order-before-payment-action b/plugins/woocommerce/changelog/add-woocommerce-pay-order-before-payment-action deleted file mode 100644 index 5778cf71907..00000000000 --- a/plugins/woocommerce/changelog/add-woocommerce-pay-order-before-payment-action +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Adds new action hook `woocommerce_pay_order_before_payment` to the `checkout/form-pay.php` template. diff --git a/plugins/woocommerce/changelog/add-wx-nightly-perf b/plugins/woocommerce/changelog/add-wx-nightly-perf deleted file mode 100644 index ec617782aad..00000000000 --- a/plugins/woocommerce/changelog/add-wx-nightly-perf +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: add -Comment: Updated perf test and workflow for extra site - - diff --git a/plugins/woocommerce/changelog/api-fix-tax-api-test b/plugins/woocommerce/changelog/api-fix-tax-api-test deleted file mode 100644 index 973b2bb328b..00000000000 --- a/plugins/woocommerce/changelog/api-fix-tax-api-test +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Fix for a couple of flaky API tests on daily runs diff --git a/plugins/woocommerce/changelog/api-full-site-reset-on-daily b/plugins/woocommerce/changelog/api-full-site-reset-on-daily deleted file mode 100644 index 4a677c8cb22..00000000000 --- a/plugins/woocommerce/changelog/api-full-site-reset-on-daily +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Run a full reset on API daily test site diff --git a/plugins/woocommerce/changelog/api-start-unskipping-daily-tests b/plugins/woocommerce/changelog/api-start-unskipping-daily-tests deleted file mode 100644 index c2553c0c712..00000000000 --- a/plugins/woocommerce/changelog/api-start-unskipping-daily-tests +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Fixes and enables API test suite to run on daily CI run against alternate host diff --git a/plugins/woocommerce/changelog/bug-php-7.4-lib b/plugins/woocommerce/changelog/bug-php-7.4-lib deleted file mode 100644 index 5fc4f8fdfc0..00000000000 --- a/plugins/woocommerce/changelog/bug-php-7.4-lib +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: dev -Comment: Bump PHP version where it was missed in #39820. - - diff --git a/plugins/woocommerce/changelog/bump-required-php-to-7.4 b/plugins/woocommerce/changelog/bump-required-php-to-7.4 deleted file mode 100644 index feab9f6cdcd..00000000000 --- a/plugins/woocommerce/changelog/bump-required-php-to-7.4 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Bump required PHP version to 7.4 diff --git a/plugins/woocommerce/changelog/dev-39152_add_notice_to_track_inventory_toggle b/plugins/woocommerce/changelog/dev-39152_add_notice_to_track_inventory_toggle deleted file mode 100644 index ce64c241401..00000000000 --- a/plugins/woocommerce/changelog/dev-39152_add_notice_to_track_inventory_toggle +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: dev - -Add notice to "track inventory" toggle #40011 diff --git a/plugins/woocommerce/changelog/dev-add-assembler-e2e-tests b/plugins/woocommerce/changelog/dev-add-assembler-e2e-tests deleted file mode 100644 index c8e94e72597..00000000000 --- a/plugins/woocommerce/changelog/dev-add-assembler-e2e-tests +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: dev - -Add some basic E2E tests for Assembler Hub diff --git a/plugins/woocommerce/changelog/dev-choose-header-pattern b/plugins/woocommerce/changelog/dev-choose-header-pattern deleted file mode 100644 index 756429540d1..00000000000 --- a/plugins/woocommerce/changelog/dev-choose-header-pattern +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add header customization to the Assembler Hub diff --git a/plugins/woocommerce/changelog/dev-core-profiler-docs b/plugins/woocommerce/changelog/dev-core-profiler-docs deleted file mode 100644 index 5a4d2916a2a..00000000000 --- a/plugins/woocommerce/changelog/dev-core-profiler-docs +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Added documentation for the Core Profiler diff --git a/plugins/woocommerce/changelog/dev-refactor-onboarding-profiler b/plugins/woocommerce/changelog/dev-refactor-onboarding-profiler deleted file mode 100644 index 74bf9420a11..00000000000 --- a/plugins/woocommerce/changelog/dev-refactor-onboarding-profiler +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: dev - -Refactored core profiler loader to be more generalizable and moved to @woocommerce/onboarding diff --git a/plugins/woocommerce/changelog/dev-remove-unused-feature-visible b/plugins/woocommerce/changelog/dev-remove-unused-feature-visible deleted file mode 100644 index e72818f51a9..00000000000 --- a/plugins/woocommerce/changelog/dev-remove-unused-feature-visible +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: dev - -Cleanup: remove the unused is_feature_visible and show_feature methods. diff --git a/plugins/woocommerce/changelog/dev-update-address-type-comments b/plugins/woocommerce/changelog/dev-update-address-type-comments deleted file mode 100644 index bb1a4fd5a34..00000000000 --- a/plugins/woocommerce/changelog/dev-update-address-type-comments +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: tweak -Comment: This change only tweaks a few comments. - - diff --git a/plugins/woocommerce/changelog/e2e-add-new-test-shopper-product b/plugins/woocommerce/changelog/e2e-add-new-test-shopper-product deleted file mode 100644 index d3d8827ff09..00000000000 --- a/plugins/woocommerce/changelog/e2e-add-new-test-shopper-product +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Add new E2E test covering shopper product page and make Product-related tests granular (separated test files) diff --git a/plugins/woocommerce/changelog/e2e-add-plugin-tests-slack-summary b/plugins/woocommerce/changelog/e2e-add-plugin-tests-slack-summary deleted file mode 100644 index a38627d6592..00000000000 --- a/plugins/woocommerce/changelog/e2e-add-plugin-tests-slack-summary +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Add job to post Slack summary of plugin test results in "Smoke test daily" workflow. diff --git a/plugins/woocommerce/changelog/e2e-fix-flaky-turn-off-new-product-form b/plugins/woocommerce/changelog/e2e-fix-flaky-turn-off-new-product-form deleted file mode 100644 index f9aec8595eb..00000000000 --- a/plugins/woocommerce/changelog/e2e-fix-flaky-turn-off-new-product-form +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Fix flakiness around the `Turn off the new product form` menu item. diff --git a/plugins/woocommerce/changelog/e2e-release-remove-wp-latest-2 b/plugins/woocommerce/changelog/e2e-release-remove-wp-latest-2 deleted file mode 100644 index 9043e6714fc..00000000000 --- a/plugins/woocommerce/changelog/e2e-release-remove-wp-latest-2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Remove "WP Latest-2" from release tests. diff --git a/plugins/woocommerce/changelog/e2e-shopper-checkout b/plugins/woocommerce/changelog/e2e-shopper-checkout deleted file mode 100644 index 43e37f2916f..00000000000 --- a/plugins/woocommerce/changelog/e2e-shopper-checkout +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Adds test to check required fields on checkout diff --git a/plugins/woocommerce/changelog/e2e-update-playwright-to-1_37_1 b/plugins/woocommerce/changelog/e2e-update-playwright-to-1_37_1 deleted file mode 100644 index ef91bc659f1..00000000000 --- a/plugins/woocommerce/changelog/e2e-update-playwright-to-1_37_1 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Updates Playwright from 1.33 to 1.37.1 diff --git a/plugins/woocommerce/changelog/feature-marketplace b/plugins/woocommerce/changelog/feature-marketplace deleted file mode 100644 index c73f98c2a06..00000000000 --- a/plugins/woocommerce/changelog/feature-marketplace +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: update - -We have completely redesigned the In-app Marketplace. diff --git a/plugins/woocommerce/changelog/fix-29873-geolocate-redirect b/plugins/woocommerce/changelog/fix-29873-geolocate-redirect deleted file mode 100644 index 9b49635aa4e..00000000000 --- a/plugins/woocommerce/changelog/fix-29873-geolocate-redirect +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Eliminate an unnecessary redirect when the geo hash isalready set to the correct value. diff --git a/plugins/woocommerce/changelog/fix-34989 b/plugins/woocommerce/changelog/fix-34989 deleted file mode 100644 index 0fef94eedbe..00000000000 --- a/plugins/woocommerce/changelog/fix-34989 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Display search results subtitle in HPOS list table view. diff --git a/plugins/woocommerce/changelog/fix-37362 b/plugins/woocommerce/changelog/fix-37362 deleted file mode 100644 index 9a87d494dd7..00000000000 --- a/plugins/woocommerce/changelog/fix-37362 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -[HPOS] Modify query to have less characters before the `FROM` keyword. diff --git a/plugins/woocommerce/changelog/fix-38762-core-profiler-layout-shifts b/plugins/woocommerce/changelog/fix-38762-core-profiler-layout-shifts deleted file mode 100644 index 8088ed0e6af..00000000000 --- a/plugins/woocommerce/changelog/fix-38762-core-profiler-layout-shifts +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix minor layout shift in the core profiler. diff --git a/plugins/woocommerce/changelog/fix-39544_description_styling b/plugins/woocommerce/changelog/fix-39544_description_styling deleted file mode 100644 index 26332b53790..00000000000 --- a/plugins/woocommerce/changelog/fix-39544_description_styling +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: fix - -Remove use of woocommerce-page class within WooCommerce Admin pages, replaced with woocommerce-admin-page. diff --git a/plugins/woocommerce/changelog/fix-39927 b/plugins/woocommerce/changelog/fix-39927 deleted file mode 100644 index 94dff7c79d1..00000000000 --- a/plugins/woocommerce/changelog/fix-39927 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Properly convert local time date queries to UTC in the HPOS datastore. diff --git a/plugins/woocommerce/changelog/fix-40135-store-currency-is-not-being-updated b/plugins/woocommerce/changelog/fix-40135-store-currency-is-not-being-updated deleted file mode 100644 index 4bb41636204..00000000000 --- a/plugins/woocommerce/changelog/fix-40135-store-currency-is-not-being-updated +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix a bug where updating store location doesn't update store currency. diff --git a/plugins/woocommerce/changelog/fix-40166_redirect_to_edit_page_when_variation_added b/plugins/woocommerce/changelog/fix-40166_redirect_to_edit_page_when_variation_added deleted file mode 100644 index 7d9f703a713..00000000000 --- a/plugins/woocommerce/changelog/fix-40166_redirect_to_edit_page_when_variation_added +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: update - -Update use of preventLeavingProductForm with new function changes. diff --git a/plugins/woocommerce/changelog/fix-admin-page-empty-wp-6-2 b/plugins/woocommerce/changelog/fix-admin-page-empty-wp-6-2 deleted file mode 100644 index c87ca7e20f8..00000000000 --- a/plugins/woocommerce/changelog/fix-admin-page-empty-wp-6-2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -FIx WC Admin pages are empty for WP 6.2 and below. diff --git a/plugins/woocommerce/changelog/fix-bacs-ui b/plugins/woocommerce/changelog/fix-bacs-ui deleted file mode 100644 index 91074182a1c..00000000000 --- a/plugins/woocommerce/changelog/fix-bacs-ui +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: tweak - -Adds an informative tooltip to the Account Details section of the Direct Bank Transfer settings. diff --git a/plugins/woocommerce/changelog/fix-bad-uncaching-of-order-refunds b/plugins/woocommerce/changelog/fix-bad-uncaching-of-order-refunds deleted file mode 100644 index 3f93395ba65..00000000000 --- a/plugins/woocommerce/changelog/fix-bad-uncaching-of-order-refunds +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix cached refund not deleted when the refund is deleted with HPOS active diff --git a/plugins/woocommerce/changelog/fix-cli-hpos-activate b/plugins/woocommerce/changelog/fix-cli-hpos-activate deleted file mode 100644 index 49504721ae0..00000000000 --- a/plugins/woocommerce/changelog/fix-cli-hpos-activate +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: enhancement - -Add CLI commands to enable or disable HPOS. diff --git a/plugins/woocommerce/changelog/fix-cli-improvs b/plugins/woocommerce/changelog/fix-cli-improvs deleted file mode 100644 index ad726ce966b..00000000000 --- a/plugins/woocommerce/changelog/fix-cli-improvs +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Remove COT enable requirement from sync and verify command. diff --git a/plugins/woocommerce/changelog/fix-cust_bought_product_query_cache b/plugins/woocommerce/changelog/fix-cust_bought_product_query_cache deleted file mode 100644 index 4a0b1b5062d..00000000000 --- a/plugins/woocommerce/changelog/fix-cust_bought_product_query_cache +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Avoid string<>int comparison in products bought query to avoid results with customer_id = 0. diff --git a/plugins/woocommerce/changelog/fix-cys-reapply-block-type-filters-error b/plugins/woocommerce/changelog/fix-cys-reapply-block-type-filters-error deleted file mode 100644 index d6126b8ec9b..00000000000 --- a/plugins/woocommerce/changelog/fix-cys-reapply-block-type-filters-error +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix CYS `__experimentalReapplyBlockTypeFilters` is not a function diff --git a/plugins/woocommerce/changelog/fix-cys-task-header-button b/plugins/woocommerce/changelog/fix-cys-task-header-button deleted file mode 100644 index 94089c09e9b..00000000000 --- a/plugins/woocommerce/changelog/fix-cys-task-header-button +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix customize your store task header button diff --git a/plugins/woocommerce/changelog/fix-cys-visual-tweaks-12-sep b/plugins/woocommerce/changelog/fix-cys-visual-tweaks-12-sep deleted file mode 100644 index 44d77d37c32..00000000000 --- a/plugins/woocommerce/changelog/fix-cys-visual-tweaks-12-sep +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Addressed visual tweaks for CYS in response to feedback from 12th Sept diff --git a/plugins/woocommerce/changelog/fix-cys-wp-6-3-router-bug b/plugins/woocommerce/changelog/fix-cys-wp-6-3-router-bug deleted file mode 100644 index 7aa8333f3bc..00000000000 --- a/plugins/woocommerce/changelog/fix-cys-wp-6-3-router-bug +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix customize store white screen bug in WP 6.3 diff --git a/plugins/woocommerce/changelog/fix-delete-meta-by-id b/plugins/woocommerce/changelog/fix-delete-meta-by-id deleted file mode 100644 index 7321786bf3a..00000000000 --- a/plugins/woocommerce/changelog/fix-delete-meta-by-id +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -[HPOS] Support deleting metadata just by meta id. diff --git a/plugins/woocommerce/changelog/fix-doc-how-to-design-a-simple-extension-typo b/plugins/woocommerce/changelog/fix-doc-how-to-design-a-simple-extension-typo deleted file mode 100644 index ee7d7df0d9e..00000000000 --- a/plugins/woocommerce/changelog/fix-doc-how-to-design-a-simple-extension-typo +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: tweak -Comment: Just a typo fix. - - diff --git a/plugins/woocommerce/changelog/fix-duplicate-meta-handling b/plugins/woocommerce/changelog/fix-duplicate-meta-handling deleted file mode 100644 index 4b45561b272..00000000000 --- a/plugins/woocommerce/changelog/fix-duplicate-meta-handling +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -[HPOS]Fix duplicate meta handling by passing meta_value|unique in post calls diff --git a/plugins/woocommerce/changelog/fix-hpos-order-edit-trash-link b/plugins/woocommerce/changelog/fix-hpos-order-edit-trash-link deleted file mode 100644 index 2db65d1035b..00000000000 --- a/plugins/woocommerce/changelog/fix-hpos-order-edit-trash-link +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Restore moving to trash functionality within HPOS order edit screen. diff --git a/plugins/woocommerce/changelog/fix-hpos-pending-sync-count-order-types b/plugins/woocommerce/changelog/fix-hpos-pending-sync-count-order-types deleted file mode 100644 index 80db4ec992f..00000000000 --- a/plugins/woocommerce/changelog/fix-hpos-pending-sync-count-order-types +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Address missing order type handling in HPOS compatibility mode sync. diff --git a/plugins/woocommerce/changelog/fix-is_checkout-documentation b/plugins/woocommerce/changelog/fix-is_checkout-documentation deleted file mode 100644 index 4f6499348f3..00000000000 --- a/plugins/woocommerce/changelog/fix-is_checkout-documentation +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: dev - -Improve documentation for the `is_checkout()` function. diff --git a/plugins/woocommerce/changelog/fix-marketplace-footer-wording b/plugins/woocommerce/changelog/fix-marketplace-footer-wording deleted file mode 100644 index 1d708f4e2a7..00000000000 --- a/plugins/woocommerce/changelog/fix-marketplace-footer-wording +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: tweak -Comment: Tweak the spelling of the marketplace footer - - diff --git a/plugins/woocommerce/changelog/fix-metadata-not-updated-on-order-update b/plugins/woocommerce/changelog/fix-metadata-not-updated-on-order-update deleted file mode 100644 index 0f9f0a5e20d..00000000000 --- a/plugins/woocommerce/changelog/fix-metadata-not-updated-on-order-update +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix changes in order custom fields made from admin not being applied when using the order Update button with HPOS active. diff --git a/plugins/woocommerce/changelog/fix-missed-lint-assembler-hub-usestate b/plugins/woocommerce/changelog/fix-missed-lint-assembler-hub-usestate deleted file mode 100644 index 0c388a7bbfd..00000000000 --- a/plugins/woocommerce/changelog/fix-missed-lint-assembler-hub-usestate +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fixed missed lint error in Assembler Hub diff --git a/plugins/woocommerce/changelog/fix-missed-lints b/plugins/woocommerce/changelog/fix-missed-lints deleted file mode 100644 index 74b456f5e2b..00000000000 --- a/plugins/woocommerce/changelog/fix-missed-lints +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: dev -Comment: Applied lint auto fixes across monorepo - - diff --git a/plugins/woocommerce/changelog/fix-pw_e2e_product_tests_serialization b/plugins/woocommerce/changelog/fix-pw_e2e_product_tests_serialization deleted file mode 100644 index 1f20d5a4bd8..00000000000 --- a/plugins/woocommerce/changelog/fix-pw_e2e_product_tests_serialization +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: fix - -Fix product e2e tests diff --git a/plugins/woocommerce/changelog/fix-redirect-to-jetpack-connect-when-boost-is-selcted b/plugins/woocommerce/changelog/fix-redirect-to-jetpack-connect-when-boost-is-selcted deleted file mode 100644 index 4a7406056de..00000000000 --- a/plugins/woocommerce/changelog/fix-redirect-to-jetpack-connect-when-boost-is-selcted +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Redirect to Jetpack connect when jetpack-boost is selected. diff --git a/plugins/woocommerce/changelog/fix-revert-add-wx-nightly-perf b/plugins/woocommerce/changelog/fix-revert-add-wx-nightly-perf deleted file mode 100644 index ec617782aad..00000000000 --- a/plugins/woocommerce/changelog/fix-revert-add-wx-nightly-perf +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: add -Comment: Updated perf test and workflow for extra site - - diff --git a/plugins/woocommerce/changelog/fix-revert-add-wx-nightly-perf-correction b/plugins/woocommerce/changelog/fix-revert-add-wx-nightly-perf-correction deleted file mode 100644 index c79cfe055cc..00000000000 --- a/plugins/woocommerce/changelog/fix-revert-add-wx-nightly-perf-correction +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix -Comment: Updates smoke-test-daily.yml workflow to correctly remove additional test execution as previous revert PR #39889 missed a step - diff --git a/plugins/woocommerce/changelog/fix-sql-query-filters-doc b/plugins/woocommerce/changelog/fix-sql-query-filters-doc deleted file mode 100644 index fe0a4468e6a..00000000000 --- a/plugins/woocommerce/changelog/fix-sql-query-filters-doc +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -update the SqlQuery filter prefix in data.md diff --git a/plugins/woocommerce/changelog/fix-tasklist-fix-description-color b/plugins/woocommerce/changelog/fix-tasklist-fix-description-color deleted file mode 100644 index e31e9e23155..00000000000 --- a/plugins/woocommerce/changelog/fix-tasklist-fix-description-color +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: tweak - -Tweak tasklist description color to darker diff --git a/plugins/woocommerce/changelog/fix-undismissable-notices b/plugins/woocommerce/changelog/fix-undismissable-notices deleted file mode 100644 index 22416989cd1..00000000000 --- a/plugins/woocommerce/changelog/fix-undismissable-notices +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix undismissable notice when using localization for certain messages like "Coupon management has moved" diff --git a/plugins/woocommerce/changelog/fix-use-crud-api b/plugins/woocommerce/changelog/fix-use-crud-api deleted file mode 100644 index 77018532e7c..00000000000 --- a/plugins/woocommerce/changelog/fix-use-crud-api +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -[HPOS] Use objects method instead of calling datastore directly. diff --git a/plugins/woocommerce/changelog/fix-verify-email-checks b/plugins/woocommerce/changelog/fix-verify-email-checks deleted file mode 100644 index aa93aade7aa..00000000000 --- a/plugins/woocommerce/changelog/fix-verify-email-checks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: tweak - -Make it easier to disable email verification checks for the order confirmation and order pay pages. diff --git a/plugins/woocommerce/changelog/fix-wc-connect-tax-truthiness b/plugins/woocommerce/changelog/fix-wc-connect-tax-truthiness deleted file mode 100644 index 3734a2135c9..00000000000 --- a/plugins/woocommerce/changelog/fix-wc-connect-tax-truthiness +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Changed Tax task completion criteria so that it considers both boolean and stringly typed values as expected diff --git a/plugins/woocommerce/changelog/fix-wccom-17944-reposition-notifications b/plugins/woocommerce/changelog/fix-wccom-17944-reposition-notifications deleted file mode 100644 index a1d37d497dd..00000000000 --- a/plugins/woocommerce/changelog/fix-wccom-17944-reposition-notifications +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fix -Comment: Improved visibility/layout of store alerts on WooCommerce > Extensions pages. - - diff --git a/plugins/woocommerce/changelog/fix-wccom-18029-suppress-double-scrollbar b/plugins/woocommerce/changelog/fix-wccom-18029-suppress-double-scrollbar deleted file mode 100644 index 711132b3016..00000000000 --- a/plugins/woocommerce/changelog/fix-wccom-18029-suppress-double-scrollbar +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fix -Comment: Fixed a bug that caused redundant extra scrollbars to appear on WooCommerce > Extensions pages for some browser/OS/configuration combinations. - - diff --git a/plugins/woocommerce/changelog/fix-wccom-18030-discover-card-count b/plugins/woocommerce/changelog/fix-wccom-18030-discover-card-count deleted file mode 100644 index bda312611c1..00000000000 --- a/plugins/woocommerce/changelog/fix-wccom-18030-discover-card-count +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: update -Comment: CSS to render correct number of columns in marketplace Discover screen. - - diff --git a/plugins/woocommerce/changelog/fix-wccom-18031-marketplace-search-locale b/plugins/woocommerce/changelog/fix-wccom-18031-marketplace-search-locale deleted file mode 100644 index 73a5eda923e..00000000000 --- a/plugins/woocommerce/changelog/fix-wccom-18031-marketplace-search-locale +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: update -Comment: Add country code to Marketplace search API requests. - - diff --git a/plugins/woocommerce/changelog/fix-wccom-marketplace-products-with-no-vendorurl b/plugins/woocommerce/changelog/fix-wccom-marketplace-products-with-no-vendorurl deleted file mode 100644 index 393032bc56d..00000000000 --- a/plugins/woocommerce/changelog/fix-wccom-marketplace-products-with-no-vendorurl +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fix -Comment: More-resilient handling of absent product vendor URLs when browsing WooCommerce > Extensions. - - diff --git a/plugins/woocommerce/changelog/improve-page-loads-test b/plugins/woocommerce/changelog/improve-page-loads-test deleted file mode 100644 index c6486f4128e..00000000000 --- a/plugins/woocommerce/changelog/improve-page-loads-test +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: enhancement - -Improve the existing E2E test to verify one more element on each page load. diff --git a/plugins/woocommerce/changelog/issue-37835 b/plugins/woocommerce/changelog/issue-37835 deleted file mode 100644 index 5712552039f..00000000000 --- a/plugins/woocommerce/changelog/issue-37835 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Design enhancements for the Inventory tab. diff --git a/plugins/woocommerce/changelog/issue-37839 b/plugins/woocommerce/changelog/issue-37839 deleted file mode 100644 index ee9daa1f1fc..00000000000 --- a/plugins/woocommerce/changelog/issue-37839 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Design enhancements for the Attributes tab. diff --git a/plugins/woocommerce/changelog/pr-36402 b/plugins/woocommerce/changelog/pr-36402 deleted file mode 100644 index 40606ee41ea..00000000000 --- a/plugins/woocommerce/changelog/pr-36402 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: tweak - -Fix a minor code typo, no change in functionality \ No newline at end of file diff --git a/plugins/woocommerce/changelog/remove-legacy-php-version-checks b/plugins/woocommerce/changelog/remove-legacy-php-version-checks deleted file mode 100644 index 9296f2f52dc..00000000000 --- a/plugins/woocommerce/changelog/remove-legacy-php-version-checks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: dev - -Remove legacy PHP version update checks diff --git a/plugins/woocommerce/changelog/remove-onboarding-purchase-task b/plugins/woocommerce/changelog/remove-onboarding-purchase-task deleted file mode 100644 index 22d19ea136e..00000000000 --- a/plugins/woocommerce/changelog/remove-onboarding-purchase-task +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Removed references to the un-used Purchase task item in the onboarding task list. diff --git a/plugins/woocommerce/changelog/trunk b/plugins/woocommerce/changelog/trunk deleted file mode 100644 index 2e7f0ab896e..00000000000 --- a/plugins/woocommerce/changelog/trunk +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Use correct object reference when cloning a cart diff --git a/plugins/woocommerce/changelog/tweak-category-field b/plugins/woocommerce/changelog/tweak-category-field deleted file mode 100644 index 1df37076e87..00000000000 --- a/plugins/woocommerce/changelog/tweak-category-field +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Add help text to Name field in Create new category modal diff --git a/plugins/woocommerce/changelog/tweak-category-taxonomy b/plugins/woocommerce/changelog/tweak-category-taxonomy deleted file mode 100644 index 339d0c728f5..00000000000 --- a/plugins/woocommerce/changelog/tweak-category-taxonomy +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: tweak - -Migrate category field to woocommerce/product-taxonomy-field block diff --git a/plugins/woocommerce/changelog/tweak-ignore-some-metadata-in-hpos-verify-tool b/plugins/woocommerce/changelog/tweak-ignore-some-metadata-in-hpos-verify-tool new file mode 100644 index 00000000000..cdc7205b591 --- /dev/null +++ b/plugins/woocommerce/changelog/tweak-ignore-some-metadata-in-hpos-verify-tool @@ -0,0 +1,4 @@ +Significance: patch +Type: tweak + +Exclude some metadata from being considered in HPOS verify tool. diff --git a/plugins/woocommerce/changelog/update-38752-task-list-progress-bar b/plugins/woocommerce/changelog/update-38752-task-list-progress-bar deleted file mode 100644 index e3a4ea0f472..00000000000 --- a/plugins/woocommerce/changelog/update-38752-task-list-progress-bar +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Update the default setting for the task list progress bar from 0 to 0.25, which gives the progress better visual context when no tasks have been completed. diff --git a/plugins/woocommerce/changelog/update-39664-track-plugin-installation-in-php b/plugins/woocommerce/changelog/update-39664-track-plugin-installation-in-php deleted file mode 100644 index 3f7729f0e85..00000000000 --- a/plugins/woocommerce/changelog/update-39664-track-plugin-installation-in-php +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Track coreprofiler_store_extensions_installed_and_activated when async installation is complete diff --git a/plugins/woocommerce/changelog/update-39699-track-plugin-failure-separately-for-core-profiler b/plugins/woocommerce/changelog/update-39699-track-plugin-failure-separately-for-core-profiler deleted file mode 100644 index 417f520081b..00000000000 --- a/plugins/woocommerce/changelog/update-39699-track-plugin-failure-separately-for-core-profiler +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: add - -Records plugin API requests and installation errors to coreprofiler_install_plugin_error separately for the core profiler. diff --git a/plugins/woocommerce/changelog/update-40298-implement-back-to-home-button b/plugins/woocommerce/changelog/update-40298-implement-back-to-home-button new file mode 100644 index 00000000000..0cab208c592 --- /dev/null +++ b/plugins/woocommerce/changelog/update-40298-implement-back-to-home-button @@ -0,0 +1,4 @@ +Significance: minor +Type: update + +Implement back to home actions for the customize your store. diff --git a/plugins/woocommerce/changelog/update-action-scheduler-3.6.3 b/plugins/woocommerce/changelog/update-action-scheduler-3.6.3 deleted file mode 100644 index 9006868300f..00000000000 --- a/plugins/woocommerce/changelog/update-action-scheduler-3.6.3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Update Action Scheduler to 3.6.3 diff --git a/plugins/woocommerce/changelog/update-address-cys-ui-feedback b/plugins/woocommerce/changelog/update-address-cys-ui-feedback deleted file mode 100644 index 241ec85e6ef..00000000000 --- a/plugins/woocommerce/changelog/update-address-cys-ui-feedback +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fix - -Fix CYS UI issues diff --git a/plugins/woocommerce/changelog/update-api-core-tests-readme b/plugins/woocommerce/changelog/update-api-core-tests-readme deleted file mode 100644 index 9b560eaa020..00000000000 --- a/plugins/woocommerce/changelog/update-api-core-tests-readme +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: dev -Comment: Updated WC API Core tests readme. - - diff --git a/plugins/woocommerce/changelog/update-appearance-task b/plugins/woocommerce/changelog/update-appearance-task deleted file mode 100644 index dc069582853..00000000000 --- a/plugins/woocommerce/changelog/update-appearance-task +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Replace Personalize Your Store task with Choose Your Theme diff --git a/plugins/woocommerce/changelog/update-cys-completion-logic b/plugins/woocommerce/changelog/update-cys-completion-logic deleted file mode 100644 index 3b534dbace7..00000000000 --- a/plugins/woocommerce/changelog/update-cys-completion-logic +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: update - -Implement customize your store task completion logic diff --git a/plugins/woocommerce/changelog/update-cys-display-all-6-homeapge-blocks b/plugins/woocommerce/changelog/update-cys-display-all-6-homeapge-blocks new file mode 100644 index 00000000000..4d999944875 --- /dev/null +++ b/plugins/woocommerce/changelog/update-cys-display-all-6-homeapge-blocks @@ -0,0 +1,4 @@ +Significance: minor +Type: update + +Render all six homepage templates from the CYS homepage sidebar. diff --git a/plugins/woocommerce/changelog/update-distignore-allow-changelog b/plugins/woocommerce/changelog/update-distignore-allow-changelog deleted file mode 100644 index ff02ab5ca04..00000000000 --- a/plugins/woocommerce/changelog/update-distignore-allow-changelog +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: dev -Comment: This PR updates the .distignore such that the changelog.txt file is included in builds, and does not itself need a changelog entry. - - diff --git a/plugins/woocommerce/changelog/update-hpos-not-experimental b/plugins/woocommerce/changelog/update-hpos-not-experimental deleted file mode 100644 index 6d31e3cda57..00000000000 --- a/plugins/woocommerce/changelog/update-hpos-not-experimental +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: update - -Turn off the experimental flag for HPOS. diff --git a/plugins/woocommerce/changelog/update-hpos-ui-tweaks b/plugins/woocommerce/changelog/update-hpos-ui-tweaks deleted file mode 100644 index 381a425c239..00000000000 --- a/plugins/woocommerce/changelog/update-hpos-ui-tweaks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: tweak - -tweak some of the HPOS Settings UI. diff --git a/plugins/woocommerce/changelog/update-k6-failing-tests-in-CI b/plugins/woocommerce/changelog/update-k6-failing-tests-in-CI new file mode 100644 index 00000000000..0cab208c592 --- /dev/null +++ b/plugins/woocommerce/changelog/update-k6-failing-tests-in-CI @@ -0,0 +1,4 @@ +Significance: minor +Type: update + +Implement back to home actions for the customize your store. diff --git a/plugins/woocommerce/changelog/update-optimize-cys-frame-resizing b/plugins/woocommerce/changelog/update-optimize-cys-frame-resizing deleted file mode 100644 index a1bfb29fe1d..00000000000 --- a/plugins/woocommerce/changelog/update-optimize-cys-frame-resizing +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: update - -Optimize customize store preview frame resize performance diff --git a/plugins/woocommerce/changelog/update-react-marketplace b/plugins/woocommerce/changelog/update-react-marketplace deleted file mode 100644 index 32292143d61..00000000000 --- a/plugins/woocommerce/changelog/update-react-marketplace +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Added Marketplace class as basis for Reactified marketplace. diff --git a/plugins/woocommerce/changelog/update-remove-core-profiler-related-test-code b/plugins/woocommerce/changelog/update-remove-core-profiler-related-test-code deleted file mode 100644 index 289d8b0bf23..00000000000 --- a/plugins/woocommerce/changelog/update-remove-core-profiler-related-test-code +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Remove core-profiler checks from the tests -- core profiler is enabled by default now. diff --git a/plugins/woocommerce/changelog/update-task-list-item-and-woopayments-task b/plugins/woocommerce/changelog/update-task-list-item-and-woopayments-task deleted file mode 100644 index 31093a0116b..00000000000 --- a/plugins/woocommerce/changelog/update-task-list-item-and-woopayments-task +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: update - -Display a custom WooPayments onboarding task header content, when an incentive with server based header is available. diff --git a/plugins/woocommerce/changelog/update-tt2-view-products-button-padding b/plugins/woocommerce/changelog/update-tt2-view-products-button-padding deleted file mode 100644 index 6c051b86407..00000000000 --- a/plugins/woocommerce/changelog/update-tt2-view-products-button-padding +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: update -Comment: Button padding update - - diff --git a/plugins/woocommerce/changelog/update-venezuelan-currency b/plugins/woocommerce/changelog/update-venezuelan-currency deleted file mode 100644 index e04b7c2c650..00000000000 --- a/plugins/woocommerce/changelog/update-venezuelan-currency +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: enhancement - -Update Venezuelan currency: BolĂ­var (Bs.). diff --git a/plugins/woocommerce/changelog/update-wccom-17108-help-link-themes b/plugins/woocommerce/changelog/update-wccom-17108-help-link-themes deleted file mode 100644 index 019f6d73387..00000000000 --- a/plugins/woocommerce/changelog/update-wccom-17108-help-link-themes +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: tweak -Comment: Updating a URL for themes help link in support menu. - - diff --git a/plugins/woocommerce/changelog/update-wccom-17898-snackbar b/plugins/woocommerce/changelog/update-wccom-17898-snackbar deleted file mode 100644 index fafddc0a635..00000000000 --- a/plugins/woocommerce/changelog/update-wccom-17898-snackbar +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: update -Comment: Fixed rendering of snackbar inviting feedback on new style marketplace. - - diff --git a/plugins/woocommerce/changelog/update-wccom-18191-new-no-results-page-design b/plugins/woocommerce/changelog/update-wccom-18191-new-no-results-page-design deleted file mode 100644 index b3604ee9d54..00000000000 --- a/plugins/woocommerce/changelog/update-wccom-18191-new-no-results-page-design +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: tweak -Comment: Update the design of the extensions search "no results" page. - - diff --git a/plugins/woocommerce/changelog/update-woocommerce-blocks-10.9.3 b/plugins/woocommerce/changelog/update-woocommerce-blocks-10.9.3 deleted file mode 100644 index 0d4cbdf61d1..00000000000 --- a/plugins/woocommerce/changelog/update-woocommerce-blocks-10.9.3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: update - -Update WooCommerce Blocks to 10.9.3 diff --git a/plugins/woocommerce/changelog/update-woocommerce-blocks-11.0.0 b/plugins/woocommerce/changelog/update-woocommerce-blocks-11.0.0 deleted file mode 100644 index 021c37c05c3..00000000000 --- a/plugins/woocommerce/changelog/update-woocommerce-blocks-11.0.0 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Update WooCommerce Blocks to 11.0.0 diff --git a/plugins/woocommerce/changelog/update-woocommerce-blocks-11.1.0 b/plugins/woocommerce/changelog/update-woocommerce-blocks-11.1.0 deleted file mode 100644 index bce6d0ca513..00000000000 --- a/plugins/woocommerce/changelog/update-woocommerce-blocks-11.1.0 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: update - -Update WooCommerce Blocks to 11.1.0 diff --git a/plugins/woocommerce/changelog/update-woocommerce-blocks-11.1.1 b/plugins/woocommerce/changelog/update-woocommerce-blocks-11.1.1 deleted file mode 100644 index 44356b9d68e..00000000000 --- a/plugins/woocommerce/changelog/update-woocommerce-blocks-11.1.1 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: update - -Bump Woo Blocks 11.1.1 diff --git a/plugins/woocommerce/changelog/update-yoast-phpunit-polyfill b/plugins/woocommerce/changelog/update-yoast-phpunit-polyfill deleted file mode 100644 index b64e35144cb..00000000000 --- a/plugins/woocommerce/changelog/update-yoast-phpunit-polyfill +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: dev -Comment: This PR updates a dev dependency and a changelog is not required. - - diff --git a/plugins/woocommerce/changelog/wccom-17911-marketplace-query-args-header b/plugins/woocommerce/changelog/wccom-17911-marketplace-query-args-header deleted file mode 100644 index ba748985a2b..00000000000 --- a/plugins/woocommerce/changelog/wccom-17911-marketplace-query-args-header +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fix -Comment: Fixes query parameters for Marketplace URLs - - diff --git a/plugins/woocommerce/composer.json b/plugins/woocommerce/composer.json index 9351d5146e4..45f3e0e0a85 100644 --- a/plugins/woocommerce/composer.json +++ b/plugins/woocommerce/composer.json @@ -2,7 +2,7 @@ "name": "woocommerce/woocommerce", "description": "An eCommerce toolkit that helps you sell anything. Beautifully.", "homepage": "https://woocommerce.com/", - "version": "8.2.0", + "version": "8.3.0", "type": "wordpress-plugin", "license": "GPL-3.0-or-later", "prefer-stable": true, diff --git a/plugins/woocommerce/includes/class-woocommerce.php b/plugins/woocommerce/includes/class-woocommerce.php index 9c0109e6fab..8f44cf57aa6 100644 --- a/plugins/woocommerce/includes/class-woocommerce.php +++ b/plugins/woocommerce/includes/class-woocommerce.php @@ -34,7 +34,7 @@ final class WooCommerce { * * @var string */ - public $version = '8.2.0'; + public $version = '8.3.0'; /** * WooCommerce Schema version. diff --git a/plugins/woocommerce/package.json b/plugins/woocommerce/package.json index 287275fbf86..ca49898cbe7 100644 --- a/plugins/woocommerce/package.json +++ b/plugins/woocommerce/package.json @@ -1,7 +1,7 @@ { "name": "woocommerce", "title": "WooCommerce", - "version": "8.2.0", + "version": "8.3.0", "homepage": "https://woocommerce.com/", "repository": { "type": "git", diff --git a/plugins/woocommerce/readme.txt b/plugins/woocommerce/readme.txt index 40899bb7e26..c8575557fcf 100644 --- a/plugins/woocommerce/readme.txt +++ b/plugins/woocommerce/readme.txt @@ -163,6 +163,6 @@ WooCommerce comes with some sample data you can use to see how products look; im == Changelog == -= 8.2.0 2023-XX-XX = += 8.3.0 2023-XX-XX = [See changelog for all versions](https://raw.githubusercontent.com/woocommerce/woocommerce/trunk/changelog.txt). diff --git a/plugins/woocommerce/src/Database/Migrations/CustomOrderTable/CLIRunner.php b/plugins/woocommerce/src/Database/Migrations/CustomOrderTable/CLIRunner.php index 19b551722d0..4dfdb94cebd 100644 --- a/plugins/woocommerce/src/Database/Migrations/CustomOrderTable/CLIRunner.php +++ b/plugins/woocommerce/src/Database/Migrations/CustomOrderTable/CLIRunner.php @@ -581,11 +581,19 @@ class CLIRunner { * @return array Failed IDs with meta details. */ private function verify_meta_data( array $order_ids, array $failed_ids ) : array { + $meta_keys_to_ignore = array( + '_paid_date', // This is set by the CPT datastore but no longer used anywhere. + '_edit_lock', + ); + global $wpdb; if ( ! count( $order_ids ) ) { return array(); } - $excluded_columns = $this->post_to_cot_migrator->get_migrated_meta_keys(); + $excluded_columns = array_merge( + $this->post_to_cot_migrator->get_migrated_meta_keys(), + $meta_keys_to_ignore + ); $excluded_columns_placeholder = implode( ', ', array_fill( 0, count( $excluded_columns ), '%s' ) ); $order_ids_placeholder = implode( ', ', array_fill( 0, count( $order_ids ), '%d' ) ); $meta_table = OrdersTableDataStore::get_meta_table_name(); diff --git a/plugins/woocommerce/tests/performance/tests/gh-action-pr-requests.js b/plugins/woocommerce/tests/performance/tests/gh-action-pr-requests.js index afd8f10b4a1..cce8e7b80e4 100644 --- a/plugins/woocommerce/tests/performance/tests/gh-action-pr-requests.js +++ b/plugins/woocommerce/tests/performance/tests/gh-action-pr-requests.js @@ -272,7 +272,7 @@ export function cartFlow() { } export function allMerchantFlow() { wpLogin(); - homeWCAdmin(); + homeWCAdmin( { other: false, orders: false, reviews: false, products: false} ); addOrder(); orders(); ordersSearch(); diff --git a/plugins/woocommerce/woocommerce.php b/plugins/woocommerce/woocommerce.php index 14050af1538..c92a3d451b8 100644 --- a/plugins/woocommerce/woocommerce.php +++ b/plugins/woocommerce/woocommerce.php @@ -3,7 +3,7 @@ * Plugin Name: WooCommerce * Plugin URI: https://woocommerce.com/ * Description: An eCommerce toolkit that helps you sell anything. Beautifully. - * Version: 8.2.0-dev + * Version: 8.3.0-dev * Author: Automattic * Author URI: https://woocommerce.com * Text Domain: woocommerce