@wordpress/edit-site 6.4.0 → 6.5.0
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.
- package/CHANGELOG.md +2 -0
- package/build/components/add-new-pattern/index.js +6 -1
- package/build/components/add-new-pattern/index.js.map +1 -1
- package/build/components/add-new-post/index.js +2 -1
- package/build/components/add-new-post/index.js.map +1 -1
- package/build/components/add-new-template/utils.js +2 -2
- package/build/components/add-new-template/utils.js.map +1 -1
- package/build/components/editor/index.js +71 -20
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-families.js +3 -4
- package/build/components/global-styles/font-families.js.map +1 -1
- package/build/components/global-styles/font-library-modal/context.js +0 -5
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +25 -5
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/font-library-modal/index.js +1 -8
- package/build/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +21 -6
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/upload-fonts.js +2 -3
- package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build/components/global-styles/screen-typeset.js +40 -0
- package/build/components/global-styles/screen-typeset.js.map +1 -0
- package/build/components/global-styles/screen-typography-element.js +14 -0
- package/build/components/global-styles/screen-typography-element.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +4 -6
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/shadows-edit-panel.js +50 -59
- package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
- package/build/components/global-styles/typeset-button.js +97 -0
- package/build/components/global-styles/typeset-button.js.map +1 -0
- package/build/components/global-styles/typeset.js +80 -0
- package/build/components/global-styles/typeset.js.map +1 -0
- package/build/components/global-styles/ui.js +4 -0
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/global-styles/utils.js +10 -1
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/page-patterns/fields.js +230 -0
- package/build/components/page-patterns/fields.js.map +1 -0
- package/build/components/page-patterns/index.js +8 -226
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +26 -1
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-templates/fields.js +169 -0
- package/build/components/page-templates/fields.js.map +1 -0
- package/build/components/page-templates/index.js +10 -177
- package/build/components/page-templates/index.js.map +1 -1
- package/build/components/post-edit/index.js +18 -6
- package/build/components/post-edit/index.js.map +1 -1
- package/build/components/post-fields/index.js +19 -15
- package/build/components/post-fields/index.js.map +1 -1
- package/build/components/post-list/index.js +125 -67
- package/build/components/post-list/index.js.map +1 -1
- package/build/components/sidebar-dataviews/add-new-view.js +2 -2
- package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
- package/build/components/sidebar-dataviews/dataview-item.js +2 -3
- package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build/components/sidebar-dataviews/default-views.js +81 -81
- package/build/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build/components/sidebar-dataviews/index.js +3 -42
- package/build/components/sidebar-dataviews/index.js.map +1 -1
- package/build/components/site-hub/index.js +6 -3
- package/build/components/site-hub/index.js.map +1 -1
- package/build/components/style-book/index.js +22 -25
- package/build/components/style-book/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -0
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +2 -3
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -4
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build/index.js +0 -2
- package/build/index.js.map +1 -1
- package/build-module/components/add-new-pattern/index.js +6 -1
- package/build-module/components/add-new-pattern/index.js.map +1 -1
- package/build-module/components/add-new-post/index.js +2 -1
- package/build-module/components/add-new-post/index.js.map +1 -1
- package/build-module/components/add-new-template/utils.js +2 -2
- package/build-module/components/add-new-template/utils.js.map +1 -1
- package/build-module/components/editor/index.js +73 -22
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-families.js +3 -4
- package/build-module/components/global-styles/font-families.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/context.js +0 -5
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +26 -6
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/index.js +1 -8
- package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +21 -6
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/upload-fonts.js +2 -3
- package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build-module/components/global-styles/screen-typeset.js +34 -0
- package/build-module/components/global-styles/screen-typeset.js.map +1 -0
- package/build-module/components/global-styles/screen-typography-element.js +14 -0
- package/build-module/components/global-styles/screen-typography-element.js.map +1 -1
- package/build-module/components/global-styles/screen-typography.js +4 -6
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/global-styles/shadows-edit-panel.js +51 -60
- package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
- package/build-module/components/global-styles/typeset-button.js +89 -0
- package/build-module/components/global-styles/typeset-button.js.map +1 -0
- package/build-module/components/global-styles/typeset.js +71 -0
- package/build-module/components/global-styles/typeset.js.map +1 -0
- package/build-module/components/global-styles/ui.js +4 -0
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/global-styles/utils.js +10 -1
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/page-patterns/fields.js +223 -0
- package/build-module/components/page-patterns/fields.js.map +1 -0
- package/build-module/components/page-patterns/index.js +11 -229
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +26 -1
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-templates/fields.js +160 -0
- package/build-module/components/page-templates/fields.js.map +1 -0
- package/build-module/components/page-templates/index.js +12 -178
- package/build-module/components/page-templates/index.js.map +1 -1
- package/build-module/components/post-edit/index.js +20 -8
- package/build-module/components/post-edit/index.js.map +1 -1
- package/build-module/components/post-fields/index.js +19 -15
- package/build-module/components/post-fields/index.js.map +1 -1
- package/build-module/components/post-list/index.js +127 -69
- package/build-module/components/post-list/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/add-new-view.js +2 -2
- package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
- package/build-module/components/sidebar-dataviews/dataview-item.js +2 -3
- package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build-module/components/sidebar-dataviews/default-views.js +81 -81
- package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build-module/components/sidebar-dataviews/index.js +3 -42
- package/build-module/components/sidebar-dataviews/index.js.map +1 -1
- package/build-module/components/site-hub/index.js +7 -4
- package/build-module/components/site-hub/index.js.map +1 -1
- package/build-module/components/style-book/index.js +23 -26
- package/build-module/components/style-book/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -0
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +2 -3
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -3
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build-module/index.js +0 -2
- package/build-module/index.js.map +1 -1
- package/build-style/posts-rtl.css +190 -11
- package/build-style/posts.css +190 -11
- package/build-style/style-rtl.css +296 -55
- package/build-style/style.css +296 -55
- package/package.json +41 -41
- package/src/components/add-new-pattern/index.js +8 -3
- package/src/components/add-new-post/index.js +2 -1
- package/src/components/add-new-template/utils.js +10 -6
- package/src/components/editor/index.js +80 -22
- package/src/components/editor/style.scss +59 -1
- package/src/components/global-styles/font-families.js +3 -5
- package/src/components/global-styles/font-library-modal/context.js +0 -5
- package/src/components/global-styles/font-library-modal/font-collection.js +34 -10
- package/src/components/global-styles/font-library-modal/index.js +2 -7
- package/src/components/global-styles/font-library-modal/installed-fonts.js +23 -5
- package/src/components/global-styles/font-library-modal/style.scss +1 -1
- package/src/components/global-styles/font-library-modal/upload-fonts.js +2 -2
- package/src/components/global-styles/screen-typeset.js +42 -0
- package/src/components/global-styles/screen-typography-element.js +14 -0
- package/src/components/global-styles/screen-typography.js +4 -4
- package/src/components/global-styles/shadows-edit-panel.js +66 -73
- package/src/components/global-styles/style.scss +4 -7
- package/src/components/global-styles/typeset-button.js +93 -0
- package/src/components/global-styles/typeset.js +73 -0
- package/src/components/global-styles/ui.js +5 -0
- package/src/components/global-styles/utils.js +13 -1
- package/src/components/layout/style.scss +8 -0
- package/src/components/page-patterns/fields.js +251 -0
- package/src/components/page-patterns/index.js +15 -244
- package/src/components/page-patterns/style.scss +82 -85
- package/src/components/page-patterns/use-patterns.js +31 -1
- package/src/components/page-templates/fields.js +157 -0
- package/src/components/page-templates/index.js +19 -170
- package/src/components/page-templates/style.scss +14 -5
- package/src/components/post-edit/index.js +27 -8
- package/src/components/post-fields/index.js +29 -17
- package/src/components/post-list/index.js +134 -74
- package/src/components/sidebar-dataviews/add-new-view.js +2 -4
- package/src/components/sidebar-dataviews/dataview-item.js +2 -2
- package/src/components/sidebar-dataviews/default-views.js +95 -95
- package/src/components/sidebar-dataviews/index.js +3 -37
- package/src/components/site-hub/index.js +11 -2
- package/src/components/site-icon/style.scss +4 -1
- package/src/components/style-book/index.js +27 -32
- package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -0
- package/src/hooks/push-changes-to-global-styles/index.js +2 -3
- package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -3
- package/src/index.js +0 -2
- package/build/utils/clone-deep.js +0 -15
- package/build/utils/clone-deep.js.map +0 -1
- package/build-module/utils/clone-deep.js +0 -9
- package/build-module/utils/clone-deep.js.map +0 -1
- package/src/utils/clone-deep.js +0 -8
|
@@ -63,24 +63,38 @@ function ScreenTypographyElement({
|
|
|
63
63
|
__nextHasNoMarginBottom: true,
|
|
64
64
|
children: [/*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
65
65
|
value: "heading",
|
|
66
|
+
showTooltip: true,
|
|
67
|
+
"aria-label": __('All headings'),
|
|
66
68
|
label: _x('All', 'heading levels')
|
|
67
69
|
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
68
70
|
value: "h1",
|
|
71
|
+
showTooltip: true,
|
|
72
|
+
"aria-label": __('Heading 1'),
|
|
69
73
|
label: __('H1')
|
|
70
74
|
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
71
75
|
value: "h2",
|
|
76
|
+
showTooltip: true,
|
|
77
|
+
"aria-label": __('Heading 2'),
|
|
72
78
|
label: __('H2')
|
|
73
79
|
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
74
80
|
value: "h3",
|
|
81
|
+
showTooltip: true,
|
|
82
|
+
"aria-label": __('Heading 3'),
|
|
75
83
|
label: __('H3')
|
|
76
84
|
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
77
85
|
value: "h4",
|
|
86
|
+
showTooltip: true,
|
|
87
|
+
"aria-label": __('Heading 4'),
|
|
78
88
|
label: __('H4')
|
|
79
89
|
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
80
90
|
value: "h5",
|
|
91
|
+
showTooltip: true,
|
|
92
|
+
"aria-label": __('Heading 5'),
|
|
81
93
|
label: __('H5')
|
|
82
94
|
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
83
95
|
value: "h6",
|
|
96
|
+
showTooltip: true,
|
|
97
|
+
"aria-label": __('Heading 6'),
|
|
84
98
|
label: __('H6')
|
|
85
99
|
})]
|
|
86
100
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalSpacer","Spacer","useState","TypographyPanel","ScreenHeader","TypographyPreview","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","elements","text","description","title","link","heading","caption","button","ScreenTypographyElement","element","headingLevel","setHeadingLevel","children","marginX","marginBottom","label","hideLabelFromVision","value","onChange","isBlock","size","__nextHasNoMarginBottom"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-typography-element.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TypographyPanel from './typography-panel';\nimport ScreenHeader from './header';\nimport TypographyPreview from './typography-preview';\n\nconst elements = {\n\ttext: {\n\t\tdescription: __( 'Manage the fonts used on the site.' ),\n\t\ttitle: __( 'Text' ),\n\t},\n\tlink: {\n\t\tdescription: __( 'Manage the fonts and typography used on the links.' ),\n\t\ttitle: __( 'Links' ),\n\t},\n\theading: {\n\t\tdescription: __( 'Manage the fonts and typography used on headings.' ),\n\t\ttitle: __( 'Headings' ),\n\t},\n\tcaption: {\n\t\tdescription: __( 'Manage the fonts and typography used on captions.' ),\n\t\ttitle: __( 'Captions' ),\n\t},\n\tbutton: {\n\t\tdescription: __( 'Manage the fonts and typography used on buttons.' ),\n\t\ttitle: __( 'Buttons' ),\n\t},\n};\n\nfunction ScreenTypographyElement( { element } ) {\n\tconst [ headingLevel, setHeadingLevel ] = useState( 'heading' );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ elements[ element ].title }\n\t\t\t\tdescription={ elements[ element ].description }\n\t\t\t/>\n\t\t\t<Spacer marginX={ 4 }>\n\t\t\t\t<TypographyPreview\n\t\t\t\t\telement={ element }\n\t\t\t\t\theadingLevel={ headingLevel }\n\t\t\t\t/>\n\t\t\t</Spacer>\n\t\t\t{ element === 'heading' && (\n\t\t\t\t<Spacer marginX={ 4 } marginBottom=\"1em\">\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\tlabel={ __( 'Select heading level' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tvalue={ headingLevel }\n\t\t\t\t\t\tonChange={ setHeadingLevel }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"heading\"\n\t\t\t\t\t\t\tlabel={ _x( 'All', 'heading levels' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h1\"\n\t\t\t\t\t\t\tlabel={ __( 'H1' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h2\"\n\t\t\t\t\t\t\tlabel={ __( 'H2' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h3\"\n\t\t\t\t\t\t\tlabel={ __( 'H3' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h4\"\n\t\t\t\t\t\t\tlabel={ __( 'H4' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h5\"\n\t\t\t\t\t\t\tlabel={ __( 'H5' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h6\"\n\t\t\t\t\t\t\tlabel={ __( 'H6' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</Spacer>\n\t\t\t) }\n\t\t\t<TypographyPanel\n\t\t\t\telement={ element }\n\t\t\t\theadingLevel={ headingLevel }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default ScreenTypographyElement;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SACCC,gCAAgC,IAAIC,kBAAkB,EACtDC,sCAAsC,IAAIC,wBAAwB,EAClEC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,QAAQ,QAAQ,oBAAoB;;AAE7C;AACA;AACA;AACA,OAAOC,eAAe,MAAM,oBAAoB;AAChD,OAAOC,YAAY,MAAM,UAAU;AACnC,OAAOC,iBAAiB,MAAM,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAErD,MAAMC,QAAQ,GAAG;EAChBC,IAAI,EAAE;IACLC,WAAW,EAAEpB,EAAE,CAAE,oCAAqC,CAAC;IACvDqB,KAAK,EAAErB,EAAE,CAAE,MAAO;EACnB,CAAC;EACDsB,IAAI,EAAE;IACLF,WAAW,EAAEpB,EAAE,CAAE,oDAAqD,CAAC;IACvEqB,KAAK,EAAErB,EAAE,CAAE,OAAQ;EACpB,CAAC;EACDuB,OAAO,EAAE;IACRH,WAAW,EAAEpB,EAAE,CAAE,mDAAoD,CAAC;IACtEqB,KAAK,EAAErB,EAAE,CAAE,UAAW;EACvB,CAAC;EACDwB,OAAO,EAAE;IACRJ,WAAW,EAAEpB,EAAE,CAAE,mDAAoD,CAAC;IACtEqB,KAAK,EAAErB,EAAE,CAAE,UAAW;EACvB,CAAC;EACDyB,MAAM,EAAE;IACPL,WAAW,EAAEpB,EAAE,CAAE,kDAAmD,CAAC;IACrEqB,KAAK,EAAErB,EAAE,CAAE,SAAU;EACtB;AACD,CAAC;AAED,SAAS0B,uBAAuBA,CAAE;EAAEC;AAAQ,CAAC,EAAG;EAC/C,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAGrB,QAAQ,CAAE,SAAU,CAAC;EAE/D,oBACCO,KAAA,CAAAE,SAAA;IAAAa,QAAA,gBACCjB,IAAA,CAACH,YAAY;MACZW,KAAK,EAAGH,QAAQ,CAAES,OAAO,CAAE,CAACN,KAAO;MACnCD,WAAW,EAAGF,QAAQ,CAAES,OAAO,CAAE,CAACP;IAAa,CAC/C,CAAC,eACFP,IAAA,CAACN,MAAM;MAACwB,OAAO,EAAG,CAAG;MAAAD,QAAA,eACpBjB,IAAA,CAACF,iBAAiB;QACjBgB,OAAO,EAAGA,OAAS;QACnBC,YAAY,EAAGA;MAAc,CAC7B;IAAC,CACK,CAAC,EACPD,OAAO,KAAK,SAAS,iBACtBd,IAAA,CAACN,MAAM;MAACwB,OAAO,EAAG,CAAG;MAACC,YAAY,EAAC,KAAK;MAAAF,QAAA,eACvCf,KAAA,CAACZ,kBAAkB;QAClB8B,KAAK,EAAGjC,EAAE,CAAE,sBAAuB,CAAG;QACtCkC,mBAAmB;QACnBC,KAAK,EAAGP,YAAc;QACtBQ,QAAQ,EAAGP,eAAiB;QAC5BQ,OAAO;QACPC,IAAI,EAAC,kBAAkB;QACvBC,uBAAuB;QAAAT,QAAA,gBAEvBjB,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,SAAS;
|
|
1
|
+
{"version":3,"names":["__","_x","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalSpacer","Spacer","useState","TypographyPanel","ScreenHeader","TypographyPreview","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","elements","text","description","title","link","heading","caption","button","ScreenTypographyElement","element","headingLevel","setHeadingLevel","children","marginX","marginBottom","label","hideLabelFromVision","value","onChange","isBlock","size","__nextHasNoMarginBottom","showTooltip"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-typography-element.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TypographyPanel from './typography-panel';\nimport ScreenHeader from './header';\nimport TypographyPreview from './typography-preview';\n\nconst elements = {\n\ttext: {\n\t\tdescription: __( 'Manage the fonts used on the site.' ),\n\t\ttitle: __( 'Text' ),\n\t},\n\tlink: {\n\t\tdescription: __( 'Manage the fonts and typography used on the links.' ),\n\t\ttitle: __( 'Links' ),\n\t},\n\theading: {\n\t\tdescription: __( 'Manage the fonts and typography used on headings.' ),\n\t\ttitle: __( 'Headings' ),\n\t},\n\tcaption: {\n\t\tdescription: __( 'Manage the fonts and typography used on captions.' ),\n\t\ttitle: __( 'Captions' ),\n\t},\n\tbutton: {\n\t\tdescription: __( 'Manage the fonts and typography used on buttons.' ),\n\t\ttitle: __( 'Buttons' ),\n\t},\n};\n\nfunction ScreenTypographyElement( { element } ) {\n\tconst [ headingLevel, setHeadingLevel ] = useState( 'heading' );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ elements[ element ].title }\n\t\t\t\tdescription={ elements[ element ].description }\n\t\t\t/>\n\t\t\t<Spacer marginX={ 4 }>\n\t\t\t\t<TypographyPreview\n\t\t\t\t\telement={ element }\n\t\t\t\t\theadingLevel={ headingLevel }\n\t\t\t\t/>\n\t\t\t</Spacer>\n\t\t\t{ element === 'heading' && (\n\t\t\t\t<Spacer marginX={ 4 } marginBottom=\"1em\">\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\tlabel={ __( 'Select heading level' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tvalue={ headingLevel }\n\t\t\t\t\t\tonChange={ setHeadingLevel }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"heading\"\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\taria-label={ __( 'All headings' ) }\n\t\t\t\t\t\t\tlabel={ _x( 'All', 'heading levels' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h1\"\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\taria-label={ __( 'Heading 1' ) }\n\t\t\t\t\t\t\tlabel={ __( 'H1' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h2\"\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\taria-label={ __( 'Heading 2' ) }\n\t\t\t\t\t\t\tlabel={ __( 'H2' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h3\"\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\taria-label={ __( 'Heading 3' ) }\n\t\t\t\t\t\t\tlabel={ __( 'H3' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h4\"\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\taria-label={ __( 'Heading 4' ) }\n\t\t\t\t\t\t\tlabel={ __( 'H4' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h5\"\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\taria-label={ __( 'Heading 5' ) }\n\t\t\t\t\t\t\tlabel={ __( 'H5' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"h6\"\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\taria-label={ __( 'Heading 6' ) }\n\t\t\t\t\t\t\tlabel={ __( 'H6' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</Spacer>\n\t\t\t) }\n\t\t\t<TypographyPanel\n\t\t\t\telement={ element }\n\t\t\t\theadingLevel={ headingLevel }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default ScreenTypographyElement;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SACCC,gCAAgC,IAAIC,kBAAkB,EACtDC,sCAAsC,IAAIC,wBAAwB,EAClEC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,QAAQ,QAAQ,oBAAoB;;AAE7C;AACA;AACA;AACA,OAAOC,eAAe,MAAM,oBAAoB;AAChD,OAAOC,YAAY,MAAM,UAAU;AACnC,OAAOC,iBAAiB,MAAM,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAErD,MAAMC,QAAQ,GAAG;EAChBC,IAAI,EAAE;IACLC,WAAW,EAAEpB,EAAE,CAAE,oCAAqC,CAAC;IACvDqB,KAAK,EAAErB,EAAE,CAAE,MAAO;EACnB,CAAC;EACDsB,IAAI,EAAE;IACLF,WAAW,EAAEpB,EAAE,CAAE,oDAAqD,CAAC;IACvEqB,KAAK,EAAErB,EAAE,CAAE,OAAQ;EACpB,CAAC;EACDuB,OAAO,EAAE;IACRH,WAAW,EAAEpB,EAAE,CAAE,mDAAoD,CAAC;IACtEqB,KAAK,EAAErB,EAAE,CAAE,UAAW;EACvB,CAAC;EACDwB,OAAO,EAAE;IACRJ,WAAW,EAAEpB,EAAE,CAAE,mDAAoD,CAAC;IACtEqB,KAAK,EAAErB,EAAE,CAAE,UAAW;EACvB,CAAC;EACDyB,MAAM,EAAE;IACPL,WAAW,EAAEpB,EAAE,CAAE,kDAAmD,CAAC;IACrEqB,KAAK,EAAErB,EAAE,CAAE,SAAU;EACtB;AACD,CAAC;AAED,SAAS0B,uBAAuBA,CAAE;EAAEC;AAAQ,CAAC,EAAG;EAC/C,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAGrB,QAAQ,CAAE,SAAU,CAAC;EAE/D,oBACCO,KAAA,CAAAE,SAAA;IAAAa,QAAA,gBACCjB,IAAA,CAACH,YAAY;MACZW,KAAK,EAAGH,QAAQ,CAAES,OAAO,CAAE,CAACN,KAAO;MACnCD,WAAW,EAAGF,QAAQ,CAAES,OAAO,CAAE,CAACP;IAAa,CAC/C,CAAC,eACFP,IAAA,CAACN,MAAM;MAACwB,OAAO,EAAG,CAAG;MAAAD,QAAA,eACpBjB,IAAA,CAACF,iBAAiB;QACjBgB,OAAO,EAAGA,OAAS;QACnBC,YAAY,EAAGA;MAAc,CAC7B;IAAC,CACK,CAAC,EACPD,OAAO,KAAK,SAAS,iBACtBd,IAAA,CAACN,MAAM;MAACwB,OAAO,EAAG,CAAG;MAACC,YAAY,EAAC,KAAK;MAAAF,QAAA,eACvCf,KAAA,CAACZ,kBAAkB;QAClB8B,KAAK,EAAGjC,EAAE,CAAE,sBAAuB,CAAG;QACtCkC,mBAAmB;QACnBC,KAAK,EAAGP,YAAc;QACtBQ,QAAQ,EAAGP,eAAiB;QAC5BQ,OAAO;QACPC,IAAI,EAAC,kBAAkB;QACvBC,uBAAuB;QAAAT,QAAA,gBAEvBjB,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,SAAS;UACfK,WAAW;UACX,cAAaxC,EAAE,CAAE,cAAe,CAAG;UACnCiC,KAAK,EAAGhC,EAAE,CAAE,KAAK,EAAE,gBAAiB;QAAG,CACvC,CAAC,eACFY,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,IAAI;UACVK,WAAW;UACX,cAAaxC,EAAE,CAAE,WAAY,CAAG;UAChCiC,KAAK,EAAGjC,EAAE,CAAE,IAAK;QAAG,CACpB,CAAC,eACFa,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,IAAI;UACVK,WAAW;UACX,cAAaxC,EAAE,CAAE,WAAY,CAAG;UAChCiC,KAAK,EAAGjC,EAAE,CAAE,IAAK;QAAG,CACpB,CAAC,eACFa,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,IAAI;UACVK,WAAW;UACX,cAAaxC,EAAE,CAAE,WAAY,CAAG;UAChCiC,KAAK,EAAGjC,EAAE,CAAE,IAAK;QAAG,CACpB,CAAC,eACFa,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,IAAI;UACVK,WAAW;UACX,cAAaxC,EAAE,CAAE,WAAY,CAAG;UAChCiC,KAAK,EAAGjC,EAAE,CAAE,IAAK;QAAG,CACpB,CAAC,eACFa,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,IAAI;UACVK,WAAW;UACX,cAAaxC,EAAE,CAAE,WAAY,CAAG;UAChCiC,KAAK,EAAGjC,EAAE,CAAE,IAAK;QAAG,CACpB,CAAC,eACFa,IAAA,CAACR,wBAAwB;UACxB8B,KAAK,EAAC,IAAI;UACVK,WAAW;UACX,cAAaxC,EAAE,CAAE,WAAY,CAAG;UAChCiC,KAAK,EAAGjC,EAAE,CAAE,IAAK;QAAG,CACpB,CAAC;MAAA,CACiB;IAAC,CACd,CACR,eACDa,IAAA,CAACJ,eAAe;MACfkB,OAAO,EAAGA,OAAS;MACnBC,YAAY,EAAGA;IAAc,CAC7B,CAAC;EAAA,CACD,CAAC;AAEL;AAEA,eAAeF,uBAAuB","ignoreList":[]}
|
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { __ } from '@wordpress/i18n';
|
|
5
5
|
import { __experimentalVStack as VStack } from '@wordpress/components';
|
|
6
|
-
import { store as editorStore } from '@wordpress/editor';
|
|
7
6
|
import { useSelect } from '@wordpress/data';
|
|
7
|
+
import { store as editorStore } from '@wordpress/editor';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Internal dependencies
|
|
11
11
|
*/
|
|
12
12
|
import TypographyElements from './typography-elements';
|
|
13
|
-
import TypographyVariations from './variations/variations-typography';
|
|
14
|
-
import FontFamilies from './font-families';
|
|
15
13
|
import ScreenHeader from './header';
|
|
16
14
|
import FontSizesCount from './font-sizes/font-sizes-count';
|
|
15
|
+
import TypesetButton from './typeset-button';
|
|
16
|
+
import FontFamilies from './font-families';
|
|
17
17
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
18
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
19
19
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
@@ -27,9 +27,7 @@ function ScreenTypography() {
|
|
|
27
27
|
className: "edit-site-global-styles-screen",
|
|
28
28
|
children: /*#__PURE__*/_jsxs(VStack, {
|
|
29
29
|
spacing: 7,
|
|
30
|
-
children: [fontLibraryEnabled && /*#__PURE__*/_jsx(FontFamilies, {}), /*#__PURE__*/_jsx(TypographyElements, {}), /*#__PURE__*/_jsx(
|
|
31
|
-
title: __('Presets')
|
|
32
|
-
}), /*#__PURE__*/_jsx(FontSizesCount, {})]
|
|
30
|
+
children: [/*#__PURE__*/_jsx(TypesetButton, {}), fontLibraryEnabled && /*#__PURE__*/_jsx(FontFamilies, {}), /*#__PURE__*/_jsx(TypographyElements, {}), /*#__PURE__*/_jsx(FontSizesCount, {})]
|
|
33
31
|
})
|
|
34
32
|
})]
|
|
35
33
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","__experimentalVStack","VStack","
|
|
1
|
+
{"version":3,"names":["__","__experimentalVStack","VStack","useSelect","store","editorStore","TypographyElements","ScreenHeader","FontSizesCount","TypesetButton","FontFamilies","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ScreenTypography","fontLibraryEnabled","select","getEditorSettings","children","title","description","className","spacing"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-typography.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { __experimentalVStack as VStack } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport TypographyElements from './typography-elements';\nimport ScreenHeader from './header';\nimport FontSizesCount from './font-sizes/font-sizes-count';\nimport TypesetButton from './typeset-button';\nimport FontFamilies from './font-families';\n\nfunction ScreenTypography() {\n\tconst fontLibraryEnabled = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).getEditorSettings().fontLibraryEnabled,\n\t\t[]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Typography' ) }\n\t\t\t\tdescription={ __(\n\t\t\t\t\t'Typography styles and the application of those styles on site elements.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<VStack spacing={ 7 }>\n\t\t\t\t\t<TypesetButton />\n\t\t\t\t\t{ fontLibraryEnabled && <FontFamilies /> }\n\t\t\t\t\t<TypographyElements />\n\t\t\t\t\t<FontSizesCount />\n\t\t\t\t</VStack>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default ScreenTypography;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,oBAAoB,IAAIC,MAAM,QAAQ,uBAAuB;AACtE,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;;AAExD;AACA;AACA;AACA,OAAOC,kBAAkB,MAAM,uBAAuB;AACtD,OAAOC,YAAY,MAAM,UAAU;AACnC,OAAOC,cAAc,MAAM,+BAA+B;AAC1D,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,OAAOC,YAAY,MAAM,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAE3C,SAASC,gBAAgBA,CAAA,EAAG;EAC3B,MAAMC,kBAAkB,GAAGf,SAAS,CACjCgB,MAAM,IACPA,MAAM,CAAEd,WAAY,CAAC,CAACe,iBAAiB,CAAC,CAAC,CAACF,kBAAkB,EAC7D,EACD,CAAC;EAED,oBACCJ,KAAA,CAAAE,SAAA;IAAAK,QAAA,gBACCT,IAAA,CAACL,YAAY;MACZe,KAAK,EAAGtB,EAAE,CAAE,YAAa,CAAG;MAC5BuB,WAAW,EAAGvB,EAAE,CACf,yEACD;IAAG,CACH,CAAC,eACFY,IAAA;MAAKY,SAAS,EAAC,gCAAgC;MAAAH,QAAA,eAC9CP,KAAA,CAACZ,MAAM;QAACuB,OAAO,EAAG,CAAG;QAAAJ,QAAA,gBACpBT,IAAA,CAACH,aAAa,IAAE,CAAC,EACfS,kBAAkB,iBAAIN,IAAA,CAACF,YAAY,IAAE,CAAC,eACxCE,IAAA,CAACN,kBAAkB,IAAE,CAAC,eACtBM,IAAA,CAACJ,cAAc,IAAE,CAAC;MAAA,CACX;IAAC,CACL,CAAC;EAAA,CACL,CAAC;AAEL;AAEA,eAAeS,gBAAgB","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ import clsx from 'clsx';
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
|
-
import { __experimentalHStack as HStack, __experimentalVStack as VStack, __experimentalSpacer as Spacer, __experimentalItemGroup as ItemGroup,
|
|
9
|
+
import { __experimentalHStack as HStack, __experimentalVStack as VStack, __experimentalSpacer as Spacer, __experimentalItemGroup as ItemGroup, __experimentalInputControl as InputControl, __experimentalUnitControl as UnitControl, __experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue, __experimentalGrid as Grid, __experimentalDropdownContentWrapper as DropdownContentWrapper, __experimentalUseNavigator as useNavigator, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, __experimentalConfirmDialog as ConfirmDialog, Dropdown, RangeControl, Button, Flex, FlexItem, ColorPalette, Modal, privateApis as componentsPrivateApis } from '@wordpress/components';
|
|
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, settings, moreVertical } from '@wordpress/icons';
|
|
@@ -319,13 +319,11 @@ function ShadowItem({
|
|
|
319
319
|
});
|
|
320
320
|
},
|
|
321
321
|
renderContent: () => /*#__PURE__*/_jsx(DropdownContentWrapper, {
|
|
322
|
-
paddingSize: "
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
onChange: onShadowChange
|
|
328
|
-
})
|
|
322
|
+
paddingSize: "medium",
|
|
323
|
+
className: "edit-site-global-styles__shadow-editor__dropdown-content",
|
|
324
|
+
children: /*#__PURE__*/_jsx(ShadowPopover, {
|
|
325
|
+
shadowObj: shadowObj,
|
|
326
|
+
onChange: onShadowChange
|
|
329
327
|
})
|
|
330
328
|
})
|
|
331
329
|
});
|
|
@@ -343,60 +341,53 @@ function ShadowPopover({
|
|
|
343
341
|
};
|
|
344
342
|
onChange(newShadow);
|
|
345
343
|
};
|
|
346
|
-
return /*#__PURE__*/
|
|
344
|
+
return /*#__PURE__*/_jsxs(VStack, {
|
|
345
|
+
spacing: 4,
|
|
347
346
|
className: "edit-site-global-styles__shadow-editor-panel",
|
|
348
|
-
children: /*#__PURE__*/
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
__next40pxDefaultSize: true,
|
|
368
|
-
children: [/*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
369
|
-
value: "outset",
|
|
370
|
-
label: __('Outset')
|
|
371
|
-
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
372
|
-
value: "inset",
|
|
373
|
-
label: __('Inset')
|
|
374
|
-
})]
|
|
375
|
-
}), /*#__PURE__*/_jsxs(Grid, {
|
|
376
|
-
columns: 2,
|
|
377
|
-
gap: 4,
|
|
378
|
-
children: [/*#__PURE__*/_jsx(ShadowInputControl, {
|
|
379
|
-
label: __('X Position'),
|
|
380
|
-
value: shadowObj.x,
|
|
381
|
-
hasNegativeRange: true,
|
|
382
|
-
onChange: value => onShadowChange('x', value)
|
|
383
|
-
}), /*#__PURE__*/_jsx(ShadowInputControl, {
|
|
384
|
-
label: __('Y Position'),
|
|
385
|
-
value: shadowObj.y,
|
|
386
|
-
hasNegativeRange: true,
|
|
387
|
-
onChange: value => onShadowChange('y', value)
|
|
388
|
-
}), /*#__PURE__*/_jsx(ShadowInputControl, {
|
|
389
|
-
label: __('Blur'),
|
|
390
|
-
value: shadowObj.blur,
|
|
391
|
-
onChange: value => onShadowChange('blur', value)
|
|
392
|
-
}), /*#__PURE__*/_jsx(ShadowInputControl, {
|
|
393
|
-
label: __('Spread'),
|
|
394
|
-
value: shadowObj.spread,
|
|
395
|
-
hasNegativeRange: true,
|
|
396
|
-
onChange: value => onShadowChange('spread', value)
|
|
397
|
-
})]
|
|
347
|
+
children: [/*#__PURE__*/_jsx(ColorPalette, {
|
|
348
|
+
clearable: false,
|
|
349
|
+
enableAlpha: enableAlpha,
|
|
350
|
+
__experimentalIsRenderedInSidebar: __experimentalIsRenderedInSidebar,
|
|
351
|
+
value: shadowObj.color,
|
|
352
|
+
onChange: value => onShadowChange('color', value)
|
|
353
|
+
}), /*#__PURE__*/_jsxs(ToggleGroupControl, {
|
|
354
|
+
__nextHasNoMarginBottom: true,
|
|
355
|
+
value: shadowObj.inset ? 'inset' : 'outset',
|
|
356
|
+
isBlock: true,
|
|
357
|
+
onChange: value => onShadowChange('inset', value === 'inset'),
|
|
358
|
+
hideLabelFromVision: true,
|
|
359
|
+
__next40pxDefaultSize: true,
|
|
360
|
+
children: [/*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
361
|
+
value: "outset",
|
|
362
|
+
label: __('Outset')
|
|
363
|
+
}), /*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
364
|
+
value: "inset",
|
|
365
|
+
label: __('Inset')
|
|
398
366
|
})]
|
|
399
|
-
})
|
|
367
|
+
}), /*#__PURE__*/_jsxs(Grid, {
|
|
368
|
+
columns: 2,
|
|
369
|
+
gap: 4,
|
|
370
|
+
children: [/*#__PURE__*/_jsx(ShadowInputControl, {
|
|
371
|
+
label: __('X Position'),
|
|
372
|
+
value: shadowObj.x,
|
|
373
|
+
hasNegativeRange: true,
|
|
374
|
+
onChange: value => onShadowChange('x', value)
|
|
375
|
+
}), /*#__PURE__*/_jsx(ShadowInputControl, {
|
|
376
|
+
label: __('Y Position'),
|
|
377
|
+
value: shadowObj.y,
|
|
378
|
+
hasNegativeRange: true,
|
|
379
|
+
onChange: value => onShadowChange('y', value)
|
|
380
|
+
}), /*#__PURE__*/_jsx(ShadowInputControl, {
|
|
381
|
+
label: __('Blur'),
|
|
382
|
+
value: shadowObj.blur,
|
|
383
|
+
onChange: value => onShadowChange('blur', value)
|
|
384
|
+
}), /*#__PURE__*/_jsx(ShadowInputControl, {
|
|
385
|
+
label: __('Spread'),
|
|
386
|
+
value: shadowObj.spread,
|
|
387
|
+
hasNegativeRange: true,
|
|
388
|
+
onChange: value => onShadowChange('spread', value)
|
|
389
|
+
})]
|
|
390
|
+
})]
|
|
400
391
|
});
|
|
401
392
|
}
|
|
402
393
|
function ShadowInputControl({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalItemGroup","ItemGroup","__experimentalHeading","Heading","__experimentalInputControl","InputControl","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","RangeControl","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","settings","moreVertical","useState","useMemo","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","CUSTOM_VALUE_SETTINGS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","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","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","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","isBlock","hideLabelFromVision","__next40pxDefaultSize","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","isPressed","withInputField","__nextHasNoMarginBottom","min","max","step"],"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__experimentalHeading as Heading,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\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\tRangeControl,\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\tsettings,\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\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = 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<DropdownMenu\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<DropdownMenuItem\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<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\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\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\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 variant=\"primary\" type=\"submit\">\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 icon={ shadowIcon } { ...toggleProps }>\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\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 paddingSize=\"none\">\n\t\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor__dropdown-content\">\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\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<div className=\"edit-site-global-styles__shadow-editor-panel\">\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<Heading level={ 5 }>{ __( 'Shadow' ) }</Heading>\n\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor-color-palette\">\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'color', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<ToggleGroupControl\n\t\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\t\tisBlock\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t\t}\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToggleGroupControl>\n\t\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'blur', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'spread', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Grid>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\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<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\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","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","RangeControl","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","settings","moreVertical","useState","useMemo","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","CUSTOM_VALUE_SETTINGS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","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","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","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","__next40pxDefaultSize","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","isPressed","withInputField","min","max","step"],"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__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\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\tRangeControl,\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\tsettings,\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\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = 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<DropdownMenu\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<DropdownMenuItem\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<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\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\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\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 variant=\"primary\" type=\"submit\">\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 icon={ shadowIcon } { ...toggleProps }>\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\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\thasNegativeRange\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\thasNegativeRange\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\thasNegativeRange\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, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\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<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { isRTL, __ } from '@wordpress/i18n';
|
|
5
|
+
import { __experimentalItemGroup as ItemGroup, __experimentalVStack as VStack, __experimentalHStack as HStack, FlexItem } from '@wordpress/components';
|
|
6
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
7
|
+
import { useSelect } from '@wordpress/data';
|
|
8
|
+
import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
|
|
9
|
+
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
10
|
+
import { useMemo, useContext } from '@wordpress/element';
|
|
11
|
+
import { Icon, chevronLeft, chevronRight } from '@wordpress/icons';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Internal dependencies
|
|
15
|
+
*/
|
|
16
|
+
import FontLibraryProvider from './font-library-modal/context';
|
|
17
|
+
import { getFontFamilies } from './utils';
|
|
18
|
+
import { NavigationButtonAsItem } from './navigation-button';
|
|
19
|
+
import Subtitle from './subtitle';
|
|
20
|
+
import { unlock } from '../../lock-unlock';
|
|
21
|
+
import { filterObjectByProperties } from '../../hooks/use-theme-style-variations/use-theme-style-variations-by-property';
|
|
22
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
23
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
|
+
const {
|
|
25
|
+
GlobalStylesContext
|
|
26
|
+
} = unlock(blockEditorPrivateApis);
|
|
27
|
+
const {
|
|
28
|
+
mergeBaseAndUserConfigs
|
|
29
|
+
} = unlock(editorPrivateApis);
|
|
30
|
+
function TypesetButton() {
|
|
31
|
+
const {
|
|
32
|
+
base
|
|
33
|
+
} = useContext(GlobalStylesContext);
|
|
34
|
+
const {
|
|
35
|
+
user: userConfig
|
|
36
|
+
} = useContext(GlobalStylesContext);
|
|
37
|
+
const config = mergeBaseAndUserConfigs(base, userConfig);
|
|
38
|
+
const allFontFamilies = getFontFamilies(config);
|
|
39
|
+
const hasFonts = allFontFamilies.filter(font => font !== null).length > 0;
|
|
40
|
+
const variations = useSelect(select => {
|
|
41
|
+
return select(coreStore).__experimentalGetCurrentThemeGlobalStylesVariations();
|
|
42
|
+
}, []);
|
|
43
|
+
const userTypographyConfig = filterObjectByProperties(userConfig, 'typography');
|
|
44
|
+
const title = useMemo(() => {
|
|
45
|
+
if (Object.keys(userTypographyConfig).length === 0) {
|
|
46
|
+
return __('Default');
|
|
47
|
+
}
|
|
48
|
+
const activeVariation = variations?.find(variation => {
|
|
49
|
+
return JSON.stringify(filterObjectByProperties(variation, 'typography')) === JSON.stringify(userTypographyConfig);
|
|
50
|
+
});
|
|
51
|
+
if (activeVariation) {
|
|
52
|
+
return activeVariation.title;
|
|
53
|
+
}
|
|
54
|
+
return allFontFamilies.map(font => font?.name).join(', ');
|
|
55
|
+
}, [allFontFamilies, userTypographyConfig, variations]);
|
|
56
|
+
return hasFonts && /*#__PURE__*/_jsxs(VStack, {
|
|
57
|
+
spacing: 2,
|
|
58
|
+
children: [/*#__PURE__*/_jsx(HStack, {
|
|
59
|
+
justify: "space-between",
|
|
60
|
+
children: /*#__PURE__*/_jsx(Subtitle, {
|
|
61
|
+
level: 3,
|
|
62
|
+
children: __('Typeset')
|
|
63
|
+
})
|
|
64
|
+
}), /*#__PURE__*/_jsx(ItemGroup, {
|
|
65
|
+
isBordered: true,
|
|
66
|
+
isSeparated: true,
|
|
67
|
+
children: /*#__PURE__*/_jsx(NavigationButtonAsItem, {
|
|
68
|
+
path: "/typography/typeset",
|
|
69
|
+
"aria-label": __('Typeset'),
|
|
70
|
+
children: /*#__PURE__*/_jsxs(HStack, {
|
|
71
|
+
direction: "row",
|
|
72
|
+
children: [/*#__PURE__*/_jsx(FlexItem, {
|
|
73
|
+
children: title
|
|
74
|
+
}), /*#__PURE__*/_jsx(Icon, {
|
|
75
|
+
icon: isRTL() ? chevronLeft : chevronRight
|
|
76
|
+
})]
|
|
77
|
+
})
|
|
78
|
+
})
|
|
79
|
+
})]
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
export default (({
|
|
83
|
+
...props
|
|
84
|
+
}) => /*#__PURE__*/_jsx(FontLibraryProvider, {
|
|
85
|
+
children: /*#__PURE__*/_jsx(TypesetButton, {
|
|
86
|
+
...props
|
|
87
|
+
})
|
|
88
|
+
}));
|
|
89
|
+
//# sourceMappingURL=typeset-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isRTL","__","__experimentalItemGroup","ItemGroup","__experimentalVStack","VStack","__experimentalHStack","HStack","FlexItem","store","coreStore","useSelect","privateApis","blockEditorPrivateApis","editorPrivateApis","useMemo","useContext","Icon","chevronLeft","chevronRight","FontLibraryProvider","getFontFamilies","NavigationButtonAsItem","Subtitle","unlock","filterObjectByProperties","jsx","_jsx","jsxs","_jsxs","GlobalStylesContext","mergeBaseAndUserConfigs","TypesetButton","base","user","userConfig","config","allFontFamilies","hasFonts","filter","font","length","variations","select","__experimentalGetCurrentThemeGlobalStylesVariations","userTypographyConfig","title","Object","keys","activeVariation","find","variation","JSON","stringify","map","name","join","spacing","children","justify","level","isBordered","isSeparated","path","direction","icon","props"],"sources":["@wordpress/edit-site/src/components/global-styles/typeset-button.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n\tFlexItem,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { useMemo, useContext } from '@wordpress/element';\nimport { Icon, chevronLeft, chevronRight } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport FontLibraryProvider from './font-library-modal/context';\nimport { getFontFamilies } from './utils';\nimport { NavigationButtonAsItem } from './navigation-button';\nimport Subtitle from './subtitle';\nimport { unlock } from '../../lock-unlock';\nimport { filterObjectByProperties } from '../../hooks/use-theme-style-variations/use-theme-style-variations-by-property';\n\nconst { GlobalStylesContext } = unlock( blockEditorPrivateApis );\nconst { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );\n\nfunction TypesetButton() {\n\tconst { base } = useContext( GlobalStylesContext );\n\tconst { user: userConfig } = useContext( GlobalStylesContext );\n\tconst config = mergeBaseAndUserConfigs( base, userConfig );\n\tconst allFontFamilies = getFontFamilies( config );\n\tconst hasFonts =\n\t\tallFontFamilies.filter( ( font ) => font !== null ).length > 0;\n\tconst variations = useSelect( ( select ) => {\n\t\treturn select(\n\t\t\tcoreStore\n\t\t).__experimentalGetCurrentThemeGlobalStylesVariations();\n\t}, [] );\n\tconst userTypographyConfig = filterObjectByProperties(\n\t\tuserConfig,\n\t\t'typography'\n\t);\n\n\tconst title = useMemo( () => {\n\t\tif ( Object.keys( userTypographyConfig ).length === 0 ) {\n\t\t\treturn __( 'Default' );\n\t\t}\n\t\tconst activeVariation = variations?.find( ( variation ) => {\n\t\t\treturn (\n\t\t\t\tJSON.stringify(\n\t\t\t\t\tfilterObjectByProperties( variation, 'typography' )\n\t\t\t\t) === JSON.stringify( userTypographyConfig )\n\t\t\t);\n\t\t} );\n\t\tif ( activeVariation ) {\n\t\t\treturn activeVariation.title;\n\t\t}\n\t\treturn allFontFamilies.map( ( font ) => font?.name ).join( ', ' );\n\t}, [ allFontFamilies, userTypographyConfig, variations ] );\n\n\treturn (\n\t\thasFonts && (\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Typeset' ) }</Subtitle>\n\t\t\t\t</HStack>\n\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\tpath=\"/typography/typeset\"\n\t\t\t\t\t\taria-label={ __( 'Typeset' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<HStack direction=\"row\">\n\t\t\t\t\t\t\t<FlexItem>{ title }</FlexItem>\n\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\ticon={ isRTL() ? chevronLeft : chevronRight }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t</ItemGroup>\n\t\t\t</VStack>\n\t\t)\n\t);\n}\n\nexport default ( { ...props } ) => (\n\t<FontLibraryProvider>\n\t\t<TypesetButton { ...props } />\n\t</FontLibraryProvider>\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { __ } from '@wordpress/i18n';
|
|
5
|
+
import { __experimentalItemGroup as ItemGroup, __experimentalVStack as VStack, __experimentalHStack as HStack } from '@wordpress/components';
|
|
6
|
+
import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
|
|
7
|
+
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
8
|
+
import { useContext } from '@wordpress/element';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Internal dependencies
|
|
12
|
+
*/
|
|
13
|
+
import FontLibraryProvider, { FontLibraryContext } from './font-library-modal/context';
|
|
14
|
+
import FontLibraryModal from './font-library-modal';
|
|
15
|
+
import FontFamilyItem from './font-family-item';
|
|
16
|
+
import Subtitle from './subtitle';
|
|
17
|
+
import { getFontFamilies } from './utils';
|
|
18
|
+
import { unlock } from '../../lock-unlock';
|
|
19
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
20
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
21
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
22
|
+
const {
|
|
23
|
+
GlobalStylesContext
|
|
24
|
+
} = unlock(blockEditorPrivateApis);
|
|
25
|
+
const {
|
|
26
|
+
mergeBaseAndUserConfigs
|
|
27
|
+
} = unlock(editorPrivateApis);
|
|
28
|
+
function Typesets() {
|
|
29
|
+
const {
|
|
30
|
+
modalTabOpen,
|
|
31
|
+
setModalTabOpen
|
|
32
|
+
} = useContext(FontLibraryContext);
|
|
33
|
+
const {
|
|
34
|
+
base
|
|
35
|
+
} = useContext(GlobalStylesContext);
|
|
36
|
+
const {
|
|
37
|
+
user: userConfig
|
|
38
|
+
} = useContext(GlobalStylesContext);
|
|
39
|
+
const config = mergeBaseAndUserConfigs(base, userConfig);
|
|
40
|
+
const allFontFamilies = getFontFamilies(config);
|
|
41
|
+
const hasFonts = allFontFamilies.filter(font => font !== null).length > 0;
|
|
42
|
+
return hasFonts && /*#__PURE__*/_jsxs(_Fragment, {
|
|
43
|
+
children: [!!modalTabOpen && /*#__PURE__*/_jsx(FontLibraryModal, {
|
|
44
|
+
onRequestClose: () => setModalTabOpen(null),
|
|
45
|
+
defaultTabId: modalTabOpen
|
|
46
|
+
}), /*#__PURE__*/_jsxs(VStack, {
|
|
47
|
+
spacing: 2,
|
|
48
|
+
children: [/*#__PURE__*/_jsx(HStack, {
|
|
49
|
+
justify: "space-between",
|
|
50
|
+
children: /*#__PURE__*/_jsx(Subtitle, {
|
|
51
|
+
level: 3,
|
|
52
|
+
children: __('Fonts')
|
|
53
|
+
})
|
|
54
|
+
}), /*#__PURE__*/_jsx(ItemGroup, {
|
|
55
|
+
isBordered: true,
|
|
56
|
+
isSeparated: true,
|
|
57
|
+
children: allFontFamilies.map(font => font && /*#__PURE__*/_jsx(FontFamilyItem, {
|
|
58
|
+
font: font
|
|
59
|
+
}, font.slug))
|
|
60
|
+
})]
|
|
61
|
+
})]
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
export default (({
|
|
65
|
+
...props
|
|
66
|
+
}) => /*#__PURE__*/_jsx(FontLibraryProvider, {
|
|
67
|
+
children: /*#__PURE__*/_jsx(Typesets, {
|
|
68
|
+
...props
|
|
69
|
+
})
|
|
70
|
+
}));
|
|
71
|
+
//# sourceMappingURL=typeset.js.map
|