@wordpress/edit-site 6.7.1-next.5368f64a9.0 → 6.8.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/editor/index.js +1 -5
- package/build/components/editor/index.js.map +1 -1
- package/build/components/editor-canvas-container/index.js +6 -17
- package/build/components/editor-canvas-container/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-card.js +2 -4
- package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +2 -4
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/font-library-modal/index.js +28 -28
- package/build/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +4 -8
- 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 -4
- package/build/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build/components/global-styles/palette.js +2 -4
- package/build/components/global-styles/palette.js.map +1 -1
- package/build/components/global-styles/root-menu.js +12 -1
- package/build/components/global-styles/root-menu.js.map +1 -1
- package/build/components/global-styles/screen-background.js +40 -0
- package/build/components/global-styles/screen-background.js.map +1 -0
- package/build/components/global-styles/screen-layout.js +1 -8
- package/build/components/global-styles/screen-layout.js.map +1 -1
- package/build/components/global-styles/screen-revisions/revisions-buttons.js +2 -4
- package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build/components/global-styles/screen-root.js +3 -0
- package/build/components/global-styles/screen-root.js.map +1 -1
- package/build/components/global-styles/shadows-edit-panel.js +14 -58
- package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
- package/build/components/global-styles/ui.js +4 -0
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/post-list/index.js +35 -2
- package/build/components/post-list/index.js.map +1 -1
- package/build/components/sidebar-dataviews/dataview-item.js +3 -1
- package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build/components/sidebar-dataviews/default-views.js +79 -47
- package/build/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build/components/sidebar-dataviews/index.js +4 -1
- package/build/components/sidebar-dataviews/index.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +1 -0
- 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 +1 -0
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build-module/components/editor/index.js +2 -6
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/editor-canvas-container/index.js +7 -18
- package/build-module/components/editor-canvas-container/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-card.js +2 -4
- package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +2 -4
- 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 +28 -28
- 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 +4 -8
- 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 -4
- package/build-module/components/global-styles/font-library-modal/upload-fonts.js.map +1 -1
- package/build-module/components/global-styles/palette.js +2 -4
- package/build-module/components/global-styles/palette.js.map +1 -1
- package/build-module/components/global-styles/root-menu.js +13 -2
- package/build-module/components/global-styles/root-menu.js.map +1 -1
- package/build-module/components/global-styles/screen-background.js +34 -0
- package/build-module/components/global-styles/screen-background.js.map +1 -0
- package/build-module/components/global-styles/screen-layout.js +1 -8
- package/build-module/components/global-styles/screen-layout.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +2 -4
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build-module/components/global-styles/screen-root.js +3 -0
- package/build-module/components/global-styles/screen-root.js.map +1 -1
- package/build-module/components/global-styles/shadows-edit-panel.js +17 -61
- package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
- 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/post-list/index.js +35 -2
- package/build-module/components/post-list/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/dataview-item.js +3 -1
- package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build-module/components/sidebar-dataviews/default-views.js +79 -48
- package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build-module/components/sidebar-dataviews/index.js +5 -2
- package/build-module/components/sidebar-dataviews/index.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +1 -0
- 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 +1 -0
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build-style/posts-rtl.css +5 -5
- package/build-style/posts.css +5 -5
- package/build-style/style-rtl.css +15 -19
- package/build-style/style.css +15 -19
- package/package.json +41 -41
- package/src/components/editor/index.js +2 -4
- package/src/components/editor-canvas-container/index.js +7 -18
- package/src/components/global-styles/font-library-modal/font-card.js +1 -2
- package/src/components/global-styles/font-library-modal/font-collection.js +1 -2
- package/src/components/global-styles/font-library-modal/index.js +26 -26
- package/src/components/global-styles/font-library-modal/installed-fonts.js +2 -4
- package/src/components/global-styles/font-library-modal/style.scss +19 -12
- package/src/components/global-styles/font-library-modal/upload-fonts.js +1 -2
- package/src/components/global-styles/palette.js +1 -2
- package/src/components/global-styles/root-menu.js +16 -0
- package/src/components/global-styles/screen-background.js +37 -0
- package/src/components/global-styles/screen-layout.js +3 -13
- package/src/components/global-styles/screen-revisions/revisions-buttons.js +1 -2
- package/src/components/global-styles/screen-root.js +7 -3
- package/src/components/global-styles/shadows-edit-panel.js +11 -70
- package/src/components/global-styles/style.scss +8 -0
- package/src/components/global-styles/ui.js +5 -0
- package/src/components/post-list/index.js +48 -2
- package/src/components/sidebar-dataviews/dataview-item.js +2 -0
- package/src/components/sidebar-dataviews/default-views.js +92 -58
- package/src/components/sidebar-dataviews/index.js +7 -2
- package/src/components/sidebar-dataviews/style.scss +4 -0
- package/src/style.scss +0 -16
|
@@ -278,18 +278,14 @@ function InstalledFonts() {
|
|
|
278
278
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
|
|
279
279
|
justify: "flex-end",
|
|
280
280
|
className: "font-library-modal__footer",
|
|
281
|
-
children: [isInstalling && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ProgressBar, {}), shouldDisplayDeleteButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
282
|
-
|
|
283
|
-
, {
|
|
284
|
-
__next40pxDefaultSize: false,
|
|
281
|
+
children: [isInstalling && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ProgressBar, {}), shouldDisplayDeleteButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
282
|
+
__next40pxDefaultSize: true,
|
|
285
283
|
isDestructive: true,
|
|
286
284
|
variant: "tertiary",
|
|
287
285
|
onClick: handleUninstallClick,
|
|
288
286
|
children: (0, _i18n.__)('Delete')
|
|
289
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
290
|
-
|
|
291
|
-
, {
|
|
292
|
-
__next40pxDefaultSize: false,
|
|
287
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
288
|
+
__next40pxDefaultSize: true,
|
|
293
289
|
variant: "primary",
|
|
294
290
|
onClick: handleUpdate,
|
|
295
291
|
disabled: !fontFamiliesHasChanges,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_coreData","_data","_element","_i18n","_icons","_blockEditor","_context","_fontCard","_interopRequireDefault","_libraryFontVariant","_sortFontFaces","_utils","_lockUnlock","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","InstalledFonts","_libraryFontSelected$","baseCustomFonts","libraryFontSelected","handleSetLibraryFontSelected","refreshLibrary","uninstallFontFamily","isResolvingLibrary","isInstalling","saveFontFamilies","getFontFacesActivated","useContext","FontLibraryContext","fontFamilies","setFontFamilies","isConfirmDeleteOpen","setIsConfirmDeleteOpen","useState","notice","setNotice","baseFontFamilies","undefined","globalStylesId","useSelect","select","__experimentalGetCurrentGlobalStylesId","coreStore","globalStyles","useEntityRecord","fontFamiliesHasChanges","edits","settings","typography","themeFonts","theme","map","f","setUIValuesNeeded","source","sort","a","b","name","localeCompare","themeFontsSlugs","Set","slug","baseThemeFonts","concat","filter","has","customFontFamilyId","id","canUserDelete","canUser","kind","shouldDisplayDeleteButton","handleUninstallClick","handleUpdate","type","message","__","error","sprintf","getFontFacesToDisplay","font","fontFace","length","fontFamily","fontStyle","fontWeight","sortFontFaces","getFontCardVariantsText","variantsInstalled","variantsActive","useEffect","activeFontsCount","selectedFontsCount","isIndeterminate","isSelectAllChecked","toggleSelectAll","_fontFamilies$library","initialFonts","newFonts","forEach","face","unloadFontFaceInBrowser","loadFontFaceInBrowser","getDisplaySrcFromFontFace","src","hasFonts","jsxs","className","children","jsx","ProgressBar","Fragment","__experimentalNavigatorProvider","initialPath","__experimentalNavigatorScreen","path","__experimentalVStack","spacing","Notice","status","onRemove","__experimentalText","as","_x","role","default","navigatorPath","variantsText","onClick","ConfirmDeleteDialog","isOpen","setIsOpen","Flex","justify","__experimentalNavigatorBackButton","icon","isRTL","chevronRight","chevronLeft","size","label","__experimentalHeading","level","__experimentalSpacer","margin","CheckboxControl","checked","onChange","indeterminate","__nextHasNoMarginBottom","i","__experimentalHStack","Button","__next40pxDefaultSize","isDestructive","variant","disabled","accessibleWhenDisabled","navigator","useNavigator","handleConfirmUninstall","goBack","handleCancelUninstall","__experimentalConfirmDialog","cancelButtonText","confirmButtonText","onCancel","onConfirm","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalNavigatorBackButton as NavigatorBackButton,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tNotice,\n\tProgressBar,\n\tCheckboxControl,\n} from '@wordpress/components';\nimport { useEntityRecord, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useEffect, useState } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './context';\nimport FontCard from './font-card';\nimport LibraryFontVariant from './library-font-variant';\nimport { sortFontFaces } from './utils/sort-font-faces';\nimport {\n\tsetUIValuesNeeded,\n\tloadFontFaceInBrowser,\n\tunloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n} from './utils';\nimport { unlock } from '../../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction InstalledFonts() {\n\tconst {\n\t\tbaseCustomFonts,\n\t\tlibraryFontSelected,\n\t\thandleSetLibraryFontSelected,\n\t\trefreshLibrary,\n\t\tuninstallFontFamily,\n\t\tisResolvingLibrary,\n\t\tisInstalling,\n\t\tsaveFontFamilies,\n\t\tgetFontFacesActivated,\n\t} = useContext( FontLibraryContext );\n\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\tconst [ isConfirmDeleteOpen, setIsConfirmDeleteOpen ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst globalStylesId = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn __experimentalGetCurrentGlobalStylesId();\n\t} );\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\tconst fontFamiliesHasChanges =\n\t\t!! globalStyles?.edits?.settings?.typography?.fontFamilies;\n\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 themeFontsSlugs = new Set( themeFonts.map( ( f ) => f.slug ) );\n\tconst baseThemeFonts = baseFontFamilies?.theme\n\t\t? themeFonts.concat(\n\t\t\t\tbaseFontFamilies.theme\n\t\t\t\t\t.filter( ( f ) => ! themeFontsSlugs.has( f.slug ) )\n\t\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t )\n\t\t: [];\n\n\tconst customFontFamilyId =\n\t\tlibraryFontSelected?.source === 'custom' && libraryFontSelected?.id;\n\n\tconst canUserDelete = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\treturn (\n\t\t\t\tcustomFontFamilyId &&\n\t\t\t\tcanUser( 'delete', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_font_family',\n\t\t\t\t\tid: customFontFamilyId,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\t[ customFontFamilyId ]\n\t);\n\n\tconst shouldDisplayDeleteButton =\n\t\t!! libraryFontSelected &&\n\t\tlibraryFontSelected?.source !== 'theme' &&\n\t\tcanUserDelete;\n\n\tconst handleUninstallClick = () => {\n\t\tsetIsConfirmDeleteOpen( true );\n\t};\n\n\tconst handleUpdate = async () => {\n\t\tsetNotice( null );\n\t\ttry {\n\t\t\tawait saveFontFamilies( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family updated successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: sprintf(\n\t\t\t\t\t/* translators: %s: error message */\n\t\t\t\t\t__( 'There was an error updating the font family. %s' ),\n\t\t\t\t\terror.message\n\t\t\t\t),\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst getFontFacesToDisplay = ( font ) => {\n\t\tif ( ! font ) {\n\t\t\treturn [];\n\t\t}\n\t\tif ( ! font.fontFace || ! font.fontFace.length ) {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tfontFamily: font.fontFamily,\n\t\t\t\t\tfontStyle: 'normal',\n\t\t\t\t\tfontWeight: '400',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn sortFontFaces( font.fontFace );\n\t};\n\n\tconst getFontCardVariantsText = ( font ) => {\n\t\tconst variantsInstalled =\n\t\t\tfont?.fontFace?.length > 0 ? font.fontFace.length : 1;\n\t\tconst variantsActive = getFontFacesActivated(\n\t\t\tfont.slug,\n\t\t\tfont.source\n\t\t).length;\n\t\treturn sprintf(\n\t\t\t/* translators: 1: Active font variants, 2: Total font variants. */\n\t\t\t__( '%1$s/%2$s variants active' ),\n\t\t\tvariantsActive,\n\t\t\tvariantsInstalled\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\thandleSetLibraryFontSelected( libraryFontSelected );\n\t\trefreshLibrary();\n\t}, [] );\n\n\t// Get activated fonts count.\n\tconst activeFontsCount = libraryFontSelected\n\t\t? getFontFacesActivated(\n\t\t\t\tlibraryFontSelected.slug,\n\t\t\t\tlibraryFontSelected.source\n\t\t ).length\n\t\t: 0;\n\n\tconst selectedFontsCount =\n\t\tlibraryFontSelected?.fontFace?.length ??\n\t\t( libraryFontSelected?.fontFamily ? 1 : 0 );\n\n\t// Check if any fonts are selected.\n\tconst isIndeterminate =\n\t\tactiveFontsCount > 0 && activeFontsCount !== selectedFontsCount;\n\n\t// Check if all fonts are selected.\n\tconst isSelectAllChecked = activeFontsCount === selectedFontsCount;\n\n\t// Toggle select all fonts.\n\tconst toggleSelectAll = () => {\n\t\tconst initialFonts =\n\t\t\tfontFamilies?.[ libraryFontSelected.source ]?.filter(\n\t\t\t\t( f ) => f.slug !== libraryFontSelected.slug\n\t\t\t) ?? [];\n\t\tconst newFonts = isSelectAllChecked\n\t\t\t? initialFonts\n\t\t\t: [ ...initialFonts, libraryFontSelected ];\n\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ libraryFontSelected.source ]: newFonts,\n\t\t} );\n\n\t\tif ( libraryFontSelected.fontFace ) {\n\t\t\tlibraryFontSelected.fontFace.forEach( ( face ) => {\n\t\t\t\tif ( isSelectAllChecked ) {\n\t\t\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t\t\t} else {\n\t\t\t\t\tloadFontFaceInBrowser(\n\t\t\t\t\t\tface,\n\t\t\t\t\t\tgetDisplaySrcFromFontFace( face?.src ),\n\t\t\t\t\t\t'all'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst hasFonts = baseThemeFonts.length > 0 || baseCustomFonts.length > 0;\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t{ isResolvingLibrary && (\n\t\t\t\t<div className=\"font-library-modal__loading\">\n\t\t\t\t\t<ProgressBar />\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ ! isResolvingLibrary && (\n\t\t\t\t<>\n\t\t\t\t\t<NavigatorProvider\n\t\t\t\t\t\tinitialPath={\n\t\t\t\t\t\t\tlibraryFontSelected ? '/fontFamily' : '/'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<NavigatorScreen path=\"/\">\n\t\t\t\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'No fonts installed.' ) }\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseThemeFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts provided by the theme. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Theme', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseThemeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseCustomFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts installed by the user. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Custom', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseCustomFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</NavigatorScreen>\n\n\t\t\t\t\t\t<NavigatorScreen path=\"/fontFamily\">\n\t\t\t\t\t\t\t<ConfirmDeleteDialog\n\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\tisOpen={ isConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetIsOpen={ setIsConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetNotice={ setNotice }\n\t\t\t\t\t\t\t\tuninstallFontFamily={ uninstallFontFamily }\n\t\t\t\t\t\t\t\thandleSetLibraryFontSelected={\n\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected\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<Flex justify=\"flex-start\">\n\t\t\t\t\t\t\t\t<NavigatorBackButton\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronRight : chevronLeft\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected( null );\n\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\t\tlevel={ 2 }\n\t\t\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-header\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ libraryFontSelected?.name }\n\t\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\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<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<Text>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Choose font variants. Keep in mind that too many variants could make your site slower.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__select-all\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Select all' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isSelectAllChecked }\n\t\t\t\t\t\t\t\t\tonChange={ toggleSelectAll }\n\t\t\t\t\t\t\t\t\tindeterminate={ isIndeterminate }\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\t<Spacer margin={ 8 } />\n\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ getFontFacesToDisplay(\n\t\t\t\t\t\t\t\t\t\tlibraryFontSelected\n\t\t\t\t\t\t\t\t\t).map( ( face, i ) => (\n\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<LibraryFontVariant\n\t\t\t\t\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\t\t\t\t\tface={ face }\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</NavigatorScreen>\n\t\t\t\t\t</NavigatorProvider>\n\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\tclassName=\"font-library-modal__footer\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isInstalling && <ProgressBar /> }\n\t\t\t\t\t\t{ shouldDisplayDeleteButton && (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t\tisDestructive\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleUninstallClick }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ handleUpdate }\n\t\t\t\t\t\t\tdisabled={ ! fontFamiliesHasChanges }\n\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Update' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction ConfirmDeleteDialog( {\n\tfont,\n\tisOpen,\n\tsetIsOpen,\n\tsetNotice,\n\tuninstallFontFamily,\n\thandleSetLibraryFontSelected,\n} ) {\n\tconst navigator = useNavigator();\n\n\tconst handleConfirmUninstall = async () => {\n\t\tsetNotice( null );\n\t\tsetIsOpen( false );\n\t\ttry {\n\t\t\tawait uninstallFontFamily( font );\n\t\t\tnavigator.goBack();\n\t\t\thandleSetLibraryFontSelected( null );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family uninstalled successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage:\n\t\t\t\t\t__( 'There was an error uninstalling the font family.' ) +\n\t\t\t\t\terror.message,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleCancelUninstall = () => {\n\t\tsetIsOpen( false );\n\t};\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isOpen }\n\t\t\tcancelButtonText={ __( 'Cancel' ) }\n\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\tonCancel={ handleCancelUninstall }\n\t\t\tonConfirm={ handleConfirmUninstall }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ font &&\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: Name of the font. */\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\" font and all its variants and assets?'\n\t\t\t\t\t),\n\t\t\t\t\tfont.name\n\t\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n\nexport default InstalledFonts;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_components","require","_coreData","_data","_element","_i18n","_icons","_blockEditor","_context","_fontCard","_interopRequireDefault","_libraryFontVariant","_sortFontFaces","_utils","_lockUnlock","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","InstalledFonts","_libraryFontSelected$","baseCustomFonts","libraryFontSelected","handleSetLibraryFontSelected","refreshLibrary","uninstallFontFamily","isResolvingLibrary","isInstalling","saveFontFamilies","getFontFacesActivated","useContext","FontLibraryContext","fontFamilies","setFontFamilies","isConfirmDeleteOpen","setIsConfirmDeleteOpen","useState","notice","setNotice","baseFontFamilies","undefined","globalStylesId","useSelect","select","__experimentalGetCurrentGlobalStylesId","coreStore","globalStyles","useEntityRecord","fontFamiliesHasChanges","edits","settings","typography","themeFonts","theme","map","f","setUIValuesNeeded","source","sort","a","b","name","localeCompare","themeFontsSlugs","Set","slug","baseThemeFonts","concat","filter","has","customFontFamilyId","id","canUserDelete","canUser","kind","shouldDisplayDeleteButton","handleUninstallClick","handleUpdate","type","message","__","error","sprintf","getFontFacesToDisplay","font","fontFace","length","fontFamily","fontStyle","fontWeight","sortFontFaces","getFontCardVariantsText","variantsInstalled","variantsActive","useEffect","activeFontsCount","selectedFontsCount","isIndeterminate","isSelectAllChecked","toggleSelectAll","_fontFamilies$library","initialFonts","newFonts","forEach","face","unloadFontFaceInBrowser","loadFontFaceInBrowser","getDisplaySrcFromFontFace","src","hasFonts","jsxs","className","children","jsx","ProgressBar","Fragment","__experimentalNavigatorProvider","initialPath","__experimentalNavigatorScreen","path","__experimentalVStack","spacing","Notice","status","onRemove","__experimentalText","as","_x","role","default","navigatorPath","variantsText","onClick","ConfirmDeleteDialog","isOpen","setIsOpen","Flex","justify","__experimentalNavigatorBackButton","icon","isRTL","chevronRight","chevronLeft","size","label","__experimentalHeading","level","__experimentalSpacer","margin","CheckboxControl","checked","onChange","indeterminate","__nextHasNoMarginBottom","i","__experimentalHStack","Button","__next40pxDefaultSize","isDestructive","variant","disabled","accessibleWhenDisabled","navigator","useNavigator","handleConfirmUninstall","goBack","handleCancelUninstall","__experimentalConfirmDialog","cancelButtonText","confirmButtonText","onCancel","onConfirm","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/installed-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n\t__experimentalNavigatorBackButton as NavigatorBackButton,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tNotice,\n\tProgressBar,\n\tCheckboxControl,\n} from '@wordpress/components';\nimport { useEntityRecord, store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useEffect, useState } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { chevronLeft, chevronRight } from '@wordpress/icons';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './context';\nimport FontCard from './font-card';\nimport LibraryFontVariant from './library-font-variant';\nimport { sortFontFaces } from './utils/sort-font-faces';\nimport {\n\tsetUIValuesNeeded,\n\tloadFontFaceInBrowser,\n\tunloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n} from './utils';\nimport { unlock } from '../../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nfunction InstalledFonts() {\n\tconst {\n\t\tbaseCustomFonts,\n\t\tlibraryFontSelected,\n\t\thandleSetLibraryFontSelected,\n\t\trefreshLibrary,\n\t\tuninstallFontFamily,\n\t\tisResolvingLibrary,\n\t\tisInstalling,\n\t\tsaveFontFamilies,\n\t\tgetFontFacesActivated,\n\t} = useContext( FontLibraryContext );\n\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\tconst [ isConfirmDeleteOpen, setIsConfirmDeleteOpen ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst globalStylesId = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn __experimentalGetCurrentGlobalStylesId();\n\t} );\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\tconst fontFamiliesHasChanges =\n\t\t!! globalStyles?.edits?.settings?.typography?.fontFamilies;\n\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 themeFontsSlugs = new Set( themeFonts.map( ( f ) => f.slug ) );\n\tconst baseThemeFonts = baseFontFamilies?.theme\n\t\t? themeFonts.concat(\n\t\t\t\tbaseFontFamilies.theme\n\t\t\t\t\t.filter( ( f ) => ! themeFontsSlugs.has( f.slug ) )\n\t\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t )\n\t\t: [];\n\n\tconst customFontFamilyId =\n\t\tlibraryFontSelected?.source === 'custom' && libraryFontSelected?.id;\n\n\tconst canUserDelete = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\treturn (\n\t\t\t\tcustomFontFamilyId &&\n\t\t\t\tcanUser( 'delete', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_font_family',\n\t\t\t\t\tid: customFontFamilyId,\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\t\t[ customFontFamilyId ]\n\t);\n\n\tconst shouldDisplayDeleteButton =\n\t\t!! libraryFontSelected &&\n\t\tlibraryFontSelected?.source !== 'theme' &&\n\t\tcanUserDelete;\n\n\tconst handleUninstallClick = () => {\n\t\tsetIsConfirmDeleteOpen( true );\n\t};\n\n\tconst handleUpdate = async () => {\n\t\tsetNotice( null );\n\t\ttry {\n\t\t\tawait saveFontFamilies( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family updated successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: sprintf(\n\t\t\t\t\t/* translators: %s: error message */\n\t\t\t\t\t__( 'There was an error updating the font family. %s' ),\n\t\t\t\t\terror.message\n\t\t\t\t),\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst getFontFacesToDisplay = ( font ) => {\n\t\tif ( ! font ) {\n\t\t\treturn [];\n\t\t}\n\t\tif ( ! font.fontFace || ! font.fontFace.length ) {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tfontFamily: font.fontFamily,\n\t\t\t\t\tfontStyle: 'normal',\n\t\t\t\t\tfontWeight: '400',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn sortFontFaces( font.fontFace );\n\t};\n\n\tconst getFontCardVariantsText = ( font ) => {\n\t\tconst variantsInstalled =\n\t\t\tfont?.fontFace?.length > 0 ? font.fontFace.length : 1;\n\t\tconst variantsActive = getFontFacesActivated(\n\t\t\tfont.slug,\n\t\t\tfont.source\n\t\t).length;\n\t\treturn sprintf(\n\t\t\t/* translators: 1: Active font variants, 2: Total font variants. */\n\t\t\t__( '%1$s/%2$s variants active' ),\n\t\t\tvariantsActive,\n\t\t\tvariantsInstalled\n\t\t);\n\t};\n\n\tuseEffect( () => {\n\t\thandleSetLibraryFontSelected( libraryFontSelected );\n\t\trefreshLibrary();\n\t}, [] );\n\n\t// Get activated fonts count.\n\tconst activeFontsCount = libraryFontSelected\n\t\t? getFontFacesActivated(\n\t\t\t\tlibraryFontSelected.slug,\n\t\t\t\tlibraryFontSelected.source\n\t\t ).length\n\t\t: 0;\n\n\tconst selectedFontsCount =\n\t\tlibraryFontSelected?.fontFace?.length ??\n\t\t( libraryFontSelected?.fontFamily ? 1 : 0 );\n\n\t// Check if any fonts are selected.\n\tconst isIndeterminate =\n\t\tactiveFontsCount > 0 && activeFontsCount !== selectedFontsCount;\n\n\t// Check if all fonts are selected.\n\tconst isSelectAllChecked = activeFontsCount === selectedFontsCount;\n\n\t// Toggle select all fonts.\n\tconst toggleSelectAll = () => {\n\t\tconst initialFonts =\n\t\t\tfontFamilies?.[ libraryFontSelected.source ]?.filter(\n\t\t\t\t( f ) => f.slug !== libraryFontSelected.slug\n\t\t\t) ?? [];\n\t\tconst newFonts = isSelectAllChecked\n\t\t\t? initialFonts\n\t\t\t: [ ...initialFonts, libraryFontSelected ];\n\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ libraryFontSelected.source ]: newFonts,\n\t\t} );\n\n\t\tif ( libraryFontSelected.fontFace ) {\n\t\t\tlibraryFontSelected.fontFace.forEach( ( face ) => {\n\t\t\t\tif ( isSelectAllChecked ) {\n\t\t\t\t\tunloadFontFaceInBrowser( face, 'all' );\n\t\t\t\t} else {\n\t\t\t\t\tloadFontFaceInBrowser(\n\t\t\t\t\t\tface,\n\t\t\t\t\t\tgetDisplaySrcFromFontFace( face?.src ),\n\t\t\t\t\t\t'all'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst hasFonts = baseThemeFonts.length > 0 || baseCustomFonts.length > 0;\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t{ isResolvingLibrary && (\n\t\t\t\t<div className=\"font-library-modal__loading\">\n\t\t\t\t\t<ProgressBar />\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ ! isResolvingLibrary && (\n\t\t\t\t<>\n\t\t\t\t\t<NavigatorProvider\n\t\t\t\t\t\tinitialPath={\n\t\t\t\t\t\t\tlibraryFontSelected ? '/fontFamily' : '/'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<NavigatorScreen path=\"/\">\n\t\t\t\t\t\t\t<VStack spacing=\"8\">\n\t\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ! hasFonts && (\n\t\t\t\t\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'No fonts installed.' ) }\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseThemeFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts provided by the theme. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Theme', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseThemeFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ baseCustomFonts.length > 0 && (\n\t\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t\t<h2 className=\"font-library-modal__fonts-title\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: Heading for a list of fonts installed by the user. */\n\t\t\t\t\t\t\t\t\t\t\t\t_x( 'Custom', 'font source' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ baseCustomFonts.map( ( font ) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ font.slug }\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<FontCard\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnavigatorPath=\"/fontFamily\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvariantsText={ getFontCardVariantsText(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfont\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</NavigatorScreen>\n\n\t\t\t\t\t\t<NavigatorScreen path=\"/fontFamily\">\n\t\t\t\t\t\t\t<ConfirmDeleteDialog\n\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\tisOpen={ isConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetIsOpen={ setIsConfirmDeleteOpen }\n\t\t\t\t\t\t\t\tsetNotice={ setNotice }\n\t\t\t\t\t\t\t\tuninstallFontFamily={ uninstallFontFamily }\n\t\t\t\t\t\t\t\thandleSetLibraryFontSelected={\n\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected\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<Flex justify=\"flex-start\">\n\t\t\t\t\t\t\t\t<NavigatorBackButton\n\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\tisRTL() ? chevronRight : chevronLeft\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\thandleSetLibraryFontSelected( null );\n\t\t\t\t\t\t\t\t\t\tsetNotice( null );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Back' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\t\tlevel={ 2 }\n\t\t\t\t\t\t\t\t\tsize={ 13 }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-global-styles-header\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ libraryFontSelected?.name }\n\t\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t\t{ notice && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t<Spacer margin={ 1 } />\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<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<Text>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Choose font variants. Keep in mind that too many variants could make your site slower.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Spacer margin={ 4 } />\n\t\t\t\t\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__select-all\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Select all' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isSelectAllChecked }\n\t\t\t\t\t\t\t\t\tonChange={ toggleSelectAll }\n\t\t\t\t\t\t\t\t\tindeterminate={ isIndeterminate }\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\t<Spacer margin={ 8 } />\n\t\t\t\t\t\t\t\t{ /*\n\t\t\t\t\t\t\t\t * Disable reason: The `list` ARIA role is redundant but\n\t\t\t\t\t\t\t\t * Safari+VoiceOver won't announce the list otherwise.\n\t\t\t\t\t\t\t\t */\n\t\t\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\trole=\"list\"\n\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ getFontFacesToDisplay(\n\t\t\t\t\t\t\t\t\t\tlibraryFontSelected\n\t\t\t\t\t\t\t\t\t).map( ( face, i ) => (\n\t\t\t\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"font-library-modal__fonts-list-item\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<LibraryFontVariant\n\t\t\t\t\t\t\t\t\t\t\t\tfont={ libraryFontSelected }\n\t\t\t\t\t\t\t\t\t\t\t\tface={ face }\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t{ /* eslint-enable jsx-a11y/no-redundant-roles */ }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</NavigatorScreen>\n\t\t\t\t\t</NavigatorProvider>\n\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\tclassName=\"font-library-modal__footer\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isInstalling && <ProgressBar /> }\n\t\t\t\t\t\t{ shouldDisplayDeleteButton && (\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\tisDestructive\n\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\tonClick={ handleUninstallClick }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ handleUpdate }\n\t\t\t\t\t\t\tdisabled={ ! fontFamiliesHasChanges }\n\t\t\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Update' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction ConfirmDeleteDialog( {\n\tfont,\n\tisOpen,\n\tsetIsOpen,\n\tsetNotice,\n\tuninstallFontFamily,\n\thandleSetLibraryFontSelected,\n} ) {\n\tconst navigator = useNavigator();\n\n\tconst handleConfirmUninstall = async () => {\n\t\tsetNotice( null );\n\t\tsetIsOpen( false );\n\t\ttry {\n\t\t\tawait uninstallFontFamily( font );\n\t\t\tnavigator.goBack();\n\t\t\thandleSetLibraryFontSelected( null );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Font family uninstalled successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage:\n\t\t\t\t\t__( 'There was an error uninstalling the font family.' ) +\n\t\t\t\t\terror.message,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleCancelUninstall = () => {\n\t\tsetIsOpen( false );\n\t};\n\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen={ isOpen }\n\t\t\tcancelButtonText={ __( 'Cancel' ) }\n\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\tonCancel={ handleCancelUninstall }\n\t\t\tonConfirm={ handleConfirmUninstall }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ font &&\n\t\t\t\tsprintf(\n\t\t\t\t\t/* translators: %s: Name of the font. */\n\t\t\t\t\t__(\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\" font and all its variants and assets?'\n\t\t\t\t\t),\n\t\t\t\t\tfont.name\n\t\t\t\t) }\n\t\t</ConfirmDialog>\n\t);\n}\n\nexport default InstalledFonts;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -198,10 +198,8 @@ function UploadFonts() {
|
|
|
198
198
|
onChange: onFilesUpload,
|
|
199
199
|
render: ({
|
|
200
200
|
openFileDialog
|
|
201
|
-
}) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
202
|
-
|
|
203
|
-
, {
|
|
204
|
-
__next40pxDefaultSize: false,
|
|
201
|
+
}) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
202
|
+
__next40pxDefaultSize: true,
|
|
205
203
|
className: "font-library-modal__upload-area",
|
|
206
204
|
onClick: openFileDialog,
|
|
207
205
|
children: (0, _i18n.__)('Upload font')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_components","_element","_constants","_context","_libFont","_makeFamiliesFromFaces","_interopRequireDefault","_utils","_jsxRuntime","UploadFonts","installFonts","useContext","FontLibraryContext","isUploading","setIsUploading","useState","notice","setNotice","handleDropZone","files","handleFilesUpload","onFilesUpload","event","target","uniqueFilenames","Set","selectedFiles","hasInvalidFiles","checkFilesPromises","map","file","isFont","isFontFile","has","name","fileExtension","split","pop","toLowerCase","ALLOWED_FILE_EXTENSIONS","includes","add","allowedFiles","Promise","all","filter","length","loadFiles","message","__","type","fontFacesLoaded","fontFile","fontFaceData","getFontFaceMetadata","loadFontFaceInBrowser","handleInstall","font","Font","buffer","readFileAsArrayBuffer","fromDataBuffer","error","resolve","reject","reader","window","FileReader","readAsArrayBuffer","onload","result","onerror","fontObj","onloadEvent","detail","opentype","tables","fontName","get","isItalic","fontWeight","usWeightClass","isVariable","fvar","weightAxis","axes","find","tag","weightRange","minValue","maxValue","fontFamily","fontStyle","fontFaces","fontFamilies","makeFamiliesFromFaces","errors","installationErrors","jsxs","className","children","jsx","DropZone","onFilesDrop","__experimentalVStack","Notice","status","__unstableHTML","onRemove","index","FlexItem","ProgressBar","FormFileUpload","accept","ext","join","multiple","onChange","render","openFileDialog","Button","__next40pxDefaultSize","onClick","__experimentalSpacer","margin","__experimentalText","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/upload-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tButton,\n\tDropZone,\n\tNotice,\n\tFormFileUpload,\n\tFlexItem,\n\tProgressBar,\n} from '@wordpress/components';\nimport { useContext, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_FILE_EXTENSIONS } from './utils/constants';\nimport { FontLibraryContext } from './context';\nimport { Font } from '../../../../lib/lib-font.browser';\nimport makeFamiliesFromFaces from './utils/make-families-from-faces';\nimport { loadFontFaceInBrowser } from './utils';\n\nfunction UploadFonts() {\n\tconst { installFonts } = useContext( FontLibraryContext );\n\tconst [ isUploading, setIsUploading ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\n\tconst handleDropZone = ( files ) => {\n\t\thandleFilesUpload( files );\n\t};\n\tconst onFilesUpload = ( event ) => {\n\t\thandleFilesUpload( event.target.files );\n\t};\n\n\t/**\n\t * Filters the selected files to only allow the ones with the allowed extensions\n\t *\n\t * @param {Array} files The files to be filtered\n\t * @return {void}\n\t */\n\tconst handleFilesUpload = async ( files ) => {\n\t\tsetNotice( null );\n\t\tsetIsUploading( true );\n\t\tconst uniqueFilenames = new Set();\n\t\tconst selectedFiles = [ ...files ];\n\t\tlet hasInvalidFiles = false;\n\n\t\t// Use map to create a promise for each file check, then filter with Promise.all.\n\t\tconst checkFilesPromises = selectedFiles.map( async ( file ) => {\n\t\t\tconst isFont = await isFontFile( file );\n\t\t\tif ( ! isFont ) {\n\t\t\t\thasInvalidFiles = true;\n\t\t\t\treturn null; // Return null for invalid files.\n\t\t\t}\n\t\t\t// Check for duplicates\n\t\t\tif ( uniqueFilenames.has( file.name ) ) {\n\t\t\t\treturn null; // Return null for duplicates.\n\t\t\t}\n\t\t\t// Check if the file extension is allowed.\n\t\t\tconst fileExtension = file.name.split( '.' ).pop().toLowerCase();\n\t\t\tif ( ALLOWED_FILE_EXTENSIONS.includes( fileExtension ) ) {\n\t\t\t\tuniqueFilenames.add( file.name );\n\t\t\t\treturn file; // Return the file if it passes all checks.\n\t\t\t}\n\t\t\treturn null; // Return null for disallowed file extensions.\n\t\t} );\n\n\t\t// Filter out the nulls after all promises have resolved.\n\t\tconst allowedFiles = ( await Promise.all( checkFilesPromises ) ).filter(\n\t\t\t( file ) => null !== file\n\t\t);\n\n\t\tif ( allowedFiles.length > 0 ) {\n\t\t\tloadFiles( allowedFiles );\n\t\t} else {\n\t\t\tconst message = hasInvalidFiles\n\t\t\t\t? __( 'Sorry, you are not allowed to upload this file type.' )\n\t\t\t\t: __( 'No fonts found to install.' );\n\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage,\n\t\t\t} );\n\t\t\tsetIsUploading( false );\n\t\t}\n\t};\n\n\t/**\n\t * Loads the selected files and reads the font metadata\n\t *\n\t * @param {Array} files The files to be loaded\n\t * @return {void}\n\t */\n\tconst loadFiles = async ( files ) => {\n\t\tconst fontFacesLoaded = await Promise.all(\n\t\t\tfiles.map( async ( fontFile ) => {\n\t\t\t\tconst fontFaceData = await getFontFaceMetadata( fontFile );\n\t\t\t\tawait loadFontFaceInBrowser(\n\t\t\t\t\tfontFaceData,\n\t\t\t\t\tfontFaceData.file,\n\t\t\t\t\t'all'\n\t\t\t\t);\n\t\t\t\treturn fontFaceData;\n\t\t\t} )\n\t\t);\n\t\thandleInstall( fontFacesLoaded );\n\t};\n\n\t/**\n\t * Checks if a file is a valid Font file.\n\t *\n\t * @param {File} file The file to be checked.\n\t * @return {boolean} Whether the file is a valid font file.\n\t */\n\tasync function isFontFile( file ) {\n\t\tconst font = new Font( 'Uploaded Font' );\n\t\ttry {\n\t\t\tconst buffer = await readFileAsArrayBuffer( file );\n\t\t\tawait font.fromDataBuffer( buffer, 'font' );\n\t\t\treturn true;\n\t\t} catch ( error ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t// Create a function to read the file as array buffer\n\tasync function readFileAsArrayBuffer( file ) {\n\t\treturn new Promise( ( resolve, reject ) => {\n\t\t\tconst reader = new window.FileReader();\n\t\t\treader.readAsArrayBuffer( file );\n\t\t\treader.onload = () => resolve( reader.result );\n\t\t\treader.onerror = reject;\n\t\t} );\n\t}\n\n\tconst getFontFaceMetadata = async ( fontFile ) => {\n\t\tconst buffer = await readFileAsArrayBuffer( fontFile );\n\t\tconst fontObj = new Font( 'Uploaded Font' );\n\t\tfontObj.fromDataBuffer( buffer, fontFile.name );\n\t\t// Assuming that fromDataBuffer triggers onload event and returning a Promise\n\t\tconst onloadEvent = await new Promise(\n\t\t\t( resolve ) => ( fontObj.onload = resolve )\n\t\t);\n\t\tconst font = onloadEvent.detail.font;\n\t\tconst { name } = font.opentype.tables;\n\t\tconst fontName = name.get( 16 ) || name.get( 1 );\n\t\tconst isItalic = name.get( 2 ).toLowerCase().includes( 'italic' );\n\t\tconst fontWeight =\n\t\t\tfont.opentype.tables[ 'OS/2' ].usWeightClass || 'normal';\n\t\tconst isVariable = !! font.opentype.tables.fvar;\n\t\tconst weightAxis =\n\t\t\tisVariable &&\n\t\t\tfont.opentype.tables.fvar.axes.find(\n\t\t\t\t( { tag } ) => tag === 'wght'\n\t\t\t);\n\t\tconst weightRange = weightAxis\n\t\t\t? `${ weightAxis.minValue } ${ weightAxis.maxValue }`\n\t\t\t: null;\n\t\treturn {\n\t\t\tfile: fontFile,\n\t\t\tfontFamily: fontName,\n\t\t\tfontStyle: isItalic ? 'italic' : 'normal',\n\t\t\tfontWeight: weightRange || fontWeight,\n\t\t};\n\t};\n\n\t/**\n\t * Creates the font family definition and sends it to the server\n\t *\n\t * @param {Array} fontFaces The font faces to be installed\n\t * @return {void}\n\t */\n\tconst handleInstall = async ( fontFaces ) => {\n\t\tconst fontFamilies = makeFamiliesFromFaces( fontFaces );\n\n\t\ttry {\n\t\t\tawait installFonts( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Fonts were installed successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: error.message,\n\t\t\t\terrors: error?.installationErrors,\n\t\t\t} );\n\t\t}\n\n\t\tsetIsUploading( false );\n\t};\n\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t<DropZone onFilesDrop={ handleDropZone } />\n\t\t\t<VStack className=\"font-library-modal__local-fonts\">\n\t\t\t\t{ notice && (\n\t\t\t\t\t<Notice\n\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t__unstableHTML\n\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t{ notice.errors && (\n\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t{ notice.errors.map( ( error, index ) => (\n\t\t\t\t\t\t\t\t\t<li key={ index }>{ error }</li>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Notice>\n\t\t\t\t) }\n\t\t\t\t{ isUploading && (\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<div className=\"font-library-modal__upload-area\">\n\t\t\t\t\t\t\t<ProgressBar />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t) }\n\t\t\t\t{ ! isUploading && (\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\taccept={ ALLOWED_FILE_EXTENSIONS.map(\n\t\t\t\t\t\t\t( ext ) => `.${ ext }`\n\t\t\t\t\t\t).join( ',' ) }\n\t\t\t\t\t\tmultiple\n\t\t\t\t\t\tonChange={ onFilesUpload }\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t\tclassName=\"font-library-modal__upload-area\"\n\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Upload font' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Spacer margin={ 2 } />\n\t\t\t\t<Text className=\"font-library-modal__upload-area__text\">\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Uploaded fonts appear in your library and can be used in your theme. Supported formats: .ttf, .otf, .woff, and .woff2.'\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default UploadFonts;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_components","_element","_constants","_context","_libFont","_makeFamiliesFromFaces","_interopRequireDefault","_utils","_jsxRuntime","UploadFonts","installFonts","useContext","FontLibraryContext","isUploading","setIsUploading","useState","notice","setNotice","handleDropZone","files","handleFilesUpload","onFilesUpload","event","target","uniqueFilenames","Set","selectedFiles","hasInvalidFiles","checkFilesPromises","map","file","isFont","isFontFile","has","name","fileExtension","split","pop","toLowerCase","ALLOWED_FILE_EXTENSIONS","includes","add","allowedFiles","Promise","all","filter","length","loadFiles","message","__","type","fontFacesLoaded","fontFile","fontFaceData","getFontFaceMetadata","loadFontFaceInBrowser","handleInstall","font","Font","buffer","readFileAsArrayBuffer","fromDataBuffer","error","resolve","reject","reader","window","FileReader","readAsArrayBuffer","onload","result","onerror","fontObj","onloadEvent","detail","opentype","tables","fontName","get","isItalic","fontWeight","usWeightClass","isVariable","fvar","weightAxis","axes","find","tag","weightRange","minValue","maxValue","fontFamily","fontStyle","fontFaces","fontFamilies","makeFamiliesFromFaces","errors","installationErrors","jsxs","className","children","jsx","DropZone","onFilesDrop","__experimentalVStack","Notice","status","__unstableHTML","onRemove","index","FlexItem","ProgressBar","FormFileUpload","accept","ext","join","multiple","onChange","render","openFileDialog","Button","__next40pxDefaultSize","onClick","__experimentalSpacer","margin","__experimentalText","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/upload-fonts.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalSpacer as Spacer,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tButton,\n\tDropZone,\n\tNotice,\n\tFormFileUpload,\n\tFlexItem,\n\tProgressBar,\n} from '@wordpress/components';\nimport { useContext, useState } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_FILE_EXTENSIONS } from './utils/constants';\nimport { FontLibraryContext } from './context';\nimport { Font } from '../../../../lib/lib-font.browser';\nimport makeFamiliesFromFaces from './utils/make-families-from-faces';\nimport { loadFontFaceInBrowser } from './utils';\n\nfunction UploadFonts() {\n\tconst { installFonts } = useContext( FontLibraryContext );\n\tconst [ isUploading, setIsUploading ] = useState( false );\n\tconst [ notice, setNotice ] = useState( false );\n\n\tconst handleDropZone = ( files ) => {\n\t\thandleFilesUpload( files );\n\t};\n\tconst onFilesUpload = ( event ) => {\n\t\thandleFilesUpload( event.target.files );\n\t};\n\n\t/**\n\t * Filters the selected files to only allow the ones with the allowed extensions\n\t *\n\t * @param {Array} files The files to be filtered\n\t * @return {void}\n\t */\n\tconst handleFilesUpload = async ( files ) => {\n\t\tsetNotice( null );\n\t\tsetIsUploading( true );\n\t\tconst uniqueFilenames = new Set();\n\t\tconst selectedFiles = [ ...files ];\n\t\tlet hasInvalidFiles = false;\n\n\t\t// Use map to create a promise for each file check, then filter with Promise.all.\n\t\tconst checkFilesPromises = selectedFiles.map( async ( file ) => {\n\t\t\tconst isFont = await isFontFile( file );\n\t\t\tif ( ! isFont ) {\n\t\t\t\thasInvalidFiles = true;\n\t\t\t\treturn null; // Return null for invalid files.\n\t\t\t}\n\t\t\t// Check for duplicates\n\t\t\tif ( uniqueFilenames.has( file.name ) ) {\n\t\t\t\treturn null; // Return null for duplicates.\n\t\t\t}\n\t\t\t// Check if the file extension is allowed.\n\t\t\tconst fileExtension = file.name.split( '.' ).pop().toLowerCase();\n\t\t\tif ( ALLOWED_FILE_EXTENSIONS.includes( fileExtension ) ) {\n\t\t\t\tuniqueFilenames.add( file.name );\n\t\t\t\treturn file; // Return the file if it passes all checks.\n\t\t\t}\n\t\t\treturn null; // Return null for disallowed file extensions.\n\t\t} );\n\n\t\t// Filter out the nulls after all promises have resolved.\n\t\tconst allowedFiles = ( await Promise.all( checkFilesPromises ) ).filter(\n\t\t\t( file ) => null !== file\n\t\t);\n\n\t\tif ( allowedFiles.length > 0 ) {\n\t\t\tloadFiles( allowedFiles );\n\t\t} else {\n\t\t\tconst message = hasInvalidFiles\n\t\t\t\t? __( 'Sorry, you are not allowed to upload this file type.' )\n\t\t\t\t: __( 'No fonts found to install.' );\n\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage,\n\t\t\t} );\n\t\t\tsetIsUploading( false );\n\t\t}\n\t};\n\n\t/**\n\t * Loads the selected files and reads the font metadata\n\t *\n\t * @param {Array} files The files to be loaded\n\t * @return {void}\n\t */\n\tconst loadFiles = async ( files ) => {\n\t\tconst fontFacesLoaded = await Promise.all(\n\t\t\tfiles.map( async ( fontFile ) => {\n\t\t\t\tconst fontFaceData = await getFontFaceMetadata( fontFile );\n\t\t\t\tawait loadFontFaceInBrowser(\n\t\t\t\t\tfontFaceData,\n\t\t\t\t\tfontFaceData.file,\n\t\t\t\t\t'all'\n\t\t\t\t);\n\t\t\t\treturn fontFaceData;\n\t\t\t} )\n\t\t);\n\t\thandleInstall( fontFacesLoaded );\n\t};\n\n\t/**\n\t * Checks if a file is a valid Font file.\n\t *\n\t * @param {File} file The file to be checked.\n\t * @return {boolean} Whether the file is a valid font file.\n\t */\n\tasync function isFontFile( file ) {\n\t\tconst font = new Font( 'Uploaded Font' );\n\t\ttry {\n\t\t\tconst buffer = await readFileAsArrayBuffer( file );\n\t\t\tawait font.fromDataBuffer( buffer, 'font' );\n\t\t\treturn true;\n\t\t} catch ( error ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t// Create a function to read the file as array buffer\n\tasync function readFileAsArrayBuffer( file ) {\n\t\treturn new Promise( ( resolve, reject ) => {\n\t\t\tconst reader = new window.FileReader();\n\t\t\treader.readAsArrayBuffer( file );\n\t\t\treader.onload = () => resolve( reader.result );\n\t\t\treader.onerror = reject;\n\t\t} );\n\t}\n\n\tconst getFontFaceMetadata = async ( fontFile ) => {\n\t\tconst buffer = await readFileAsArrayBuffer( fontFile );\n\t\tconst fontObj = new Font( 'Uploaded Font' );\n\t\tfontObj.fromDataBuffer( buffer, fontFile.name );\n\t\t// Assuming that fromDataBuffer triggers onload event and returning a Promise\n\t\tconst onloadEvent = await new Promise(\n\t\t\t( resolve ) => ( fontObj.onload = resolve )\n\t\t);\n\t\tconst font = onloadEvent.detail.font;\n\t\tconst { name } = font.opentype.tables;\n\t\tconst fontName = name.get( 16 ) || name.get( 1 );\n\t\tconst isItalic = name.get( 2 ).toLowerCase().includes( 'italic' );\n\t\tconst fontWeight =\n\t\t\tfont.opentype.tables[ 'OS/2' ].usWeightClass || 'normal';\n\t\tconst isVariable = !! font.opentype.tables.fvar;\n\t\tconst weightAxis =\n\t\t\tisVariable &&\n\t\t\tfont.opentype.tables.fvar.axes.find(\n\t\t\t\t( { tag } ) => tag === 'wght'\n\t\t\t);\n\t\tconst weightRange = weightAxis\n\t\t\t? `${ weightAxis.minValue } ${ weightAxis.maxValue }`\n\t\t\t: null;\n\t\treturn {\n\t\t\tfile: fontFile,\n\t\t\tfontFamily: fontName,\n\t\t\tfontStyle: isItalic ? 'italic' : 'normal',\n\t\t\tfontWeight: weightRange || fontWeight,\n\t\t};\n\t};\n\n\t/**\n\t * Creates the font family definition and sends it to the server\n\t *\n\t * @param {Array} fontFaces The font faces to be installed\n\t * @return {void}\n\t */\n\tconst handleInstall = async ( fontFaces ) => {\n\t\tconst fontFamilies = makeFamiliesFromFaces( fontFaces );\n\n\t\ttry {\n\t\t\tawait installFonts( fontFamilies );\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'success',\n\t\t\t\tmessage: __( 'Fonts were installed successfully.' ),\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tsetNotice( {\n\t\t\t\ttype: 'error',\n\t\t\t\tmessage: error.message,\n\t\t\t\terrors: error?.installationErrors,\n\t\t\t} );\n\t\t}\n\n\t\tsetIsUploading( false );\n\t};\n\n\treturn (\n\t\t<div className=\"font-library-modal__tabpanel-layout\">\n\t\t\t<DropZone onFilesDrop={ handleDropZone } />\n\t\t\t<VStack className=\"font-library-modal__local-fonts\">\n\t\t\t\t{ notice && (\n\t\t\t\t\t<Notice\n\t\t\t\t\t\tstatus={ notice.type }\n\t\t\t\t\t\t__unstableHTML\n\t\t\t\t\t\tonRemove={ () => setNotice( null ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ notice.message }\n\t\t\t\t\t\t{ notice.errors && (\n\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t{ notice.errors.map( ( error, index ) => (\n\t\t\t\t\t\t\t\t\t<li key={ index }>{ error }</li>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Notice>\n\t\t\t\t) }\n\t\t\t\t{ isUploading && (\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<div className=\"font-library-modal__upload-area\">\n\t\t\t\t\t\t\t<ProgressBar />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t) }\n\t\t\t\t{ ! isUploading && (\n\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\taccept={ ALLOWED_FILE_EXTENSIONS.map(\n\t\t\t\t\t\t\t( ext ) => `.${ ext }`\n\t\t\t\t\t\t).join( ',' ) }\n\t\t\t\t\t\tmultiple\n\t\t\t\t\t\tonChange={ onFilesUpload }\n\t\t\t\t\t\trender={ ( { openFileDialog } ) => (\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\tclassName=\"font-library-modal__upload-area\"\n\t\t\t\t\t\t\t\tonClick={ openFileDialog }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Upload font' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t<Spacer margin={ 2 } />\n\t\t\t\t<Text className=\"font-library-modal__upload-area__text\">\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Uploaded fonts appear in your library and can be used in your theme. Supported formats: .ttf, .otf, .woff, and .woff2.'\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport default UploadFonts;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -69,10 +69,8 @@ function Palette({
|
|
|
69
69
|
})]
|
|
70
70
|
})
|
|
71
71
|
})
|
|
72
|
-
}), window.__experimentalEnableColorRandomizer && themeColors?.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
73
|
-
|
|
74
|
-
, {
|
|
75
|
-
__next40pxDefaultSize: false,
|
|
72
|
+
}), window.__experimentalEnableColorRandomizer && themeColors?.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
73
|
+
__next40pxDefaultSize: true,
|
|
76
74
|
variant: "secondary",
|
|
77
75
|
icon: _icons.shuffle,
|
|
78
76
|
onClick: randomizeThemeColors,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_i18n","_icons","_element","_blockEditor","_subtitle","_interopRequireDefault","_navigationButton","_hooks","_colorIndicatorWrapper","_lockUnlock","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","EMPTY_COLORS","Palette","name","customColors","themeColors","defaultColors","defaultPaletteEnabled","randomizeThemeColors","useColorRandomizer","colors","useMemo","screenPath","encodeURIComponent","paletteButtonText","length","__","jsxs","__experimentalVStack","spacing","children","jsx","default","level","__experimentalItemGroup","isBordered","isSeparated","NavigationButtonAsItem","path","__experimentalHStack","direction","FlexItem","__experimentalZStack","isLayered","offset","slice","map","color","index","ColorIndicator","colorValue","Icon","icon","isRTL","chevronLeft","chevronRight","window","__experimentalEnableColorRandomizer","Button","__next40pxDefaultSize","variant","shuffle","onClick","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/palette.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\tFlexItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalVStack as VStack,\n\tColorIndicator,\n\tButton,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { Icon, shuffle, chevronLeft, chevronRight } from '@wordpress/icons';\nimport { useMemo } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport Subtitle from './subtitle';\nimport { NavigationButtonAsItem } from './navigation-button';\nimport { useColorRandomizer } from './hooks';\nimport ColorIndicatorWrapper from './color-indicator-wrapper';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nconst EMPTY_COLORS = [];\n\nfunction Palette( { name } ) {\n\tconst [ customColors ] = useGlobalSetting( 'color.palette.custom' );\n\tconst [ themeColors ] = useGlobalSetting( 'color.palette.theme' );\n\tconst [ defaultColors ] = useGlobalSetting( 'color.palette.default' );\n\n\tconst [ defaultPaletteEnabled ] = useGlobalSetting(\n\t\t'color.defaultPalette',\n\t\tname\n\t);\n\n\tconst [ randomizeThemeColors ] = useColorRandomizer();\n\n\tconst colors = useMemo(\n\t\t() => [\n\t\t\t...( customColors || EMPTY_COLORS ),\n\t\t\t...( themeColors || EMPTY_COLORS ),\n\t\t\t...( defaultColors && defaultPaletteEnabled\n\t\t\t\t? defaultColors\n\t\t\t\t: EMPTY_COLORS ),\n\t\t],\n\t\t[ customColors, themeColors, defaultColors, defaultPaletteEnabled ]\n\t);\n\n\tconst screenPath = ! name\n\t\t? '/colors/palette'\n\t\t: '/blocks/' + encodeURIComponent( name ) + '/colors/palette';\n\tconst paletteButtonText =\n\t\tcolors.length > 0 ? __( 'Edit palette' ) : __( 'Add colors' );\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t<Subtitle level={ 3 }>{ __( 'Palette' ) }</Subtitle>\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\tpath={ screenPath }\n\t\t\t\t\taria-label={ paletteButtonText }\n\t\t\t\t>\n\t\t\t\t\t<HStack direction=\"row\">\n\t\t\t\t\t\t{ colors.length <= 0 && (\n\t\t\t\t\t\t\t<FlexItem>{ __( 'Add colors' ) }</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t\t\t\t\t{ colors\n\t\t\t\t\t\t\t\t.slice( 0, 5 )\n\t\t\t\t\t\t\t\t.map( ( { color }, index ) => (\n\t\t\t\t\t\t\t\t\t<ColorIndicatorWrapper\n\t\t\t\t\t\t\t\t\t\tkey={ `${ color }-${ index }` }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ColorIndicator colorValue={ color } />\n\t\t\t\t\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ZStack>\n\t\t\t\t\t\t<Icon icon={ isRTL() ? chevronLeft : chevronRight } />\n\t\t\t\t\t</HStack>\n\t\t\t\t</NavigationButtonAsItem>\n\t\t\t</ItemGroup>\n\t\t\t{ window.__experimentalEnableColorRandomizer &&\n\t\t\t\tthemeColors?.length > 0 && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_icons","_element","_blockEditor","_subtitle","_interopRequireDefault","_navigationButton","_hooks","_colorIndicatorWrapper","_lockUnlock","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","EMPTY_COLORS","Palette","name","customColors","themeColors","defaultColors","defaultPaletteEnabled","randomizeThemeColors","useColorRandomizer","colors","useMemo","screenPath","encodeURIComponent","paletteButtonText","length","__","jsxs","__experimentalVStack","spacing","children","jsx","default","level","__experimentalItemGroup","isBordered","isSeparated","NavigationButtonAsItem","path","__experimentalHStack","direction","FlexItem","__experimentalZStack","isLayered","offset","slice","map","color","index","ColorIndicator","colorValue","Icon","icon","isRTL","chevronLeft","chevronRight","window","__experimentalEnableColorRandomizer","Button","__next40pxDefaultSize","variant","shuffle","onClick","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/palette.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\tFlexItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalVStack as VStack,\n\tColorIndicator,\n\tButton,\n} from '@wordpress/components';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport { Icon, shuffle, chevronLeft, chevronRight } from '@wordpress/icons';\nimport { useMemo } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport Subtitle from './subtitle';\nimport { NavigationButtonAsItem } from './navigation-button';\nimport { useColorRandomizer } from './hooks';\nimport ColorIndicatorWrapper from './color-indicator-wrapper';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\n\nconst EMPTY_COLORS = [];\n\nfunction Palette( { name } ) {\n\tconst [ customColors ] = useGlobalSetting( 'color.palette.custom' );\n\tconst [ themeColors ] = useGlobalSetting( 'color.palette.theme' );\n\tconst [ defaultColors ] = useGlobalSetting( 'color.palette.default' );\n\n\tconst [ defaultPaletteEnabled ] = useGlobalSetting(\n\t\t'color.defaultPalette',\n\t\tname\n\t);\n\n\tconst [ randomizeThemeColors ] = useColorRandomizer();\n\n\tconst colors = useMemo(\n\t\t() => [\n\t\t\t...( customColors || EMPTY_COLORS ),\n\t\t\t...( themeColors || EMPTY_COLORS ),\n\t\t\t...( defaultColors && defaultPaletteEnabled\n\t\t\t\t? defaultColors\n\t\t\t\t: EMPTY_COLORS ),\n\t\t],\n\t\t[ customColors, themeColors, defaultColors, defaultPaletteEnabled ]\n\t);\n\n\tconst screenPath = ! name\n\t\t? '/colors/palette'\n\t\t: '/blocks/' + encodeURIComponent( name ) + '/colors/palette';\n\tconst paletteButtonText =\n\t\tcolors.length > 0 ? __( 'Edit palette' ) : __( 'Add colors' );\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t<Subtitle level={ 3 }>{ __( 'Palette' ) }</Subtitle>\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\tpath={ screenPath }\n\t\t\t\t\taria-label={ paletteButtonText }\n\t\t\t\t>\n\t\t\t\t\t<HStack direction=\"row\">\n\t\t\t\t\t\t{ colors.length <= 0 && (\n\t\t\t\t\t\t\t<FlexItem>{ __( 'Add colors' ) }</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t\t\t\t\t{ colors\n\t\t\t\t\t\t\t\t.slice( 0, 5 )\n\t\t\t\t\t\t\t\t.map( ( { color }, index ) => (\n\t\t\t\t\t\t\t\t\t<ColorIndicatorWrapper\n\t\t\t\t\t\t\t\t\t\tkey={ `${ color }-${ index }` }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ColorIndicator colorValue={ color } />\n\t\t\t\t\t\t\t\t\t</ColorIndicatorWrapper>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</ZStack>\n\t\t\t\t\t\t<Icon icon={ isRTL() ? chevronLeft : chevronRight } />\n\t\t\t\t\t</HStack>\n\t\t\t\t</NavigationButtonAsItem>\n\t\t\t</ItemGroup>\n\t\t\t{ window.__experimentalEnableColorRandomizer &&\n\t\t\t\tthemeColors?.length > 0 && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\ticon={ shuffle }\n\t\t\t\t\t\tonClick={ randomizeThemeColors }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Randomize colors' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t</VStack>\n\t);\n}\n\nexport default Palette;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -24,11 +24,17 @@ const {
|
|
|
24
24
|
useHasTypographyPanel,
|
|
25
25
|
useHasColorPanel,
|
|
26
26
|
useGlobalSetting,
|
|
27
|
-
useSettingsForBlockElement
|
|
27
|
+
useSettingsForBlockElement,
|
|
28
|
+
useHasBackgroundPanel
|
|
28
29
|
} = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
|
|
29
30
|
function RootMenu() {
|
|
30
31
|
const [rawSettings] = useGlobalSetting('');
|
|
31
32
|
const settings = useSettingsForBlockElement(rawSettings);
|
|
33
|
+
/*
|
|
34
|
+
* Use the raw settings to determine if the background panel should be displayed,
|
|
35
|
+
* as the background panel is not dependent on the block element settings.
|
|
36
|
+
*/
|
|
37
|
+
const hasBackgroundPanel = useHasBackgroundPanel(rawSettings);
|
|
32
38
|
const hasTypographyPanel = useHasTypographyPanel(settings);
|
|
33
39
|
const hasColorPanel = useHasColorPanel(settings);
|
|
34
40
|
const hasShadowPanel = true; // useHasShadowPanel( settings );
|
|
@@ -46,6 +52,11 @@ function RootMenu() {
|
|
|
46
52
|
path: "/colors",
|
|
47
53
|
"aria-label": (0, _i18n.__)('Colors styles'),
|
|
48
54
|
children: (0, _i18n.__)('Colors')
|
|
55
|
+
}), hasBackgroundPanel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationButton.NavigationButtonAsItem, {
|
|
56
|
+
icon: _icons.background,
|
|
57
|
+
path: "/background",
|
|
58
|
+
"aria-label": (0, _i18n.__)('Background styles'),
|
|
59
|
+
children: (0, _i18n.__)('Background')
|
|
49
60
|
}), hasShadowPanel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_navigationButton.NavigationButtonAsItem, {
|
|
50
61
|
icon: _icons.shadow,
|
|
51
62
|
path: "/shadows",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_icons","_i18n","_blockEditor","_navigationButton","_lockUnlock","_jsxRuntime","useHasDimensionsPanel","useHasTypographyPanel","useHasColorPanel","useGlobalSetting","useSettingsForBlockElement","unlock","blockEditorPrivateApis","RootMenu","rawSettings","settings","hasTypographyPanel","hasColorPanel","hasShadowPanel","hasDimensionsPanel","hasLayoutPanel","jsx","Fragment","children","jsxs","__experimentalItemGroup","NavigationButtonAsItem","icon","typography","path","__","color","shadowIcon","layout","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/root-menu.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalItemGroup as ItemGroup } from '@wordpress/components';\nimport {\n\ttypography,\n\tcolor,\n\tlayout,\n\tshadow as shadowIcon,\n} from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { NavigationButtonAsItem } from './navigation-button';\nimport { unlock } from '../../lock-unlock';\n\nconst {\n\tuseHasDimensionsPanel,\n\tuseHasTypographyPanel,\n\tuseHasColorPanel,\n\tuseGlobalSetting,\n\tuseSettingsForBlockElement,\n} = unlock( blockEditorPrivateApis );\n\nfunction RootMenu() {\n\tconst [ rawSettings ] = useGlobalSetting( '' );\n\tconst settings = useSettingsForBlockElement( rawSettings );\n\tconst hasTypographyPanel = useHasTypographyPanel( settings );\n\tconst hasColorPanel = useHasColorPanel( settings );\n\tconst hasShadowPanel = true; // useHasShadowPanel( settings );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( settings );\n\tconst hasLayoutPanel = hasDimensionsPanel;\n\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup>\n\t\t\t\t{ hasTypographyPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ typography }\n\t\t\t\t\t\tpath=\"/typography\"\n\t\t\t\t\t\taria-label={ __( 'Typography styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Typography' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t\t{ hasColorPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ color }\n\t\t\t\t\t\tpath=\"/colors\"\n\t\t\t\t\t\taria-label={ __( 'Colors styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Colors' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t\t{ hasShadowPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ shadowIcon }\n\t\t\t\t\t\tpath=\"/shadows\"\n\t\t\t\t\t\taria-label={ __( 'Shadow styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Shadows' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t\t{ hasLayoutPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ layout }\n\t\t\t\t\t\tpath=\"/layout\"\n\t\t\t\t\t\taria-label={ __( 'Layout styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Layout' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default RootMenu;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;
|
|
1
|
+
{"version":3,"names":["_components","require","_icons","_i18n","_blockEditor","_navigationButton","_lockUnlock","_jsxRuntime","useHasDimensionsPanel","useHasTypographyPanel","useHasColorPanel","useGlobalSetting","useSettingsForBlockElement","useHasBackgroundPanel","unlock","blockEditorPrivateApis","RootMenu","rawSettings","settings","hasBackgroundPanel","hasTypographyPanel","hasColorPanel","hasShadowPanel","hasDimensionsPanel","hasLayoutPanel","jsx","Fragment","children","jsxs","__experimentalItemGroup","NavigationButtonAsItem","icon","typography","path","__","color","background","shadowIcon","layout","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/root-menu.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalItemGroup as ItemGroup } from '@wordpress/components';\nimport {\n\tbackground,\n\ttypography,\n\tcolor,\n\tlayout,\n\tshadow as shadowIcon,\n} from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { NavigationButtonAsItem } from './navigation-button';\nimport { unlock } from '../../lock-unlock';\n\nconst {\n\tuseHasDimensionsPanel,\n\tuseHasTypographyPanel,\n\tuseHasColorPanel,\n\tuseGlobalSetting,\n\tuseSettingsForBlockElement,\n\tuseHasBackgroundPanel,\n} = unlock( blockEditorPrivateApis );\n\nfunction RootMenu() {\n\tconst [ rawSettings ] = useGlobalSetting( '' );\n\tconst settings = useSettingsForBlockElement( rawSettings );\n\t/*\n\t * Use the raw settings to determine if the background panel should be displayed,\n\t * as the background panel is not dependent on the block element settings.\n\t */\n\tconst hasBackgroundPanel = useHasBackgroundPanel( rawSettings );\n\tconst hasTypographyPanel = useHasTypographyPanel( settings );\n\tconst hasColorPanel = useHasColorPanel( settings );\n\tconst hasShadowPanel = true; // useHasShadowPanel( settings );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( settings );\n\tconst hasLayoutPanel = hasDimensionsPanel;\n\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup>\n\t\t\t\t{ hasTypographyPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ typography }\n\t\t\t\t\t\tpath=\"/typography\"\n\t\t\t\t\t\taria-label={ __( 'Typography styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Typography' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t\t{ hasColorPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ color }\n\t\t\t\t\t\tpath=\"/colors\"\n\t\t\t\t\t\taria-label={ __( 'Colors styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Colors' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t\t{ hasBackgroundPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ background }\n\t\t\t\t\t\tpath=\"/background\"\n\t\t\t\t\t\taria-label={ __( 'Background styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Background' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t\t{ hasShadowPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ shadowIcon }\n\t\t\t\t\t\tpath=\"/shadows\"\n\t\t\t\t\t\taria-label={ __( 'Shadow styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Shadows' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t\t{ hasLayoutPanel && (\n\t\t\t\t\t<NavigationButtonAsItem\n\t\t\t\t\t\ticon={ layout }\n\t\t\t\t\t\tpath=\"/layout\"\n\t\t\t\t\t\taria-label={ __( 'Layout styles' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Layout' ) }\n\t\t\t\t\t</NavigationButtonAsItem>\n\t\t\t\t) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default RootMenu;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _i18n = require("@wordpress/i18n");
|
|
9
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
10
|
+
var _components = require("@wordpress/components");
|
|
11
|
+
var _backgroundPanel = _interopRequireDefault(require("./background-panel"));
|
|
12
|
+
var _header = _interopRequireDefault(require("./header"));
|
|
13
|
+
var _lockUnlock = require("../../lock-unlock");
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
/**
|
|
16
|
+
* WordPress dependencies
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Internal dependencies
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
const {
|
|
24
|
+
useHasBackgroundPanel,
|
|
25
|
+
useGlobalSetting
|
|
26
|
+
} = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
|
|
27
|
+
function ScreenBackground() {
|
|
28
|
+
const [settings] = useGlobalSetting('');
|
|
29
|
+
const hasBackgroundPanel = useHasBackgroundPanel(settings);
|
|
30
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
31
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_header.default, {
|
|
32
|
+
title: (0, _i18n.__)('Background'),
|
|
33
|
+
description: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalText, {
|
|
34
|
+
children: (0, _i18n.__)('Set styles for the site’s background.')
|
|
35
|
+
})
|
|
36
|
+
}), hasBackgroundPanel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_backgroundPanel.default, {})]
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
var _default = exports.default = ScreenBackground;
|
|
40
|
+
//# sourceMappingURL=screen-background.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_i18n","require","_blockEditor","_components","_backgroundPanel","_interopRequireDefault","_header","_lockUnlock","_jsxRuntime","useHasBackgroundPanel","useGlobalSetting","unlock","blockEditorPrivateApis","ScreenBackground","settings","hasBackgroundPanel","jsxs","Fragment","children","jsx","default","title","__","description","__experimentalText","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-background.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { __experimentalText as Text } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BackgroundPanel from './background-panel';\nimport ScreenHeader from './header';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHasBackgroundPanel, useGlobalSetting } = unlock(\n\tblockEditorPrivateApis\n);\n\nfunction ScreenBackground() {\n\tconst [ settings ] = useGlobalSetting( '' );\n\tconst hasBackgroundPanel = useHasBackgroundPanel( settings );\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader\n\t\t\t\ttitle={ __( 'Background' ) }\n\t\t\t\tdescription={\n\t\t\t\t\t<Text>\n\t\t\t\t\t\t{ __( 'Set styles for the site’s background.' ) }\n\t\t\t\t\t</Text>\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ hasBackgroundPanel && <BackgroundPanel /> }\n\t\t</>\n\t);\n}\n\nexport default ScreenBackground;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AAKA,IAAAG,gBAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,WAAA,GAAAN,OAAA;AAA2C,IAAAO,WAAA,GAAAP,OAAA;AAZ3C;AACA;AACA;;AAKA;AACA;AACA;;AAKA,MAAM;EAAEQ,qBAAqB;EAAEC;AAAiB,CAAC,GAAG,IAAAC,kBAAM,EACzDC,wBACD,CAAC;AAED,SAASC,gBAAgBA,CAAA,EAAG;EAC3B,MAAM,CAAEC,QAAQ,CAAE,GAAGJ,gBAAgB,CAAE,EAAG,CAAC;EAC3C,MAAMK,kBAAkB,GAAGN,qBAAqB,CAAEK,QAAS,CAAC;EAC5D,oBACC,IAAAN,WAAA,CAAAQ,IAAA,EAAAR,WAAA,CAAAS,QAAA;IAAAC,QAAA,gBACC,IAAAV,WAAA,CAAAW,GAAA,EAACb,OAAA,CAAAc,OAAY;MACZC,KAAK,EAAG,IAAAC,QAAE,EAAE,YAAa,CAAG;MAC5BC,WAAW,eACV,IAAAf,WAAA,CAAAW,GAAA,EAAChB,WAAA,CAAAqB,kBAAI;QAAAN,QAAA,EACF,IAAAI,QAAE,EAAE,uCAAwC;MAAC,CAC1C;IACN,CACD,CAAC,EACAP,kBAAkB,iBAAI,IAAAP,WAAA,CAAAW,GAAA,EAACf,gBAAA,CAAAgB,OAAe,IAAE,CAAC;EAAA,CAC1C,CAAC;AAEL;AAAC,IAAAK,QAAA,GAAAC,OAAA,CAAAN,OAAA,GAEcP,gBAAgB","ignoreList":[]}
|
|
@@ -8,7 +8,6 @@ exports.default = void 0;
|
|
|
8
8
|
var _i18n = require("@wordpress/i18n");
|
|
9
9
|
var _blockEditor = require("@wordpress/block-editor");
|
|
10
10
|
var _dimensionsPanel = _interopRequireDefault(require("./dimensions-panel"));
|
|
11
|
-
var _backgroundPanel = _interopRequireDefault(require("./background-panel"));
|
|
12
11
|
var _header = _interopRequireDefault(require("./header"));
|
|
13
12
|
var _lockUnlock = require("../../lock-unlock");
|
|
14
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -21,7 +20,6 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
21
20
|
*/
|
|
22
21
|
|
|
23
22
|
const {
|
|
24
|
-
useHasBackgroundPanel,
|
|
25
23
|
useHasDimensionsPanel,
|
|
26
24
|
useGlobalSetting,
|
|
27
25
|
useSettingsForBlockElement
|
|
@@ -30,15 +28,10 @@ function ScreenLayout() {
|
|
|
30
28
|
const [rawSettings] = useGlobalSetting('');
|
|
31
29
|
const settings = useSettingsForBlockElement(rawSettings);
|
|
32
30
|
const hasDimensionsPanel = useHasDimensionsPanel(settings);
|
|
33
|
-
/*
|
|
34
|
-
* Use the raw settings to determine if the background panel should be displayed,
|
|
35
|
-
* as the background panel is not dependent on the block element settings.
|
|
36
|
-
*/
|
|
37
|
-
const hasBackgroundPanel = useHasBackgroundPanel(rawSettings);
|
|
38
31
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
39
32
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_header.default, {
|
|
40
33
|
title: (0, _i18n.__)('Layout')
|
|
41
|
-
}), hasDimensionsPanel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_dimensionsPanel.default, {})
|
|
34
|
+
}), hasDimensionsPanel && /*#__PURE__*/(0, _jsxRuntime.jsx)(_dimensionsPanel.default, {})]
|
|
42
35
|
});
|
|
43
36
|
}
|
|
44
37
|
var _default = exports.default = ScreenLayout;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_blockEditor","_dimensionsPanel","_interopRequireDefault","
|
|
1
|
+
{"version":3,"names":["_i18n","require","_blockEditor","_dimensionsPanel","_interopRequireDefault","_header","_lockUnlock","_jsxRuntime","useHasDimensionsPanel","useGlobalSetting","useSettingsForBlockElement","unlock","blockEditorPrivateApis","ScreenLayout","rawSettings","settings","hasDimensionsPanel","jsxs","Fragment","children","jsx","default","title","__","_default","exports"],"sources":["@wordpress/edit-site/src/components/global-styles/screen-layout.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport DimensionsPanel from './dimensions-panel';\nimport ScreenHeader from './header';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHasDimensionsPanel, useGlobalSetting, useSettingsForBlockElement } =\n\tunlock( blockEditorPrivateApis );\n\nfunction ScreenLayout() {\n\tconst [ rawSettings ] = useGlobalSetting( '' );\n\tconst settings = useSettingsForBlockElement( rawSettings );\n\tconst hasDimensionsPanel = useHasDimensionsPanel( settings );\n\n\treturn (\n\t\t<>\n\t\t\t<ScreenHeader title={ __( 'Layout' ) } />\n\t\t\t{ hasDimensionsPanel && <DimensionsPanel /> }\n\t\t</>\n\t);\n}\n\nexport default ScreenLayout;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAKA,IAAAE,gBAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,OAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AAA2C,IAAAM,WAAA,GAAAN,OAAA;AAX3C;AACA;AACA;;AAIA;AACA;AACA;;AAKA,MAAM;EAAEO,qBAAqB;EAAEC,gBAAgB;EAAEC;AAA2B,CAAC,GAC5E,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAEjC,SAASC,YAAYA,CAAA,EAAG;EACvB,MAAM,CAAEC,WAAW,CAAE,GAAGL,gBAAgB,CAAE,EAAG,CAAC;EAC9C,MAAMM,QAAQ,GAAGL,0BAA0B,CAAEI,WAAY,CAAC;EAC1D,MAAME,kBAAkB,GAAGR,qBAAqB,CAAEO,QAAS,CAAC;EAE5D,oBACC,IAAAR,WAAA,CAAAU,IAAA,EAAAV,WAAA,CAAAW,QAAA;IAAAC,QAAA,gBACC,IAAAZ,WAAA,CAAAa,GAAA,EAACf,OAAA,CAAAgB,OAAY;MAACC,KAAK,EAAG,IAAAC,QAAE,EAAE,QAAS;IAAG,CAAE,CAAC,EACvCP,kBAAkB,iBAAI,IAAAT,WAAA,CAAAa,GAAA,EAACjB,gBAAA,CAAAkB,OAAe,IAAE,CAAC;EAAA,CAC1C,CAAC;AAEL;AAAC,IAAAG,QAAA,GAAAC,OAAA,CAAAJ,OAAA,GAEcR,YAAY","ignoreList":[]}
|
|
@@ -138,10 +138,8 @@ function RevisionsButtons({
|
|
|
138
138
|
'is-reset': isReset
|
|
139
139
|
}),
|
|
140
140
|
"aria-current": isSelected,
|
|
141
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
142
|
-
|
|
143
|
-
, {
|
|
144
|
-
__next40pxDefaultSize: false,
|
|
141
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
142
|
+
__next40pxDefaultSize: true,
|
|
145
143
|
className: "edit-site-global-styles-screen-revisions__revision-button",
|
|
146
144
|
accessibleWhenDisabled: true,
|
|
147
145
|
disabled: isSelected,
|