@wordpress/edit-site 6.5.0 → 6.6.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/global-styles/background-panel.js +1 -4
- package/build/components/global-styles/background-panel.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +3 -2
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/screen-block.js +5 -7
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-css.js +1 -1
- package/build/components/global-styles/screen-css.js.map +1 -1
- package/build/components/global-styles/shadows-edit-panel.js +1 -0
- package/build/components/global-styles/shadows-edit-panel.js.map +1 -1
- package/build/components/global-styles/size-control/index.js +10 -5
- package/build/components/global-styles/size-control/index.js.map +1 -1
- package/build/components/page-patterns/index.js +5 -2
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +29 -26
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/post-edit/index.js +43 -43
- package/build/components/post-edit/index.js.map +1 -1
- package/build/components/post-fields/index.js +31 -13
- package/build/components/post-fields/index.js.map +1 -1
- package/build/components/post-list/index.js +1 -1
- package/build/components/post-list/index.js.map +1 -1
- package/build/components/sidebar-dataviews/add-new-view.js +1 -0
- package/build/components/sidebar-dataviews/add-new-view.js.map +1 -1
- package/build/components/sidebar-dataviews/custom-dataviews-list.js +1 -0
- package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +1 -0
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build/utils/is-template-removable.js +2 -2
- package/build/utils/is-template-removable.js.map +1 -1
- package/build/utils/is-template-revertable.js +1 -1
- package/build/utils/is-template-revertable.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +1 -4
- package/build-module/components/global-styles/background-panel.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +3 -2
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +5 -7
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-css.js +1 -1
- package/build-module/components/global-styles/screen-css.js.map +1 -1
- package/build-module/components/global-styles/shadows-edit-panel.js +1 -0
- package/build-module/components/global-styles/shadows-edit-panel.js.map +1 -1
- package/build-module/components/global-styles/size-control/index.js +10 -5
- package/build-module/components/global-styles/size-control/index.js.map +1 -1
- package/build-module/components/page-patterns/index.js +3 -2
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +26 -25
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/post-edit/index.js +47 -47
- package/build-module/components/post-edit/index.js.map +1 -1
- package/build-module/components/post-fields/index.js +31 -13
- package/build-module/components/post-fields/index.js.map +1 -1
- package/build-module/components/post-list/index.js +1 -1
- package/build-module/components/post-list/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/add-new-view.js +1 -0
- package/build-module/components/sidebar-dataviews/add-new-view.js.map +1 -1
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +1 -0
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +1 -0
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/utils/is-template-removable.js +2 -2
- package/build-module/utils/is-template-removable.js.map +1 -1
- package/build-module/utils/is-template-revertable.js +1 -1
- package/build-module/utils/is-template-revertable.js.map +1 -1
- package/build-style/posts-rtl.css +19 -22
- package/build-style/posts.css +19 -22
- package/build-style/style-rtl.css +19 -22
- package/build-style/style.css +19 -22
- package/package.json +41 -41
- package/src/components/add-new-template/style.scss +1 -1
- package/src/components/editor/style.scss +1 -1
- package/src/components/global-styles/background-panel.js +0 -3
- package/src/components/global-styles/font-library-modal/installed-fonts.js +6 -4
- package/src/components/global-styles/font-library-modal/style.scss +1 -1
- package/src/components/global-styles/screen-block.js +2 -4
- package/src/components/global-styles/screen-css.js +3 -1
- package/src/components/global-styles/shadows-edit-panel.js +1 -0
- package/src/components/global-styles/size-control/index.js +9 -6
- package/src/components/page-patterns/index.js +4 -2
- package/src/components/page-patterns/use-patterns.js +33 -30
- package/src/components/post-edit/index.js +57 -53
- package/src/components/post-fields/index.js +59 -8
- package/src/components/post-list/index.js +1 -5
- package/src/components/sidebar-dataviews/add-new-view.js +1 -0
- package/src/components/sidebar-dataviews/custom-dataviews-list.js +1 -0
- package/src/hooks/push-changes-to-global-styles/index.js +1 -0
- package/src/utils/is-template-removable.js +4 -2
- package/src/utils/is-template-revertable.js +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_blockEditor","_icons","_element","_lockUnlock","_subtitle","_header","_shadowsPanel","_shadowUtils","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","componentsPrivateApis","customShadowMenuItems","label","__","action","presetShadowMenuItems","ShadowsEditPanel","params","category","slug","goTo","useNavigator","shadows","setShadows","baseShadows","undefined","selectedShadow","setSelectedShadow","useState","find","shadow","baseSelectedShadow","useMemo","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","jsx","default","title","jsxs","Fragment","children","__experimentalHStack","justify","FlexItem","__experimentalSpacer","marginTop","marginBottom","paddingX","trigger","Button","size","icon","moreVertical","item","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","__experimentalConfirmDialog","isOpen","onConfirm","onCancel","confirmButtonText","sprintf","Modal","onRequestClose","onSubmit","event","preventDefault","__experimentalInputControl","autoComplete","placeholder","value","Flex","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","getShadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","defaultShadow","onRemoveShadowPart","splice","__experimentalVStack","spacing","level","plus","__experimentalItemGroup","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","shadowStringToObject","newShadow","shadowObjectToString","Dropdown","renderToggle","onToggle","toggleProps","clsx","removeButtonProps","flexGrow","shadowIcon","inset","reset","renderContent","__experimentalDropdownContentWrapper","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","ColorPalette","clearable","color","__experimentalToggleGroupControl","__nextHasNoMarginBottom","isBlock","hideLabelFromVision","__next40pxDefaultSize","__experimentalToggleGroupControlOption","__experimentalGrid","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","parseQuantityAndUnitFromRawValue","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","settings","isPressed","__experimentalUnitControl","RangeControl","withInputField","min","CUSTOM_VALUE_SETTINGS","max","step"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tRangeControl,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tsettings,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tparams: { category, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tconst updatedShadows = shadows.filter( ( s ) => s.slug !== slug );\n\t\tsetShadows( updatedShadows );\n\t\tgoTo( `/shadows` );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: name of the shadow\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\"?',\n\t\t\t\t\t\tselectedShadow.name\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t\t{ isRenameModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => setIsRenameModalVisible( false ) }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\thandleShadowRename( shadowName );\n\t\t\t\t\t\t\tsetIsRenameModalVisible( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Shadow name' ) }\n\t\t\t\t\t\t\tvalue={ shadowName }\n\t\t\t\t\t\t\tonChange={ ( value ) => setShadowName( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer marginBottom={ 6 } />\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"block-editor-shadow-edit-modal__actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsRenameModalVisible( false )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ShadowsPreview( { shadow } ) {\n\tconst shadowStyle = {\n\t\tboxShadow: shadow,\n\t};\n\n\treturn (\n\t\t<Spacer marginBottom={ 4 } marginTop={ -2 }>\n\t\t\t<HStack\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-panel\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-block\"\n\t\t\t\t\tstyle={ shadowStyle }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n\nfunction ShadowEditor( { shadow, onChange } ) {\n\tconst shadowParts = useMemo( () => getShadowParts( shadow ), [ shadow ] );\n\n\tconst onChangeShadowPart = ( index, part ) => {\n\t\tshadowParts[ index ] = part;\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onAddShadowPart = () => {\n\t\tshadowParts.push( defaultShadow );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onRemoveShadowPart = ( index ) => {\n\t\tshadowParts.splice( index, 1 );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tclassName=\"edit-site-global-styles__shadows-panel__title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Shadows' ) }</Subtitle>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<FlexItem className=\"edit-site-global-styles__shadows-panel__options-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\tlabel={ __( 'Add shadow' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonAddShadowPart();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t\t<Spacer />\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t{ shadowParts.map( ( part, index ) => (\n\t\t\t\t\t<ShadowItem\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tshadow={ part }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChangeShadowPart( index, value )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcanRemove={ shadowParts.length > 1 }\n\t\t\t\t\t\tonRemove={ () => onRemoveShadowPart( index ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ShadowItem( { shadow, onChange, canRemove, onRemove } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\tconst shadowObj = useMemo(\n\t\t() => shadowStringToObject( shadow ),\n\t\t[ shadow ]\n\t);\n\tconst onShadowChange = ( newShadow ) => {\n\t\tonChange( shadowObjectToString( newShadow ) );\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst toggleProps = {\n\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__dropdown-toggle',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t};\n\t\t\t\tconst removeButtonProps = {\n\t\t\t\t\tonClick: onRemove,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\tlabel: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button icon={ shadowIcon } { ...toggleProps }>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper\n\t\t\t\t\tpaddingSize=\"medium\"\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown-content\"\n\t\t\t\t>\n\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<VStack\n\t\t\tspacing={ 4 }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor-panel\"\n\t\t>\n\t\t\t<ColorPalette\n\t\t\t\tclearable={ false }\n\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\tonChange={ ( value ) => onShadowChange( 'color', value ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\tisBlock\n\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t}\n\t\t\t\thideLabelFromVision\n\t\t\t\t__next40pxDefaultSize\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\thasNegativeRange\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\thasNegativeRange\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'blur', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\thasNegativeRange\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'spread', value ) }\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_blockEditor","_icons","_element","_lockUnlock","_subtitle","_header","_shadowsPanel","_shadowUtils","_jsxRuntime","useGlobalSetting","unlock","blockEditorPrivateApis","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","componentsPrivateApis","customShadowMenuItems","label","__","action","presetShadowMenuItems","ShadowsEditPanel","params","category","slug","goTo","useNavigator","shadows","setShadows","baseShadows","undefined","selectedShadow","setSelectedShadow","useState","find","shadow","baseSelectedShadow","useMemo","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","jsx","default","title","jsxs","Fragment","children","__experimentalHStack","justify","FlexItem","__experimentalSpacer","marginTop","marginBottom","paddingX","trigger","Button","size","icon","moreVertical","item","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","__experimentalConfirmDialog","isOpen","onConfirm","onCancel","confirmButtonText","sprintf","Modal","onRequestClose","onSubmit","event","preventDefault","__experimentalInputControl","__next40pxDefaultSize","autoComplete","placeholder","value","Flex","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","getShadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","defaultShadow","onRemoveShadowPart","splice","__experimentalVStack","spacing","level","plus","__experimentalItemGroup","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","shadowStringToObject","newShadow","shadowObjectToString","Dropdown","renderToggle","onToggle","toggleProps","clsx","removeButtonProps","flexGrow","shadowIcon","inset","reset","renderContent","__experimentalDropdownContentWrapper","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","ColorPalette","clearable","color","__experimentalToggleGroupControl","__nextHasNoMarginBottom","isBlock","hideLabelFromVision","__experimentalToggleGroupControlOption","__experimentalGrid","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","parseQuantityAndUnitFromRawValue","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","settings","isPressed","__experimentalUnitControl","RangeControl","withInputField","min","CUSTOM_VALUE_SETTINGS","max","step"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tRangeControl,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tsettings,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tparams: { category, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tconst updatedShadows = shadows.filter( ( s ) => s.slug !== slug );\n\t\tsetShadows( updatedShadows );\n\t\tgoTo( `/shadows` );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: name of the shadow\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\"?',\n\t\t\t\t\t\tselectedShadow.name\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t\t{ isRenameModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => setIsRenameModalVisible( false ) }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\thandleShadowRename( shadowName );\n\t\t\t\t\t\t\tsetIsRenameModalVisible( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Shadow name' ) }\n\t\t\t\t\t\t\tvalue={ shadowName }\n\t\t\t\t\t\t\tonChange={ ( value ) => setShadowName( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer marginBottom={ 6 } />\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"block-editor-shadow-edit-modal__actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsRenameModalVisible( false )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ShadowsPreview( { shadow } ) {\n\tconst shadowStyle = {\n\t\tboxShadow: shadow,\n\t};\n\n\treturn (\n\t\t<Spacer marginBottom={ 4 } marginTop={ -2 }>\n\t\t\t<HStack\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-panel\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-block\"\n\t\t\t\t\tstyle={ shadowStyle }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n\nfunction ShadowEditor( { shadow, onChange } ) {\n\tconst shadowParts = useMemo( () => getShadowParts( shadow ), [ shadow ] );\n\n\tconst onChangeShadowPart = ( index, part ) => {\n\t\tshadowParts[ index ] = part;\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onAddShadowPart = () => {\n\t\tshadowParts.push( defaultShadow );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onRemoveShadowPart = ( index ) => {\n\t\tshadowParts.splice( index, 1 );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tclassName=\"edit-site-global-styles__shadows-panel__title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Shadows' ) }</Subtitle>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<FlexItem className=\"edit-site-global-styles__shadows-panel__options-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\tlabel={ __( 'Add shadow' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonAddShadowPart();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t\t<Spacer />\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t{ shadowParts.map( ( part, index ) => (\n\t\t\t\t\t<ShadowItem\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tshadow={ part }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChangeShadowPart( index, value )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcanRemove={ shadowParts.length > 1 }\n\t\t\t\t\t\tonRemove={ () => onRemoveShadowPart( index ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ShadowItem( { shadow, onChange, canRemove, onRemove } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\tconst shadowObj = useMemo(\n\t\t() => shadowStringToObject( shadow ),\n\t\t[ shadow ]\n\t);\n\tconst onShadowChange = ( newShadow ) => {\n\t\tonChange( shadowObjectToString( newShadow ) );\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst toggleProps = {\n\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__dropdown-toggle',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t};\n\t\t\t\tconst removeButtonProps = {\n\t\t\t\t\tonClick: onRemove,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\tlabel: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button icon={ shadowIcon } { ...toggleProps }>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper\n\t\t\t\t\tpaddingSize=\"medium\"\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown-content\"\n\t\t\t\t>\n\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<VStack\n\t\t\tspacing={ 4 }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor-panel\"\n\t\t>\n\t\t\t<ColorPalette\n\t\t\t\tclearable={ false }\n\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t}\n\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\tonChange={ ( value ) => onShadowChange( 'color', value ) }\n\t\t\t/>\n\t\t\t<ToggleGroupControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\tisBlock\n\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t}\n\t\t\t\thideLabelFromVision\n\t\t\t\t__next40pxDefaultSize\n\t\t\t>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t/>\n\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t/>\n\t\t\t</ToggleGroupControl>\n\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\thasNegativeRange\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\thasNegativeRange\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'blur', value ) }\n\t\t\t\t/>\n\t\t\t\t<ShadowInputControl\n\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\thasNegativeRange\n\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'spread', value ) }\n\t\t\t\t/>\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _i18n = require("@wordpress/i18n");
|
|
8
7
|
var _components = require("@wordpress/components");
|
|
9
8
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
9
|
/**
|
|
@@ -16,7 +15,11 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
16
15
|
*/
|
|
17
16
|
|
|
18
17
|
const DEFAULT_UNITS = ['px', 'em', 'rem', 'vw', 'vh'];
|
|
19
|
-
function SizeControl(
|
|
18
|
+
function SizeControl({
|
|
19
|
+
// Do not allow manipulation of margin bottom
|
|
20
|
+
__nextHasNoMarginBottom,
|
|
21
|
+
...props
|
|
22
|
+
}) {
|
|
20
23
|
const {
|
|
21
24
|
baseControlProps
|
|
22
25
|
} = (0, _components.useBaseControlProps)(props);
|
|
@@ -24,7 +27,8 @@ function SizeControl(props) {
|
|
|
24
27
|
value,
|
|
25
28
|
onChange,
|
|
26
29
|
fallbackValue,
|
|
27
|
-
disabled
|
|
30
|
+
disabled,
|
|
31
|
+
label
|
|
28
32
|
} = props;
|
|
29
33
|
const units = (0, _components.__experimentalUseCustomUnits)({
|
|
30
34
|
availableUnits: DEFAULT_UNITS
|
|
@@ -43,13 +47,14 @@ function SizeControl(props) {
|
|
|
43
47
|
};
|
|
44
48
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.BaseControl, {
|
|
45
49
|
...baseControlProps,
|
|
50
|
+
__nextHasNoMarginBottom: true,
|
|
46
51
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.Flex, {
|
|
47
52
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.FlexItem, {
|
|
48
53
|
isBlock: true,
|
|
49
54
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalUnitControl, {
|
|
50
55
|
__next40pxDefaultSize: true,
|
|
51
56
|
__nextHasNoMarginBottom: true,
|
|
52
|
-
label:
|
|
57
|
+
label: label,
|
|
53
58
|
hideLabelFromVision: true,
|
|
54
59
|
value: value,
|
|
55
60
|
onChange: handleUnitControlChange,
|
|
@@ -65,7 +70,7 @@ function SizeControl(props) {
|
|
|
65
70
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.RangeControl, {
|
|
66
71
|
__next40pxDefaultSize: true,
|
|
67
72
|
__nextHasNoMarginBottom: true,
|
|
68
|
-
label:
|
|
73
|
+
label: label,
|
|
69
74
|
hideLabelFromVision: true,
|
|
70
75
|
value: valueQuantity,
|
|
71
76
|
initialPosition: fallbackValue,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_components","require","_jsxRuntime","DEFAULT_UNITS","SizeControl","__nextHasNoMarginBottom","props","baseControlProps","useBaseControlProps","value","onChange","fallbackValue","disabled","label","units","useCustomUnits","availableUnits","valueQuantity","valueUnit","parseQuantityAndUnitFromRawValue","isValueUnitRelative","includes","handleUnitControlChange","newValue","handleRangeControlChange","jsx","BaseControl","children","jsxs","Flex","FlexItem","isBlock","__experimentalUnitControl","__next40pxDefaultSize","hideLabelFromVision","min","__experimentalSpacer","marginX","marginBottom","RangeControl","initialPosition","withInputField","max","step","_default","exports","default"],"sources":["@wordpress/edit-site/src/components/global-styles/size-control/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\n\n/**\n * Internal dependencies\n */\nimport {\n\tBaseControl,\n\tRangeControl,\n\tFlex,\n\tFlexItem,\n\tuseBaseControlProps,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\n\nconst DEFAULT_UNITS = [ 'px', 'em', 'rem', 'vw', 'vh' ];\n\nfunction SizeControl( {\n\t// Do not allow manipulation of margin bottom\n\t__nextHasNoMarginBottom,\n\t...props\n} ) {\n\tconst { baseControlProps } = useBaseControlProps( props );\n\tconst { value, onChange, fallbackValue, disabled, label } = props;\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: DEFAULT_UNITS,\n\t} );\n\n\tconst [ valueQuantity, valueUnit = 'px' ] =\n\t\tparseQuantityAndUnitFromRawValue( value, units );\n\n\tconst isValueUnitRelative =\n\t\t!! valueUnit && [ 'em', 'rem', 'vw', 'vh' ].includes( valueUnit );\n\n\t// Receives the new value from the UnitControl component as a string containing the value and unit.\n\tconst handleUnitControlChange = ( newValue ) => {\n\t\tonChange( newValue );\n\t};\n\n\t// Receives the new value from the RangeControl component as a number.\n\tconst handleRangeControlChange = ( newValue ) => {\n\t\tonChange?.( newValue + valueUnit );\n\t};\n\n\treturn (\n\t\t<BaseControl { ...baseControlProps } __nextHasNoMarginBottom>\n\t\t\t<Flex>\n\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tvalue={ value }\n\t\t\t\t\t\tonChange={ handleUnitControlChange }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t/>\n\t\t\t\t</FlexItem>\n\t\t\t\t<FlexItem isBlock>\n\t\t\t\t\t<Spacer marginX={ 2 } marginBottom={ 0 }>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\tvalue={ valueQuantity }\n\t\t\t\t\t\t\tinitialPosition={ fallbackValue }\n\t\t\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t\t\tonChange={ handleRangeControlChange }\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tmax={ isValueUnitRelative ? 10 : 100 }\n\t\t\t\t\t\t\tstep={ isValueUnitRelative ? 0.1 : 1 }\n\t\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</Flex>\n\t\t</BaseControl>\n\t);\n}\n\nexport default SizeControl;\n"],"mappings":";;;;;;AAOA,IAAAA,WAAA,GAAAC,OAAA;AAU+B,IAAAC,WAAA,GAAAD,OAAA;AAjB/B;AACA;AACA;;AAEA;AACA;AACA;;AAaA,MAAME,aAAa,GAAG,CAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAE;AAEvD,SAASC,WAAWA,CAAE;EACrB;EACAC,uBAAuB;EACvB,GAAGC;AACJ,CAAC,EAAG;EACH,MAAM;IAAEC;EAAiB,CAAC,GAAG,IAAAC,+BAAmB,EAAEF,KAAM,CAAC;EACzD,MAAM;IAAEG,KAAK;IAAEC,QAAQ;IAAEC,aAAa;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAGP,KAAK;EAEjE,MAAMQ,KAAK,GAAG,IAAAC,wCAAc,EAAE;IAC7BC,cAAc,EAAEb;EACjB,CAAE,CAAC;EAEH,MAAM,CAAEc,aAAa,EAAEC,SAAS,GAAG,IAAI,CAAE,GACxC,IAAAC,0DAAgC,EAAEV,KAAK,EAAEK,KAAM,CAAC;EAEjD,MAAMM,mBAAmB,GACxB,CAAC,CAAEF,SAAS,IAAI,CAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAE,CAACG,QAAQ,CAAEH,SAAU,CAAC;;EAElE;EACA,MAAMI,uBAAuB,GAAKC,QAAQ,IAAM;IAC/Cb,QAAQ,CAAEa,QAAS,CAAC;EACrB,CAAC;;EAED;EACA,MAAMC,wBAAwB,GAAKD,QAAQ,IAAM;IAChDb,QAAQ,GAAIa,QAAQ,GAAGL,SAAU,CAAC;EACnC,CAAC;EAED,oBACC,IAAAhB,WAAA,CAAAuB,GAAA,EAACzB,WAAA,CAAA0B,WAAW;IAAA,GAAMnB,gBAAgB;IAAGF,uBAAuB;IAAAsB,QAAA,eAC3D,IAAAzB,WAAA,CAAA0B,IAAA,EAAC5B,WAAA,CAAA6B,IAAI;MAAAF,QAAA,gBACJ,IAAAzB,WAAA,CAAAuB,GAAA,EAACzB,WAAA,CAAA8B,QAAQ;QAACC,OAAO;QAAAJ,QAAA,eAChB,IAAAzB,WAAA,CAAAuB,GAAA,EAACzB,WAAA,CAAAgC,yBAAW;UACXC,qBAAqB;UACrB5B,uBAAuB;UACvBQ,KAAK,EAAGA,KAAO;UACfqB,mBAAmB;UACnBzB,KAAK,EAAGA,KAAO;UACfC,QAAQ,EAAGY,uBAAyB;UACpCR,KAAK,EAAGA,KAAO;UACfqB,GAAG,EAAG,CAAG;UACTvB,QAAQ,EAAGA;QAAU,CACrB;MAAC,CACO,CAAC,eACX,IAAAV,WAAA,CAAAuB,GAAA,EAACzB,WAAA,CAAA8B,QAAQ;QAACC,OAAO;QAAAJ,QAAA,eAChB,IAAAzB,WAAA,CAAAuB,GAAA,EAACzB,WAAA,CAAAoC,oBAAM;UAACC,OAAO,EAAG,CAAG;UAACC,YAAY,EAAG,CAAG;UAAAX,QAAA,eACvC,IAAAzB,WAAA,CAAAuB,GAAA,EAACzB,WAAA,CAAAuC,YAAY;YACZN,qBAAqB;YACrB5B,uBAAuB;YACvBQ,KAAK,EAAGA,KAAO;YACfqB,mBAAmB;YACnBzB,KAAK,EAAGQ,aAAe;YACvBuB,eAAe,EAAG7B,aAAe;YACjC8B,cAAc,EAAG,KAAO;YACxB/B,QAAQ,EAAGc,wBAA0B;YACrCW,GAAG,EAAG,CAAG;YACTO,GAAG,EAAGtB,mBAAmB,GAAG,EAAE,GAAG,GAAK;YACtCuB,IAAI,EAAGvB,mBAAmB,GAAG,GAAG,GAAG,CAAG;YACtCR,QAAQ,EAAGA;UAAU,CACrB;QAAC,CACK;MAAC,CACA,CAAC;IAAA,CACN;EAAC,CACK,CAAC;AAEhB;AAAC,IAAAgC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc1C,WAAW","ignoreList":[]}
|
|
@@ -17,11 +17,13 @@ var _page = _interopRequireDefault(require("../page"));
|
|
|
17
17
|
var _constants = require("../../utils/constants");
|
|
18
18
|
var _usePatternSettings = _interopRequireDefault(require("./use-pattern-settings"));
|
|
19
19
|
var _lockUnlock = require("../../lock-unlock");
|
|
20
|
-
var _usePatterns =
|
|
20
|
+
var _usePatterns = _interopRequireWildcard(require("./use-patterns"));
|
|
21
21
|
var _header = _interopRequireDefault(require("./header"));
|
|
22
22
|
var _dataviewsActions = require("../dataviews-actions");
|
|
23
23
|
var _fields2 = require("./fields");
|
|
24
24
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
25
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
26
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
25
27
|
/**
|
|
26
28
|
* WordPress dependencies
|
|
27
29
|
*/
|
|
@@ -147,6 +149,7 @@ function DataviewsPatterns() {
|
|
|
147
149
|
}
|
|
148
150
|
return (0, _dataviews.filterSortAndPaginate)(patterns, viewWithoutFilters, fields);
|
|
149
151
|
}, [patterns, view, fields, type]);
|
|
152
|
+
const dataWithPermissions = (0, _usePatterns.useAugmentPatternsWithPermissions)(data);
|
|
150
153
|
const templatePartActions = usePostActions({
|
|
151
154
|
postType: _constants.TEMPLATE_PART_POST_TYPE,
|
|
152
155
|
context: 'list'
|
|
@@ -182,7 +185,7 @@ function DataviewsPatterns() {
|
|
|
182
185
|
paginationInfo: paginationInfo,
|
|
183
186
|
fields: fields,
|
|
184
187
|
actions: actions,
|
|
185
|
-
data:
|
|
188
|
+
data: dataWithPermissions || EMPTY_ARRAY,
|
|
186
189
|
getItemId: item => {
|
|
187
190
|
var _item$name;
|
|
188
191
|
return (_item$name = item.name) !== null && _item$name !== void 0 ? _item$name : item.id;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_element","_blockEditor","_dataviews","_compose","_coreData","_editor","_router","_page","_interopRequireDefault","_constants","_usePatternSettings","_lockUnlock","_usePatterns","_header","_dataviewsActions","_fields2","_jsxRuntime","ExperimentalBlockEditorProvider","unlock","blockEditorPrivateApis","usePostActions","editorPrivateApis","useLocation","routerPrivateApis","EMPTY_ARRAY","defaultLayouts","LAYOUT_TABLE","layout","primaryField","styles","preview","width","author","LAYOUT_GRID","mediaField","badgeFields","DEFAULT_VIEW","type","search","page","perPage","fields","filters","DataviewsPatterns","params","postType","categoryId","categoryIdFromURL","PATTERN_TYPES","user","PATTERN_DEFAULT_CATEGORY","view","setView","useState","previousCategoryId","usePrevious","viewSyncStatus","find","field","value","patterns","isResolving","usePatterns","syncStatus","records","useEntityRecords","TEMPLATE_PART_POST_TYPE","per_page","authors","useMemo","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","_fields","previewField","titleField","push","patternStatusField","templatePartAuthorField","elements","useEffect","prevView","data","paginationInfo","viewWithoutFilters","filterSortAndPaginate","templatePartActions","context","patternActions","editAction","useEditPostAction","actions","filter","Boolean","id","useId","settings","usePatternSettings","jsx","children","jsxs","default","title","__","className","hideTitleFromUI","titleId","descriptionId","DataViews","getItemId","item","_item$name","name","isLoading","onChangeView"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useId, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { usePrevious } from '@wordpress/compose';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useEditPostAction } from '../dataviews-actions';\nimport {\n\tpatternStatusField,\n\tpreviewField,\n\ttitleField,\n\ttemplatePartAuthorField,\n} from './fields';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tlayout: {\n\t\t\tprimaryField: 'title',\n\t\t\tstyles: {\n\t\t\t\tpreview: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\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\tlayout: {\n\t\t\tmediaField: 'preview',\n\t\t\tprimaryField: 'title',\n\t\t\tbadgeFields: [ 'sync-status' ],\n\t\t},\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tlayout: defaultLayouts[ LAYOUT_GRID ].layout,\n\tfields: [ 'title', 'sync-status' ],\n\tfilters: [],\n};\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tparams: { postType, categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst type = postType || PATTERN_TYPES.user;\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( type, categoryId, {\n\t\tsearch: view.search,\n\t\tsyncStatus: viewSyncStatus,\n\t} );\n\n\tconst { records } = useEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, {\n\t\tper_page: -1,\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\tconst _fields = [ previewField, titleField ];\n\n\t\tif ( type === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( patternStatusField );\n\t\t} else if ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\t...templatePartAuthorField,\n\t\t\t\telements: authors,\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ type, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( ( prevView ) => ( { ...prevView, page: 1 } ) );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Search is managed server-side as well as filters for patterns.\n\t\t// However, the author filter in template parts is done client-side.\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tif ( type !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, type ] );\n\n\tconst templatePartActions = usePostActions( {\n\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\tcontext: 'list',\n\t} );\n\tconst patternActions = usePostActions( {\n\t\tpostType: PATTERN_TYPES.user,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\n\tconst actions = useMemo( () => {\n\t\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\treturn [ editAction, ...templatePartActions ].filter( Boolean );\n\t\t}\n\t\treturn [ editAction, ...patternActions ].filter( Boolean );\n\t}, [ editAction, type, templatePartActions, patternActions ] );\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tkey={ categoryId + postType }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name ?? item.id }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ setView }\n\t\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_element","_blockEditor","_dataviews","_compose","_coreData","_editor","_router","_page","_interopRequireDefault","_constants","_usePatternSettings","_lockUnlock","_usePatterns","_interopRequireWildcard","_header","_dataviewsActions","_fields2","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ExperimentalBlockEditorProvider","unlock","blockEditorPrivateApis","usePostActions","editorPrivateApis","useLocation","routerPrivateApis","EMPTY_ARRAY","defaultLayouts","LAYOUT_TABLE","layout","primaryField","styles","preview","width","author","LAYOUT_GRID","mediaField","badgeFields","DEFAULT_VIEW","type","search","page","perPage","fields","filters","DataviewsPatterns","params","postType","categoryId","categoryIdFromURL","PATTERN_TYPES","user","PATTERN_DEFAULT_CATEGORY","view","setView","useState","previousCategoryId","usePrevious","viewSyncStatus","find","field","value","patterns","isResolving","usePatterns","syncStatus","records","useEntityRecords","TEMPLATE_PART_POST_TYPE","per_page","authors","useMemo","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","_fields","previewField","titleField","push","patternStatusField","templatePartAuthorField","elements","useEffect","prevView","data","paginationInfo","viewWithoutFilters","filterSortAndPaginate","dataWithPermissions","useAugmentPatternsWithPermissions","templatePartActions","context","patternActions","editAction","useEditPostAction","actions","filter","Boolean","id","useId","settings","usePatternSettings","jsx","children","jsxs","title","__","className","hideTitleFromUI","titleId","descriptionId","DataViews","getItemId","item","_item$name","name","isLoading","onChangeView"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useId, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { usePrevious } from '@wordpress/compose';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns, { useAugmentPatternsWithPermissions } from './use-patterns';\nimport PatternsHeader from './header';\nimport { useEditPostAction } from '../dataviews-actions';\nimport {\n\tpatternStatusField,\n\tpreviewField,\n\ttitleField,\n\ttemplatePartAuthorField,\n} from './fields';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tlayout: {\n\t\t\tprimaryField: 'title',\n\t\t\tstyles: {\n\t\t\t\tpreview: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\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\tlayout: {\n\t\t\tmediaField: 'preview',\n\t\t\tprimaryField: 'title',\n\t\t\tbadgeFields: [ 'sync-status' ],\n\t\t},\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tlayout: defaultLayouts[ LAYOUT_GRID ].layout,\n\tfields: [ 'title', 'sync-status' ],\n\tfilters: [],\n};\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tparams: { postType, categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst type = postType || PATTERN_TYPES.user;\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( type, categoryId, {\n\t\tsearch: view.search,\n\t\tsyncStatus: viewSyncStatus,\n\t} );\n\n\tconst { records } = useEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, {\n\t\tper_page: -1,\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\tconst _fields = [ previewField, titleField ];\n\n\t\tif ( type === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( patternStatusField );\n\t\t} else if ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\t...templatePartAuthorField,\n\t\t\t\telements: authors,\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ type, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( ( prevView ) => ( { ...prevView, page: 1 } ) );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Search is managed server-side as well as filters for patterns.\n\t\t// However, the author filter in template parts is done client-side.\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tif ( type !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, type ] );\n\n\tconst dataWithPermissions = useAugmentPatternsWithPermissions( data );\n\n\tconst templatePartActions = usePostActions( {\n\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\tcontext: 'list',\n\t} );\n\tconst patternActions = usePostActions( {\n\t\tpostType: PATTERN_TYPES.user,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\n\tconst actions = useMemo( () => {\n\t\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\treturn [ editAction, ...templatePartActions ].filter( Boolean );\n\t\t}\n\t\treturn [ editAction, ...patternActions ].filter( Boolean );\n\t}, [ editAction, type, templatePartActions, patternActions ] );\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tkey={ categoryId + postType }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ dataWithPermissions || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name ?? item.id }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ setView }\n\t\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
exports.useAugmentPatternsWithPermissions = useAugmentPatternsWithPermissions;
|
|
8
|
+
exports.usePatterns = void 0;
|
|
7
9
|
var _blocks = require("@wordpress/blocks");
|
|
8
10
|
var _data = require("@wordpress/data");
|
|
9
11
|
var _coreData = require("@wordpress/core-data");
|
|
@@ -163,14 +165,36 @@ const selectUserPatterns = (0, _data.createSelector)((select, syncStatus, search
|
|
|
163
165
|
}), select(_coreData.store).isResolving('getEntityRecords', ['postType', _constants.PATTERN_TYPES.user, {
|
|
164
166
|
per_page: -1
|
|
165
167
|
}]), select(_coreData.store).getUserPatternCategories()]);
|
|
168
|
+
function useAugmentPatternsWithPermissions(patterns) {
|
|
169
|
+
const idsAndTypes = (0, _element.useMemo)(() => {
|
|
170
|
+
var _patterns$filter$map;
|
|
171
|
+
return (_patterns$filter$map = patterns?.filter(record => record.type !== _constants.PATTERN_TYPES.theme).map(record => [record.type, record.id])) !== null && _patterns$filter$map !== void 0 ? _patterns$filter$map : [];
|
|
172
|
+
}, [patterns]);
|
|
173
|
+
const permissions = (0, _data.useSelect)(select => {
|
|
174
|
+
const {
|
|
175
|
+
getEntityRecordPermissions
|
|
176
|
+
} = (0, _lockUnlock.unlock)(select(_coreData.store));
|
|
177
|
+
return idsAndTypes.reduce((acc, [type, id]) => {
|
|
178
|
+
acc[id] = getEntityRecordPermissions('postType', type, id);
|
|
179
|
+
return acc;
|
|
180
|
+
}, {});
|
|
181
|
+
}, [idsAndTypes]);
|
|
182
|
+
return (0, _element.useMemo)(() => {
|
|
183
|
+
var _patterns$map;
|
|
184
|
+
return (_patterns$map = patterns?.map(record => {
|
|
185
|
+
var _permissions$record$i;
|
|
186
|
+
return {
|
|
187
|
+
...record,
|
|
188
|
+
permissions: (_permissions$record$i = permissions?.[record.id]) !== null && _permissions$record$i !== void 0 ? _permissions$record$i : {}
|
|
189
|
+
};
|
|
190
|
+
})) !== null && _patterns$map !== void 0 ? _patterns$map : [];
|
|
191
|
+
}, [patterns, permissions]);
|
|
192
|
+
}
|
|
166
193
|
const usePatterns = (postType, categoryId, {
|
|
167
194
|
search = '',
|
|
168
195
|
syncStatus
|
|
169
196
|
} = {}) => {
|
|
170
|
-
|
|
171
|
-
patterns,
|
|
172
|
-
...rest
|
|
173
|
-
} = (0, _data.useSelect)(select => {
|
|
197
|
+
return (0, _data.useSelect)(select => {
|
|
174
198
|
if (postType === _constants.TEMPLATE_PART_POST_TYPE) {
|
|
175
199
|
return selectTemplateParts(select, categoryId, search);
|
|
176
200
|
} else if (postType === _constants.PATTERN_TYPES.user && !!categoryId) {
|
|
@@ -184,27 +208,6 @@ const usePatterns = (postType, categoryId, {
|
|
|
184
208
|
isResolving: false
|
|
185
209
|
};
|
|
186
210
|
}, [categoryId, postType, search, syncStatus]);
|
|
187
|
-
const ids = (0, _element.useMemo)(() => {
|
|
188
|
-
var _patterns$map;
|
|
189
|
-
return (_patterns$map = patterns?.map(record => record.id)) !== null && _patterns$map !== void 0 ? _patterns$map : [];
|
|
190
|
-
}, [patterns]);
|
|
191
|
-
const permissions = (0, _data.useSelect)(select => {
|
|
192
|
-
const {
|
|
193
|
-
getEntityRecordsPermissions
|
|
194
|
-
} = (0, _lockUnlock.unlock)(select(_coreData.store));
|
|
195
|
-
return getEntityRecordsPermissions('postType', postType, ids);
|
|
196
|
-
}, [ids, postType]);
|
|
197
|
-
const patternsWithPermissions = (0, _element.useMemo)(() => {
|
|
198
|
-
var _patterns$map2;
|
|
199
|
-
return (_patterns$map2 = patterns?.map((record, index) => ({
|
|
200
|
-
...record,
|
|
201
|
-
permissions: permissions[index]
|
|
202
|
-
}))) !== null && _patterns$map2 !== void 0 ? _patterns$map2 : [];
|
|
203
|
-
}, [patterns, permissions]);
|
|
204
|
-
return {
|
|
205
|
-
...rest,
|
|
206
|
-
patterns: patternsWithPermissions
|
|
207
|
-
};
|
|
208
211
|
};
|
|
209
212
|
exports.usePatterns = usePatterns;
|
|
210
213
|
var _default = exports.default = usePatterns;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_blocks","require","_data","_coreData","_editor","_element","_utils","_constants","_lockUnlock","_searchItems","_store","EMPTY_PATTERN_LIST","selectTemplateParts","createSelector","select","categoryId","search","_getEntityRecords","getEntityRecords","isResolving","isResolvingSelector","coreStore","__experimentalGetDefaultTemplatePartAreas","editorStore","query","per_page","templateParts","TEMPLATE_PART_POST_TYPE","knownAreas","templatePartAreas","map","area","templatePartHasCategory","item","category","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","includes","patterns","searchItems","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","unlock","editSiteStore","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","EXCLUDED_PATTERN_SOURCES","source","filterOutDuplicatesByName","inserter","keywords","type","PATTERN_TYPES","theme","blocks","parse","content","__unstableSkipMigrationLogs","selectPatterns","syncStatus","themePatterns","isResolvingThemePatterns","userPatterns","isResolvingUserPatterns","categories","userPatternCategories","selectUserPatterns","user","wp_pattern_sync_status","PATTERN_SYNC_TYPES","full","unsynced","currentCategory","wp_pattern_category","some","catId","find","cat","id","slug","length","hasOwnProperty","getUserPatternCategories","patternPosts","Map","forEach","userCategory","set","usePatterns","postType","rest","useSelect","appliedCategory","ids","useMemo","_patterns$map","record","permissions","getEntityRecordsPermissions","patternsWithPermissions","_patterns$map2","index","exports","_default","default"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect, createSelector } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tEXCLUDED_PATTERN_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst selectTemplateParts = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst templateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\n\n\t\t// In the case where a custom template part area has been removed we need\n\t\t// the current list of areas to cross check against so orphaned template\n\t\t// parts can be treated as uncategorized.\n\t\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\t\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\t\tconst templatePartHasCategory = ( item, category ) => {\n\t\t\tif ( category !== TEMPLATE_PART_AREA_DEFAULT_CATEGORY ) {\n\t\t\t\treturn item.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tquery,\n\t\t] );\n\n\t\tconst patterns = searchItems( templateParts, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\n\t\treturn { patterns, isResolving };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords(\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{\n\t\t\t\tper_page: -1,\n\t\t\t}\n\t\t),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t]\n);\n\nconst selectThemePatterns = createSelector(\n\t( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst { isResolving: isResolvingSelector } = select( coreStore );\n\t\tconst settings = getSettings();\n\t\tconst blockPatterns =\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns;\n\n\t\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\t\tconst patterns = [\n\t\t\t...( blockPatterns || [] ),\n\t\t\t...( restBlockPatterns || [] ),\n\t\t]\n\t\t\t.filter(\n\t\t\t\t( pattern ) =>\n\t\t\t\t\t! EXCLUDED_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t)\n\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t...pattern,\n\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\ttype: PATTERN_TYPES.theme,\n\t\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t\t} ),\n\t\t\t} ) );\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingSelector( 'getBlockPatterns' ),\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tselect( coreStore ).isResolving( 'getBlockPatterns' ),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tpatterns: themePatterns,\n\t\t\tisResolving: isResolvingThemePatterns,\n\t\t} = selectThemePatterns( select );\n\t\tconst {\n\t\t\tpatterns: userPatterns,\n\t\t\tisResolving: isResolvingUserPatterns,\n\t\t\tcategories: userPatternCategories,\n\t\t} = selectUserPatterns( select );\n\n\t\tlet patterns = [\n\t\t\t...( themePatterns || [] ),\n\t\t\t...( userPatterns || [] ),\n\t\t];\n\n\t\tif ( syncStatus ) {\n\t\t\t// User patterns can have their sync statuses checked directly\n\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\tpatterns = patterns.filter( ( pattern ) => {\n\t\t\t\treturn pattern.type === PATTERN_TYPES.user\n\t\t\t\t\t? ( pattern.wp_pattern_sync_status ||\n\t\t\t\t\t\t\tPATTERN_SYNC_TYPES.full ) === syncStatus\n\t\t\t\t\t: syncStatus === PATTERN_SYNC_TYPES.unsynced;\n\t\t\t} );\n\t\t}\n\n\t\tif ( categoryId ) {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\tcategoryId,\n\t\t\t\thasCategory: ( item, currentCategory ) => {\n\t\t\t\t\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn item.wp_pattern_category.some(\n\t\t\t\t\t\t\t( catId ) =>\n\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t)?.slug === currentCategory\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn item.categories?.includes( currentCategory );\n\t\t\t\t},\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => {\n\t\t\t\t\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tuserPatternCategories?.length &&\n\t\t\t\t\t\t\t( ! item.wp_pattern_category?.length ||\n\t\t\t\t\t\t\t\t! item.wp_pattern_category.some( ( catId ) =>\n\t\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn ! item.hasOwnProperty( 'categories' );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingThemePatterns || isResolvingUserPatterns,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tgetEntityRecords,\n\t\t\tisResolving: isResolvingSelector,\n\t\t\tgetUserPatternCategories,\n\t\t} = select( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst patternPosts = getEntityRecords(\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery\n\t\t);\n\t\tconst userPatternCategories = getUserPatternCategories();\n\t\tconst categories = new Map();\n\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\tcategories.set( userCategory.id, userCategory )\n\t\t);\n\t\tlet patterns = patternPosts ?? EMPTY_PATTERN_LIST;\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery,\n\t\t] );\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) =>\n\t\t\t\t\tpattern.wp_pattern_sync_status ||\n\t\t\t\t\tPATTERN_SYNC_TYPES.full === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t\t// catch-all category for user created patterns, so it has\n\t\t\t// to be in the category.\n\t\t\thasCategory: () => true,\n\t\t} );\n\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving,\n\t\t\tcategories: userPatternCategories,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords( 'postType', PATTERN_TYPES.user, {\n\t\t\tper_page: -1,\n\t\t} ),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( coreStore ).getUserPatternCategories(),\n\t]\n);\n\nexport const usePatterns = (\n\tpostType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\tconst { patterns, ...rest } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplateParts( select, categoryId, search );\n\t\t\t} else if ( postType === PATTERN_TYPES.user && !! categoryId ) {\n\t\t\t\tconst appliedCategory =\n\t\t\t\t\tcategoryId === 'uncategorized' ? '' : categoryId;\n\t\t\t\treturn selectPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tappliedCategory,\n\t\t\t\t\tsyncStatus,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( postType === PATTERN_TYPES.user ) {\n\t\t\t\treturn selectUserPatterns( select, syncStatus, search );\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpatterns: EMPTY_PATTERN_LIST,\n\t\t\t\tisResolving: false,\n\t\t\t};\n\t\t},\n\t\t[ categoryId, postType, search, syncStatus ]\n\t);\n\n\tconst ids = useMemo(\n\t\t() => patterns?.map( ( record ) => record.id ) ?? [],\n\t\t[ patterns ]\n\t);\n\n\tconst permissions = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecordsPermissions } = unlock(\n\t\t\t\tselect( coreStore )\n\t\t\t);\n\t\t\treturn getEntityRecordsPermissions( 'postType', postType, ids );\n\t\t},\n\t\t[ ids, postType ]\n\t);\n\n\tconst patternsWithPermissions = useMemo(\n\t\t() =>\n\t\t\tpatterns?.map( ( record, index ) => ( {\n\t\t\t\t...record,\n\t\t\t\tpermissions: permissions[ index ],\n\t\t\t} ) ) ?? [],\n\t\t[ patterns, permissions ]\n\t);\n\n\treturn {\n\t\t...rest,\n\t\tpatterns: patternsWithPermissions,\n\t};\n};\n\nexport default usePatterns;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_blocks","require","_data","_coreData","_editor","_element","_utils","_constants","_lockUnlock","_searchItems","_store","EMPTY_PATTERN_LIST","selectTemplateParts","createSelector","select","categoryId","search","_getEntityRecords","getEntityRecords","isResolving","isResolvingSelector","coreStore","__experimentalGetDefaultTemplatePartAreas","editorStore","query","per_page","templateParts","TEMPLATE_PART_POST_TYPE","knownAreas","templatePartAreas","map","area","templatePartHasCategory","item","category","TEMPLATE_PART_AREA_DEFAULT_CATEGORY","includes","patterns","searchItems","hasCategory","selectThemePatterns","_settings$__experimen","getSettings","unlock","editSiteStore","settings","blockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","filter","pattern","EXCLUDED_PATTERN_SOURCES","source","filterOutDuplicatesByName","inserter","keywords","type","PATTERN_TYPES","theme","blocks","parse","content","__unstableSkipMigrationLogs","selectPatterns","syncStatus","themePatterns","isResolvingThemePatterns","userPatterns","isResolvingUserPatterns","categories","userPatternCategories","selectUserPatterns","user","wp_pattern_sync_status","PATTERN_SYNC_TYPES","full","unsynced","currentCategory","wp_pattern_category","some","catId","find","cat","id","slug","length","hasOwnProperty","getUserPatternCategories","patternPosts","Map","forEach","userCategory","set","useAugmentPatternsWithPermissions","idsAndTypes","useMemo","_patterns$filter$map","record","permissions","useSelect","getEntityRecordPermissions","reduce","acc","_patterns$map","_permissions$record$i","usePatterns","postType","appliedCategory","exports","_default","default"],"sources":["@wordpress/edit-site/src/components/page-patterns/use-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse } from '@wordpress/blocks';\nimport { useSelect, createSelector } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from './utils';\nimport {\n\tEXCLUDED_PATTERN_SOURCES,\n\tPATTERN_TYPES,\n\tPATTERN_SYNC_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tTEMPLATE_PART_AREA_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { searchItems } from './search-items';\nimport { store as editSiteStore } from '../../store';\n\nconst EMPTY_PATTERN_LIST = [];\n\nconst selectTemplateParts = createSelector(\n\t( select, categoryId, search = '' ) => {\n\t\tconst { getEntityRecords, isResolving: isResolvingSelector } =\n\t\t\tselect( coreStore );\n\t\tconst { __experimentalGetDefaultTemplatePartAreas } =\n\t\t\tselect( editorStore );\n\t\tconst query = { per_page: -1 };\n\t\tconst templateParts =\n\t\t\tgetEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, query ) ??\n\t\t\tEMPTY_PATTERN_LIST;\n\n\t\t// In the case where a custom template part area has been removed we need\n\t\t// the current list of areas to cross check against so orphaned template\n\t\t// parts can be treated as uncategorized.\n\t\tconst knownAreas = __experimentalGetDefaultTemplatePartAreas() || [];\n\t\tconst templatePartAreas = knownAreas.map( ( area ) => area.area );\n\n\t\tconst templatePartHasCategory = ( item, category ) => {\n\t\t\tif ( category !== TEMPLATE_PART_AREA_DEFAULT_CATEGORY ) {\n\t\t\t\treturn item.area === category;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\titem.area === category ||\n\t\t\t\t! templatePartAreas.includes( item.area )\n\t\t\t);\n\t\t};\n\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\tquery,\n\t\t] );\n\n\t\tconst patterns = searchItems( templateParts, search, {\n\t\t\tcategoryId,\n\t\t\thasCategory: templatePartHasCategory,\n\t\t} );\n\n\t\treturn { patterns, isResolving };\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords(\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{\n\t\t\t\tper_page: -1,\n\t\t\t}\n\t\t),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t]\n);\n\nconst selectThemePatterns = createSelector(\n\t( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\t\tconst { isResolving: isResolvingSelector } = select( coreStore );\n\t\tconst settings = getSettings();\n\t\tconst blockPatterns =\n\t\t\tsettings.__experimentalAdditionalBlockPatterns ??\n\t\t\tsettings.__experimentalBlockPatterns;\n\n\t\tconst restBlockPatterns = select( coreStore ).getBlockPatterns();\n\n\t\tconst patterns = [\n\t\t\t...( blockPatterns || [] ),\n\t\t\t...( restBlockPatterns || [] ),\n\t\t]\n\t\t\t.filter(\n\t\t\t\t( pattern ) =>\n\t\t\t\t\t! EXCLUDED_PATTERN_SOURCES.includes( pattern.source )\n\t\t\t)\n\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t.filter( ( pattern ) => pattern.inserter !== false )\n\t\t\t.map( ( pattern ) => ( {\n\t\t\t\t...pattern,\n\t\t\t\tkeywords: pattern.keywords || [],\n\t\t\t\ttype: PATTERN_TYPES.theme,\n\t\t\t\tblocks: parse( pattern.content, {\n\t\t\t\t\t__unstableSkipMigrationLogs: true,\n\t\t\t\t} ),\n\t\t\t} ) );\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingSelector( 'getBlockPatterns' ),\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getBlockPatterns(),\n\t\tselect( coreStore ).isResolving( 'getBlockPatterns' ),\n\t\tunlock( select( editSiteStore ) ).getSettings(),\n\t]\n);\n\nconst selectPatterns = createSelector(\n\t( select, categoryId, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tpatterns: themePatterns,\n\t\t\tisResolving: isResolvingThemePatterns,\n\t\t} = selectThemePatterns( select );\n\t\tconst {\n\t\t\tpatterns: userPatterns,\n\t\t\tisResolving: isResolvingUserPatterns,\n\t\t\tcategories: userPatternCategories,\n\t\t} = selectUserPatterns( select );\n\n\t\tlet patterns = [\n\t\t\t...( themePatterns || [] ),\n\t\t\t...( userPatterns || [] ),\n\t\t];\n\n\t\tif ( syncStatus ) {\n\t\t\t// User patterns can have their sync statuses checked directly\n\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\tpatterns = patterns.filter( ( pattern ) => {\n\t\t\t\treturn pattern.type === PATTERN_TYPES.user\n\t\t\t\t\t? ( pattern.wp_pattern_sync_status ||\n\t\t\t\t\t\t\tPATTERN_SYNC_TYPES.full ) === syncStatus\n\t\t\t\t\t: syncStatus === PATTERN_SYNC_TYPES.unsynced;\n\t\t\t} );\n\t\t}\n\n\t\tif ( categoryId ) {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\tcategoryId,\n\t\t\t\thasCategory: ( item, currentCategory ) => {\n\t\t\t\t\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn item.wp_pattern_category.some(\n\t\t\t\t\t\t\t( catId ) =>\n\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t)?.slug === currentCategory\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn item.categories?.includes( currentCategory );\n\t\t\t\t},\n\t\t\t} );\n\t\t} else {\n\t\t\tpatterns = searchItems( patterns, search, {\n\t\t\t\thasCategory: ( item ) => {\n\t\t\t\t\tif ( item.type === PATTERN_TYPES.user ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tuserPatternCategories?.length &&\n\t\t\t\t\t\t\t( ! item.wp_pattern_category?.length ||\n\t\t\t\t\t\t\t\t! item.wp_pattern_category.some( ( catId ) =>\n\t\t\t\t\t\t\t\t\tuserPatternCategories.find(\n\t\t\t\t\t\t\t\t\t\t( cat ) => cat.id === catId\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn ! item.hasOwnProperty( 'categories' );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving: isResolvingThemePatterns || isResolvingUserPatterns,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselectThemePatterns( select ),\n\t\tselectUserPatterns( select ),\n\t]\n);\n\nconst selectUserPatterns = createSelector(\n\t( select, syncStatus, search = '' ) => {\n\t\tconst {\n\t\t\tgetEntityRecords,\n\t\t\tisResolving: isResolvingSelector,\n\t\t\tgetUserPatternCategories,\n\t\t} = select( coreStore );\n\n\t\tconst query = { per_page: -1 };\n\t\tconst patternPosts = getEntityRecords(\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery\n\t\t);\n\t\tconst userPatternCategories = getUserPatternCategories();\n\t\tconst categories = new Map();\n\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\tcategories.set( userCategory.id, userCategory )\n\t\t);\n\t\tlet patterns = patternPosts ?? EMPTY_PATTERN_LIST;\n\t\tconst isResolving = isResolvingSelector( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\tquery,\n\t\t] );\n\n\t\tif ( syncStatus ) {\n\t\t\tpatterns = patterns.filter(\n\t\t\t\t( pattern ) =>\n\t\t\t\t\tpattern.wp_pattern_sync_status ||\n\t\t\t\t\tPATTERN_SYNC_TYPES.full === syncStatus\n\t\t\t);\n\t\t}\n\n\t\tpatterns = searchItems( patterns, search, {\n\t\t\t// We exit user pattern retrieval early if we aren't in the\n\t\t\t// catch-all category for user created patterns, so it has\n\t\t\t// to be in the category.\n\t\t\thasCategory: () => true,\n\t\t} );\n\n\t\treturn {\n\t\t\tpatterns,\n\t\t\tisResolving,\n\t\t\tcategories: userPatternCategories,\n\t\t};\n\t},\n\t( select ) => [\n\t\tselect( coreStore ).getEntityRecords( 'postType', PATTERN_TYPES.user, {\n\t\t\tper_page: -1,\n\t\t} ),\n\t\tselect( coreStore ).isResolving( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\tPATTERN_TYPES.user,\n\t\t\t{ per_page: -1 },\n\t\t] ),\n\t\tselect( coreStore ).getUserPatternCategories(),\n\t]\n);\n\nexport function useAugmentPatternsWithPermissions( patterns ) {\n\tconst idsAndTypes = useMemo(\n\t\t() =>\n\t\t\tpatterns\n\t\t\t\t?.filter( ( record ) => record.type !== PATTERN_TYPES.theme )\n\t\t\t\t.map( ( record ) => [ record.type, record.id ] ) ?? [],\n\t\t[ patterns ]\n\t);\n\n\tconst permissions = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecordPermissions } = unlock(\n\t\t\t\tselect( coreStore )\n\t\t\t);\n\t\t\treturn idsAndTypes.reduce( ( acc, [ type, id ] ) => {\n\t\t\t\tacc[ id ] = getEntityRecordPermissions( 'postType', type, id );\n\t\t\t\treturn acc;\n\t\t\t}, {} );\n\t\t},\n\t\t[ idsAndTypes ]\n\t);\n\n\treturn useMemo(\n\t\t() =>\n\t\t\tpatterns?.map( ( record ) => ( {\n\t\t\t\t...record,\n\t\t\t\tpermissions: permissions?.[ record.id ] ?? {},\n\t\t\t} ) ) ?? [],\n\t\t[ patterns, permissions ]\n\t);\n}\n\nexport const usePatterns = (\n\tpostType,\n\tcategoryId,\n\t{ search = '', syncStatus } = {}\n) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tif ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\treturn selectTemplateParts( select, categoryId, search );\n\t\t\t} else if ( postType === PATTERN_TYPES.user && !! categoryId ) {\n\t\t\t\tconst appliedCategory =\n\t\t\t\t\tcategoryId === 'uncategorized' ? '' : categoryId;\n\t\t\t\treturn selectPatterns(\n\t\t\t\t\tselect,\n\t\t\t\t\tappliedCategory,\n\t\t\t\t\tsyncStatus,\n\t\t\t\t\tsearch\n\t\t\t\t);\n\t\t\t} else if ( postType === PATTERN_TYPES.user ) {\n\t\t\t\treturn selectUserPatterns( select, syncStatus, search );\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tpatterns: EMPTY_PATTERN_LIST,\n\t\t\t\tisResolving: false,\n\t\t\t};\n\t\t},\n\t\t[ categoryId, postType, search, syncStatus ]\n\t);\n};\n\nexport default usePatterns;\n"],"mappings":"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","ignoreList":[]}
|