@wordpress/edit-site 6.27.0 → 6.28.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/media/index.js +1 -1
- package/build/components/media/index.js.map +1 -1
- package/build/components/page-templates/fields.js +1 -4
- package/build/components/page-templates/fields.js.map +1 -1
- package/build/components/page-templates/hooks.js +1 -2
- package/build/components/page-templates/hooks.js.map +1 -1
- package/build/components/page-templates/index.js +1 -8
- package/build/components/page-templates/index.js.map +1 -1
- package/build/components/post-list/index.js +1 -30
- package/build/components/post-list/index.js.map +1 -1
- package/build/components/sidebar-dataviews/default-views.js +53 -37
- package/build/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build/components/style-book/index.js +2 -2
- package/build/components/style-book/index.js.map +1 -1
- package/build/store/selectors.js +1 -1
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/media/index.js +1 -1
- package/build-module/components/media/index.js.map +1 -1
- package/build-module/components/page-templates/fields.js +1 -4
- package/build-module/components/page-templates/fields.js.map +1 -1
- package/build-module/components/page-templates/hooks.js +1 -2
- package/build-module/components/page-templates/hooks.js.map +1 -1
- package/build-module/components/page-templates/index.js +1 -8
- package/build-module/components/page-templates/index.js.map +1 -1
- package/build-module/components/post-list/index.js +1 -30
- package/build-module/components/post-list/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/default-views.js +53 -37
- package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build-module/components/style-book/index.js +2 -2
- package/build-module/components/style-book/index.js.map +1 -1
- package/build-module/store/selectors.js +1 -1
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/posts-rtl.css +89 -54
- package/build-style/posts.css +89 -54
- package/build-style/style-rtl.css +114 -102
- package/build-style/style.css +114 -102
- package/package.json +42 -42
- package/src/components/editor/style.scss +2 -2
- package/src/components/global-styles-sidebar/style.scss +0 -19
- package/src/components/media/index.js +1 -1
- package/src/components/page-templates/fields.js +1 -7
- package/src/components/page-templates/hooks.js +7 -7
- package/src/components/page-templates/index.js +0 -7
- package/src/components/page-templates/style.scss +0 -23
- package/src/components/post-list/index.js +1 -42
- package/src/components/sidebar-dataviews/default-views.js +63 -47
- package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +0 -4
- package/src/components/style-book/index.js +2 -2
- package/src/store/selectors.js +1 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_blockEditor","_editor","_data","_element","_keycodes","_mediaUtils","_coreData","_lockUnlock","_editorCanvasContainer","_constants","_categories","_examples","_store","_sidebarGlobalStylesWrapper","_globalStylesRenderer","_utils","_constants2","_jsxRuntime","ExperimentalBlockEditorProvider","useGlobalStyle","GlobalStylesContext","useGlobalStylesOutputWithConfig","unlock","blockEditorPrivateApis","mergeBaseAndUserConfigs","editorPrivateApis","Tabs","componentsPrivateApis","isObjectEmpty","object","Object","keys","length","scrollToSection","anchorId","iframe","contentDocument","element","body","getElementById","scrollIntoView","behavior","getStyleBookNavigationFromPath","path","startsWith","top","useMultiOriginPalettes","colors","gradients","useMultipleOriginColorsAndGradients","shouldDisplayDefaultDuotones","customDuotones","themeDuotones","defaultDuotones","useSettings","palettes","useMemo","result","duotones","push","name","_x","slug","getExamplesForSinglePageUse","examples","examplesForSinglePageUse","overviewCategoryExamples","getExamplesByCategory","otherExamples","filter","example","category","find","overviewExample","applyBlockVariationsToExamples","variation","map","blocks","attributes","style","undefined","className","getVariationClassName","StyleBook","enableResizing","isSelected","onClick","onSelect","showCloseButton","onClose","showTabs","userConfig","textColor","backgroundColor","getExamples","tabs","getTopLevelStyleBookCategories","some","base","baseConfig","useContext","goTo","mergedConfig","originalSettings","useSelect","select","blockEditorStore","getSettings","globalStyles","settings","styles","isPreviewMode","jsx","default","closeButtonLabel","__","children","clsx","color","background","jsxs","TabList","tab","Tab","tabId","title","categoryDefinition","_category","filteredExamples","TabPanel","focusable","StyleBookBody","StyleBookPreview","isStatic","siteEditorSettings","siteEditorStore","canUserUploadMedia","coreStore","canUser","kind","useEffect","dispatch","updateSettings","mediaUpload","uploadMedia","section","onChangeSection","useSection","blockName","encodeURIComponent","isBlockVariation","STYLE_BOOK_COLOR_GROUPS","group","previewCategory","blockVariation","includes","decodeURIComponent","split","STYLE_BOOK_PREVIEW_CATEGORIES","displayedExamples","BlockEditorProvider","GlobalStylesRenderer","disableRootPadding","exports","isFocused","setIsFocused","useState","hasIframeLoaded","setHasIframeLoaded","iframeRef","useRef","buttonModeProps","role","onFocus","onBlur","onKeyDown","event","defaultPrevented","keyCode","ENTER","SPACE","preventDefault","readonly","handleLoad","useLayoutEffect","current","__unstableIframe","onLoad","ref","tabIndex","__unstableEditorStyles","STYLE_BOOK_IFRAME_STYLES","Examples","label","sprintf","memo","Composite","orientation","Example","id","content","subcategories","subcategory","Group","GroupLabel","Subcategory","disabledExamples","focusMode","renderedBlocks","Array","isArray","disabledProps","disabled","accessibleWhenDisabled","Item","render","Disabled","value","BlockList","renderAppender","_default"],"sources":["@wordpress/edit-site/src/components/style-book/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tDisabled,\n\tComposite,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tBlockList,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tuseSettings,\n\tBlockEditorProvider,\n\t__unstableEditorStyles as EditorStyles,\n\t__unstableIframe as Iframe,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { useSelect, dispatch } from '@wordpress/data';\nimport {\n\tuseMemo,\n\tuseState,\n\tmemo,\n\tuseContext,\n\tuseRef,\n\tuseLayoutEffect,\n\tuseEffect,\n} from '@wordpress/element';\nimport { ENTER, SPACE } from '@wordpress/keycodes';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport EditorCanvasContainer from '../editor-canvas-container';\nimport { STYLE_BOOK_IFRAME_STYLES } from './constants';\nimport {\n\tgetExamplesByCategory,\n\tgetTopLevelStyleBookCategories,\n} from './categories';\nimport { getExamples } from './examples';\nimport { store as siteEditorStore } from '../../store';\nimport { useSection } from '../sidebar-global-styles-wrapper';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\nimport { getVariationClassName } from '../global-styles/utils';\nimport {\n\tSTYLE_BOOK_COLOR_GROUPS,\n\tSTYLE_BOOK_PREVIEW_CATEGORIES,\n} from '../style-book/constants';\n\nconst {\n\tExperimentalBlockEditorProvider,\n\tuseGlobalStyle,\n\tGlobalStylesContext,\n\tuseGlobalStylesOutputWithConfig,\n} = unlock( blockEditorPrivateApis );\nconst { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction isObjectEmpty( object ) {\n\treturn ! object || Object.keys( object ).length === 0;\n}\n\n/**\n * Scrolls to a section within an iframe.\n *\n * @param {string} anchorId The id of the element to scroll to.\n * @param {HTMLIFrameElement} iframe The target iframe.\n */\nconst scrollToSection = ( anchorId, iframe ) => {\n\tif ( ! anchorId || ! iframe || ! iframe?.contentDocument ) {\n\t\treturn;\n\t}\n\n\tconst element =\n\t\tanchorId === 'top'\n\t\t\t? iframe.contentDocument.body\n\t\t\t: iframe.contentDocument.getElementById( anchorId );\n\tif ( element ) {\n\t\telement.scrollIntoView( {\n\t\t\tbehavior: 'smooth',\n\t\t} );\n\t}\n};\n\n/**\n * Parses a Block Editor navigation path to build a style book navigation path.\n * The object can be extended to include a category, representing a style book tab/section.\n *\n * @param {string} path An internal Block Editor navigation path.\n * @return {null|{block: string}} An object containing the example to navigate to.\n */\nconst getStyleBookNavigationFromPath = ( path ) => {\n\tif ( path && typeof path === 'string' ) {\n\t\tif (\n\t\t\tpath === '/' ||\n\t\t\tpath.startsWith( '/typography' ) ||\n\t\t\tpath.startsWith( '/colors' ) ||\n\t\t\tpath.startsWith( '/blocks' )\n\t\t) {\n\t\t\treturn {\n\t\t\t\ttop: true,\n\t\t\t};\n\t\t}\n\t}\n\treturn null;\n};\n\n/**\n * Retrieves colors, gradients, and duotone filters from Global Styles.\n * The inclusion of default (Core) palettes is controlled by the relevant\n * theme.json property e.g. defaultPalette, defaultGradients, defaultDuotone.\n *\n * @return {Object} Object containing properties for each type of palette.\n */\nfunction useMultiOriginPalettes() {\n\tconst { colors, gradients } = useMultipleOriginColorsAndGradients();\n\n\t// Add duotone filters to the palettes data.\n\tconst [\n\t\tshouldDisplayDefaultDuotones,\n\t\tcustomDuotones,\n\t\tthemeDuotones,\n\t\tdefaultDuotones,\n\t] = useSettings(\n\t\t'color.defaultDuotone',\n\t\t'color.duotone.custom',\n\t\t'color.duotone.theme',\n\t\t'color.duotone.default'\n\t);\n\n\tconst palettes = useMemo( () => {\n\t\tconst result = { colors, gradients, duotones: [] };\n\n\t\tif ( themeDuotones && themeDuotones.length ) {\n\t\t\tresult.duotones.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates these duotone filters come from the theme.'\n\t\t\t\t),\n\t\t\t\tslug: 'theme',\n\t\t\t\tduotones: themeDuotones,\n\t\t\t} );\n\t\t}\n\n\t\tif (\n\t\t\tshouldDisplayDefaultDuotones &&\n\t\t\tdefaultDuotones &&\n\t\t\tdefaultDuotones.length\n\t\t) {\n\t\t\tresult.duotones.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates these duotone filters come from WordPress.'\n\t\t\t\t),\n\t\t\t\tslug: 'default',\n\t\t\t\tduotones: defaultDuotones,\n\t\t\t} );\n\t\t}\n\t\tif ( customDuotones && customDuotones.length ) {\n\t\t\tresult.duotones.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates these doutone filters are created by the user.'\n\t\t\t\t),\n\t\t\t\tslug: 'custom',\n\t\t\t\tduotones: customDuotones,\n\t\t\t} );\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tcolors,\n\t\tgradients,\n\t\tcustomDuotones,\n\t\tthemeDuotones,\n\t\tdefaultDuotones,\n\t\tshouldDisplayDefaultDuotones,\n\t] );\n\n\treturn palettes;\n}\n\n/**\n * Get deduped examples for single page stylebook.\n * @param {Array} examples Array of examples.\n * @return {Array} Deduped examples.\n */\nexport function getExamplesForSinglePageUse( examples ) {\n\tconst examplesForSinglePageUse = [];\n\tconst overviewCategoryExamples = getExamplesByCategory(\n\t\t{ slug: 'overview' },\n\t\texamples\n\t);\n\texamplesForSinglePageUse.push( ...overviewCategoryExamples.examples );\n\tconst otherExamples = examples.filter( ( example ) => {\n\t\treturn (\n\t\t\texample.category !== 'overview' &&\n\t\t\t! overviewCategoryExamples.examples.find(\n\t\t\t\t( overviewExample ) => overviewExample.name === example.name\n\t\t\t)\n\t\t);\n\t} );\n\texamplesForSinglePageUse.push( ...otherExamples );\n\n\treturn examplesForSinglePageUse;\n}\n\n/**\n * Applies a block variation to each example by updating its attributes.\n *\n * @param {Array} examples Array of examples\n * @param {string} variation Block variation name.\n * @return {Array} Updated examples with variation applied.\n */\nfunction applyBlockVariationsToExamples( examples, variation ) {\n\tif ( ! variation ) {\n\t\treturn examples;\n\t}\n\n\treturn examples.map( ( example ) => ( {\n\t\t...example,\n\t\tvariation,\n\t\tblocks: {\n\t\t\t...example.blocks,\n\t\t\tattributes: {\n\t\t\t\t...example.blocks.attributes,\n\t\t\t\tstyle: undefined,\n\t\t\t\tclassName: getVariationClassName( variation ),\n\t\t\t},\n\t\t},\n\t} ) );\n}\n\nfunction StyleBook( {\n\tenableResizing = true,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tshowCloseButton = true,\n\tonClose,\n\tshowTabs = true,\n\tuserConfig = {},\n\tpath = '',\n} ) {\n\tconst [ textColor ] = useGlobalStyle( 'color.text' );\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst colors = useMultiOriginPalettes();\n\tconst examples = useMemo( () => getExamples( colors ), [ colors ] );\n\tconst tabs = useMemo(\n\t\t() =>\n\t\t\tgetTopLevelStyleBookCategories().filter( ( category ) =>\n\t\t\t\texamples.some(\n\t\t\t\t\t( example ) => example.category === category.slug\n\t\t\t\t)\n\t\t\t),\n\t\t[ examples ]\n\t);\n\n\tconst examplesForSinglePageUse = getExamplesForSinglePageUse( examples );\n\n\tconst { base: baseConfig } = useContext( GlobalStylesContext );\n\tconst goTo = getStyleBookNavigationFromPath( path );\n\n\tconst mergedConfig = useMemo( () => {\n\t\tif ( ! isObjectEmpty( userConfig ) && ! isObjectEmpty( baseConfig ) ) {\n\t\t\treturn mergeBaseAndUserConfigs( baseConfig, userConfig );\n\t\t}\n\t\treturn {};\n\t}, [ baseConfig, userConfig ] );\n\n\t// Copied from packages/edit-site/src/components/revisions/index.js\n\t// could we create a shared hook?\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst [ globalStyles ] = useGlobalStylesOutputWithConfig( mergedConfig );\n\n\tconst settings = useMemo(\n\t\t() => ( {\n\t\t\t...originalSettings,\n\t\t\tstyles:\n\t\t\t\t! isObjectEmpty( globalStyles ) && ! isObjectEmpty( userConfig )\n\t\t\t\t\t? globalStyles\n\t\t\t\t\t: originalSettings.styles,\n\t\t\tisPreviewMode: true,\n\t\t} ),\n\t\t[ globalStyles, originalSettings, userConfig ]\n\t);\n\n\treturn (\n\t\t<EditorCanvasContainer\n\t\t\tonClose={ onClose }\n\t\t\tenableResizing={ enableResizing }\n\t\t\tcloseButtonLabel={ showCloseButton ? __( 'Close' ) : null }\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={ clsx( 'edit-site-style-book', {\n\t\t\t\t\t'is-button': !! onClick,\n\t\t\t\t} ) }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textColor,\n\t\t\t\t\tbackground: backgroundColor,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ showTabs ? (\n\t\t\t\t\t<Tabs>\n\t\t\t\t\t\t<div className=\"edit-site-style-book__tablist-container\">\n\t\t\t\t\t\t\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => (\n\t\t\t\t\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\t\t\t\t\ttabId={ tab.slug }\n\t\t\t\t\t\t\t\t\t\tkey={ tab.slug }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ tab.title }\n\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</Tabs.TabList>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\tconst categoryDefinition = tab.slug\n\t\t\t\t\t\t\t\t? getTopLevelStyleBookCategories().find(\n\t\t\t\t\t\t\t\t\t\t( _category ) =>\n\t\t\t\t\t\t\t\t\t\t\t_category.slug === tab.slug\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: null;\n\t\t\t\t\t\t\tconst filteredExamples = categoryDefinition\n\t\t\t\t\t\t\t\t? getExamplesByCategory(\n\t\t\t\t\t\t\t\t\t\tcategoryDefinition,\n\t\t\t\t\t\t\t\t\t\texamples\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: { examples };\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\tkey={ tab.slug }\n\t\t\t\t\t\t\t\t\ttabId={ tab.slug }\n\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-style-book__tabpanel\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\t\t\t\t\tcategory={ tab.slug }\n\t\t\t\t\t\t\t\t\t\texamples={ filteredExamples }\n\t\t\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\t\t\ttitle={ tab.title }\n\t\t\t\t\t\t\t\t\t\tgoTo={ goTo }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t</Tabs>\n\t\t\t\t) : (\n\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\texamples={ { examples: examplesForSinglePageUse } }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\tgoTo={ goTo }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</EditorCanvasContainer>\n\t);\n}\n\n/**\n * Style Book Preview component renders the stylebook without the Editor dependency.\n *\n * @param {Object} props Component props.\n * @param {Object} props.userConfig User configuration.\n * @param {boolean} props.isStatic Whether the stylebook is static or clickable.\n * @return {Object} Style Book Preview component.\n */\nexport const StyleBookPreview = ( { userConfig = {}, isStatic = false } ) => {\n\tconst siteEditorSettings = useSelect(\n\t\t( select ) => select( siteEditorStore ).getSettings(),\n\t\t[]\n\t);\n\n\tconst canUserUploadMedia = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).canUser( 'create', {\n\t\t\t\tkind: 'root',\n\t\t\t\tname: 'media',\n\t\t\t} ),\n\t\t[]\n\t);\n\n\t// Update block editor settings because useMultipleOriginColorsAndGradients fetch colours from there.\n\tuseEffect( () => {\n\t\tdispatch( blockEditorStore ).updateSettings( {\n\t\t\t...siteEditorSettings,\n\t\t\tmediaUpload: canUserUploadMedia ? uploadMedia : undefined,\n\t\t} );\n\t}, [ siteEditorSettings, canUserUploadMedia ] );\n\n\tconst [ section, onChangeSection ] = useSection();\n\n\tconst isSelected = ( blockName ) => {\n\t\t// Match '/blocks/core%2Fbutton' and\n\t\t// '/blocks/core%2Fbutton/typography', but not\n\t\t// '/blocks/core%2Fbuttons'.\n\t\treturn (\n\t\t\tsection === `/blocks/${ encodeURIComponent( blockName ) }` ||\n\t\t\tsection.startsWith(\n\t\t\t\t`/blocks/${ encodeURIComponent( blockName ) }/`\n\t\t\t)\n\t\t);\n\t};\n\n\tconst onSelect = ( blockName, isBlockVariation = false ) => {\n\t\tif (\n\t\t\tSTYLE_BOOK_COLOR_GROUPS.find(\n\t\t\t\t( group ) => group.slug === blockName\n\t\t\t)\n\t\t) {\n\t\t\t// Go to color palettes Global Styles.\n\t\t\tonChangeSection( '/colors/palette' );\n\t\t\treturn;\n\t\t}\n\t\tif ( blockName === 'typography' ) {\n\t\t\t// Go to typography Global Styles.\n\t\t\tonChangeSection( '/typography' );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlockVariation ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Now go to the selected block.\n\t\tonChangeSection( `/blocks/${ encodeURIComponent( blockName ) }` );\n\t};\n\n\tconst colors = useMultiOriginPalettes();\n\tconst examples = getExamples( colors );\n\tconst examplesForSinglePageUse = getExamplesForSinglePageUse( examples );\n\n\tlet previewCategory = null;\n\tlet blockVariation = null;\n\tif ( section.includes( '/colors' ) ) {\n\t\tpreviewCategory = 'colors';\n\t} else if ( section.includes( '/typography' ) ) {\n\t\tpreviewCategory = 'text';\n\t} else if ( section.includes( '/blocks' ) ) {\n\t\tpreviewCategory = 'blocks';\n\t\tlet blockName = decodeURIComponent( section ).split( '/blocks/' )[ 1 ];\n\n\t\t// The blockName can contain variations, if so, extract the variation.\n\t\tif ( blockName?.includes( '/variations' ) ) {\n\t\t\t[ blockName, blockVariation ] = blockName.split( '/variations/' );\n\t\t}\n\n\t\tif (\n\t\t\tblockName &&\n\t\t\texamples.find( ( example ) => example.name === blockName )\n\t\t) {\n\t\t\tpreviewCategory = blockName;\n\t\t}\n\t} else if ( ! isStatic ) {\n\t\tpreviewCategory = 'overview';\n\t}\n\tconst categoryDefinition = STYLE_BOOK_PREVIEW_CATEGORIES.find(\n\t\t( category ) => category.slug === previewCategory\n\t);\n\n\tconst filteredExamples = useMemo( () => {\n\t\t// If there's no category definition there may be a single block.\n\t\tif ( ! categoryDefinition ) {\n\t\t\treturn {\n\t\t\t\texamples: [\n\t\t\t\t\texamples.find(\n\t\t\t\t\t\t( example ) => example.name === previewCategory\n\t\t\t\t\t),\n\t\t\t\t],\n\t\t\t};\n\t\t}\n\n\t\treturn getExamplesByCategory( categoryDefinition, examples );\n\t}, [ categoryDefinition, examples, previewCategory ] );\n\n\tconst displayedExamples = useMemo( () => {\n\t\t// If there's no preview category, show all examples.\n\t\tif ( ! previewCategory ) {\n\t\t\treturn { examples: examplesForSinglePageUse };\n\t\t}\n\n\t\tif ( blockVariation ) {\n\t\t\treturn {\n\t\t\t\texamples: applyBlockVariationsToExamples(\n\t\t\t\t\tfilteredExamples.examples,\n\t\t\t\t\tblockVariation\n\t\t\t\t),\n\t\t\t};\n\t\t}\n\n\t\treturn filteredExamples;\n\t}, [\n\t\tpreviewCategory,\n\t\texamplesForSinglePageUse,\n\t\tblockVariation,\n\t\tfilteredExamples,\n\t] );\n\n\tconst { base: baseConfig } = useContext( GlobalStylesContext );\n\tconst goTo = getStyleBookNavigationFromPath( section );\n\n\tconst mergedConfig = useMemo( () => {\n\t\tif ( ! isObjectEmpty( userConfig ) && ! isObjectEmpty( baseConfig ) ) {\n\t\t\treturn mergeBaseAndUserConfigs( baseConfig, userConfig );\n\t\t}\n\t\treturn {};\n\t}, [ baseConfig, userConfig ] );\n\n\tconst [ globalStyles ] = useGlobalStylesOutputWithConfig( mergedConfig );\n\n\tconst settings = useMemo(\n\t\t() => ( {\n\t\t\t...siteEditorSettings,\n\t\t\tstyles:\n\t\t\t\t! isObjectEmpty( globalStyles ) && ! isObjectEmpty( userConfig )\n\t\t\t\t\t? globalStyles\n\t\t\t\t\t: siteEditorSettings.styles,\n\t\t\tisPreviewMode: true,\n\t\t} ),\n\t\t[ globalStyles, siteEditorSettings, userConfig ]\n\t);\n\n\treturn (\n\t\t<div className=\"edit-site-style-book\">\n\t\t\t<BlockEditorProvider settings={ settings }>\n\t\t\t\t<GlobalStylesRenderer disableRootPadding />\n\t\t\t\t<StyleBookBody\n\t\t\t\t\texamples={ displayedExamples }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tgoTo={ goTo }\n\t\t\t\t\tisSelected={ ! isStatic ? isSelected : null }\n\t\t\t\t\tonSelect={ ! isStatic ? onSelect : null }\n\t\t\t\t/>\n\t\t\t</BlockEditorProvider>\n\t\t</div>\n\t);\n};\n\nexport const StyleBookBody = ( {\n\texamples,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tsettings,\n\ttitle,\n\tgoTo,\n} ) => {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\tconst [ hasIframeLoaded, setHasIframeLoaded ] = useState( false );\n\tconst iframeRef = useRef( null );\n\t// The presence of an `onClick` prop indicates that the Style Book is being used as a button.\n\t// In this case, add additional props to the iframe to make it behave like a button.\n\tconst buttonModeProps = {\n\t\trole: 'button',\n\t\tonFocus: () => setIsFocused( true ),\n\t\tonBlur: () => setIsFocused( false ),\n\t\tonKeyDown: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { keyCode } = event;\n\t\t\tif ( onClick && ( keyCode === ENTER || keyCode === SPACE ) ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\tonClick: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ( onClick ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\treadonly: true,\n\t};\n\n\tconst handleLoad = () => setHasIframeLoaded( true );\n\tuseLayoutEffect( () => {\n\t\tif ( hasIframeLoaded && iframeRef?.current ) {\n\t\t\tif ( goTo?.top ) {\n\t\t\t\tscrollToSection( 'top', iframeRef?.current );\n\t\t\t}\n\t\t}\n\t}, [ iframeRef?.current, goTo, scrollToSection, hasIframeLoaded ] );\n\n\treturn (\n\t\t<Iframe\n\t\t\tonLoad={ handleLoad }\n\t\t\tref={ iframeRef }\n\t\t\tclassName={ clsx( 'edit-site-style-book__iframe', {\n\t\t\t\t'is-focused': isFocused && !! onClick,\n\t\t\t\t'is-button': !! onClick,\n\t\t\t} ) }\n\t\t\tname=\"style-book-canvas\"\n\t\t\ttabIndex={ 0 }\n\t\t\t{ ...( onClick ? buttonModeProps : {} ) }\n\t\t>\n\t\t\t<EditorStyles styles={ settings.styles } />\n\t\t\t<style>\n\t\t\t\t{ STYLE_BOOK_IFRAME_STYLES }\n\t\t\t\t{ !! onClick &&\n\t\t\t\t\t'body { cursor: pointer; } body * { pointer-events: none; }' }\n\t\t\t</style>\n\t\t\t<Examples\n\t\t\t\tclassName=\"edit-site-style-book__examples\"\n\t\t\t\tfilteredExamples={ examples }\n\t\t\t\tlabel={\n\t\t\t\t\ttitle\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Category of blocks, e.g. Text.\n\t\t\t\t\t\t\t\t__( 'Examples of blocks in the %s category' ),\n\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Examples of blocks' )\n\t\t\t\t}\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t\tkey={ title }\n\t\t\t/>\n\t\t</Iframe>\n\t);\n};\n\nconst Examples = memo(\n\t( { className, filteredExamples, label, isSelected, onSelect } ) => {\n\t\treturn (\n\t\t\t<Composite\n\t\t\t\torientation=\"vertical\"\n\t\t\t\tclassName={ className }\n\t\t\t\taria-label={ label }\n\t\t\t\trole=\"grid\"\n\t\t\t>\n\t\t\t\t{ !! filteredExamples?.examples?.length &&\n\t\t\t\t\tfilteredExamples.examples.map( ( example ) => (\n\t\t\t\t\t\t<Example\n\t\t\t\t\t\t\tkey={ example.name }\n\t\t\t\t\t\t\tid={ `example-${ example.name }` }\n\t\t\t\t\t\t\ttitle={ example.title }\n\t\t\t\t\t\t\tcontent={ example.content }\n\t\t\t\t\t\t\tblocks={ example.blocks }\n\t\t\t\t\t\t\tisSelected={ isSelected?.( example.name ) }\n\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t!! onSelect\n\t\t\t\t\t\t\t\t\t? () =>\n\t\t\t\t\t\t\t\t\t\t\tonSelect(\n\t\t\t\t\t\t\t\t\t\t\t\texample.name,\n\t\t\t\t\t\t\t\t\t\t\t\t!! example.variation\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ !! filteredExamples?.subcategories?.length &&\n\t\t\t\t\tfilteredExamples.subcategories.map( ( subcategory ) => (\n\t\t\t\t\t\t<Composite.Group\n\t\t\t\t\t\t\tclassName=\"edit-site-style-book__subcategory\"\n\t\t\t\t\t\t\tkey={ `subcategory-${ subcategory.slug }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Composite.GroupLabel>\n\t\t\t\t\t\t\t\t<h2 className=\"edit-site-style-book__subcategory-title\">\n\t\t\t\t\t\t\t\t\t{ subcategory.title }\n\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t</Composite.GroupLabel>\n\t\t\t\t\t\t\t<Subcategory\n\t\t\t\t\t\t\t\texamples={ subcategory.examples }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Composite.Group>\n\t\t\t\t\t) ) }\n\t\t\t</Composite>\n\t\t);\n\t}\n);\n\nconst Subcategory = ( { examples, isSelected, onSelect } ) => {\n\treturn (\n\t\t!! examples?.length &&\n\t\texamples.map( ( example ) => (\n\t\t\t<Example\n\t\t\t\tkey={ example.name }\n\t\t\t\tid={ `example-${ example.name }` }\n\t\t\t\ttitle={ example.title }\n\t\t\t\tcontent={ example.content }\n\t\t\t\tblocks={ example.blocks }\n\t\t\t\tisSelected={ isSelected?.( example.name ) }\n\t\t\t\tonClick={ !! onSelect ? () => onSelect( example.name ) : null }\n\t\t\t/>\n\t\t) )\n\t);\n};\n\nconst disabledExamples = [ 'example-duotones' ];\n\nconst Example = ( { id, title, blocks, isSelected, onClick, content } ) => {\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst settings = useMemo(\n\t\t() => ( {\n\t\t\t...originalSettings,\n\t\t\tfocusMode: false, // Disable \"Spotlight mode\".\n\t\t\tisPreviewMode: true,\n\t\t} ),\n\t\t[ originalSettings ]\n\t);\n\n\t// Cache the list of blocks to avoid additional processing when the component is re-rendered.\n\tconst renderedBlocks = useMemo(\n\t\t() => ( Array.isArray( blocks ) ? blocks : [ blocks ] ),\n\t\t[ blocks ]\n\t);\n\n\tconst disabledProps =\n\t\tdisabledExamples.includes( id ) || ! onClick\n\t\t\t? {\n\t\t\t\t\tdisabled: true,\n\t\t\t\t\taccessibleWhenDisabled: !! onClick,\n\t\t\t }\n\t\t\t: {};\n\n\treturn (\n\t\t<div role=\"row\">\n\t\t\t<div role=\"gridcell\">\n\t\t\t\t<Composite.Item\n\t\t\t\t\tclassName={ clsx( 'edit-site-style-book__example', {\n\t\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t\t\t'is-disabled-example': !! disabledProps?.disabled,\n\t\t\t\t\t} ) }\n\t\t\t\t\tid={ id }\n\t\t\t\t\taria-label={\n\t\t\t\t\t\t!! onClick\n\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t// translators: %s: Title of a block, e.g. Heading.\n\t\t\t\t\t\t\t\t\t__( 'Open %s styles in Styles panel' ),\n\t\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\trender={ <div /> }\n\t\t\t\t\trole={ !! onClick ? 'button' : null }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t{ ...disabledProps }\n\t\t\t\t>\n\t\t\t\t\t<span className=\"edit-site-style-book__example-title\">\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</span>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"edit-site-style-book__example-preview\"\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t<Disabled className=\"edit-site-style-book__example-preview__content\">\n\t\t\t\t\t\t\t{ content ? (\n\t\t\t\t\t\t\t\tcontent\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<ExperimentalBlockEditorProvider\n\t\t\t\t\t\t\t\t\tvalue={ renderedBlocks }\n\t\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<EditorStyles />\n\t\t\t\t\t\t\t\t\t<BlockList renderAppender={ false } />\n\t\t\t\t\t\t\t\t</ExperimentalBlockEditorProvider>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Disabled>\n\t\t\t\t\t</div>\n\t\t\t\t</Composite.Item>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default StyleBook;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_blockEditor","_editor","_data","_element","_keycodes","_mediaUtils","_coreData","_lockUnlock","_editorCanvasContainer","_constants","_categories","_examples","_store","_sidebarGlobalStylesWrapper","_globalStylesRenderer","_utils","_constants2","_jsxRuntime","ExperimentalBlockEditorProvider","useGlobalStyle","GlobalStylesContext","useGlobalStylesOutputWithConfig","unlock","blockEditorPrivateApis","mergeBaseAndUserConfigs","editorPrivateApis","Tabs","componentsPrivateApis","isObjectEmpty","object","Object","keys","length","scrollToSection","anchorId","iframe","contentDocument","element","body","getElementById","scrollIntoView","behavior","getStyleBookNavigationFromPath","path","startsWith","top","useMultiOriginPalettes","colors","gradients","useMultipleOriginColorsAndGradients","shouldDisplayDefaultDuotones","customDuotones","themeDuotones","defaultDuotones","useSettings","palettes","useMemo","result","duotones","push","name","_x","slug","getExamplesForSinglePageUse","examples","examplesForSinglePageUse","overviewCategoryExamples","getExamplesByCategory","otherExamples","filter","example","category","find","overviewExample","applyBlockVariationsToExamples","variation","map","blocks","attributes","style","undefined","className","getVariationClassName","StyleBook","enableResizing","isSelected","onClick","onSelect","showCloseButton","onClose","showTabs","userConfig","textColor","backgroundColor","getExamples","tabs","getTopLevelStyleBookCategories","some","base","baseConfig","useContext","goTo","mergedConfig","originalSettings","useSelect","select","blockEditorStore","getSettings","globalStyles","settings","styles","isPreviewMode","jsx","default","closeButtonLabel","__","children","clsx","color","background","jsxs","TabList","tab","Tab","tabId","title","categoryDefinition","_category","filteredExamples","TabPanel","focusable","StyleBookBody","StyleBookPreview","isStatic","siteEditorSettings","siteEditorStore","canUserUploadMedia","coreStore","canUser","kind","useEffect","dispatch","updateSettings","mediaUpload","uploadMedia","section","onChangeSection","useSection","blockName","encodeURIComponent","isBlockVariation","STYLE_BOOK_COLOR_GROUPS","group","previewCategory","blockVariation","includes","decodeURIComponent","split","STYLE_BOOK_PREVIEW_CATEGORIES","displayedExamples","BlockEditorProvider","GlobalStylesRenderer","disableRootPadding","exports","isFocused","setIsFocused","useState","hasIframeLoaded","setHasIframeLoaded","iframeRef","useRef","buttonModeProps","role","onFocus","onBlur","onKeyDown","event","defaultPrevented","keyCode","ENTER","SPACE","preventDefault","readonly","handleLoad","useLayoutEffect","current","__unstableIframe","onLoad","ref","tabIndex","__unstableEditorStyles","STYLE_BOOK_IFRAME_STYLES","Examples","label","sprintf","memo","Composite","orientation","Example","id","content","subcategories","subcategory","Group","GroupLabel","Subcategory","disabledExamples","focusMode","renderedBlocks","Array","isArray","disabledProps","disabled","accessibleWhenDisabled","Item","render","Disabled","value","BlockList","renderAppender","_default"],"sources":["@wordpress/edit-site/src/components/style-book/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tDisabled,\n\tComposite,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tBlockList,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tuseSettings,\n\tBlockEditorProvider,\n\t__unstableEditorStyles as EditorStyles,\n\t__unstableIframe as Iframe,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { useSelect, dispatch } from '@wordpress/data';\nimport {\n\tuseMemo,\n\tuseState,\n\tmemo,\n\tuseContext,\n\tuseRef,\n\tuseLayoutEffect,\n\tuseEffect,\n} from '@wordpress/element';\nimport { ENTER, SPACE } from '@wordpress/keycodes';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport EditorCanvasContainer from '../editor-canvas-container';\nimport { STYLE_BOOK_IFRAME_STYLES } from './constants';\nimport {\n\tgetExamplesByCategory,\n\tgetTopLevelStyleBookCategories,\n} from './categories';\nimport { getExamples } from './examples';\nimport { store as siteEditorStore } from '../../store';\nimport { useSection } from '../sidebar-global-styles-wrapper';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\nimport { getVariationClassName } from '../global-styles/utils';\nimport {\n\tSTYLE_BOOK_COLOR_GROUPS,\n\tSTYLE_BOOK_PREVIEW_CATEGORIES,\n} from '../style-book/constants';\n\nconst {\n\tExperimentalBlockEditorProvider,\n\tuseGlobalStyle,\n\tGlobalStylesContext,\n\tuseGlobalStylesOutputWithConfig,\n} = unlock( blockEditorPrivateApis );\nconst { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nfunction isObjectEmpty( object ) {\n\treturn ! object || Object.keys( object ).length === 0;\n}\n\n/**\n * Scrolls to a section within an iframe.\n *\n * @param {string} anchorId The id of the element to scroll to.\n * @param {HTMLIFrameElement} iframe The target iframe.\n */\nconst scrollToSection = ( anchorId, iframe ) => {\n\tif ( ! anchorId || ! iframe || ! iframe?.contentDocument ) {\n\t\treturn;\n\t}\n\n\tconst element =\n\t\tanchorId === 'top'\n\t\t\t? iframe.contentDocument.body\n\t\t\t: iframe.contentDocument.getElementById( anchorId );\n\tif ( element ) {\n\t\telement.scrollIntoView( {\n\t\t\tbehavior: 'smooth',\n\t\t} );\n\t}\n};\n\n/**\n * Parses a Block Editor navigation path to build a style book navigation path.\n * The object can be extended to include a category, representing a style book tab/section.\n *\n * @param {string} path An internal Block Editor navigation path.\n * @return {null|{block: string}} An object containing the example to navigate to.\n */\nconst getStyleBookNavigationFromPath = ( path ) => {\n\tif ( path && typeof path === 'string' ) {\n\t\tif (\n\t\t\tpath === '/' ||\n\t\t\tpath.startsWith( '/typography' ) ||\n\t\t\tpath.startsWith( '/colors' ) ||\n\t\t\tpath.startsWith( '/blocks' )\n\t\t) {\n\t\t\treturn {\n\t\t\t\ttop: true,\n\t\t\t};\n\t\t}\n\t}\n\treturn null;\n};\n\n/**\n * Retrieves colors, gradients, and duotone filters from Global Styles.\n * The inclusion of default (Core) palettes is controlled by the relevant\n * theme.json property e.g. defaultPalette, defaultGradients, defaultDuotone.\n *\n * @return {Object} Object containing properties for each type of palette.\n */\nfunction useMultiOriginPalettes() {\n\tconst { colors, gradients } = useMultipleOriginColorsAndGradients();\n\n\t// Add duotone filters to the palettes data.\n\tconst [\n\t\tshouldDisplayDefaultDuotones,\n\t\tcustomDuotones,\n\t\tthemeDuotones,\n\t\tdefaultDuotones,\n\t] = useSettings(\n\t\t'color.defaultDuotone',\n\t\t'color.duotone.custom',\n\t\t'color.duotone.theme',\n\t\t'color.duotone.default'\n\t);\n\n\tconst palettes = useMemo( () => {\n\t\tconst result = { colors, gradients, duotones: [] };\n\n\t\tif ( themeDuotones && themeDuotones.length ) {\n\t\t\tresult.duotones.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Theme',\n\t\t\t\t\t'Indicates these duotone filters come from the theme.'\n\t\t\t\t),\n\t\t\t\tslug: 'theme',\n\t\t\t\tduotones: themeDuotones,\n\t\t\t} );\n\t\t}\n\n\t\tif (\n\t\t\tshouldDisplayDefaultDuotones &&\n\t\t\tdefaultDuotones &&\n\t\t\tdefaultDuotones.length\n\t\t) {\n\t\t\tresult.duotones.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Default',\n\t\t\t\t\t'Indicates these duotone filters come from WordPress.'\n\t\t\t\t),\n\t\t\t\tslug: 'default',\n\t\t\t\tduotones: defaultDuotones,\n\t\t\t} );\n\t\t}\n\t\tif ( customDuotones && customDuotones.length ) {\n\t\t\tresult.duotones.push( {\n\t\t\t\tname: _x(\n\t\t\t\t\t'Custom',\n\t\t\t\t\t'Indicates these doutone filters are created by the user.'\n\t\t\t\t),\n\t\t\t\tslug: 'custom',\n\t\t\t\tduotones: customDuotones,\n\t\t\t} );\n\t\t}\n\n\t\treturn result;\n\t}, [\n\t\tcolors,\n\t\tgradients,\n\t\tcustomDuotones,\n\t\tthemeDuotones,\n\t\tdefaultDuotones,\n\t\tshouldDisplayDefaultDuotones,\n\t] );\n\n\treturn palettes;\n}\n\n/**\n * Get deduped examples for single page stylebook.\n * @param {Array} examples Array of examples.\n * @return {Array} Deduped examples.\n */\nexport function getExamplesForSinglePageUse( examples ) {\n\tconst examplesForSinglePageUse = [];\n\tconst overviewCategoryExamples = getExamplesByCategory(\n\t\t{ slug: 'overview' },\n\t\texamples\n\t);\n\texamplesForSinglePageUse.push( ...overviewCategoryExamples.examples );\n\tconst otherExamples = examples.filter( ( example ) => {\n\t\treturn (\n\t\t\texample.category !== 'overview' &&\n\t\t\t! overviewCategoryExamples.examples.find(\n\t\t\t\t( overviewExample ) => overviewExample.name === example.name\n\t\t\t)\n\t\t);\n\t} );\n\texamplesForSinglePageUse.push( ...otherExamples );\n\n\treturn examplesForSinglePageUse;\n}\n\n/**\n * Applies a block variation to each example by updating its attributes.\n *\n * @param {Array} examples Array of examples\n * @param {string} variation Block variation name.\n * @return {Array} Updated examples with variation applied.\n */\nfunction applyBlockVariationsToExamples( examples, variation ) {\n\tif ( ! variation ) {\n\t\treturn examples;\n\t}\n\n\treturn examples.map( ( example ) => ( {\n\t\t...example,\n\t\tvariation,\n\t\tblocks: {\n\t\t\t...example.blocks,\n\t\t\tattributes: {\n\t\t\t\t...example.blocks.attributes,\n\t\t\t\tstyle: undefined,\n\t\t\t\tclassName: getVariationClassName( variation ),\n\t\t\t},\n\t\t},\n\t} ) );\n}\n\nfunction StyleBook( {\n\tenableResizing = true,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tshowCloseButton = true,\n\tonClose,\n\tshowTabs = true,\n\tuserConfig = {},\n\tpath = '',\n} ) {\n\tconst [ textColor ] = useGlobalStyle( 'color.text' );\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst colors = useMultiOriginPalettes();\n\tconst examples = useMemo( () => getExamples( colors ), [ colors ] );\n\tconst tabs = useMemo(\n\t\t() =>\n\t\t\tgetTopLevelStyleBookCategories().filter( ( category ) =>\n\t\t\t\texamples.some(\n\t\t\t\t\t( example ) => example.category === category.slug\n\t\t\t\t)\n\t\t\t),\n\t\t[ examples ]\n\t);\n\n\tconst examplesForSinglePageUse = getExamplesForSinglePageUse( examples );\n\n\tconst { base: baseConfig } = useContext( GlobalStylesContext );\n\tconst goTo = getStyleBookNavigationFromPath( path );\n\n\tconst mergedConfig = useMemo( () => {\n\t\tif ( ! isObjectEmpty( userConfig ) && ! isObjectEmpty( baseConfig ) ) {\n\t\t\treturn mergeBaseAndUserConfigs( baseConfig, userConfig );\n\t\t}\n\t\treturn {};\n\t}, [ baseConfig, userConfig ] );\n\n\t// Copied from packages/edit-site/src/components/revisions/index.js\n\t// could we create a shared hook?\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst [ globalStyles ] = useGlobalStylesOutputWithConfig( mergedConfig );\n\n\tconst settings = useMemo(\n\t\t() => ( {\n\t\t\t...originalSettings,\n\t\t\tstyles:\n\t\t\t\t! isObjectEmpty( globalStyles ) && ! isObjectEmpty( userConfig )\n\t\t\t\t\t? globalStyles\n\t\t\t\t\t: originalSettings.styles,\n\t\t\tisPreviewMode: true,\n\t\t} ),\n\t\t[ globalStyles, originalSettings, userConfig ]\n\t);\n\n\treturn (\n\t\t<EditorCanvasContainer\n\t\t\tonClose={ onClose }\n\t\t\tenableResizing={ enableResizing }\n\t\t\tcloseButtonLabel={ showCloseButton ? __( 'Close' ) : null }\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={ clsx( 'edit-site-style-book', {\n\t\t\t\t\t'is-button': !! onClick,\n\t\t\t\t} ) }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textColor,\n\t\t\t\t\tbackground: backgroundColor,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ showTabs ? (\n\t\t\t\t\t<Tabs>\n\t\t\t\t\t\t<div className=\"edit-site-style-book__tablist-container\">\n\t\t\t\t\t\t\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => (\n\t\t\t\t\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\t\t\t\t\ttabId={ tab.slug }\n\t\t\t\t\t\t\t\t\t\tkey={ tab.slug }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ tab.title }\n\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</Tabs.TabList>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\tconst categoryDefinition = tab.slug\n\t\t\t\t\t\t\t\t? getTopLevelStyleBookCategories().find(\n\t\t\t\t\t\t\t\t\t\t( _category ) =>\n\t\t\t\t\t\t\t\t\t\t\t_category.slug === tab.slug\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: null;\n\t\t\t\t\t\t\tconst filteredExamples = categoryDefinition\n\t\t\t\t\t\t\t\t? getExamplesByCategory(\n\t\t\t\t\t\t\t\t\t\tcategoryDefinition,\n\t\t\t\t\t\t\t\t\t\texamples\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: { examples };\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\tkey={ tab.slug }\n\t\t\t\t\t\t\t\t\ttabId={ tab.slug }\n\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-style-book__tabpanel\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\t\t\t\t\tcategory={ tab.slug }\n\t\t\t\t\t\t\t\t\t\texamples={ filteredExamples }\n\t\t\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\t\t\ttitle={ tab.title }\n\t\t\t\t\t\t\t\t\t\tgoTo={ goTo }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t</Tabs>\n\t\t\t\t) : (\n\t\t\t\t\t<StyleBookBody\n\t\t\t\t\t\texamples={ { examples: examplesForSinglePageUse } }\n\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\tgoTo={ goTo }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</EditorCanvasContainer>\n\t);\n}\n\n/**\n * Style Book Preview component renders the stylebook without the Editor dependency.\n *\n * @param {Object} props Component props.\n * @param {Object} props.userConfig User configuration.\n * @param {boolean} props.isStatic Whether the stylebook is static or clickable.\n * @return {Object} Style Book Preview component.\n */\nexport const StyleBookPreview = ( { userConfig = {}, isStatic = false } ) => {\n\tconst siteEditorSettings = useSelect(\n\t\t( select ) => select( siteEditorStore ).getSettings(),\n\t\t[]\n\t);\n\n\tconst canUserUploadMedia = useSelect(\n\t\t( select ) =>\n\t\t\tselect( coreStore ).canUser( 'create', {\n\t\t\t\tkind: 'postType',\n\t\t\t\tname: 'attachment',\n\t\t\t} ),\n\t\t[]\n\t);\n\n\t// Update block editor settings because useMultipleOriginColorsAndGradients fetch colours from there.\n\tuseEffect( () => {\n\t\tdispatch( blockEditorStore ).updateSettings( {\n\t\t\t...siteEditorSettings,\n\t\t\tmediaUpload: canUserUploadMedia ? uploadMedia : undefined,\n\t\t} );\n\t}, [ siteEditorSettings, canUserUploadMedia ] );\n\n\tconst [ section, onChangeSection ] = useSection();\n\n\tconst isSelected = ( blockName ) => {\n\t\t// Match '/blocks/core%2Fbutton' and\n\t\t// '/blocks/core%2Fbutton/typography', but not\n\t\t// '/blocks/core%2Fbuttons'.\n\t\treturn (\n\t\t\tsection === `/blocks/${ encodeURIComponent( blockName ) }` ||\n\t\t\tsection.startsWith(\n\t\t\t\t`/blocks/${ encodeURIComponent( blockName ) }/`\n\t\t\t)\n\t\t);\n\t};\n\n\tconst onSelect = ( blockName, isBlockVariation = false ) => {\n\t\tif (\n\t\t\tSTYLE_BOOK_COLOR_GROUPS.find(\n\t\t\t\t( group ) => group.slug === blockName\n\t\t\t)\n\t\t) {\n\t\t\t// Go to color palettes Global Styles.\n\t\t\tonChangeSection( '/colors/palette' );\n\t\t\treturn;\n\t\t}\n\t\tif ( blockName === 'typography' ) {\n\t\t\t// Go to typography Global Styles.\n\t\t\tonChangeSection( '/typography' );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlockVariation ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Now go to the selected block.\n\t\tonChangeSection( `/blocks/${ encodeURIComponent( blockName ) }` );\n\t};\n\n\tconst colors = useMultiOriginPalettes();\n\tconst examples = getExamples( colors );\n\tconst examplesForSinglePageUse = getExamplesForSinglePageUse( examples );\n\n\tlet previewCategory = null;\n\tlet blockVariation = null;\n\tif ( section.includes( '/colors' ) ) {\n\t\tpreviewCategory = 'colors';\n\t} else if ( section.includes( '/typography' ) ) {\n\t\tpreviewCategory = 'text';\n\t} else if ( section.includes( '/blocks' ) ) {\n\t\tpreviewCategory = 'blocks';\n\t\tlet blockName = decodeURIComponent( section ).split( '/blocks/' )[ 1 ];\n\n\t\t// The blockName can contain variations, if so, extract the variation.\n\t\tif ( blockName?.includes( '/variations' ) ) {\n\t\t\t[ blockName, blockVariation ] = blockName.split( '/variations/' );\n\t\t}\n\n\t\tif (\n\t\t\tblockName &&\n\t\t\texamples.find( ( example ) => example.name === blockName )\n\t\t) {\n\t\t\tpreviewCategory = blockName;\n\t\t}\n\t} else if ( ! isStatic ) {\n\t\tpreviewCategory = 'overview';\n\t}\n\tconst categoryDefinition = STYLE_BOOK_PREVIEW_CATEGORIES.find(\n\t\t( category ) => category.slug === previewCategory\n\t);\n\n\tconst filteredExamples = useMemo( () => {\n\t\t// If there's no category definition there may be a single block.\n\t\tif ( ! categoryDefinition ) {\n\t\t\treturn {\n\t\t\t\texamples: [\n\t\t\t\t\texamples.find(\n\t\t\t\t\t\t( example ) => example.name === previewCategory\n\t\t\t\t\t),\n\t\t\t\t],\n\t\t\t};\n\t\t}\n\n\t\treturn getExamplesByCategory( categoryDefinition, examples );\n\t}, [ categoryDefinition, examples, previewCategory ] );\n\n\tconst displayedExamples = useMemo( () => {\n\t\t// If there's no preview category, show all examples.\n\t\tif ( ! previewCategory ) {\n\t\t\treturn { examples: examplesForSinglePageUse };\n\t\t}\n\n\t\tif ( blockVariation ) {\n\t\t\treturn {\n\t\t\t\texamples: applyBlockVariationsToExamples(\n\t\t\t\t\tfilteredExamples.examples,\n\t\t\t\t\tblockVariation\n\t\t\t\t),\n\t\t\t};\n\t\t}\n\n\t\treturn filteredExamples;\n\t}, [\n\t\tpreviewCategory,\n\t\texamplesForSinglePageUse,\n\t\tblockVariation,\n\t\tfilteredExamples,\n\t] );\n\n\tconst { base: baseConfig } = useContext( GlobalStylesContext );\n\tconst goTo = getStyleBookNavigationFromPath( section );\n\n\tconst mergedConfig = useMemo( () => {\n\t\tif ( ! isObjectEmpty( userConfig ) && ! isObjectEmpty( baseConfig ) ) {\n\t\t\treturn mergeBaseAndUserConfigs( baseConfig, userConfig );\n\t\t}\n\t\treturn {};\n\t}, [ baseConfig, userConfig ] );\n\n\tconst [ globalStyles ] = useGlobalStylesOutputWithConfig( mergedConfig );\n\n\tconst settings = useMemo(\n\t\t() => ( {\n\t\t\t...siteEditorSettings,\n\t\t\tstyles:\n\t\t\t\t! isObjectEmpty( globalStyles ) && ! isObjectEmpty( userConfig )\n\t\t\t\t\t? globalStyles\n\t\t\t\t\t: siteEditorSettings.styles,\n\t\t\tisPreviewMode: true,\n\t\t} ),\n\t\t[ globalStyles, siteEditorSettings, userConfig ]\n\t);\n\n\treturn (\n\t\t<div className=\"edit-site-style-book\">\n\t\t\t<BlockEditorProvider settings={ settings }>\n\t\t\t\t<GlobalStylesRenderer disableRootPadding />\n\t\t\t\t<StyleBookBody\n\t\t\t\t\texamples={ displayedExamples }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tgoTo={ goTo }\n\t\t\t\t\tisSelected={ ! isStatic ? isSelected : null }\n\t\t\t\t\tonSelect={ ! isStatic ? onSelect : null }\n\t\t\t\t/>\n\t\t\t</BlockEditorProvider>\n\t\t</div>\n\t);\n};\n\nexport const StyleBookBody = ( {\n\texamples,\n\tisSelected,\n\tonClick,\n\tonSelect,\n\tsettings,\n\ttitle,\n\tgoTo,\n} ) => {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\tconst [ hasIframeLoaded, setHasIframeLoaded ] = useState( false );\n\tconst iframeRef = useRef( null );\n\t// The presence of an `onClick` prop indicates that the Style Book is being used as a button.\n\t// In this case, add additional props to the iframe to make it behave like a button.\n\tconst buttonModeProps = {\n\t\trole: 'button',\n\t\tonFocus: () => setIsFocused( true ),\n\t\tonBlur: () => setIsFocused( false ),\n\t\tonKeyDown: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { keyCode } = event;\n\t\t\tif ( onClick && ( keyCode === ENTER || keyCode === SPACE ) ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\tonClick: ( event ) => {\n\t\t\tif ( event.defaultPrevented ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ( onClick ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tonClick( event );\n\t\t\t}\n\t\t},\n\t\treadonly: true,\n\t};\n\n\tconst handleLoad = () => setHasIframeLoaded( true );\n\tuseLayoutEffect( () => {\n\t\tif ( hasIframeLoaded && iframeRef?.current ) {\n\t\t\tif ( goTo?.top ) {\n\t\t\t\tscrollToSection( 'top', iframeRef?.current );\n\t\t\t}\n\t\t}\n\t}, [ iframeRef?.current, goTo, scrollToSection, hasIframeLoaded ] );\n\n\treturn (\n\t\t<Iframe\n\t\t\tonLoad={ handleLoad }\n\t\t\tref={ iframeRef }\n\t\t\tclassName={ clsx( 'edit-site-style-book__iframe', {\n\t\t\t\t'is-focused': isFocused && !! onClick,\n\t\t\t\t'is-button': !! onClick,\n\t\t\t} ) }\n\t\t\tname=\"style-book-canvas\"\n\t\t\ttabIndex={ 0 }\n\t\t\t{ ...( onClick ? buttonModeProps : {} ) }\n\t\t>\n\t\t\t<EditorStyles styles={ settings.styles } />\n\t\t\t<style>\n\t\t\t\t{ STYLE_BOOK_IFRAME_STYLES }\n\t\t\t\t{ !! onClick &&\n\t\t\t\t\t'body { cursor: pointer; } body * { pointer-events: none; }' }\n\t\t\t</style>\n\t\t\t<Examples\n\t\t\t\tclassName=\"edit-site-style-book__examples\"\n\t\t\t\tfilteredExamples={ examples }\n\t\t\t\tlabel={\n\t\t\t\t\ttitle\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Category of blocks, e.g. Text.\n\t\t\t\t\t\t\t\t__( 'Examples of blocks in the %s category' ),\n\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'Examples of blocks' )\n\t\t\t\t}\n\t\t\t\tisSelected={ isSelected }\n\t\t\t\tonSelect={ onSelect }\n\t\t\t\tkey={ title }\n\t\t\t/>\n\t\t</Iframe>\n\t);\n};\n\nconst Examples = memo(\n\t( { className, filteredExamples, label, isSelected, onSelect } ) => {\n\t\treturn (\n\t\t\t<Composite\n\t\t\t\torientation=\"vertical\"\n\t\t\t\tclassName={ className }\n\t\t\t\taria-label={ label }\n\t\t\t\trole=\"grid\"\n\t\t\t>\n\t\t\t\t{ !! filteredExamples?.examples?.length &&\n\t\t\t\t\tfilteredExamples.examples.map( ( example ) => (\n\t\t\t\t\t\t<Example\n\t\t\t\t\t\t\tkey={ example.name }\n\t\t\t\t\t\t\tid={ `example-${ example.name }` }\n\t\t\t\t\t\t\ttitle={ example.title }\n\t\t\t\t\t\t\tcontent={ example.content }\n\t\t\t\t\t\t\tblocks={ example.blocks }\n\t\t\t\t\t\t\tisSelected={ isSelected?.( example.name ) }\n\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t!! onSelect\n\t\t\t\t\t\t\t\t\t? () =>\n\t\t\t\t\t\t\t\t\t\t\tonSelect(\n\t\t\t\t\t\t\t\t\t\t\t\texample.name,\n\t\t\t\t\t\t\t\t\t\t\t\t!! example.variation\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t: null\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ !! filteredExamples?.subcategories?.length &&\n\t\t\t\t\tfilteredExamples.subcategories.map( ( subcategory ) => (\n\t\t\t\t\t\t<Composite.Group\n\t\t\t\t\t\t\tclassName=\"edit-site-style-book__subcategory\"\n\t\t\t\t\t\t\tkey={ `subcategory-${ subcategory.slug }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Composite.GroupLabel>\n\t\t\t\t\t\t\t\t<h2 className=\"edit-site-style-book__subcategory-title\">\n\t\t\t\t\t\t\t\t\t{ subcategory.title }\n\t\t\t\t\t\t\t\t</h2>\n\t\t\t\t\t\t\t</Composite.GroupLabel>\n\t\t\t\t\t\t\t<Subcategory\n\t\t\t\t\t\t\t\texamples={ subcategory.examples }\n\t\t\t\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Composite.Group>\n\t\t\t\t\t) ) }\n\t\t\t</Composite>\n\t\t);\n\t}\n);\n\nconst Subcategory = ( { examples, isSelected, onSelect } ) => {\n\treturn (\n\t\t!! examples?.length &&\n\t\texamples.map( ( example ) => (\n\t\t\t<Example\n\t\t\t\tkey={ example.name }\n\t\t\t\tid={ `example-${ example.name }` }\n\t\t\t\ttitle={ example.title }\n\t\t\t\tcontent={ example.content }\n\t\t\t\tblocks={ example.blocks }\n\t\t\t\tisSelected={ isSelected?.( example.name ) }\n\t\t\t\tonClick={ !! onSelect ? () => onSelect( example.name ) : null }\n\t\t\t/>\n\t\t) )\n\t);\n};\n\nconst disabledExamples = [ 'example-duotones' ];\n\nconst Example = ( { id, title, blocks, isSelected, onClick, content } ) => {\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst settings = useMemo(\n\t\t() => ( {\n\t\t\t...originalSettings,\n\t\t\tfocusMode: false, // Disable \"Spotlight mode\".\n\t\t\tisPreviewMode: true,\n\t\t} ),\n\t\t[ originalSettings ]\n\t);\n\n\t// Cache the list of blocks to avoid additional processing when the component is re-rendered.\n\tconst renderedBlocks = useMemo(\n\t\t() => ( Array.isArray( blocks ) ? blocks : [ blocks ] ),\n\t\t[ blocks ]\n\t);\n\n\tconst disabledProps =\n\t\tdisabledExamples.includes( id ) || ! onClick\n\t\t\t? {\n\t\t\t\t\tdisabled: true,\n\t\t\t\t\taccessibleWhenDisabled: !! onClick,\n\t\t\t }\n\t\t\t: {};\n\n\treturn (\n\t\t<div role=\"row\">\n\t\t\t<div role=\"gridcell\">\n\t\t\t\t<Composite.Item\n\t\t\t\t\tclassName={ clsx( 'edit-site-style-book__example', {\n\t\t\t\t\t\t'is-selected': isSelected,\n\t\t\t\t\t\t'is-disabled-example': !! disabledProps?.disabled,\n\t\t\t\t\t} ) }\n\t\t\t\t\tid={ id }\n\t\t\t\t\taria-label={\n\t\t\t\t\t\t!! onClick\n\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t// translators: %s: Title of a block, e.g. Heading.\n\t\t\t\t\t\t\t\t\t__( 'Open %s styles in Styles panel' ),\n\t\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\trender={ <div /> }\n\t\t\t\t\trole={ !! onClick ? 'button' : null }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t{ ...disabledProps }\n\t\t\t\t>\n\t\t\t\t\t<span className=\"edit-site-style-book__example-title\">\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</span>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"edit-site-style-book__example-preview\"\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t<Disabled className=\"edit-site-style-book__example-preview__content\">\n\t\t\t\t\t\t\t{ content ? (\n\t\t\t\t\t\t\t\tcontent\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<ExperimentalBlockEditorProvider\n\t\t\t\t\t\t\t\t\tvalue={ renderedBlocks }\n\t\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<EditorStyles />\n\t\t\t\t\t\t\t\t\t<BlockList renderAppender={ false } />\n\t\t\t\t\t\t\t\t</ExperimentalBlockEditorProvider>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Disabled>\n\t\t\t\t\t</div>\n\t\t\t\t</Composite.Item>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default StyleBook;\n"],"mappings":"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","ignoreList":[]}
|
package/build/store/selectors.js
CHANGED
|
@@ -88,7 +88,7 @@ const __experimentalGetPreviewDeviceType = exports.__experimentalGetPreviewDevic
|
|
|
88
88
|
const getCanUserCreateMedia = exports.getCanUserCreateMedia = (0, _data.createRegistrySelector)(select => () => {
|
|
89
89
|
(0, _deprecated.default)(`wp.data.select( 'core/edit-site' ).getCanUserCreateMedia()`, {
|
|
90
90
|
since: '6.7',
|
|
91
|
-
alternative: `wp.data.select( 'core' ).canUser( 'create', { kind: '
|
|
91
|
+
alternative: `wp.data.select( 'core' ).canUser( 'create', { kind: 'postType', type: 'attachment' } )`
|
|
92
92
|
});
|
|
93
93
|
return select(_coreData.store).canUser('create', 'media');
|
|
94
94
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_coreData","require","_data","_deprecated","_interopRequireDefault","_element","_preferences","_editor","_blockEditor","_lockUnlock","_constants","_getFilteredTemplateParts","isFeatureActive","exports","createRegistrySelector","select","_","featureName","deprecated","since","alternative","preferencesStore","get","__experimentalGetPreviewDeviceType","version","editorStore","getDeviceType","getCanUserCreateMedia","coreDataStore","canUser","getReusableBlocks","isWeb","Platform","OS","getEntityRecords","per_page","getSettings","state","settings","getHomeTemplateId","getEditedPostType","editedPost","postType","getEditedPostId","id","getEditedPostContext","context","getPage","isInserterOpened","__experimentalGetInsertionPoint","unlock","getInserter","isListViewOpened","isSaveViewOpened","saveViewPanel","getBlocksAndTemplateParts","templateParts","TEMPLATE_PART_POST_TYPE","getBlocksByName","getBlocksByClientId","blockEditorStore","clientIds","blocks","getCurrentTemplateTemplateParts","createSelector","getFilteredTemplatePartBlocks","getEditorMode","getCurrentTemplateNavigationPanelSubMenu","getNavigationPanelActiveMenu","isNavigationOpened","isPage","postId","hasPageContentFocus"],"sources":["@wordpress/edit-site/src/store/selectors.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { createRegistrySelector, createSelector } from '@wordpress/data';\nimport deprecated from '@wordpress/deprecated';\nimport { Platform } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport { TEMPLATE_PART_POST_TYPE } from '../utils/constants';\nimport getFilteredTemplatePartBlocks from '../utils/get-filtered-template-parts';\n\n/**\n * @typedef {'template'|'template_type'} TemplateType Template type.\n */\n\n/**\n * Returns whether the given feature is enabled or not.\n *\n * @deprecated\n * @param {Object} state Global application state.\n * @param {string} featureName Feature slug.\n *\n * @return {boolean} Is active.\n */\nexport const isFeatureActive = createRegistrySelector(\n\t( select ) => ( _, featureName ) => {\n\t\tdeprecated( `select( 'core/edit-site' ).isFeatureActive`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `select( 'core/preferences' ).get`,\n\t\t} );\n\n\t\treturn !! select( preferencesStore ).get(\n\t\t\t'core/edit-site',\n\t\t\tfeatureName\n\t\t);\n\t}\n);\n\n/**\n * Returns the current editing canvas device type.\n *\n * @deprecated\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Device type.\n */\nexport const __experimentalGetPreviewDeviceType = createRegistrySelector(\n\t( select ) => () => {\n\t\tdeprecated(\n\t\t\t`select( 'core/edit-site' ).__experimentalGetPreviewDeviceType`,\n\t\t\t{\n\t\t\t\tsince: '6.5',\n\t\t\t\tversion: '6.7',\n\t\t\t\talternative: `select( 'core/editor' ).getDeviceType`,\n\t\t\t}\n\t\t);\n\t\treturn select( editorStore ).getDeviceType();\n\t}\n);\n\n/**\n * Returns whether the current user can create media or not.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} Whether the current user can create media or not.\n */\nexport const getCanUserCreateMedia = createRegistrySelector(\n\t( select ) => () => {\n\t\tdeprecated(\n\t\t\t`wp.data.select( 'core/edit-site' ).getCanUserCreateMedia()`,\n\t\t\t{\n\t\t\t\tsince: '6.7',\n\t\t\t\talternative: `wp.data.select( 'core' ).canUser( 'create', { kind: 'root', type: 'media' } )`,\n\t\t\t}\n\t\t);\n\n\t\treturn select( coreDataStore ).canUser( 'create', 'media' );\n\t}\n);\n\n/**\n * Returns any available Reusable blocks.\n *\n * @param {Object} state Global application state.\n *\n * @return {Array} The available reusable blocks.\n */\nexport const getReusableBlocks = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-site' ).getReusableBlocks()`, {\n\t\tsince: '6.5',\n\t\tversion: '6.8',\n\t\talternative: `select( 'core/core' ).getEntityRecords( 'postType', 'wp_block' )`,\n\t} );\n\tconst isWeb = Platform.OS === 'web';\n\treturn isWeb\n\t\t? select( coreDataStore ).getEntityRecords( 'postType', 'wp_block', {\n\t\t\t\tper_page: -1,\n\t\t } )\n\t\t: [];\n} );\n\n/**\n * Returns the site editor settings.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} Settings.\n */\nexport function getSettings( state ) {\n\t// It is important that we don't inject anything into these settings locally.\n\t// The reason for this is that we have an effect in place that calls setSettings based on the previous value of getSettings.\n\t// If we add computed settings here, we'll be adding these computed settings to the state which is very unexpected.\n\treturn state.settings;\n}\n\n/**\n * @deprecated\n */\nexport function getHomeTemplateId() {\n\tdeprecated( \"select( 'core/edit-site' ).getHomeTemplateId\", {\n\t\tsince: '6.2',\n\t\tversion: '6.4',\n\t} );\n}\n\n/**\n * Returns the current edited post type (wp_template or wp_template_part).\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {?TemplateType} Template type.\n */\nexport function getEditedPostType( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getEditedPostType\", {\n\t\tsince: '6.8',\n\t\talternative: \"select( 'core/editor' ).getCurrentPostType\",\n\t} );\n\treturn state.editedPost.postType;\n}\n\n/**\n * Returns the ID of the currently edited template or template part.\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {?string} Post ID.\n */\nexport function getEditedPostId( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getEditedPostId\", {\n\t\tsince: '6.8',\n\t\talternative: \"select( 'core/editor' ).getCurrentPostId\",\n\t} );\n\treturn state.editedPost.id;\n}\n\n/**\n * Returns the edited post's context object.\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {Object} Page.\n */\nexport function getEditedPostContext( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getEditedPostContext\", {\n\t\tsince: '6.8',\n\t} );\n\n\treturn state.editedPost.context;\n}\n\n/**\n * Returns the current page object.\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {Object} Page.\n */\nexport function getPage( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getPage\", {\n\t\tsince: '6.8',\n\t} );\n\n\treturn { context: state.editedPost.context };\n}\n\n/**\n * Returns true if the inserter is opened.\n *\n * @deprecated\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport const isInserterOpened = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-site' ).isInserterOpened`, {\n\t\tsince: '6.5',\n\t\talternative: `select( 'core/editor' ).isInserterOpened`,\n\t} );\n\treturn select( editorStore ).isInserterOpened();\n} );\n\n/**\n * Get the insertion point for the inserter.\n *\n * @deprecated\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID, index to insert at and starting filter value.\n */\nexport const __experimentalGetInsertionPoint = createRegistrySelector(\n\t( select ) => () => {\n\t\tdeprecated(\n\t\t\t`select( 'core/edit-site' ).__experimentalGetInsertionPoint`,\n\t\t\t{\n\t\t\t\tsince: '6.5',\n\t\t\t\tversion: '6.7',\n\t\t\t}\n\t\t);\n\t\treturn unlock( select( editorStore ) ).getInserter();\n\t}\n);\n\n/**\n * Returns true if the list view is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the list view is opened.\n */\nexport const isListViewOpened = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-site' ).isListViewOpened`, {\n\t\tsince: '6.5',\n\t\talternative: `select( 'core/editor' ).isListViewOpened`,\n\t} );\n\treturn select( editorStore ).isListViewOpened();\n} );\n\n/**\n * Returns the current opened/closed state of the save panel.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} True if the save panel should be open; false if closed.\n */\nexport function isSaveViewOpened( state ) {\n\treturn state.saveViewPanel;\n}\n\nfunction getBlocksAndTemplateParts( select ) {\n\tconst templateParts = select( coreDataStore ).getEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_PART_POST_TYPE,\n\t\t{ per_page: -1 }\n\t);\n\n\tconst { getBlocksByName, getBlocksByClientId } = select( blockEditorStore );\n\n\tconst clientIds = getBlocksByName( 'core/template-part' );\n\tconst blocks = getBlocksByClientId( clientIds );\n\treturn [ blocks, templateParts ];\n}\n\n/**\n * Returns the template parts and their blocks for the current edited template.\n *\n * @deprecated\n * @param {Object} state Global application state.\n * @return {Array} Template parts and their blocks in an array.\n */\nexport const getCurrentTemplateTemplateParts = createRegistrySelector(\n\t( select ) =>\n\t\tcreateSelector(\n\t\t\t() => {\n\t\t\t\tdeprecated(\n\t\t\t\t\t`select( 'core/edit-site' ).getCurrentTemplateTemplateParts()`,\n\t\t\t\t\t{\n\t\t\t\t\t\tsince: '6.7',\n\t\t\t\t\t\tversion: '6.9',\n\t\t\t\t\t\talternative: `select( 'core/block-editor' ).getBlocksByName( 'core/template-part' )`,\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\treturn getFilteredTemplatePartBlocks(\n\t\t\t\t\t...getBlocksAndTemplateParts( select )\n\t\t\t\t);\n\t\t\t},\n\t\t\t() => getBlocksAndTemplateParts( select )\n\t\t)\n);\n\n/**\n * Returns the current editing mode.\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Editing mode.\n */\nexport const getEditorMode = createRegistrySelector( ( select ) => () => {\n\treturn select( preferencesStore ).get( 'core', 'editorMode' );\n} );\n\n/**\n * @deprecated\n */\nexport function getCurrentTemplateNavigationPanelSubMenu() {\n\tdeprecated(\n\t\t\"dispatch( 'core/edit-site' ).getCurrentTemplateNavigationPanelSubMenu\",\n\t\t{\n\t\t\tsince: '6.2',\n\t\t\tversion: '6.4',\n\t\t}\n\t);\n}\n\n/**\n * @deprecated\n */\nexport function getNavigationPanelActiveMenu() {\n\tdeprecated( \"dispatch( 'core/edit-site' ).getNavigationPanelActiveMenu\", {\n\t\tsince: '6.2',\n\t\tversion: '6.4',\n\t} );\n}\n\n/**\n * @deprecated\n */\nexport function isNavigationOpened() {\n\tdeprecated( \"dispatch( 'core/edit-site' ).isNavigationOpened\", {\n\t\tsince: '6.2',\n\t\tversion: '6.4',\n\t} );\n}\n\n/**\n * Whether or not the editor has a page loaded into it.\n *\n * @see setPage\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether or not the editor has a page loaded into it.\n */\nexport function isPage( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).isPage\", {\n\t\tsince: '6.8',\n\t\talternative: \"select( 'core/editor' ).getCurrentPostType\",\n\t} );\n\n\treturn !! state.editedPost.context?.postId;\n}\n\n/**\n * Whether or not the editor allows only page content to be edited.\n *\n * @deprecated\n *\n * @return {boolean} Whether or not focus is on editing page content.\n */\nexport function hasPageContentFocus() {\n\tdeprecated( `select( 'core/edit-site' ).hasPageContentFocus`, {\n\t\tsince: '6.5',\n\t} );\n\n\treturn false;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_coreData","require","_data","_deprecated","_interopRequireDefault","_element","_preferences","_editor","_blockEditor","_lockUnlock","_constants","_getFilteredTemplateParts","isFeatureActive","exports","createRegistrySelector","select","_","featureName","deprecated","since","alternative","preferencesStore","get","__experimentalGetPreviewDeviceType","version","editorStore","getDeviceType","getCanUserCreateMedia","coreDataStore","canUser","getReusableBlocks","isWeb","Platform","OS","getEntityRecords","per_page","getSettings","state","settings","getHomeTemplateId","getEditedPostType","editedPost","postType","getEditedPostId","id","getEditedPostContext","context","getPage","isInserterOpened","__experimentalGetInsertionPoint","unlock","getInserter","isListViewOpened","isSaveViewOpened","saveViewPanel","getBlocksAndTemplateParts","templateParts","TEMPLATE_PART_POST_TYPE","getBlocksByName","getBlocksByClientId","blockEditorStore","clientIds","blocks","getCurrentTemplateTemplateParts","createSelector","getFilteredTemplatePartBlocks","getEditorMode","getCurrentTemplateNavigationPanelSubMenu","getNavigationPanelActiveMenu","isNavigationOpened","isPage","postId","hasPageContentFocus"],"sources":["@wordpress/edit-site/src/store/selectors.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreDataStore } from '@wordpress/core-data';\nimport { createRegistrySelector, createSelector } from '@wordpress/data';\nimport deprecated from '@wordpress/deprecated';\nimport { Platform } from '@wordpress/element';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as editorStore } from '@wordpress/editor';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport { TEMPLATE_PART_POST_TYPE } from '../utils/constants';\nimport getFilteredTemplatePartBlocks from '../utils/get-filtered-template-parts';\n\n/**\n * @typedef {'template'|'template_type'} TemplateType Template type.\n */\n\n/**\n * Returns whether the given feature is enabled or not.\n *\n * @deprecated\n * @param {Object} state Global application state.\n * @param {string} featureName Feature slug.\n *\n * @return {boolean} Is active.\n */\nexport const isFeatureActive = createRegistrySelector(\n\t( select ) => ( _, featureName ) => {\n\t\tdeprecated( `select( 'core/edit-site' ).isFeatureActive`, {\n\t\t\tsince: '6.0',\n\t\t\talternative: `select( 'core/preferences' ).get`,\n\t\t} );\n\n\t\treturn !! select( preferencesStore ).get(\n\t\t\t'core/edit-site',\n\t\t\tfeatureName\n\t\t);\n\t}\n);\n\n/**\n * Returns the current editing canvas device type.\n *\n * @deprecated\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Device type.\n */\nexport const __experimentalGetPreviewDeviceType = createRegistrySelector(\n\t( select ) => () => {\n\t\tdeprecated(\n\t\t\t`select( 'core/edit-site' ).__experimentalGetPreviewDeviceType`,\n\t\t\t{\n\t\t\t\tsince: '6.5',\n\t\t\t\tversion: '6.7',\n\t\t\t\talternative: `select( 'core/editor' ).getDeviceType`,\n\t\t\t}\n\t\t);\n\t\treturn select( editorStore ).getDeviceType();\n\t}\n);\n\n/**\n * Returns whether the current user can create media or not.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} Whether the current user can create media or not.\n */\nexport const getCanUserCreateMedia = createRegistrySelector(\n\t( select ) => () => {\n\t\tdeprecated(\n\t\t\t`wp.data.select( 'core/edit-site' ).getCanUserCreateMedia()`,\n\t\t\t{\n\t\t\t\tsince: '6.7',\n\t\t\t\talternative: `wp.data.select( 'core' ).canUser( 'create', { kind: 'postType', type: 'attachment' } )`,\n\t\t\t}\n\t\t);\n\n\t\treturn select( coreDataStore ).canUser( 'create', 'media' );\n\t}\n);\n\n/**\n * Returns any available Reusable blocks.\n *\n * @param {Object} state Global application state.\n *\n * @return {Array} The available reusable blocks.\n */\nexport const getReusableBlocks = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-site' ).getReusableBlocks()`, {\n\t\tsince: '6.5',\n\t\tversion: '6.8',\n\t\talternative: `select( 'core/core' ).getEntityRecords( 'postType', 'wp_block' )`,\n\t} );\n\tconst isWeb = Platform.OS === 'web';\n\treturn isWeb\n\t\t? select( coreDataStore ).getEntityRecords( 'postType', 'wp_block', {\n\t\t\t\tper_page: -1,\n\t\t } )\n\t\t: [];\n} );\n\n/**\n * Returns the site editor settings.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} Settings.\n */\nexport function getSettings( state ) {\n\t// It is important that we don't inject anything into these settings locally.\n\t// The reason for this is that we have an effect in place that calls setSettings based on the previous value of getSettings.\n\t// If we add computed settings here, we'll be adding these computed settings to the state which is very unexpected.\n\treturn state.settings;\n}\n\n/**\n * @deprecated\n */\nexport function getHomeTemplateId() {\n\tdeprecated( \"select( 'core/edit-site' ).getHomeTemplateId\", {\n\t\tsince: '6.2',\n\t\tversion: '6.4',\n\t} );\n}\n\n/**\n * Returns the current edited post type (wp_template or wp_template_part).\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {?TemplateType} Template type.\n */\nexport function getEditedPostType( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getEditedPostType\", {\n\t\tsince: '6.8',\n\t\talternative: \"select( 'core/editor' ).getCurrentPostType\",\n\t} );\n\treturn state.editedPost.postType;\n}\n\n/**\n * Returns the ID of the currently edited template or template part.\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {?string} Post ID.\n */\nexport function getEditedPostId( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getEditedPostId\", {\n\t\tsince: '6.8',\n\t\talternative: \"select( 'core/editor' ).getCurrentPostId\",\n\t} );\n\treturn state.editedPost.id;\n}\n\n/**\n * Returns the edited post's context object.\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {Object} Page.\n */\nexport function getEditedPostContext( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getEditedPostContext\", {\n\t\tsince: '6.8',\n\t} );\n\n\treturn state.editedPost.context;\n}\n\n/**\n * Returns the current page object.\n *\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {Object} Page.\n */\nexport function getPage( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).getPage\", {\n\t\tsince: '6.8',\n\t} );\n\n\treturn { context: state.editedPost.context };\n}\n\n/**\n * Returns true if the inserter is opened.\n *\n * @deprecated\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport const isInserterOpened = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-site' ).isInserterOpened`, {\n\t\tsince: '6.5',\n\t\talternative: `select( 'core/editor' ).isInserterOpened`,\n\t} );\n\treturn select( editorStore ).isInserterOpened();\n} );\n\n/**\n * Get the insertion point for the inserter.\n *\n * @deprecated\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID, index to insert at and starting filter value.\n */\nexport const __experimentalGetInsertionPoint = createRegistrySelector(\n\t( select ) => () => {\n\t\tdeprecated(\n\t\t\t`select( 'core/edit-site' ).__experimentalGetInsertionPoint`,\n\t\t\t{\n\t\t\t\tsince: '6.5',\n\t\t\t\tversion: '6.7',\n\t\t\t}\n\t\t);\n\t\treturn unlock( select( editorStore ) ).getInserter();\n\t}\n);\n\n/**\n * Returns true if the list view is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the list view is opened.\n */\nexport const isListViewOpened = createRegistrySelector( ( select ) => () => {\n\tdeprecated( `select( 'core/edit-site' ).isListViewOpened`, {\n\t\tsince: '6.5',\n\t\talternative: `select( 'core/editor' ).isListViewOpened`,\n\t} );\n\treturn select( editorStore ).isListViewOpened();\n} );\n\n/**\n * Returns the current opened/closed state of the save panel.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} True if the save panel should be open; false if closed.\n */\nexport function isSaveViewOpened( state ) {\n\treturn state.saveViewPanel;\n}\n\nfunction getBlocksAndTemplateParts( select ) {\n\tconst templateParts = select( coreDataStore ).getEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_PART_POST_TYPE,\n\t\t{ per_page: -1 }\n\t);\n\n\tconst { getBlocksByName, getBlocksByClientId } = select( blockEditorStore );\n\n\tconst clientIds = getBlocksByName( 'core/template-part' );\n\tconst blocks = getBlocksByClientId( clientIds );\n\treturn [ blocks, templateParts ];\n}\n\n/**\n * Returns the template parts and their blocks for the current edited template.\n *\n * @deprecated\n * @param {Object} state Global application state.\n * @return {Array} Template parts and their blocks in an array.\n */\nexport const getCurrentTemplateTemplateParts = createRegistrySelector(\n\t( select ) =>\n\t\tcreateSelector(\n\t\t\t() => {\n\t\t\t\tdeprecated(\n\t\t\t\t\t`select( 'core/edit-site' ).getCurrentTemplateTemplateParts()`,\n\t\t\t\t\t{\n\t\t\t\t\t\tsince: '6.7',\n\t\t\t\t\t\tversion: '6.9',\n\t\t\t\t\t\talternative: `select( 'core/block-editor' ).getBlocksByName( 'core/template-part' )`,\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\t\treturn getFilteredTemplatePartBlocks(\n\t\t\t\t\t...getBlocksAndTemplateParts( select )\n\t\t\t\t);\n\t\t\t},\n\t\t\t() => getBlocksAndTemplateParts( select )\n\t\t)\n);\n\n/**\n * Returns the current editing mode.\n *\n * @param {Object} state Global application state.\n *\n * @return {string} Editing mode.\n */\nexport const getEditorMode = createRegistrySelector( ( select ) => () => {\n\treturn select( preferencesStore ).get( 'core', 'editorMode' );\n} );\n\n/**\n * @deprecated\n */\nexport function getCurrentTemplateNavigationPanelSubMenu() {\n\tdeprecated(\n\t\t\"dispatch( 'core/edit-site' ).getCurrentTemplateNavigationPanelSubMenu\",\n\t\t{\n\t\t\tsince: '6.2',\n\t\t\tversion: '6.4',\n\t\t}\n\t);\n}\n\n/**\n * @deprecated\n */\nexport function getNavigationPanelActiveMenu() {\n\tdeprecated( \"dispatch( 'core/edit-site' ).getNavigationPanelActiveMenu\", {\n\t\tsince: '6.2',\n\t\tversion: '6.4',\n\t} );\n}\n\n/**\n * @deprecated\n */\nexport function isNavigationOpened() {\n\tdeprecated( \"dispatch( 'core/edit-site' ).isNavigationOpened\", {\n\t\tsince: '6.2',\n\t\tversion: '6.4',\n\t} );\n}\n\n/**\n * Whether or not the editor has a page loaded into it.\n *\n * @see setPage\n * @deprecated\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether or not the editor has a page loaded into it.\n */\nexport function isPage( state ) {\n\tdeprecated( \"select( 'core/edit-site' ).isPage\", {\n\t\tsince: '6.8',\n\t\talternative: \"select( 'core/editor' ).getCurrentPostType\",\n\t} );\n\n\treturn !! state.editedPost.context?.postId;\n}\n\n/**\n * Whether or not the editor allows only page content to be edited.\n *\n * @deprecated\n *\n * @return {boolean} Whether or not focus is on editing page content.\n */\nexport function hasPageContentFocus() {\n\tdeprecated( `select( 'core/edit-site' ).hasPageContentFocus`, {\n\t\tsince: '6.5',\n\t} );\n\n\treturn false;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,7 +10,7 @@ function Media({
|
|
|
10
10
|
}) {
|
|
11
11
|
const {
|
|
12
12
|
record: media
|
|
13
|
-
} = useEntityRecord('
|
|
13
|
+
} = useEntityRecord('postType', 'attachment', id);
|
|
14
14
|
const currentSize = size.find(s => !!media?.media_details?.sizes?.[s]);
|
|
15
15
|
const mediaUrl = media?.media_details?.sizes?.[currentSize]?.source_url || media?.source_url;
|
|
16
16
|
if (!mediaUrl) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEntityRecord","jsx","_jsx","Media","id","size","props","record","media","currentSize","find","s","media_details","sizes","mediaUrl","source_url","src","alt","alt_text"],"sources":["@wordpress/edit-site/src/components/media/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityRecord } from '@wordpress/core-data';\n\nfunction Media( { id, size = [ 'large', 'medium', 'thumbnail' ], ...props } ) {\n\tconst { record: media } = useEntityRecord( '
|
|
1
|
+
{"version":3,"names":["useEntityRecord","jsx","_jsx","Media","id","size","props","record","media","currentSize","find","s","media_details","sizes","mediaUrl","source_url","src","alt","alt_text"],"sources":["@wordpress/edit-site/src/components/media/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityRecord } from '@wordpress/core-data';\n\nfunction Media( { id, size = [ 'large', 'medium', 'thumbnail' ], ...props } ) {\n\tconst { record: media } = useEntityRecord( 'postType', 'attachment', id );\n\tconst currentSize = size.find(\n\t\t( s ) => !! media?.media_details?.sizes?.[ s ]\n\t);\n\n\tconst mediaUrl =\n\t\tmedia?.media_details?.sizes?.[ currentSize ]?.source_url ||\n\t\tmedia?.source_url;\n\n\tif ( ! mediaUrl ) {\n\t\treturn null;\n\t}\n\n\treturn <img { ...props } src={ mediaUrl } alt={ media.alt_text } />;\n}\n\nexport default Media;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,eAAe,QAAQ,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEvD,SAASC,KAAKA,CAAE;EAAEC,EAAE;EAAEC,IAAI,GAAG,CAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAE;EAAE,GAAGC;AAAM,CAAC,EAAG;EAC7E,MAAM;IAAEC,MAAM,EAAEC;EAAM,CAAC,GAAGR,eAAe,CAAE,UAAU,EAAE,YAAY,EAAEI,EAAG,CAAC;EACzE,MAAMK,WAAW,GAAGJ,IAAI,CAACK,IAAI,CAC1BC,CAAC,IAAM,CAAC,CAAEH,KAAK,EAAEI,aAAa,EAAEC,KAAK,GAAIF,CAAC,CAC7C,CAAC;EAED,MAAMG,QAAQ,GACbN,KAAK,EAAEI,aAAa,EAAEC,KAAK,GAAIJ,WAAW,CAAE,EAAEM,UAAU,IACxDP,KAAK,EAAEO,UAAU;EAElB,IAAK,CAAED,QAAQ,EAAG;IACjB,OAAO,IAAI;EACZ;EAEA,oBAAOZ,IAAA;IAAA,GAAUI,KAAK;IAAGU,GAAG,EAAGF,QAAU;IAACG,GAAG,EAAGT,KAAK,CAACU;EAAU,CAAE,CAAC;AACpE;AAEA,eAAef,KAAK","ignoreList":[]}
|
|
@@ -68,10 +68,7 @@ export const descriptionField = {
|
|
|
68
68
|
render: ({
|
|
69
69
|
item
|
|
70
70
|
}) => {
|
|
71
|
-
return item.description &&
|
|
72
|
-
className: "page-templates-description",
|
|
73
|
-
children: decodeEntities(item.description)
|
|
74
|
-
});
|
|
71
|
+
return item.description && decodeEntities(item.description);
|
|
75
72
|
},
|
|
76
73
|
enableSorting: false,
|
|
77
74
|
enableGlobalSearch: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","Icon","__experimentalHStack","HStack","__","useState","useMemo","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","EditorProvider","useAddedBy","usePatternSettings","unlock","jsx","_jsx","jsxs","_jsxs","useGlobalStyle","PreviewField","item","settings","backgroundColor","blocks","content","raw","isEmpty","length","post","children","className","style","Async","previewField","label","id","render","enableSorting","descriptionField","description","enableGlobalSearch","AuthorField","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","type","alignment","spacing","onLoad","alt","src","authorField","getValue","author_text"],"sources":["@wordpress/edit-site/src/components/page-templates/fields.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { Icon, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { EditorProvider } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { useAddedBy } from './hooks';\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\n\nfunction PreviewField( { item } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<EditorProvider post={ item } settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName=\"page-templates-preview-field\"\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<BlockPreview.Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</BlockPreview.Async>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</EditorProvider>\n\t);\n}\n\nexport const previewField = {\n\tlabel: __( 'Preview' ),\n\tid: 'preview',\n\trender: PreviewField,\n\tenableSorting: false,\n};\n\nexport const descriptionField = {\n\tlabel: __( 'Description' ),\n\tid: 'description',\n\trender: ( { item } ) => {\n\t\treturn
|
|
1
|
+
{"version":3,"names":["clsx","Icon","__experimentalHStack","HStack","__","useState","useMemo","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","EditorProvider","useAddedBy","usePatternSettings","unlock","jsx","_jsx","jsxs","_jsxs","useGlobalStyle","PreviewField","item","settings","backgroundColor","blocks","content","raw","isEmpty","length","post","children","className","style","Async","previewField","label","id","render","enableSorting","descriptionField","description","enableGlobalSearch","AuthorField","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","type","alignment","spacing","onLoad","alt","src","authorField","getValue","author_text"],"sources":["@wordpress/edit-site/src/components/page-templates/fields.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { Icon, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo } from '@wordpress/element';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { EditorProvider } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { useAddedBy } from './hooks';\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\n\nconst { useGlobalStyle } = unlock( blockEditorPrivateApis );\n\nfunction PreviewField( { item } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<EditorProvider post={ item } settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName=\"page-templates-preview-field\"\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<BlockPreview.Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</BlockPreview.Async>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</EditorProvider>\n\t);\n}\n\nexport const previewField = {\n\tlabel: __( 'Preview' ),\n\tid: 'preview',\n\trender: PreviewField,\n\tenableSorting: false,\n};\n\nexport const descriptionField = {\n\tlabel: __( 'Description' ),\n\tid: 'description',\n\trender: ( { item } ) => {\n\t\treturn item.description && decodeEntities( item.description );\n\t},\n\tenableSorting: false,\n\tenableGlobalSearch: true,\n};\n\nfunction AuthorField( { item } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 0 }>\n\t\t\t{ imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nexport const authorField = {\n\tlabel: __( 'Author' ),\n\tid: 'author',\n\tgetValue: ( { item } ) => item.author_text,\n\trender: AuthorField,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,7 +31,6 @@ export function useAddedBy(postType, postId) {
|
|
|
31
31
|
return useSelect(select => {
|
|
32
32
|
const {
|
|
33
33
|
getEntityRecord,
|
|
34
|
-
getMedia,
|
|
35
34
|
getUser,
|
|
36
35
|
getEditedEntityRecord
|
|
37
36
|
} = select(coreStore);
|
|
@@ -63,7 +62,7 @@ export function useAddedBy(postType, postId) {
|
|
|
63
62
|
return {
|
|
64
63
|
type: originalSource,
|
|
65
64
|
icon: globeIcon,
|
|
66
|
-
imageUrl: siteData?.site_logo ?
|
|
65
|
+
imageUrl: siteData?.site_logo ? getEntityRecord('postType', 'attachment', siteData.site_logo)?.source_url : undefined,
|
|
67
66
|
text: authorText,
|
|
68
67
|
isCustomized: false
|
|
69
68
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","coreStore","useSelect","commentAuthorAvatar","authorIcon","layout","themeIcon","plugins","pluginIcon","globe","globeIcon","TEMPLATE_ORIGINS","useAddedBy","postType","postId","select","getEntityRecord","
|
|
1
|
+
{"version":3,"names":["store","coreStore","useSelect","commentAuthorAvatar","authorIcon","layout","themeIcon","plugins","pluginIcon","globe","globeIcon","TEMPLATE_ORIGINS","useAddedBy","postType","postId","select","getEntityRecord","getUser","getEditedEntityRecord","template","originalSource","original_source","authorText","author_text","type","icon","text","isCustomized","source","custom","siteData","imageUrl","site_logo","source_url","undefined","user","author","avatar_urls"],"sources":["@wordpress/edit-site/src/components/page-templates/hooks.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport {\n\tcommentAuthorAvatar as authorIcon,\n\tlayout as themeIcon,\n\tplugins as pluginIcon,\n\tglobe as globeIcon,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_ORIGINS } from '../../utils/constants';\n\n/** @typedef {'wp_template'|'wp_template_part'} TemplateType */\n\n/**\n * @typedef {'theme'|'plugin'|'site'|'user'} AddedByType\n *\n * @typedef AddedByData\n * @type {Object}\n * @property {AddedByType} type The type of the data.\n * @property {JSX.Element} icon The icon to display.\n * @property {string} [imageUrl] The optional image URL to display.\n * @property {string} [text] The text to display.\n * @property {boolean} isCustomized Whether the template has been customized.\n *\n * @param {TemplateType} postType The template post type.\n * @param {number} postId The template post id.\n * @return {AddedByData} The added by object or null.\n */\nexport function useAddedBy( postType, postId ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, getUser, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst template = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\tpostId\n\t\t\t);\n\t\t\tconst originalSource = template?.original_source;\n\t\t\tconst authorText = template?.author_text;\n\n\t\t\tswitch ( originalSource ) {\n\t\t\t\tcase 'theme': {\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: originalSource,\n\t\t\t\t\t\ticon: themeIcon,\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized:\n\t\t\t\t\t\t\ttemplate.source === TEMPLATE_ORIGINS.custom,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tcase 'plugin': {\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: originalSource,\n\t\t\t\t\t\ticon: pluginIcon,\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized:\n\t\t\t\t\t\t\ttemplate.source === TEMPLATE_ORIGINS.custom,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tcase 'site': {\n\t\t\t\t\tconst siteData = getEntityRecord(\n\t\t\t\t\t\t'root',\n\t\t\t\t\t\t'__unstableBase'\n\t\t\t\t\t);\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: originalSource,\n\t\t\t\t\t\ticon: globeIcon,\n\t\t\t\t\t\timageUrl: siteData?.site_logo\n\t\t\t\t\t\t\t? getEntityRecord(\n\t\t\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t\t\t'attachment',\n\t\t\t\t\t\t\t\t\tsiteData.site_logo\n\t\t\t\t\t\t\t )?.source_url\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\tconst user = getUser( template.author );\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttype: 'user',\n\t\t\t\t\t\ticon: authorIcon,\n\t\t\t\t\t\timageUrl: user?.avatar_urls?.[ 48 ],\n\t\t\t\t\t\ttext: authorText,\n\t\t\t\t\t\tisCustomized: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[ postType, postId ]\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SACCC,mBAAmB,IAAIC,UAAU,EACjCC,MAAM,IAAIC,SAAS,EACnBC,OAAO,IAAIC,UAAU,EACrBC,KAAK,IAAIC,SAAS,QACZ,kBAAkB;;AAEzB;AACA;AACA;AACA,SAASC,gBAAgB,QAAQ,uBAAuB;;AAExD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,UAAUA,CAAEC,QAAQ,EAAEC,MAAM,EAAG;EAC9C,OAAOZ,SAAS,CACba,MAAM,IAAM;IACb,MAAM;MAAEC,eAAe;MAAEC,OAAO;MAAEC;IAAsB,CAAC,GACxDH,MAAM,CAAEd,SAAU,CAAC;IACpB,MAAMkB,QAAQ,GAAGD,qBAAqB,CACrC,UAAU,EACVL,QAAQ,EACRC,MACD,CAAC;IACD,MAAMM,cAAc,GAAGD,QAAQ,EAAEE,eAAe;IAChD,MAAMC,UAAU,GAAGH,QAAQ,EAAEI,WAAW;IAExC,QAASH,cAAc;MACtB,KAAK,OAAO;QAAE;UACb,OAAO;YACNI,IAAI,EAAEJ,cAAc;YACpBK,IAAI,EAAEnB,SAAS;YACfoB,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EACXR,QAAQ,CAACS,MAAM,KAAKjB,gBAAgB,CAACkB;UACvC,CAAC;QACF;MACA,KAAK,QAAQ;QAAE;UACd,OAAO;YACNL,IAAI,EAAEJ,cAAc;YACpBK,IAAI,EAAEjB,UAAU;YAChBkB,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EACXR,QAAQ,CAACS,MAAM,KAAKjB,gBAAgB,CAACkB;UACvC,CAAC;QACF;MACA,KAAK,MAAM;QAAE;UACZ,MAAMC,QAAQ,GAAGd,eAAe,CAC/B,MAAM,EACN,gBACD,CAAC;UACD,OAAO;YACNQ,IAAI,EAAEJ,cAAc;YACpBK,IAAI,EAAEf,SAAS;YACfqB,QAAQ,EAAED,QAAQ,EAAEE,SAAS,GAC1BhB,eAAe,CACf,UAAU,EACV,YAAY,EACZc,QAAQ,CAACE,SACT,CAAC,EAAEC,UAAU,GACbC,SAAS;YACZR,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EAAE;UACf,CAAC;QACF;MACA;QAAS;UACR,MAAMQ,IAAI,GAAGlB,OAAO,CAAEE,QAAQ,CAACiB,MAAO,CAAC;UACvC,OAAO;YACNZ,IAAI,EAAE,MAAM;YACZC,IAAI,EAAErB,UAAU;YAChB2B,QAAQ,EAAEI,IAAI,EAAEE,WAAW,GAAI,EAAE,CAAE;YACnCX,IAAI,EAAEJ,UAAU;YAChBK,YAAY,EAAE;UACf,CAAC;QACF;IACD;EACD,CAAC,EACD,CAAEd,QAAQ,EAAEC,MAAM,CACnB,CAAC;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","useState","useMemo","useCallback","useEffect","privateApis","corePrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","addQueryArgs","Page","AddNewTemplate","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","unlock","useEditPostAction","authorField","descriptionField","previewField","useEvent","jsx","_jsx","usePostActions","templateTitleField","useHistory","useLocation","useEntityRecordsWithPermissions","EMPTY_ARRAY","defaultLayouts","showMedia","layout","styles","author","width","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","titleField","mediaField","fields","filters","PageTemplates","path","query","activeView","postId","selection","setSelection","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onChangeSelection","items","navigate","length","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","elements","data","paginationInfo","postTypeActions","postType","context","editAction","actions","onChangeView","newView","className","title","children","isLoading","isItemClickable","onClickItem","id"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as corePrivateApis } from '@wordpress/core-data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport AddNewTemplate from '../add-new-template';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { authorField, descriptionField, previewField } from './fields';\nimport { useEvent } from '@wordpress/compose';\n\nconst { usePostActions, templateTitleField } = unlock( editorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( corePrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tshowMedia: false,\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tshowMedia: true,\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tshowMedia: false,\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\ttitleField: 'title',\n\tdescriptionField: 'description',\n\tmediaField: 'preview',\n\tfields: [ 'author' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function PageTemplates() {\n\tconst { path, query } = useLocation();\n\tconst { activeView = 'all', layout, postId } = query;\n\tconst [ selection, setSelection ] = useState( [ postId ] );\n\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t\t...defaultLayouts[ usedType ],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\n\t// Sync the layout from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\ttype: layout ?? DEFAULT_VIEW.type,\n\t\t} ) );\n\t}, [ setView, layout ] );\n\n\t// Sync the active view from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ setView, activeView ] );\n\n\tconst { records, isResolving: isLoadingData } =\n\t\tuseEntityRecordsWithPermissions( 'postType', TEMPLATE_POST_TYPE, {\n\t\t\tper_page: -1,\n\t\t} );\n\tconst history = useHistory();\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.navigate(\n\t\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ] : undefined,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, path, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\tpreviewField,\n\t\t\ttemplateTitleField,\n\t\t\tdescriptionField,\n\t\t\t{\n\t\t\t\t...authorField,\n\t\t\t\telements: authors,\n\t\t\t},\n\t\t],\n\t\t[ authors ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType: TEMPLATE_POST_TYPE,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useEvent( ( newView ) => {\n\t\tsetView( newView );\n\t\tif ( newView.type !== layout ) {\n\t\t\thistory.navigate(\n\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\n\t} );\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tkey={ activeView }\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\tisItemClickable={ () => true }\n\t\t\t\tonClickItem={ ( { id } ) => {\n\t\t\t\t\thistory.navigate( `/wp_template/${ id }?canvas=edit` );\n\t\t\t\t} }\n\t\t\t\tselection={ selection }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","useState","useMemo","useCallback","useEffect","privateApis","corePrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","addQueryArgs","Page","AddNewTemplate","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","unlock","useEditPostAction","authorField","descriptionField","previewField","useEvent","jsx","_jsx","usePostActions","templateTitleField","useHistory","useLocation","useEntityRecordsWithPermissions","EMPTY_ARRAY","defaultLayouts","showMedia","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","titleField","mediaField","fields","filters","PageTemplates","path","query","activeView","layout","postId","selection","setSelection","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onChangeSelection","items","navigate","length","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","elements","data","paginationInfo","postTypeActions","postType","context","editAction","actions","onChangeView","newView","className","title","children","isLoading","isItemClickable","onClickItem","id"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as corePrivateApis } from '@wordpress/core-data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport AddNewTemplate from '../add-new-template';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { authorField, descriptionField, previewField } from './fields';\nimport { useEvent } from '@wordpress/compose';\n\nconst { usePostActions, templateTitleField } = unlock( editorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( corePrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tshowMedia: false,\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tshowMedia: true,\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tshowMedia: false,\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\ttitleField: 'title',\n\tdescriptionField: 'description',\n\tmediaField: 'preview',\n\tfields: [ 'author' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function PageTemplates() {\n\tconst { path, query } = useLocation();\n\tconst { activeView = 'all', layout, postId } = query;\n\tconst [ selection, setSelection ] = useState( [ postId ] );\n\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t\t...defaultLayouts[ usedType ],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\n\t// Sync the layout from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\ttype: layout ?? DEFAULT_VIEW.type,\n\t\t} ) );\n\t}, [ setView, layout ] );\n\n\t// Sync the active view from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ setView, activeView ] );\n\n\tconst { records, isResolving: isLoadingData } =\n\t\tuseEntityRecordsWithPermissions( 'postType', TEMPLATE_POST_TYPE, {\n\t\t\tper_page: -1,\n\t\t} );\n\tconst history = useHistory();\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.navigate(\n\t\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ] : undefined,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, path, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\tpreviewField,\n\t\t\ttemplateTitleField,\n\t\t\tdescriptionField,\n\t\t\t{\n\t\t\t\t...authorField,\n\t\t\t\telements: authors,\n\t\t\t},\n\t\t],\n\t\t[ authors ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType: TEMPLATE_POST_TYPE,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useEvent( ( newView ) => {\n\t\tsetView( newView );\n\t\tif ( newView.type !== layout ) {\n\t\t\thistory.navigate(\n\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\n\t} );\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tkey={ activeView }\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\tisItemClickable={ () => true }\n\t\t\t\tonClickItem={ ( { id } ) => {\n\t\t\t\t\thistory.navigate( `/wp_template/${ id }?canvas=edit` );\n\t\t\t\t} }\n\t\t\t\tselection={ selection }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -199,28 +199,12 @@ export default function PostList({
|
|
|
199
199
|
}));
|
|
200
200
|
}
|
|
201
201
|
}, [location.path, location.query.isCustom, history]);
|
|
202
|
-
const getActiveViewFilters = (views, match) => {
|
|
203
|
-
var _found$filters;
|
|
204
|
-
const found = views.find(({
|
|
205
|
-
slug
|
|
206
|
-
}) => slug === match);
|
|
207
|
-
return (_found$filters = found?.filters) !== null && _found$filters !== void 0 ? _found$filters : [];
|
|
208
|
-
};
|
|
209
202
|
const {
|
|
210
203
|
isLoading: isLoadingFields,
|
|
211
|
-
fields:
|
|
204
|
+
fields: fields
|
|
212
205
|
} = usePostFields({
|
|
213
206
|
postType
|
|
214
207
|
});
|
|
215
|
-
const fields = useMemo(() => {
|
|
216
|
-
const activeViewFilters = getActiveViewFilters(defaultViews, activeView).map(({
|
|
217
|
-
field
|
|
218
|
-
}) => field);
|
|
219
|
-
return _fields.map(field => ({
|
|
220
|
-
...field,
|
|
221
|
-
elements: activeViewFilters.includes(field.id) ? [] : field.elements
|
|
222
|
-
}));
|
|
223
|
-
}, [_fields, defaultViews, activeView]);
|
|
224
208
|
const queryArgs = useMemo(() => {
|
|
225
209
|
const filters = {};
|
|
226
210
|
view.filters?.forEach(filter => {
|
|
@@ -234,19 +218,6 @@ export default function PostList({
|
|
|
234
218
|
}
|
|
235
219
|
});
|
|
236
220
|
|
|
237
|
-
// The bundled views want data filtered without displaying the filter.
|
|
238
|
-
const activeViewFilters = getActiveViewFilters(defaultViews, activeView);
|
|
239
|
-
activeViewFilters.forEach(filter => {
|
|
240
|
-
if (filter.field === 'status' && filter.operator === OPERATOR_IS_ANY) {
|
|
241
|
-
filters.status = filter.value;
|
|
242
|
-
}
|
|
243
|
-
if (filter.field === 'author' && filter.operator === OPERATOR_IS_ANY) {
|
|
244
|
-
filters.author = filter.value;
|
|
245
|
-
} else if (filter.field === 'author' && filter.operator === OPERATOR_IS_NONE) {
|
|
246
|
-
filters.author_exclude = filter.value;
|
|
247
|
-
}
|
|
248
|
-
});
|
|
249
|
-
|
|
250
221
|
// We want to provide a different default item for the status filter
|
|
251
222
|
// than the REST API provides.
|
|
252
223
|
if (!filters.status || filters.status === '') {
|