@wordpress/edit-site 6.8.6 → 6.8.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/build/components/editor/index.js +0 -1
  2. package/build/components/editor/index.js.map +1 -1
  3. package/build/components/global-styles/font-families.js +19 -9
  4. package/build/components/global-styles/font-families.js.map +1 -1
  5. package/build/components/global-styles/font-sizes/font-size.js +16 -5
  6. package/build/components/global-styles/font-sizes/font-size.js.map +1 -1
  7. package/build/components/global-styles/screen-style-variations.js +9 -2
  8. package/build/components/global-styles/screen-style-variations.js.map +1 -1
  9. package/build/components/global-styles/shadows-edit-panel.js +17 -5
  10. package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
  11. package/build/components/global-styles/ui.js +0 -13
  12. package/build/components/global-styles/ui.js.map +1 -1
  13. package/build/components/layout/index.js +3 -14
  14. package/build/components/layout/index.js.map +1 -1
  15. package/build/components/page-patterns/fields.js +2 -4
  16. package/build/components/page-patterns/fields.js.map +1 -1
  17. package/build/components/page-patterns/index.js +3 -2
  18. package/build/components/page-patterns/index.js.map +1 -1
  19. package/build/components/save-panel/index.js +2 -4
  20. package/build/components/save-panel/index.js.map +1 -1
  21. package/build/components/sidebar-button/index.js +2 -4
  22. package/build/components/sidebar-button/index.js.map +1 -1
  23. package/build/components/sidebar-dataviews/add-new-view.js +4 -8
  24. package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
  25. package/build/components/site-hub/index.js +12 -24
  26. package/build/components/site-hub/index.js.map +1 -1
  27. package/build-module/components/editor/index.js +0 -1
  28. package/build-module/components/editor/index.js.map +1 -1
  29. package/build-module/components/global-styles/font-families.js +19 -9
  30. package/build-module/components/global-styles/font-families.js.map +1 -1
  31. package/build-module/components/global-styles/font-sizes/font-size.js +17 -6
  32. package/build-module/components/global-styles/font-sizes/font-size.js.map +1 -1
  33. package/build-module/components/global-styles/screen-style-variations.js +9 -2
  34. package/build-module/components/global-styles/screen-style-variations.js.map +1 -1
  35. package/build-module/components/global-styles/shadows-edit-panel.js +18 -6
  36. package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
  37. package/build-module/components/global-styles/ui.js +0 -13
  38. package/build-module/components/global-styles/ui.js.map +1 -1
  39. package/build-module/components/layout/index.js +3 -14
  40. package/build-module/components/layout/index.js.map +1 -1
  41. package/build-module/components/page-patterns/fields.js +2 -4
  42. package/build-module/components/page-patterns/fields.js.map +1 -1
  43. package/build-module/components/page-patterns/index.js +3 -2
  44. package/build-module/components/page-patterns/index.js.map +1 -1
  45. package/build-module/components/save-panel/index.js +2 -4
  46. package/build-module/components/save-panel/index.js.map +1 -1
  47. package/build-module/components/sidebar-button/index.js +2 -4
  48. package/build-module/components/sidebar-button/index.js.map +1 -1
  49. package/build-module/components/sidebar-dataviews/add-new-view.js +4 -8
  50. package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
  51. package/build-module/components/site-hub/index.js +12 -24
  52. package/build-module/components/site-hub/index.js.map +1 -1
  53. package/package.json +15 -15
  54. package/src/components/editor/index.js +0 -1
  55. package/src/components/global-styles/font-families.js +21 -14
  56. package/src/components/global-styles/font-sizes/font-size.js +15 -7
  57. package/src/components/global-styles/screen-style-variations.js +7 -2
  58. package/src/components/global-styles/shadows-edit-panel.js +21 -5
  59. package/src/components/global-styles/ui.js +0 -13
  60. package/src/components/layout/index.js +7 -23
  61. package/src/components/page-patterns/fields.js +1 -2
  62. package/src/components/page-patterns/index.js +3 -2
  63. package/src/components/save-panel/index.js +1 -2
  64. package/src/components/sidebar-button/index.js +1 -2
  65. package/src/components/sidebar-dataviews/add-new-view.js +2 -4
  66. package/src/components/site-hub/index.js +6 -12
@@ -1 +1 @@
1
- {"version":3,"names":["__","__experimentalText","Text","__experimentalItemGroup","ItemGroup","__experimentalVStack","VStack","Button","privateApis","blockEditorPrivateApis","useContext","FontLibraryProvider","FontLibraryContext","FontLibraryModal","FontFamilyItem","Subtitle","setUIValuesNeeded","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useGlobalSetting","FontFamilies","baseCustomFonts","modalTabOpen","setModalTabOpen","fontFamilies","baseFontFamilies","undefined","themeFonts","theme","map","f","source","sort","a","b","name","localeCompare","customFonts","custom","hasFonts","length","hasInstalledFonts","children","onRequestClose","defaultTabId","spacing","level","size","isBordered","isSeparated","font","slug","as","className","variant","__next40pxDefaultSize","onClick","props"],"sources":["@wordpress/edit-site/src/components/global-styles/font-families.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalText as Text,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalVStack as VStack,\n\tButton,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport FontLibraryProvider, {\n\tFontLibraryContext,\n} from './font-library-modal/context';\nimport FontLibraryModal from './font-library-modal';\nimport FontFamilyItem from './font-family-item';\nimport Subtitle from './subtitle';\nimport { setUIValuesNeeded } from './font-library-modal/utils';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction FontFamilies() {\n\tconst { baseCustomFonts, modalTabOpen, setModalTabOpen } =\n\t\tuseContext( FontLibraryContext );\n\tconst [ fontFamilies ] = useGlobalSetting( 'typography.fontFamilies' );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst themeFonts = fontFamilies?.theme\n\t\t? fontFamilies.theme\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\tconst customFonts = fontFamilies?.custom\n\t\t? fontFamilies.custom\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\tconst hasFonts = 0 < customFonts.length || 0 < themeFonts.length;\n\n\tconst hasInstalledFonts =\n\t\thasFonts ||\n\t\tbaseFontFamilies?.theme?.length > 0 ||\n\t\tbaseCustomFonts?.length > 0;\n\n\treturn (\n\t\t<>\n\t\t\t{ !! modalTabOpen && (\n\t\t\t\t<FontLibraryModal\n\t\t\t\t\tonRequestClose={ () => setModalTabOpen( null ) }\n\t\t\t\t\tdefaultTabId={ modalTabOpen }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t{ [ ...themeFonts, ...customFonts ].length > 0 && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Fonts' ) }</Subtitle>\n\t\t\t\t\t\t<ItemGroup size=\"large\" isBordered isSeparated>\n\t\t\t\t\t\t\t{ themeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t<FontFamilyItem\n\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t<VStack>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Fonts' ) }</Subtitle>\n\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t\t\t? __( 'No fonts activated.' )\n\t\t\t\t\t\t\t\t: __( 'No fonts installed.' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</VStack>\n\t\t\t\t) }\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"edit-site-global-styles-font-families__manage-fonts\"\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetModalTabOpen(\n\t\t\t\t\t\t\thasInstalledFonts\n\t\t\t\t\t\t\t\t? 'installed-fonts'\n\t\t\t\t\t\t\t\t: 'upload-fonts'\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t? __( 'Manage fonts' )\n\t\t\t\t\t\t: __( 'Add fonts' ) }\n\t\t\t\t</Button>\n\t\t\t</VStack>\n\t\t</>\n\t);\n}\n\nexport default ( { ...props } ) => (\n\t<FontLibraryProvider>\n\t\t<FontFamilies { ...props } />\n\t</FontLibraryProvider>\n);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","__experimentalText","Text","__experimentalItemGroup","ItemGroup","__experimentalVStack","VStack","Button","privateApis","blockEditorPrivateApis","useContext","FontLibraryProvider","FontLibraryContext","FontLibraryModal","FontFamilyItem","Subtitle","setUIValuesNeeded","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","useGlobalSetting","mapFontsWithSource","fonts","source","map","f","FontFamilies","baseCustomFonts","modalTabOpen","setModalTabOpen","fontFamilies","baseFontFamilies","undefined","themeFonts","theme","customFonts","custom","activeFonts","sort","a","b","name","localeCompare","hasFonts","length","hasInstalledFonts","children","onRequestClose","defaultTabId","spacing","level","size","isBordered","isSeparated","font","slug","as","className","variant","__next40pxDefaultSize","onClick","props"],"sources":["@wordpress/edit-site/src/components/global-styles/font-families.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalText as Text,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalVStack as VStack,\n\tButton,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport FontLibraryProvider, {\n\tFontLibraryContext,\n} from './font-library-modal/context';\nimport FontLibraryModal from './font-library-modal';\nimport FontFamilyItem from './font-family-item';\nimport Subtitle from './subtitle';\nimport { setUIValuesNeeded } from './font-library-modal/utils';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\n/**\n * Maps the fonts with the source, if available.\n *\n * @param {Array} fonts The fonts to map.\n * @param {string} source The source of the fonts.\n * @return {Array} The mapped fonts.\n */\nfunction mapFontsWithSource( fonts, source ) {\n\treturn fonts\n\t\t? fonts.map( ( f ) => setUIValuesNeeded( f, { source } ) )\n\t\t: [];\n}\n\nfunction FontFamilies() {\n\tconst { baseCustomFonts, modalTabOpen, setModalTabOpen } =\n\t\tuseContext( FontLibraryContext );\n\tconst [ fontFamilies ] = useGlobalSetting( 'typography.fontFamilies' );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst themeFonts = mapFontsWithSource( fontFamilies?.theme, 'theme' );\n\tconst customFonts = mapFontsWithSource( fontFamilies?.custom, 'custom' );\n\tconst activeFonts = [ ...themeFonts, ...customFonts ].sort( ( a, b ) =>\n\t\ta.name.localeCompare( b.name )\n\t);\n\tconst hasFonts = 0 < activeFonts.length;\n\tconst hasInstalledFonts =\n\t\thasFonts ||\n\t\tbaseFontFamilies?.theme?.length > 0 ||\n\t\tbaseCustomFonts?.length > 0;\n\n\treturn (\n\t\t<>\n\t\t\t{ !! modalTabOpen && (\n\t\t\t\t<FontLibraryModal\n\t\t\t\t\tonRequestClose={ () => setModalTabOpen( null ) }\n\t\t\t\t\tdefaultTabId={ modalTabOpen }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t{ activeFonts.length > 0 && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Fonts' ) }</Subtitle>\n\t\t\t\t\t\t<ItemGroup size=\"large\" isBordered isSeparated>\n\t\t\t\t\t\t\t{ activeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t<FontFamilyItem\n\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t<VStack>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Fonts' ) }</Subtitle>\n\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t\t\t? __( 'No fonts activated.' )\n\t\t\t\t\t\t\t\t: __( 'No fonts installed.' ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</VStack>\n\t\t\t\t) }\n\t\t\t\t<Button\n\t\t\t\t\tclassName=\"edit-site-global-styles-font-families__manage-fonts\"\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetModalTabOpen(\n\t\t\t\t\t\t\thasInstalledFonts\n\t\t\t\t\t\t\t\t? 'installed-fonts'\n\t\t\t\t\t\t\t\t: 'upload-fonts'\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ hasInstalledFonts\n\t\t\t\t\t\t? __( 'Manage fonts' )\n\t\t\t\t\t\t: __( 'Add fonts' ) }\n\t\t\t\t</Button>\n\t\t\t</VStack>\n\t\t</>\n\t);\n}\n\nexport default ( { ...props } ) => (\n\t<FontLibraryProvider>\n\t\t<FontFamilies { ...props } />\n\t</FontLibraryProvider>\n);\n"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,7 @@ import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
5
5
  import { __, sprintf } from '@wordpress/i18n';
6
6
  import { __experimentalSpacer as Spacer, __experimentalUseNavigator as useNavigator, __experimentalView as View, __experimentalHStack as HStack, __experimentalVStack as VStack, privateApis as componentsPrivateApis, Button, FlexItem, ToggleControl } from '@wordpress/components';
7
7
  import { moreVertical } from '@wordpress/icons';
8
- import { useState } from '@wordpress/element';
8
+ import { useState, useEffect } from '@wordpress/element';
9
9
 
10
10
  /**
11
11
  * Internal dependencies
@@ -34,7 +34,6 @@ function FontSize() {
34
34
  origin,
35
35
  slug
36
36
  },
37
- goBack,
38
37
  goTo
39
38
  } = useNavigator();
40
39
  const [fontSizes, setFontSizes] = useGlobalSetting('typography.fontSizes');
@@ -47,10 +46,10 @@ function FontSize() {
47
46
  const fontSize = sizes.find(size => size.slug === slug);
48
47
 
49
48
  // Whether the font size is fluid. If not defined, use the global fluid value of the theme.
50
- const isFluid = fontSize.fluid !== undefined ? !!fontSize.fluid : !!globalFluid;
49
+ const isFluid = fontSize?.fluid !== undefined ? !!fontSize.fluid : !!globalFluid;
51
50
 
52
51
  // Whether custom fluid values are used.
53
- const isCustomFluid = typeof fontSize.fluid === 'object';
52
+ const isCustomFluid = typeof fontSize?.fluid === 'object';
54
53
  const handleNameChange = value => {
55
54
  updateFontSize('name', value);
56
55
  };
@@ -100,8 +99,6 @@ function FontSize() {
100
99
  });
101
100
  };
102
101
  const handleRemoveFontSize = () => {
103
- // Navigate to the font sizes list.
104
- goBack();
105
102
  const newFontSizes = sizes.filter(size => size.slug !== slug);
106
103
  setFontSizes({
107
104
  ...fontSizes,
@@ -114,6 +111,20 @@ function FontSize() {
114
111
  const toggleRenameDialog = () => {
115
112
  setIsRenameDialogOpen(!isRenameDialogOpen);
116
113
  };
114
+
115
+ // Navigate to the font sizes list if the font size is not available.
116
+ useEffect(() => {
117
+ if (!fontSize) {
118
+ goTo('/typography/font-sizes/', {
119
+ isBack: true
120
+ });
121
+ }
122
+ }, [fontSize, goTo]);
123
+
124
+ // Avoid rendering if the font size is not available.
125
+ if (!fontSize) {
126
+ return null;
127
+ }
117
128
  return /*#__PURE__*/_jsxs(_Fragment, {
118
129
  children: [/*#__PURE__*/_jsx(ConfirmDeleteFontSizeDialog, {
119
130
  fontSize: fontSize,
@@ -1 +1 @@
1
- {"version":3,"names":["privateApis","blockEditorPrivateApis","__","sprintf","__experimentalSpacer","Spacer","__experimentalUseNavigator","useNavigator","__experimentalView","View","__experimentalHStack","HStack","__experimentalVStack","VStack","componentsPrivateApis","Button","FlexItem","ToggleControl","moreVertical","useState","unlock","ScreenHeader","FontSizePreview","ConfirmDeleteFontSizeDialog","RenameFontSizeDialog","SizeControl","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DropdownMenuV2","useGlobalSetting","FontSize","_fontSizes$origin","isDeleteConfirmOpen","setIsDeleteConfirmOpen","isRenameDialogOpen","setIsRenameDialogOpen","params","origin","slug","goBack","goTo","fontSizes","setFontSizes","globalFluid","sizes","fontSize","find","size","isFluid","fluid","undefined","isCustomFluid","handleNameChange","value","updateFontSize","handleFontSizeChange","handleFluidChange","handleCustomFluidValues","min","max","handleMinChange","handleMaxChange","key","newFontSizes","map","handleRemoveFontSize","filter","toggleDeleteConfirm","toggleRenameDialog","children","isOpen","toggleOpen","handleRename","spacing","justify","align","title","name","description","onBack","marginTop","marginBottom","paddingX","trigger","icon","label","Item","onClick","ItemLabel","onChange","disabled","help","checked","__nextHasNoMarginBottom"],"sources":["@wordpress/edit-site/src/components/global-styles/font-sizes/font-size.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalSpacer as Spacer,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalView as View,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tFlexItem,\n\tToggleControl,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\nimport ScreenHeader from '../header';\nimport FontSizePreview from './font-size-preview';\nimport ConfirmDeleteFontSizeDialog from './confirm-delete-font-size-dialog';\nimport RenameFontSizeDialog from './rename-font-size-dialog';\nimport SizeControl from '../size-control';\n\nconst { DropdownMenuV2 } = unlock( componentsPrivateApis );\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction FontSize() {\n\tconst [ isDeleteConfirmOpen, setIsDeleteConfirmOpen ] = useState( false );\n\tconst [ isRenameDialogOpen, setIsRenameDialogOpen ] = useState( false );\n\n\tconst {\n\t\tparams: { origin, slug },\n\t\tgoBack,\n\t\tgoTo,\n\t} = useNavigator();\n\n\tconst [ fontSizes, setFontSizes ] = useGlobalSetting(\n\t\t'typography.fontSizes'\n\t);\n\n\tconst [ globalFluid ] = useGlobalSetting( 'typography.fluid' );\n\n\t// Get the font sizes from the origin, default to empty array.\n\tconst sizes = fontSizes[ origin ] ?? [];\n\n\t// Get the font size by slug.\n\tconst fontSize = sizes.find( ( size ) => size.slug === slug );\n\n\t// Whether the font size is fluid. If not defined, use the global fluid value of the theme.\n\tconst isFluid =\n\t\tfontSize.fluid !== undefined ? !! fontSize.fluid : !! globalFluid;\n\n\t// Whether custom fluid values are used.\n\tconst isCustomFluid = typeof fontSize.fluid === 'object';\n\n\tconst handleNameChange = ( value ) => {\n\t\tupdateFontSize( 'name', value );\n\t};\n\n\tconst handleFontSizeChange = ( value ) => {\n\t\tupdateFontSize( 'size', value );\n\t};\n\n\tconst handleFluidChange = ( value ) => {\n\t\tupdateFontSize( 'fluid', value );\n\t};\n\n\tconst handleCustomFluidValues = ( value ) => {\n\t\tif ( value ) {\n\t\t\t// If custom values are used, init the values with the current ones.\n\t\t\tupdateFontSize( 'fluid', {\n\t\t\t\tmin: fontSize.size,\n\t\t\t\tmax: fontSize.size,\n\t\t\t} );\n\t\t} else {\n\t\t\t// If custom fluid values are disabled, set fluid to true.\n\t\t\tupdateFontSize( 'fluid', true );\n\t\t}\n\t};\n\n\tconst handleMinChange = ( value ) => {\n\t\tupdateFontSize( 'fluid', { ...fontSize.fluid, min: value } );\n\t};\n\n\tconst handleMaxChange = ( value ) => {\n\t\tupdateFontSize( 'fluid', { ...fontSize.fluid, max: value } );\n\t};\n\n\tconst updateFontSize = ( key, value ) => {\n\t\tconst newFontSizes = sizes.map( ( size ) => {\n\t\t\tif ( size.slug === slug ) {\n\t\t\t\treturn { ...size, [ key ]: value }; // Create a new object with updated key\n\t\t\t}\n\t\t\treturn size;\n\t\t} );\n\n\t\tsetFontSizes( {\n\t\t\t...fontSizes,\n\t\t\t[ origin ]: newFontSizes,\n\t\t} );\n\t};\n\n\tconst handleRemoveFontSize = () => {\n\t\t// Navigate to the font sizes list.\n\t\tgoBack();\n\n\t\tconst newFontSizes = sizes.filter( ( size ) => size.slug !== slug );\n\t\tsetFontSizes( {\n\t\t\t...fontSizes,\n\t\t\t[ origin ]: newFontSizes,\n\t\t} );\n\t};\n\n\tconst toggleDeleteConfirm = () => {\n\t\tsetIsDeleteConfirmOpen( ! isDeleteConfirmOpen );\n\t};\n\n\tconst toggleRenameDialog = () => {\n\t\tsetIsRenameDialogOpen( ! isRenameDialogOpen );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<ConfirmDeleteFontSizeDialog\n\t\t\t\tfontSize={ fontSize }\n\t\t\t\tisOpen={ isDeleteConfirmOpen }\n\t\t\t\ttoggleOpen={ toggleDeleteConfirm }\n\t\t\t\thandleRemoveFontSize={ handleRemoveFontSize }\n\t\t\t/>\n\n\t\t\t{ isRenameDialogOpen && (\n\t\t\t\t<RenameFontSizeDialog\n\t\t\t\t\tfontSize={ fontSize }\n\t\t\t\t\ttoggleOpen={ toggleRenameDialog }\n\t\t\t\t\thandleRename={ handleNameChange }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<HStack justify=\"space-between\" align=\"flex-start\">\n\t\t\t\t\t<ScreenHeader\n\t\t\t\t\t\ttitle={ fontSize.name }\n\t\t\t\t\t\tdescription={ sprintf(\n\t\t\t\t\t\t\t/* translators: %s: font size preset name. */\n\t\t\t\t\t\t\t__( 'Manage the font size %s.' ),\n\t\t\t\t\t\t\tfontSize.name\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonBack={ () => goTo( '/typography/font-sizes/' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ origin === 'custom' && (\n\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t<Spacer\n\t\t\t\t\t\t\t\tmarginTop={ 3 }\n\t\t\t\t\t\t\t\tmarginBottom={ 0 }\n\t\t\t\t\t\t\t\tpaddingX={ 4 }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<DropdownMenuV2\n\t\t\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Font size options' ) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuV2.Item\n\t\t\t\t\t\t\t\t\t\tonClick={ toggleRenameDialog }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Rename' ) }\n\t\t\t\t\t\t\t\t\t\t</DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t</DropdownMenuV2.Item>\n\t\t\t\t\t\t\t\t\t<DropdownMenuV2.Item\n\t\t\t\t\t\t\t\t\t\tonClick={ toggleDeleteConfirm }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t\t\t\t</DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t</DropdownMenuV2.Item>\n\t\t\t\t\t\t\t\t</DropdownMenuV2>\n\t\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\n\t\t\t\t<View>\n\t\t\t\t\t<Spacer paddingX={ 4 }>\n\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<FontSizePreview fontSize={ fontSize } />\n\t\t\t\t\t\t\t</FlexItem>\n\n\t\t\t\t\t\t\t<SizeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Size' ) }\n\t\t\t\t\t\t\t\tvalue={ ! isCustomFluid ? fontSize.size : '' }\n\t\t\t\t\t\t\t\tonChange={ handleFontSizeChange }\n\t\t\t\t\t\t\t\tdisabled={ isCustomFluid }\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Fluid typography' ) }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Scale the font size dynamically to fit the screen or viewport.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tchecked={ isFluid }\n\t\t\t\t\t\t\t\tonChange={ handleFluidChange }\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t{ isFluid && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Custom fluid values' ) }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Set custom min and max values for the fluid font size.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tchecked={ isCustomFluid }\n\t\t\t\t\t\t\t\t\tonChange={ handleCustomFluidValues }\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t\t{ isCustomFluid && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<SizeControl\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Minimum' ) }\n\t\t\t\t\t\t\t\t\t\tvalue={ fontSize.fluid?.min }\n\t\t\t\t\t\t\t\t\t\tonChange={ handleMinChange }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<SizeControl\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Maximum' ) }\n\t\t\t\t\t\t\t\t\t\tvalue={ fontSize.fluid?.max }\n\t\t\t\t\t\t\t\t\t\tonChange={ handleMaxChange }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</View>\n\t\t\t</VStack>\n\t\t</>\n\t);\n}\n\nexport default FontSize;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["privateApis","blockEditorPrivateApis","__","sprintf","__experimentalSpacer","Spacer","__experimentalUseNavigator","useNavigator","__experimentalView","View","__experimentalHStack","HStack","__experimentalVStack","VStack","componentsPrivateApis","Button","FlexItem","ToggleControl","moreVertical","useState","useEffect","unlock","ScreenHeader","FontSizePreview","ConfirmDeleteFontSizeDialog","RenameFontSizeDialog","SizeControl","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DropdownMenuV2","useGlobalSetting","FontSize","_fontSizes$origin","isDeleteConfirmOpen","setIsDeleteConfirmOpen","isRenameDialogOpen","setIsRenameDialogOpen","params","origin","slug","goTo","fontSizes","setFontSizes","globalFluid","sizes","fontSize","find","size","isFluid","fluid","undefined","isCustomFluid","handleNameChange","value","updateFontSize","handleFontSizeChange","handleFluidChange","handleCustomFluidValues","min","max","handleMinChange","handleMaxChange","key","newFontSizes","map","handleRemoveFontSize","filter","toggleDeleteConfirm","toggleRenameDialog","isBack","children","isOpen","toggleOpen","handleRename","spacing","justify","align","title","name","description","onBack","marginTop","marginBottom","paddingX","trigger","icon","label","Item","onClick","ItemLabel","onChange","disabled","help","checked","__nextHasNoMarginBottom"],"sources":["@wordpress/edit-site/src/components/global-styles/font-sizes/font-size.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalSpacer as Spacer,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalView as View,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tFlexItem,\n\tToggleControl,\n} from '@wordpress/components';\nimport { moreVertical } from '@wordpress/icons';\nimport { useState, useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../../lock-unlock';\nimport ScreenHeader from '../header';\nimport FontSizePreview from './font-size-preview';\nimport ConfirmDeleteFontSizeDialog from './confirm-delete-font-size-dialog';\nimport RenameFontSizeDialog from './rename-font-size-dialog';\nimport SizeControl from '../size-control';\n\nconst { DropdownMenuV2 } = unlock( componentsPrivateApis );\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction FontSize() {\n\tconst [ isDeleteConfirmOpen, setIsDeleteConfirmOpen ] = useState( false );\n\tconst [ isRenameDialogOpen, setIsRenameDialogOpen ] = useState( false );\n\n\tconst {\n\t\tparams: { origin, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\n\tconst [ fontSizes, setFontSizes ] = useGlobalSetting(\n\t\t'typography.fontSizes'\n\t);\n\n\tconst [ globalFluid ] = useGlobalSetting( 'typography.fluid' );\n\n\t// Get the font sizes from the origin, default to empty array.\n\tconst sizes = fontSizes[ origin ] ?? [];\n\n\t// Get the font size by slug.\n\tconst fontSize = sizes.find( ( size ) => size.slug === slug );\n\n\t// Whether the font size is fluid. If not defined, use the global fluid value of the theme.\n\tconst isFluid =\n\t\tfontSize?.fluid !== undefined ? !! fontSize.fluid : !! globalFluid;\n\n\t// Whether custom fluid values are used.\n\tconst isCustomFluid = typeof fontSize?.fluid === 'object';\n\n\tconst handleNameChange = ( value ) => {\n\t\tupdateFontSize( 'name', value );\n\t};\n\n\tconst handleFontSizeChange = ( value ) => {\n\t\tupdateFontSize( 'size', value );\n\t};\n\n\tconst handleFluidChange = ( value ) => {\n\t\tupdateFontSize( 'fluid', value );\n\t};\n\n\tconst handleCustomFluidValues = ( value ) => {\n\t\tif ( value ) {\n\t\t\t// If custom values are used, init the values with the current ones.\n\t\t\tupdateFontSize( 'fluid', {\n\t\t\t\tmin: fontSize.size,\n\t\t\t\tmax: fontSize.size,\n\t\t\t} );\n\t\t} else {\n\t\t\t// If custom fluid values are disabled, set fluid to true.\n\t\t\tupdateFontSize( 'fluid', true );\n\t\t}\n\t};\n\n\tconst handleMinChange = ( value ) => {\n\t\tupdateFontSize( 'fluid', { ...fontSize.fluid, min: value } );\n\t};\n\n\tconst handleMaxChange = ( value ) => {\n\t\tupdateFontSize( 'fluid', { ...fontSize.fluid, max: value } );\n\t};\n\n\tconst updateFontSize = ( key, value ) => {\n\t\tconst newFontSizes = sizes.map( ( size ) => {\n\t\t\tif ( size.slug === slug ) {\n\t\t\t\treturn { ...size, [ key ]: value }; // Create a new object with updated key\n\t\t\t}\n\t\t\treturn size;\n\t\t} );\n\n\t\tsetFontSizes( {\n\t\t\t...fontSizes,\n\t\t\t[ origin ]: newFontSizes,\n\t\t} );\n\t};\n\n\tconst handleRemoveFontSize = () => {\n\t\tconst newFontSizes = sizes.filter( ( size ) => size.slug !== slug );\n\t\tsetFontSizes( {\n\t\t\t...fontSizes,\n\t\t\t[ origin ]: newFontSizes,\n\t\t} );\n\t};\n\n\tconst toggleDeleteConfirm = () => {\n\t\tsetIsDeleteConfirmOpen( ! isDeleteConfirmOpen );\n\t};\n\n\tconst toggleRenameDialog = () => {\n\t\tsetIsRenameDialogOpen( ! isRenameDialogOpen );\n\t};\n\n\t// Navigate to the font sizes list if the font size is not available.\n\tuseEffect( () => {\n\t\tif ( ! fontSize ) {\n\t\t\tgoTo( '/typography/font-sizes/', { isBack: true } );\n\t\t}\n\t}, [ fontSize, goTo ] );\n\n\t// Avoid rendering if the font size is not available.\n\tif ( ! fontSize ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ConfirmDeleteFontSizeDialog\n\t\t\t\tfontSize={ fontSize }\n\t\t\t\tisOpen={ isDeleteConfirmOpen }\n\t\t\t\ttoggleOpen={ toggleDeleteConfirm }\n\t\t\t\thandleRemoveFontSize={ handleRemoveFontSize }\n\t\t\t/>\n\n\t\t\t{ isRenameDialogOpen && (\n\t\t\t\t<RenameFontSizeDialog\n\t\t\t\t\tfontSize={ fontSize }\n\t\t\t\t\ttoggleOpen={ toggleRenameDialog }\n\t\t\t\t\thandleRename={ handleNameChange }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<HStack justify=\"space-between\" align=\"flex-start\">\n\t\t\t\t\t<ScreenHeader\n\t\t\t\t\t\ttitle={ fontSize.name }\n\t\t\t\t\t\tdescription={ sprintf(\n\t\t\t\t\t\t\t/* translators: %s: font size preset name. */\n\t\t\t\t\t\t\t__( 'Manage the font size %s.' ),\n\t\t\t\t\t\t\tfontSize.name\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonBack={ () => goTo( '/typography/font-sizes/' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ origin === 'custom' && (\n\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t<Spacer\n\t\t\t\t\t\t\t\tmarginTop={ 3 }\n\t\t\t\t\t\t\t\tmarginBottom={ 0 }\n\t\t\t\t\t\t\t\tpaddingX={ 4 }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<DropdownMenuV2\n\t\t\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Font size options' ) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuV2.Item\n\t\t\t\t\t\t\t\t\t\tonClick={ toggleRenameDialog }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Rename' ) }\n\t\t\t\t\t\t\t\t\t\t</DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t</DropdownMenuV2.Item>\n\t\t\t\t\t\t\t\t\t<DropdownMenuV2.Item\n\t\t\t\t\t\t\t\t\t\tonClick={ toggleDeleteConfirm }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t\t\t\t</DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t</DropdownMenuV2.Item>\n\t\t\t\t\t\t\t\t</DropdownMenuV2>\n\t\t\t\t\t\t\t</Spacer>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t) }\n\t\t\t\t</HStack>\n\n\t\t\t\t<View>\n\t\t\t\t\t<Spacer paddingX={ 4 }>\n\t\t\t\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<FontSizePreview fontSize={ fontSize } />\n\t\t\t\t\t\t\t</FlexItem>\n\n\t\t\t\t\t\t\t<SizeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Size' ) }\n\t\t\t\t\t\t\t\tvalue={ ! isCustomFluid ? fontSize.size : '' }\n\t\t\t\t\t\t\t\tonChange={ handleFontSizeChange }\n\t\t\t\t\t\t\t\tdisabled={ isCustomFluid }\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Fluid typography' ) }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Scale the font size dynamically to fit the screen or viewport.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tchecked={ isFluid }\n\t\t\t\t\t\t\t\tonChange={ handleFluidChange }\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t{ isFluid && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Custom fluid values' ) }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Set custom min and max values for the fluid font size.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tchecked={ isCustomFluid }\n\t\t\t\t\t\t\t\t\tonChange={ handleCustomFluidValues }\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t\t{ isCustomFluid && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<SizeControl\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Minimum' ) }\n\t\t\t\t\t\t\t\t\t\tvalue={ fontSize.fluid?.min }\n\t\t\t\t\t\t\t\t\t\tonChange={ handleMinChange }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<SizeControl\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Maximum' ) }\n\t\t\t\t\t\t\t\t\t\tvalue={ fontSize.fluid?.max }\n\t\t\t\t\t\t\t\t\t\tonChange={ handleMaxChange }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</View>\n\t\t\t</VStack>\n\t\t</>\n\t);\n}\n\nexport default FontSize;\n"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,8 @@
4
4
  import { Card, CardBody } from '@wordpress/components';
5
5
  import { __ } from '@wordpress/i18n';
6
6
  import { useZoomOut } from '@wordpress/block-editor';
7
+ import { useDispatch } from '@wordpress/data';
8
+ import { store as editorStore } from '@wordpress/editor';
7
9
 
8
10
  /**
9
11
  * Internal dependencies
@@ -14,9 +16,14 @@ import { jsx as _jsx } from "react/jsx-runtime";
14
16
  import { Fragment as _Fragment } from "react/jsx-runtime";
15
17
  import { jsxs as _jsxs } from "react/jsx-runtime";
16
18
  function ScreenStyleVariations() {
17
- // Move to zoom out mode when this component is mounted
18
- // and back to the previous mode when unmounted.
19
+ // Style Variations should only be previewed in with
20
+ // - a "zoomed out" editor
21
+ // - "Desktop" device preview
22
+ const {
23
+ setDeviceType
24
+ } = useDispatch(editorStore);
19
25
  useZoomOut();
26
+ setDeviceType('desktop');
20
27
  return /*#__PURE__*/_jsxs(_Fragment, {
21
28
  children: [/*#__PURE__*/_jsx(ScreenHeader, {
22
29
  title: __('Browse styles'),
@@ -1 +1 @@
1
- {"version":3,"names":["Card","CardBody","__","useZoomOut","ScreenHeader","SidebarNavigationScreenGlobalStylesContent","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ScreenStyleVariations","children","title","description","size","isBorderless","className"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-style-variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Card, CardBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useZoomOut } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport SidebarNavigationScreenGlobalStylesContent from '../sidebar-navigation-screen-global-styles/content';\n\nfunction ScreenStyleVariations() {\n\t// Move to zoom out mode when this component is mounted\n\t// and back to the previous mode when unmounted.\n\tuseZoomOut();\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Browse styles' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Choose a variation to change the look of the site.'\n\t\t\t\t) }\n\t\t\t/>\n\n\t\t\t<Card\n\t\t\t\tsize=\"small\"\n\t\t\t\tisBorderless\n\t\t\t\tclassName=\"edit-site-global-styles-screen-style-variations\"\n\t\t\t>\n\t\t\t\t<CardBody>\n\t\t\t\t\t<SidebarNavigationScreenGlobalStylesContent />\n\t\t\t\t</CardBody>\n\t\t\t</Card>\n\t\t</>\n\t);\n}\n\nexport default ScreenStyleVariations;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,IAAI,EAAEC,QAAQ,QAAQ,uBAAuB;AACtD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,QAAQ,yBAAyB;;AAEpD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,UAAU;AACnC,OAAOC,0CAA0C,MAAM,oDAAoD;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE5G,SAASC,qBAAqBA,CAAA,EAAG;EAChC;EACA;EACAT,UAAU,CAAC,CAAC;EAEZ,oBACCQ,KAAA,CAAAF,SAAA;IAAAI,QAAA,gBACCN,IAAA,CAACH,YAAY;MACZU,KAAK,EAAGZ,EAAE,CAAE,eAAgB,CAAG;MAC/Ba,WAAW,EAAGb,EAAE,CACf,oDACD;IAAG,CACH,CAAC,eAEFK,IAAA,CAACP,IAAI;MACJgB,IAAI,EAAC,OAAO;MACZC,YAAY;MACZC,SAAS,EAAC,iDAAiD;MAAAL,QAAA,eAE3DN,IAAA,CAACN,QAAQ;QAAAY,QAAA,eACRN,IAAA,CAACF,0CAA0C,IAAE;MAAC,CACrC;IAAC,CACN,CAAC;EAAA,CACN,CAAC;AAEL;AAEA,eAAeO,qBAAqB","ignoreList":[]}
1
+ {"version":3,"names":["Card","CardBody","__","useZoomOut","useDispatch","store","editorStore","ScreenHeader","SidebarNavigationScreenGlobalStylesContent","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ScreenStyleVariations","setDeviceType","children","title","description","size","isBorderless","className"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-style-variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Card, CardBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useZoomOut } from '@wordpress/block-editor';\nimport { useDispatch } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport ScreenHeader from './header';\nimport SidebarNavigationScreenGlobalStylesContent from '../sidebar-navigation-screen-global-styles/content';\n\nfunction ScreenStyleVariations() {\n\t// Style Variations should only be previewed in with\n\t// - a \"zoomed out\" editor\n\t// - \"Desktop\" device preview\n\tconst { setDeviceType } = useDispatch( editorStore );\n\tuseZoomOut();\n\tsetDeviceType( 'desktop' );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Browse styles' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Choose a variation to change the look of the site.'\n\t\t\t\t) }\n\t\t\t/>\n\n\t\t\t<Card\n\t\t\t\tsize=\"small\"\n\t\t\t\tisBorderless\n\t\t\t\tclassName=\"edit-site-global-styles-screen-style-variations\"\n\t\t\t>\n\t\t\t\t<CardBody>\n\t\t\t\t\t<SidebarNavigationScreenGlobalStylesContent />\n\t\t\t\t</CardBody>\n\t\t\t</Card>\n\t\t</>\n\t);\n}\n\nexport default ScreenStyleVariations;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,IAAI,EAAEC,QAAQ,QAAQ,uBAAuB;AACtD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,UAAU;AACnC,OAAOC,0CAA0C,MAAM,oDAAoD;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE5G,SAASC,qBAAqBA,CAAA,EAAG;EAChC;EACA;EACA;EACA,MAAM;IAAEC;EAAc,CAAC,GAAGZ,WAAW,CAAEE,WAAY,CAAC;EACpDH,UAAU,CAAC,CAAC;EACZa,aAAa,CAAE,SAAU,CAAC;EAE1B,oBACCF,KAAA,CAAAF,SAAA;IAAAK,QAAA,gBACCP,IAAA,CAACH,YAAY;MACZW,KAAK,EAAGhB,EAAE,CAAE,eAAgB,CAAG;MAC/BiB,WAAW,EAAGjB,EAAE,CACf,oDACD;IAAG,CACH,CAAC,eAEFQ,IAAA,CAACV,IAAI;MACJoB,IAAI,EAAC,OAAO;MACZC,YAAY;MACZC,SAAS,EAAC,iDAAiD;MAAAL,QAAA,eAE3DP,IAAA,CAACT,QAAQ;QAAAgB,QAAA,eACRP,IAAA,CAACF,0CAA0C,IAAE;MAAC,CACrC;IAAC,CACN,CAAC;EAAA,CACN,CAAC;AAEL;AAEA,eAAeO,qBAAqB","ignoreList":[]}
@@ -10,7 +10,7 @@ import { __experimentalHStack as HStack, __experimentalVStack as VStack, __exper
10
10
  import { __, sprintf } from '@wordpress/i18n';
11
11
  import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
12
12
  import { plus, shadow as shadowIcon, reset, moreVertical } from '@wordpress/icons';
13
- import { useState, useMemo } from '@wordpress/element';
13
+ import { useState, useMemo, useEffect } from '@wordpress/element';
14
14
 
15
15
  /**
16
16
  * Internal dependencies
@@ -42,13 +42,27 @@ const presetShadowMenuItems = [{
42
42
  }];
43
43
  export default function ShadowsEditPanel() {
44
44
  const {
45
+ goBack,
45
46
  params: {
46
47
  category,
47
48
  slug
48
- },
49
- goTo
49
+ }
50
50
  } = useNavigator();
51
51
  const [shadows, setShadows] = useGlobalSetting(`shadow.presets.${category}`);
52
+ useEffect(() => {
53
+ const hasCurrentShadow = shadows?.some(shadow => shadow.slug === slug);
54
+ // If the shadow being edited doesn't exist anymore in the global styles setting, navigate back
55
+ // to prevent the user from editing a non-existent shadow entry.
56
+ // This can happen, for example:
57
+ // - when the user deletes the shadow
58
+ // - when the user resets the styles while editing a custom shadow
59
+ //
60
+ // The check on the slug is necessary to prevent a double back navigation when the user triggers
61
+ // a backward navigation by interacting with the screen's UI.
62
+ if (!!slug && !hasCurrentShadow) {
63
+ goBack();
64
+ }
65
+ }, [shadows, slug, goBack]);
52
66
  const [baseShadows] = useGlobalSetting(`shadow.presets.${category}`, undefined, 'base');
53
67
  const [selectedShadow, setSelectedShadow] = useState(() => (shadows || []).find(shadow => shadow.slug === slug));
54
68
  const baseSelectedShadow = useMemo(() => (baseShadows || []).find(b => b.slug === slug), [baseShadows, slug]);
@@ -78,9 +92,7 @@ export default function ShadowsEditPanel() {
78
92
  }
79
93
  };
80
94
  const handleShadowDelete = () => {
81
- const updatedShadows = shadows.filter(s => s.slug !== slug);
82
- setShadows(updatedShadows);
83
- goTo(`/shadows`);
95
+ setShadows(shadows.filter(s => s.slug !== slug));
84
96
  };
85
97
  const handleShadowRename = newName => {
86
98
  if (!newName) {
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalItemGroup","ItemGroup","__experimentalInputControl","InputControl","__experimentalUnitControl","UnitControl","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","moreVertical","useState","useMemo","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","customShadowMenuItems","label","action","presetShadowMenuItems","ShadowsEditPanel","params","category","slug","goTo","shadows","setShadows","baseShadows","undefined","selectedShadow","setSelectedShadow","find","baseSelectedShadow","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","title","children","justify","marginTop","marginBottom","paddingX","trigger","size","icon","item","Item","onClick","disabled","ItemLabel","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","__next40pxDefaultSize","autoComplete","placeholder","value","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","onRemoveShadowPart","splice","spacing","level","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","newShadow","renderToggle","onToggle","toggleProps","removeButtonProps","flexGrow","inset","renderContent","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","clearable","color","__nextHasNoMarginBottom","isBlock","hideLabelFromVision","columns","gap","ShadowInputControl","x","y","blur","spread","onValueChange","next","isNumeric","isNaN","parseFloat","nextValue"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst { DropdownMenuV2 } = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tparams: { category, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tconst updatedShadows = shadows.filter( ( s ) => s.slug !== slug );\n\t\tsetShadows( updatedShadows );\n\t\tgoTo( `/shadows` );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenuV2\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuV2.Item\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuV2.Item>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenuV2>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: name of the shadow\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\"?',\n\t\t\t\t\t\tselectedShadow.name\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t\t{ isRenameModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => setIsRenameModalVisible( false ) }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\thandleShadowRename( shadowName );\n\t\t\t\t\t\t\tsetIsRenameModalVisible( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Shadow name' ) }\n\t\t\t\t\t\t\tvalue={ shadowName }\n\t\t\t\t\t\t\tonChange={ ( value ) => setShadowName( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer marginBottom={ 6 } />\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"block-editor-shadow-edit-modal__actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsRenameModalVisible( false )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ShadowsPreview( { shadow } ) {\n\tconst shadowStyle = {\n\t\tboxShadow: shadow,\n\t};\n\n\treturn (\n\t\t<Spacer marginBottom={ 4 } marginTop={ -2 }>\n\t\t\t<HStack\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-panel\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-block\"\n\t\t\t\t\tstyle={ shadowStyle }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n\nfunction ShadowEditor( { shadow, onChange } ) {\n\tconst shadowParts = useMemo( () => getShadowParts( shadow ), [ shadow ] );\n\n\tconst onChangeShadowPart = ( index, part ) => {\n\t\tshadowParts[ index ] = part;\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onAddShadowPart = () => {\n\t\tshadowParts.push( defaultShadow );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onRemoveShadowPart = ( index ) => {\n\t\tshadowParts.splice( index, 1 );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tclassName=\"edit-site-global-styles__shadows-panel__title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Shadows' ) }</Subtitle>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<FlexItem className=\"edit-site-global-styles__shadows-panel__options-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\tlabel={ __( 'Add shadow' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonAddShadowPart();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t\t<Spacer />\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t{ shadowParts.map( ( part, index ) => (\n\t\t\t\t\t<ShadowItem\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tshadow={ part }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChangeShadowPart( index, value )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcanRemove={ shadowParts.length > 1 }\n\t\t\t\t\t\tonRemove={ () => onRemoveShadowPart( index ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ShadowItem( { shadow, onChange, canRemove, onRemove } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\tconst shadowObj = useMemo(\n\t\t() => shadowStringToObject( shadow ),\n\t\t[ shadow ]\n\t);\n\tconst onShadowChange = ( newShadow ) => {\n\t\tonChange( shadowObjectToString( newShadow ) );\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst toggleProps = {\n\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__dropdown-toggle',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t};\n\t\t\t\tconst removeButtonProps = {\n\t\t\t\t\tonClick: onRemove,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\tlabel: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ shadowIcon }\n\t\t\t\t\t\t\t\t{ ...toggleProps }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper\n\t\t\t\t\tpaddingSize=\"medium\"\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown-content\"\n\t\t\t\t>\n\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<VStack\n\t\t\tspacing={ 4 }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor-panel\"\n\t\t>\n\t\t\t<ColorPalette\n\t\t\t\tclearable={ false }\n\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\tonChange={ ( value ) => onShadowChange( 'color', value ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\tisBlock\n\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t}\n\t\t\t\thideLabelFromVision\n\t\t\t\t__next40pxDefaultSize\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'blur', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'spread', value ) }\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange } ) {\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<UnitControl\n\t\t\tlabel={ label }\n\t\t\t__next40pxDefaultSize\n\t\t\tvalue={ value }\n\t\t\tonChange={ onValueChange }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalItemGroup","ItemGroup","__experimentalInputControl","InputControl","__experimentalUnitControl","UnitControl","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","moreVertical","useState","useMemo","useEffect","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","customShadowMenuItems","label","action","presetShadowMenuItems","ShadowsEditPanel","goBack","params","category","slug","shadows","setShadows","hasCurrentShadow","some","baseShadows","undefined","selectedShadow","setSelectedShadow","find","baseSelectedShadow","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","title","children","justify","marginTop","marginBottom","paddingX","trigger","size","icon","item","Item","onClick","disabled","ItemLabel","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","__next40pxDefaultSize","autoComplete","placeholder","value","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","onRemoveShadowPart","splice","spacing","level","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","newShadow","renderToggle","onToggle","toggleProps","removeButtonProps","flexGrow","inset","renderContent","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","clearable","color","__nextHasNoMarginBottom","isBlock","hideLabelFromVision","columns","gap","ShadowInputControl","x","y","blur","spread","onValueChange","next","isNumeric","isNaN","parseFloat","nextValue"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo, useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst { DropdownMenuV2 } = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tgoBack,\n\t\tparams: { category, slug },\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\n\tuseEffect( () => {\n\t\tconst hasCurrentShadow = shadows?.some(\n\t\t\t( shadow ) => shadow.slug === slug\n\t\t);\n\t\t// If the shadow being edited doesn't exist anymore in the global styles setting, navigate back\n\t\t// to prevent the user from editing a non-existent shadow entry.\n\t\t// This can happen, for example:\n\t\t// - when the user deletes the shadow\n\t\t// - when the user resets the styles while editing a custom shadow\n\t\t//\n\t\t// The check on the slug is necessary to prevent a double back navigation when the user triggers\n\t\t// a backward navigation by interacting with the screen's UI.\n\t\tif ( !! slug && ! hasCurrentShadow ) {\n\t\t\tgoBack();\n\t\t}\n\t}, [ shadows, slug, goBack ] );\n\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tsetShadows( shadows.filter( ( s ) => s.slug !== slug ) );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenuV2\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuV2.Item\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuV2.ItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuV2.Item>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenuV2>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: name of the shadow\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\"?',\n\t\t\t\t\t\tselectedShadow.name\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t\t{ isRenameModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => setIsRenameModalVisible( false ) }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\thandleShadowRename( shadowName );\n\t\t\t\t\t\t\tsetIsRenameModalVisible( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Shadow name' ) }\n\t\t\t\t\t\t\tvalue={ shadowName }\n\t\t\t\t\t\t\tonChange={ ( value ) => setShadowName( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer marginBottom={ 6 } />\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"block-editor-shadow-edit-modal__actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsRenameModalVisible( false )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ShadowsPreview( { shadow } ) {\n\tconst shadowStyle = {\n\t\tboxShadow: shadow,\n\t};\n\n\treturn (\n\t\t<Spacer marginBottom={ 4 } marginTop={ -2 }>\n\t\t\t<HStack\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-panel\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-block\"\n\t\t\t\t\tstyle={ shadowStyle }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n\nfunction ShadowEditor( { shadow, onChange } ) {\n\tconst shadowParts = useMemo( () => getShadowParts( shadow ), [ shadow ] );\n\n\tconst onChangeShadowPart = ( index, part ) => {\n\t\tshadowParts[ index ] = part;\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onAddShadowPart = () => {\n\t\tshadowParts.push( defaultShadow );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onRemoveShadowPart = ( index ) => {\n\t\tshadowParts.splice( index, 1 );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tclassName=\"edit-site-global-styles__shadows-panel__title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Shadows' ) }</Subtitle>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<FlexItem className=\"edit-site-global-styles__shadows-panel__options-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\tlabel={ __( 'Add shadow' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonAddShadowPart();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t\t<Spacer />\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t{ shadowParts.map( ( part, index ) => (\n\t\t\t\t\t<ShadowItem\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tshadow={ part }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChangeShadowPart( index, value )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcanRemove={ shadowParts.length > 1 }\n\t\t\t\t\t\tonRemove={ () => onRemoveShadowPart( index ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ShadowItem( { shadow, onChange, canRemove, onRemove } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\tconst shadowObj = useMemo(\n\t\t() => shadowStringToObject( shadow ),\n\t\t[ shadow ]\n\t);\n\tconst onShadowChange = ( newShadow ) => {\n\t\tonChange( shadowObjectToString( newShadow ) );\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst toggleProps = {\n\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__dropdown-toggle',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t};\n\t\t\t\tconst removeButtonProps = {\n\t\t\t\t\tonClick: onRemove,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\tlabel: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ shadowIcon }\n\t\t\t\t\t\t\t\t{ ...toggleProps }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper\n\t\t\t\t\tpaddingSize=\"medium\"\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown-content\"\n\t\t\t\t>\n\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<VStack\n\t\t\tspacing={ 4 }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor-panel\"\n\t\t>\n\t\t\t<ColorPalette\n\t\t\t\tclearable={ false }\n\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\tonChange={ ( value ) => onShadowChange( 'color', value ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\tisBlock\n\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t}\n\t\t\t\thideLabelFromVision\n\t\t\t\t__next40pxDefaultSize\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'blur', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'spread', value ) }\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange } ) {\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<UnitControl\n\t\t\tlabel={ label }\n\t\t\t__next40pxDefaultSize\n\t\t\tvalue={ value }\n\t\t\tonChange={ onValueChange }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -237,19 +237,6 @@ function GlobalStylesEditorCanvasContainerLink() {
237
237
  goTo('/');
238
238
  }
239
239
  break;
240
- default:
241
- /*
242
- * Example: the user has navigated to "Browse styles" or elsewhere
243
- * and changes the editorCanvasContainerView, e.g., closes the style book.
244
- * The panel should not be affected.
245
- * Exclude revisions panel from this behavior,
246
- * as it should close when the editorCanvasContainerView doesn't correspond.
247
- */
248
- if (path !== '/' && !isRevisionsOpen) {
249
- return;
250
- }
251
- goTo('/');
252
- break;
253
240
  }
254
241
  }, [editorCanvasContainerView, isRevisionsOpen, goTo]);
255
242
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalNavigatorProvider","NavigatorProvider","__experimentalNavigatorScreen","NavigatorScreen","__experimentalUseNavigator","useNavigator","createSlotFill","DropdownMenu","MenuGroup","MenuItem","getBlockTypes","store","blocksStore","useSelect","useDispatch","privateApis","blockEditorPrivateApis","blockEditorStore","__","preferencesStore","moreVertical","coreStore","useEffect","ScreenRoot","useBlockHasGlobalStyles","default","ScreenBlockList","ScreenBlock","ScreenTypography","ScreenTypographyElement","FontSize","FontSizes","ScreenColors","ScreenColorPalette","ScreenBackground","ScreenShadows","ScreenShadowsEdit","ScreenLayout","ScreenStyleVariations","StyleBook","ScreenCSS","ScreenRevisions","unlock","editSiteStore","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SLOT_FILL_NAME","useGlobalStylesReset","Slot","GlobalStylesMenuSlot","Fill","GlobalStylesMenuFill","GlobalStylesActionMenu","canReset","onReset","toggle","canEditCSS","select","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","setEditorCanvasContainerView","goTo","loadCustomCSS","children","icon","label","toggleProps","size","onClose","onClick","disabled","GlobalStylesNavigationScreen","className","props","filter","Boolean","join","BlockStylesNavigationScreens","parentMenu","blockStyles","blockName","map","style","index","path","name","variation","ContextScreens","blockStyleVariations","getBlockStyles","length","GlobalStylesStyleBook","navigator","location","isSelected","encodeURIComponent","startsWith","onSelect","GlobalStylesBlockLink","selectedBlockName","selectedBlockClientId","getSelectedBlockClientId","getBlockName","clientId","blockHasGlobalStyles","currentPath","newPath","skipFocus","GlobalStylesEditorCanvasContainerLink","editorCanvasContainerView","getEditorCanvasContainerView","isRevisionsOpen","GlobalStylesUI","blocks","initialPath","element","block"],"sources":["@wordpress/edit-site/src/components/global-styles/ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalUseNavigator as useNavigator,\n\tcreateSlotFill,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n} from '@wordpress/components';\nimport { getBlockTypes, store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ScreenRoot from './screen-root';\nimport {\n\tuseBlockHasGlobalStyles,\n\tdefault as ScreenBlockList,\n} from './screen-block-list';\nimport ScreenBlock from './screen-block';\nimport ScreenTypography from './screen-typography';\nimport ScreenTypographyElement from './screen-typography-element';\nimport FontSize from './font-sizes/font-size';\nimport FontSizes from './font-sizes/font-sizes';\nimport ScreenColors from './screen-colors';\nimport ScreenColorPalette from './screen-color-palette';\nimport ScreenBackground from './screen-background';\nimport { ScreenShadows, ScreenShadowsEdit } from './screen-shadows';\nimport ScreenLayout from './screen-layout';\nimport ScreenStyleVariations from './screen-style-variations';\nimport StyleBook from '../style-book';\nimport ScreenCSS from './screen-css';\nimport ScreenRevisions from './screen-revisions';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nconst SLOT_FILL_NAME = 'GlobalStylesMenu';\nconst { useGlobalStylesReset } = unlock( blockEditorPrivateApis );\nconst { Slot: GlobalStylesMenuSlot, Fill: GlobalStylesMenuFill } =\n\tcreateSlotFill( SLOT_FILL_NAME );\n\nfunction GlobalStylesActionMenu() {\n\tconst [ canReset, onReset ] = useGlobalStylesReset();\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t};\n\t}, [] );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { goTo } = useNavigator();\n\tconst loadCustomCSS = () => {\n\t\tsetEditorCanvasContainerView( 'global-styles-css' );\n\t\tgoTo( '/css' );\n\t};\n\n\treturn (\n\t\t<GlobalStylesMenuFill>\n\t\t\t<DropdownMenu\n\t\t\t\ticon={ moreVertical }\n\t\t\t\tlabel={ __( 'More' ) }\n\t\t\t\ttoggleProps={ { size: 'compact' } }\n\t\t\t>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ canEditCSS && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ loadCustomCSS }>\n\t\t\t\t\t\t\t\t\t{ __( 'Additional CSS' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\ttoggle(\n\t\t\t\t\t\t\t\t\t\t'core/edit-site',\n\t\t\t\t\t\t\t\t\t\t'welcomeGuideStyles'\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Welcome Guide' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tdisabled={ ! canReset }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reset styles' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t</GlobalStylesMenuFill>\n\t);\n}\n\nfunction GlobalStylesNavigationScreen( { className, ...props } ) {\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName={ [\n\t\t\t\t'edit-site-global-styles-sidebar__navigator-screen',\n\t\t\t\tclassName,\n\t\t\t]\n\t\t\t\t.filter( Boolean )\n\t\t\t\t.join( ' ' ) }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction BlockStylesNavigationScreens( {\n\tparentMenu,\n\tblockStyles,\n\tblockName,\n} ) {\n\treturn blockStyles.map( ( style, index ) => (\n\t\t<GlobalStylesNavigationScreen\n\t\t\tkey={ index }\n\t\t\tpath={ parentMenu + '/variations/' + style.name }\n\t\t>\n\t\t\t<ScreenBlock name={ blockName } variation={ style.name } />\n\t\t</GlobalStylesNavigationScreen>\n\t) );\n}\n\nfunction ContextScreens( { name, parentMenu = '' } ) {\n\tconst blockStyleVariations = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockStyles } = select( blocksStore );\n\t\t\treturn getBlockStyles( name );\n\t\t},\n\t\t[ name ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\tpath={ parentMenu + '/colors/palette' }\n\t\t\t>\n\t\t\t\t<ScreenColorPalette name={ name } />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ !! blockStyleVariations?.length && (\n\t\t\t\t<BlockStylesNavigationScreens\n\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\tblockStyles={ blockStyleVariations }\n\t\t\t\t\tblockName={ name }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction GlobalStylesStyleBook() {\n\tconst navigator = useNavigator();\n\tconst { path } = navigator.location;\n\treturn (\n\t\t<StyleBook\n\t\t\tisSelected={ ( blockName ) =>\n\t\t\t\t// Match '/blocks/core%2Fbutton' and\n\t\t\t\t// '/blocks/core%2Fbutton/typography', but not\n\t\t\t\t// '/blocks/core%2Fbuttons'.\n\t\t\t\tpath === `/blocks/${ encodeURIComponent( blockName ) }` ||\n\t\t\t\tpath.startsWith(\n\t\t\t\t\t`/blocks/${ encodeURIComponent( blockName ) }/`\n\t\t\t\t)\n\t\t\t}\n\t\t\tonSelect={ ( blockName ) => {\n\t\t\t\t// Now go to the selected block.\n\t\t\t\tnavigator.goTo( '/blocks/' + encodeURIComponent( blockName ) );\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction GlobalStylesBlockLink() {\n\tconst navigator = useNavigator();\n\tconst { selectedBlockName, selectedBlockClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSelectedBlockClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst clientId = getSelectedBlockClientId();\n\t\t\treturn {\n\t\t\t\tselectedBlockName: getBlockName( clientId ),\n\t\t\t\tselectedBlockClientId: clientId,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst blockHasGlobalStyles = useBlockHasGlobalStyles( selectedBlockName );\n\t// When we're in the `Blocks` screen enable deep linking to the selected block.\n\tuseEffect( () => {\n\t\tif ( ! selectedBlockClientId || ! blockHasGlobalStyles ) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentPath = navigator.location.path;\n\t\tif (\n\t\t\tcurrentPath !== '/blocks' &&\n\t\t\t! currentPath.startsWith( '/blocks/' )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tconst newPath = '/blocks/' + encodeURIComponent( selectedBlockName );\n\t\t// Avoid navigating to the same path. This can happen when selecting\n\t\t// a new block of the same type.\n\t\tif ( newPath !== currentPath ) {\n\t\t\tnavigator.goTo( newPath, { skipFocus: true } );\n\t\t}\n\t}, [ selectedBlockClientId, selectedBlockName, blockHasGlobalStyles ] );\n}\n\nfunction GlobalStylesEditorCanvasContainerLink() {\n\tconst { goTo, location } = useNavigator();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\tconst path = location?.path;\n\tconst isRevisionsOpen = path === '/revisions';\n\n\t// If the user switches the editor canvas container view, redirect\n\t// to the appropriate screen. This effectively allows deep linking to the\n\t// desired screens from outside the global styles navigation provider.\n\tuseEffect( () => {\n\t\tswitch ( editorCanvasContainerView ) {\n\t\t\tcase 'global-styles-revisions':\n\t\t\tcase 'global-styles-revisions:style-book':\n\t\t\t\tgoTo( '/revisions' );\n\t\t\t\tbreak;\n\t\t\tcase 'global-styles-css':\n\t\t\t\tgoTo( '/css' );\n\t\t\t\tbreak;\n\t\t\tcase 'style-book':\n\t\t\t\t/*\n\t\t\t\t * The stand-alone style book is open\n\t\t\t\t * and the revisions panel is open,\n\t\t\t\t * close the revisions panel.\n\t\t\t\t * Otherwise keep the style book open while\n\t\t\t\t * browsing global styles panel.\n\t\t\t\t */\n\t\t\t\tif ( isRevisionsOpen ) {\n\t\t\t\t\tgoTo( '/' );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\t/*\n\t\t\t\t * Example: the user has navigated to \"Browse styles\" or elsewhere\n\t\t\t\t * and changes the editorCanvasContainerView, e.g., closes the style book.\n\t\t\t\t * The panel should not be affected.\n\t\t\t\t * Exclude revisions panel from this behavior,\n\t\t\t\t * as it should close when the editorCanvasContainerView doesn't correspond.\n\t\t\t\t */\n\t\t\t\tif ( path !== '/' && ! isRevisionsOpen ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tgoTo( '/' );\n\t\t\t\tbreak;\n\t\t}\n\t}, [ editorCanvasContainerView, isRevisionsOpen, goTo ] );\n}\n\nfunction GlobalStylesUI() {\n\tconst blocks = getBlockTypes();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\treturn (\n\t\t<NavigatorProvider\n\t\t\tclassName=\"edit-site-global-styles-sidebar__navigator-provider\"\n\t\t\tinitialPath=\"/\"\n\t\t>\n\t\t\t<GlobalStylesNavigationScreen path=\"/\">\n\t\t\t\t<ScreenRoot />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/variations\">\n\t\t\t\t<ScreenStyleVariations />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/blocks\">\n\t\t\t\t<ScreenBlockList />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography\">\n\t\t\t\t<ScreenTypography />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/font-sizes/\">\n\t\t\t\t<FontSizes />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/font-sizes/:origin/:slug\">\n\t\t\t\t<FontSize />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/text\">\n\t\t\t\t<ScreenTypographyElement element=\"text\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/link\">\n\t\t\t\t<ScreenTypographyElement element=\"link\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/heading\">\n\t\t\t\t<ScreenTypographyElement element=\"heading\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/caption\">\n\t\t\t\t<ScreenTypographyElement element=\"caption\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/button\">\n\t\t\t\t<ScreenTypographyElement element=\"button\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/colors\">\n\t\t\t\t<ScreenColors />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/shadows\">\n\t\t\t\t<ScreenShadows />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/shadows/edit/:category/:slug\">\n\t\t\t\t<ScreenShadowsEdit />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/layout\">\n\t\t\t\t<ScreenLayout />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/css\">\n\t\t\t\t<ScreenCSS />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/revisions\">\n\t\t\t\t<ScreenRevisions />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/background\">\n\t\t\t\t<ScreenBackground />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\t\tkey={ 'menu-block-' + block.name }\n\t\t\t\t\tpath={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t>\n\t\t\t\t\t<ScreenBlock name={ block.name } />\n\t\t\t\t</GlobalStylesNavigationScreen>\n\t\t\t) ) }\n\n\t\t\t<ContextScreens />\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<ContextScreens\n\t\t\t\t\tkey={ 'screens-block-' + block.name }\n\t\t\t\t\tname={ block.name }\n\t\t\t\t\tparentMenu={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t/>\n\t\t\t) ) }\n\n\t\t\t{ 'style-book' === editorCanvasContainerView && (\n\t\t\t\t<GlobalStylesStyleBook />\n\t\t\t) }\n\n\t\t\t<GlobalStylesActionMenu />\n\t\t\t<GlobalStylesBlockLink />\n\t\t\t<GlobalStylesEditorCanvasContainerLink />\n\t\t</NavigatorProvider>\n\t);\n}\nexport { GlobalStylesMenuSlot };\nexport default GlobalStylesUI;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__experimentalNavigatorProvider","NavigatorProvider","__experimentalNavigatorScreen","NavigatorScreen","__experimentalUseNavigator","useNavigator","createSlotFill","DropdownMenu","MenuGroup","MenuItem","getBlockTypes","store","blocksStore","useSelect","useDispatch","privateApis","blockEditorPrivateApis","blockEditorStore","__","preferencesStore","moreVertical","coreStore","useEffect","ScreenRoot","useBlockHasGlobalStyles","default","ScreenBlockList","ScreenBlock","ScreenTypography","ScreenTypographyElement","FontSize","FontSizes","ScreenColors","ScreenColorPalette","ScreenBackground","ScreenShadows","ScreenShadowsEdit","ScreenLayout","ScreenStyleVariations","StyleBook","ScreenCSS","ScreenRevisions","unlock","editSiteStore","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SLOT_FILL_NAME","useGlobalStylesReset","Slot","GlobalStylesMenuSlot","Fill","GlobalStylesMenuFill","GlobalStylesActionMenu","canReset","onReset","toggle","canEditCSS","select","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","setEditorCanvasContainerView","goTo","loadCustomCSS","children","icon","label","toggleProps","size","onClose","onClick","disabled","GlobalStylesNavigationScreen","className","props","filter","Boolean","join","BlockStylesNavigationScreens","parentMenu","blockStyles","blockName","map","style","index","path","name","variation","ContextScreens","blockStyleVariations","getBlockStyles","length","GlobalStylesStyleBook","navigator","location","isSelected","encodeURIComponent","startsWith","onSelect","GlobalStylesBlockLink","selectedBlockName","selectedBlockClientId","getSelectedBlockClientId","getBlockName","clientId","blockHasGlobalStyles","currentPath","newPath","skipFocus","GlobalStylesEditorCanvasContainerLink","editorCanvasContainerView","getEditorCanvasContainerView","isRevisionsOpen","GlobalStylesUI","blocks","initialPath","element","block"],"sources":["@wordpress/edit-site/src/components/global-styles/ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalUseNavigator as useNavigator,\n\tcreateSlotFill,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n} from '@wordpress/components';\nimport { getBlockTypes, store as blocksStore } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { moreVertical } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useEffect } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ScreenRoot from './screen-root';\nimport {\n\tuseBlockHasGlobalStyles,\n\tdefault as ScreenBlockList,\n} from './screen-block-list';\nimport ScreenBlock from './screen-block';\nimport ScreenTypography from './screen-typography';\nimport ScreenTypographyElement from './screen-typography-element';\nimport FontSize from './font-sizes/font-size';\nimport FontSizes from './font-sizes/font-sizes';\nimport ScreenColors from './screen-colors';\nimport ScreenColorPalette from './screen-color-palette';\nimport ScreenBackground from './screen-background';\nimport { ScreenShadows, ScreenShadowsEdit } from './screen-shadows';\nimport ScreenLayout from './screen-layout';\nimport ScreenStyleVariations from './screen-style-variations';\nimport StyleBook from '../style-book';\nimport ScreenCSS from './screen-css';\nimport ScreenRevisions from './screen-revisions';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nconst SLOT_FILL_NAME = 'GlobalStylesMenu';\nconst { useGlobalStylesReset } = unlock( blockEditorPrivateApis );\nconst { Slot: GlobalStylesMenuSlot, Fill: GlobalStylesMenuFill } =\n\tcreateSlotFill( SLOT_FILL_NAME );\n\nfunction GlobalStylesActionMenu() {\n\tconst [ canReset, onReset ] = useGlobalStylesReset();\n\tconst { toggle } = useDispatch( preferencesStore );\n\tconst { canEditCSS } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tcanEditCSS: !! globalStyles?._links?.[ 'wp:action-edit-css' ],\n\t\t};\n\t}, [] );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\tconst { goTo } = useNavigator();\n\tconst loadCustomCSS = () => {\n\t\tsetEditorCanvasContainerView( 'global-styles-css' );\n\t\tgoTo( '/css' );\n\t};\n\n\treturn (\n\t\t<GlobalStylesMenuFill>\n\t\t\t<DropdownMenu\n\t\t\t\ticon={ moreVertical }\n\t\t\t\tlabel={ __( 'More' ) }\n\t\t\t\ttoggleProps={ { size: 'compact' } }\n\t\t\t>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ canEditCSS && (\n\t\t\t\t\t\t\t\t<MenuItem onClick={ loadCustomCSS }>\n\t\t\t\t\t\t\t\t\t{ __( 'Additional CSS' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\ttoggle(\n\t\t\t\t\t\t\t\t\t\t'core/edit-site',\n\t\t\t\t\t\t\t\t\t\t'welcomeGuideStyles'\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Welcome Guide' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonReset();\n\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tdisabled={ ! canReset }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reset styles' ) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</DropdownMenu>\n\t\t</GlobalStylesMenuFill>\n\t);\n}\n\nfunction GlobalStylesNavigationScreen( { className, ...props } ) {\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName={ [\n\t\t\t\t'edit-site-global-styles-sidebar__navigator-screen',\n\t\t\t\tclassName,\n\t\t\t]\n\t\t\t\t.filter( Boolean )\n\t\t\t\t.join( ' ' ) }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction BlockStylesNavigationScreens( {\n\tparentMenu,\n\tblockStyles,\n\tblockName,\n} ) {\n\treturn blockStyles.map( ( style, index ) => (\n\t\t<GlobalStylesNavigationScreen\n\t\t\tkey={ index }\n\t\t\tpath={ parentMenu + '/variations/' + style.name }\n\t\t>\n\t\t\t<ScreenBlock name={ blockName } variation={ style.name } />\n\t\t</GlobalStylesNavigationScreen>\n\t) );\n}\n\nfunction ContextScreens( { name, parentMenu = '' } ) {\n\tconst blockStyleVariations = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockStyles } = select( blocksStore );\n\t\t\treturn getBlockStyles( name );\n\t\t},\n\t\t[ name ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\tpath={ parentMenu + '/colors/palette' }\n\t\t\t>\n\t\t\t\t<ScreenColorPalette name={ name } />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ !! blockStyleVariations?.length && (\n\t\t\t\t<BlockStylesNavigationScreens\n\t\t\t\t\tparentMenu={ parentMenu }\n\t\t\t\t\tblockStyles={ blockStyleVariations }\n\t\t\t\t\tblockName={ name }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction GlobalStylesStyleBook() {\n\tconst navigator = useNavigator();\n\tconst { path } = navigator.location;\n\treturn (\n\t\t<StyleBook\n\t\t\tisSelected={ ( blockName ) =>\n\t\t\t\t// Match '/blocks/core%2Fbutton' and\n\t\t\t\t// '/blocks/core%2Fbutton/typography', but not\n\t\t\t\t// '/blocks/core%2Fbuttons'.\n\t\t\t\tpath === `/blocks/${ encodeURIComponent( blockName ) }` ||\n\t\t\t\tpath.startsWith(\n\t\t\t\t\t`/blocks/${ encodeURIComponent( blockName ) }/`\n\t\t\t\t)\n\t\t\t}\n\t\t\tonSelect={ ( blockName ) => {\n\t\t\t\t// Now go to the selected block.\n\t\t\t\tnavigator.goTo( '/blocks/' + encodeURIComponent( blockName ) );\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nfunction GlobalStylesBlockLink() {\n\tconst navigator = useNavigator();\n\tconst { selectedBlockName, selectedBlockClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSelectedBlockClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst clientId = getSelectedBlockClientId();\n\t\t\treturn {\n\t\t\t\tselectedBlockName: getBlockName( clientId ),\n\t\t\t\tselectedBlockClientId: clientId,\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst blockHasGlobalStyles = useBlockHasGlobalStyles( selectedBlockName );\n\t// When we're in the `Blocks` screen enable deep linking to the selected block.\n\tuseEffect( () => {\n\t\tif ( ! selectedBlockClientId || ! blockHasGlobalStyles ) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentPath = navigator.location.path;\n\t\tif (\n\t\t\tcurrentPath !== '/blocks' &&\n\t\t\t! currentPath.startsWith( '/blocks/' )\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tconst newPath = '/blocks/' + encodeURIComponent( selectedBlockName );\n\t\t// Avoid navigating to the same path. This can happen when selecting\n\t\t// a new block of the same type.\n\t\tif ( newPath !== currentPath ) {\n\t\t\tnavigator.goTo( newPath, { skipFocus: true } );\n\t\t}\n\t}, [ selectedBlockClientId, selectedBlockName, blockHasGlobalStyles ] );\n}\n\nfunction GlobalStylesEditorCanvasContainerLink() {\n\tconst { goTo, location } = useNavigator();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\tconst path = location?.path;\n\tconst isRevisionsOpen = path === '/revisions';\n\n\t// If the user switches the editor canvas container view, redirect\n\t// to the appropriate screen. This effectively allows deep linking to the\n\t// desired screens from outside the global styles navigation provider.\n\tuseEffect( () => {\n\t\tswitch ( editorCanvasContainerView ) {\n\t\t\tcase 'global-styles-revisions':\n\t\t\tcase 'global-styles-revisions:style-book':\n\t\t\t\tgoTo( '/revisions' );\n\t\t\t\tbreak;\n\t\t\tcase 'global-styles-css':\n\t\t\t\tgoTo( '/css' );\n\t\t\t\tbreak;\n\t\t\tcase 'style-book':\n\t\t\t\t/*\n\t\t\t\t * The stand-alone style book is open\n\t\t\t\t * and the revisions panel is open,\n\t\t\t\t * close the revisions panel.\n\t\t\t\t * Otherwise keep the style book open while\n\t\t\t\t * browsing global styles panel.\n\t\t\t\t */\n\t\t\t\tif ( isRevisionsOpen ) {\n\t\t\t\t\tgoTo( '/' );\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t}, [ editorCanvasContainerView, isRevisionsOpen, goTo ] );\n}\n\nfunction GlobalStylesUI() {\n\tconst blocks = getBlockTypes();\n\tconst editorCanvasContainerView = useSelect(\n\t\t( select ) =>\n\t\t\tunlock( select( editSiteStore ) ).getEditorCanvasContainerView(),\n\t\t[]\n\t);\n\treturn (\n\t\t<NavigatorProvider\n\t\t\tclassName=\"edit-site-global-styles-sidebar__navigator-provider\"\n\t\t\tinitialPath=\"/\"\n\t\t>\n\t\t\t<GlobalStylesNavigationScreen path=\"/\">\n\t\t\t\t<ScreenRoot />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/variations\">\n\t\t\t\t<ScreenStyleVariations />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/blocks\">\n\t\t\t\t<ScreenBlockList />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography\">\n\t\t\t\t<ScreenTypography />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/font-sizes/\">\n\t\t\t\t<FontSizes />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/font-sizes/:origin/:slug\">\n\t\t\t\t<FontSize />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/text\">\n\t\t\t\t<ScreenTypographyElement element=\"text\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/link\">\n\t\t\t\t<ScreenTypographyElement element=\"link\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/heading\">\n\t\t\t\t<ScreenTypographyElement element=\"heading\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/caption\">\n\t\t\t\t<ScreenTypographyElement element=\"caption\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/typography/button\">\n\t\t\t\t<ScreenTypographyElement element=\"button\" />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/colors\">\n\t\t\t\t<ScreenColors />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/shadows\">\n\t\t\t\t<ScreenShadows />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/shadows/edit/:category/:slug\">\n\t\t\t\t<ScreenShadowsEdit />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/layout\">\n\t\t\t\t<ScreenLayout />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/css\">\n\t\t\t\t<ScreenCSS />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/revisions\">\n\t\t\t\t<ScreenRevisions />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t<GlobalStylesNavigationScreen path=\"/background\">\n\t\t\t\t<ScreenBackground />\n\t\t\t</GlobalStylesNavigationScreen>\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<GlobalStylesNavigationScreen\n\t\t\t\t\tkey={ 'menu-block-' + block.name }\n\t\t\t\t\tpath={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t>\n\t\t\t\t\t<ScreenBlock name={ block.name } />\n\t\t\t\t</GlobalStylesNavigationScreen>\n\t\t\t) ) }\n\n\t\t\t<ContextScreens />\n\n\t\t\t{ blocks.map( ( block ) => (\n\t\t\t\t<ContextScreens\n\t\t\t\t\tkey={ 'screens-block-' + block.name }\n\t\t\t\t\tname={ block.name }\n\t\t\t\t\tparentMenu={ '/blocks/' + encodeURIComponent( block.name ) }\n\t\t\t\t/>\n\t\t\t) ) }\n\n\t\t\t{ 'style-book' === editorCanvasContainerView && (\n\t\t\t\t<GlobalStylesStyleBook />\n\t\t\t) }\n\n\t\t\t<GlobalStylesActionMenu />\n\t\t\t<GlobalStylesBlockLink />\n\t\t\t<GlobalStylesEditorCanvasContainerLink />\n\t\t</NavigatorProvider>\n\t);\n}\nexport { GlobalStylesMenuSlot };\nexport default GlobalStylesUI;\n"],"mappings":"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","ignoreList":[]}