@wordpress/edit-site 6.0.1 → 6.0.2
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/build/components/add-new-page/index.js +2 -1
- package/build/components/add-new-page/index.js.map +1 -1
- package/build/components/editor/index.js +2 -1
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +1 -0
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/screen-revisions/index.js +4 -23
- package/build/components/global-styles/screen-revisions/index.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/variations/variation.js +11 -16
- package/build/components/global-styles/variations/variation.js.map +1 -1
- package/build/components/global-styles/variations/variations-color.js +1 -0
- package/build/components/global-styles/variations/variations-color.js.map +1 -1
- package/build/components/global-styles/variations/variations-typography.js +1 -0
- package/build/components/global-styles/variations/variations-typography.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -0
- package/build/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
- package/build/deprecated.js +11 -0
- package/build/deprecated.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +2 -2
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build/lock-unlock.js +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build-module/components/add-new-page/index.js +2 -1
- package/build-module/components/add-new-page/index.js.map +1 -1
- package/build-module/components/editor/index.js +2 -1
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +1 -0
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/index.js +4 -23
- package/build-module/components/global-styles/screen-revisions/index.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/variations/variation.js +11 -16
- package/build-module/components/global-styles/variations/variation.js.map +1 -1
- package/build-module/components/global-styles/variations/variations-color.js +1 -0
- package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
- package/build-module/components/global-styles/variations/variations-typography.js +1 -0
- package/build-module/components/global-styles/variations/variations-typography.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -0
- package/build-module/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js.map +1 -1
- package/build-module/deprecated.js +11 -0
- package/build-module/deprecated.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +2 -2
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/lock-unlock.js +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/package.json +23 -23
- package/src/components/add-new-page/index.js +2 -1
- package/src/components/editor/index.js +2 -1
- package/src/components/global-styles/font-library-modal/installed-fonts.js +1 -0
- package/src/components/global-styles/screen-revisions/index.js +4 -24
- package/src/components/global-styles/shadows-edit-panel.js +1 -0
- package/src/components/global-styles/variations/variation.js +14 -19
- package/src/components/global-styles/variations/variations-color.js +6 -1
- package/src/components/global-styles/variations/variations-typography.js +5 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js +1 -0
- package/src/deprecated.js +14 -0
- package/src/hooks/push-changes-to-global-styles/index.js +2 -2
- package/src/lock-unlock.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalItemGroup","ItemGroup","__experimentalHeading","Heading","__experimentalInputControl","InputControl","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","RangeControl","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","settings","moreVertical","useState","useMemo","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","CUSTOM_VALUE_SETTINGS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","customShadowMenuItems","label","action","presetShadowMenuItems","ShadowsEditPanel","params","category","slug","goTo","shadows","setShadows","baseShadows","undefined","selectedShadow","setSelectedShadow","find","baseSelectedShadow","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","title","children","justify","marginTop","marginBottom","paddingX","trigger","size","icon","item","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","autoComplete","placeholder","value","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","onRemoveShadowPart","splice","spacing","level","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","newShadow","renderToggle","onToggle","toggleProps","removeButtonProps","ariaLabel","tooltip","flexGrow","inset","renderContent","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","clearable","color","isBlock","hideLabelFromVision","__next40pxDefaultSize","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","isPressed","withInputField","__nextHasNoMarginBottom","min","max","step"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHeading as Heading,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tRangeControl,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tsettings,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tparams: { category, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tconst updatedShadows = shadows.filter( ( s ) => s.slug !== slug );\n\t\tsetShadows( updatedShadows );\n\t\tgoTo( `/shadows` );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t>\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\tariaLabel: __( 'Remove shadow' ),\n\t\t\t\t\ttooltip: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button icon={ shadowIcon } { ...toggleProps }>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor__dropdown-content\">\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<div className=\"edit-site-global-styles__shadow-editor-panel\">\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<Heading level={ 5 }>{ __( 'Shadow' ) }</Heading>\n\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor-color-palette\">\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'color', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<ToggleGroupControl\n\t\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\t\tisBlock\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t\t}\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToggleGroupControl>\n\t\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'blur', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'spread', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Grid>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalSpacer","Spacer","__experimentalItemGroup","ItemGroup","__experimentalHeading","Heading","__experimentalInputControl","InputControl","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","__experimentalGrid","Grid","__experimentalDropdownContentWrapper","DropdownContentWrapper","__experimentalUseNavigator","useNavigator","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalConfirmDialog","ConfirmDialog","Dropdown","RangeControl","Button","Flex","FlexItem","ColorPalette","Modal","privateApis","componentsPrivateApis","__","sprintf","blockEditorPrivateApis","plus","shadow","shadowIcon","reset","settings","moreVertical","useState","useMemo","unlock","Subtitle","ScreenHeader","defaultShadow","getShadowParts","shadowStringToObject","shadowObjectToString","CUSTOM_VALUE_SETTINGS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useGlobalSetting","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","customShadowMenuItems","label","action","presetShadowMenuItems","ShadowsEditPanel","params","category","slug","goTo","shadows","setShadows","baseShadows","undefined","selectedShadow","setSelectedShadow","find","baseSelectedShadow","b","isConfirmDialogVisible","setIsConfirmDialogVisible","isRenameModalVisible","setIsRenameModalVisible","shadowName","setShadowName","name","onShadowChange","updatedShadows","map","s","onMenuClick","handleShadowDelete","filter","handleShadowRename","newName","title","children","justify","marginTop","marginBottom","paddingX","trigger","size","icon","item","onClick","disabled","className","ShadowsPreview","ShadowEditor","onChange","isOpen","onConfirm","onCancel","confirmButtonText","onRequestClose","onSubmit","event","preventDefault","autoComplete","placeholder","value","expanded","variant","type","shadowStyle","boxShadow","align","style","shadowParts","onChangeShadowPart","index","part","join","onAddShadowPart","push","onRemoveShadowPart","splice","spacing","level","isBordered","isSeparated","ShadowItem","canRemove","length","onRemove","popoverProps","placement","offset","shift","shadowObj","newShadow","renderToggle","onToggle","toggleProps","removeButtonProps","ariaLabel","tooltip","flexGrow","inset","renderContent","paddingSize","ShadowPopover","__experimentalIsRenderedInSidebar","enableAlpha","key","clearable","color","isBlock","hideLabelFromVision","__next40pxDefaultSize","columns","gap","ShadowInputControl","x","hasNegativeRange","y","blur","spread","_CUSTOM_VALUE_SETTING","_CUSTOM_VALUE_SETTING2","_CUSTOM_VALUE_SETTING3","isCustomInput","setIsCustomInput","parsedQuantity","parsedUnit","sliderOnChange","next","onValueChange","isNumeric","isNaN","parseFloat","nextValue","isPressed","withInputField","__nextHasNoMarginBottom","min","max","step"],"sources":["@wordpress/edit-site/src/components/global-styles/shadows-edit-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHeading as Heading,\n\t__experimentalInputControl as InputControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalGrid as Grid,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdown,\n\tRangeControl,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tColorPalette,\n\tModal,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport {\n\tplus,\n\tshadow as shadowIcon,\n\treset,\n\tsettings,\n\tmoreVertical,\n} from '@wordpress/icons';\nimport { useState, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport Subtitle from './subtitle';\nimport ScreenHeader from './header';\nimport { defaultShadow } from './shadows-panel';\nimport {\n\tgetShadowParts,\n\tshadowStringToObject,\n\tshadowObjectToString,\n\tCUSTOM_VALUE_SETTINGS,\n} from './shadow-utils';\n\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = unlock( componentsPrivateApis );\n\nconst customShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Rename' ),\n\t\taction: 'rename',\n\t},\n\t{\n\t\tlabel: __( 'Delete' ),\n\t\taction: 'delete',\n\t},\n];\n\nconst presetShadowMenuItems = [\n\t{\n\t\tlabel: __( 'Reset' ),\n\t\taction: 'reset',\n\t},\n];\n\nexport default function ShadowsEditPanel() {\n\tconst {\n\t\tparams: { category, slug },\n\t\tgoTo,\n\t} = useNavigator();\n\tconst [ shadows, setShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`\n\t);\n\tconst [ baseShadows ] = useGlobalSetting(\n\t\t`shadow.presets.${ category }`,\n\t\tundefined,\n\t\t'base'\n\t);\n\tconst [ selectedShadow, setSelectedShadow ] = useState( () =>\n\t\t( shadows || [] ).find( ( shadow ) => shadow.slug === slug )\n\t);\n\tconst baseSelectedShadow = useMemo(\n\t\t() => ( baseShadows || [] ).find( ( b ) => b.slug === slug ),\n\t\t[ baseShadows, slug ]\n\t);\n\tconst [ isConfirmDialogVisible, setIsConfirmDialogVisible ] =\n\t\tuseState( false );\n\tconst [ isRenameModalVisible, setIsRenameModalVisible ] = useState( false );\n\tconst [ shadowName, setShadowName ] = useState( selectedShadow.name );\n\n\tconst onShadowChange = ( shadow ) => {\n\t\tsetSelectedShadow( { ...selectedShadow, shadow } );\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, shadow } : s\n\t\t);\n\t\tsetShadows( updatedShadows );\n\t};\n\n\tconst onMenuClick = ( action ) => {\n\t\tif ( action === 'reset' ) {\n\t\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\t\ts.slug === slug ? baseSelectedShadow : s\n\t\t\t);\n\t\t\tsetSelectedShadow( baseSelectedShadow );\n\t\t\tsetShadows( updatedShadows );\n\t\t} else if ( action === 'delete' ) {\n\t\t\tsetIsConfirmDialogVisible( true );\n\t\t} else if ( action === 'rename' ) {\n\t\t\tsetIsRenameModalVisible( true );\n\t\t}\n\t};\n\n\tconst handleShadowDelete = () => {\n\t\tconst updatedShadows = shadows.filter( ( s ) => s.slug !== slug );\n\t\tsetShadows( updatedShadows );\n\t\tgoTo( `/shadows` );\n\t};\n\n\tconst handleShadowRename = ( newName ) => {\n\t\tif ( ! newName ) {\n\t\t\treturn;\n\t\t}\n\t\tconst updatedShadows = shadows.map( ( s ) =>\n\t\t\ts.slug === slug ? { ...selectedShadow, name: newName } : s\n\t\t);\n\t\tsetSelectedShadow( { ...selectedShadow, name: newName } );\n\t\tsetShadows( updatedShadows );\n\t};\n\n\treturn ! selectedShadow ? (\n\t\t<ScreenHeader title=\"\" />\n\t) : (\n\t\t<>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<ScreenHeader title={ selectedShadow.name } />\n\t\t\t\t<FlexItem>\n\t\t\t\t\t<Spacer marginTop={ 2 } marginBottom={ 0 } paddingX={ 4 }>\n\t\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( category === 'custom'\n\t\t\t\t\t\t\t\t? customShadowMenuItems\n\t\t\t\t\t\t\t\t: presetShadowMenuItems\n\t\t\t\t\t\t\t).map( ( item ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\t\tkey={ item.action }\n\t\t\t\t\t\t\t\t\tonClick={ () => onMenuClick( item.action ) }\n\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\titem.action === 'reset' &&\n\t\t\t\t\t\t\t\t\t\tselectedShadow.shadow ===\n\t\t\t\t\t\t\t\t\t\t\tbaseSelectedShadow.shadow\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t\t\t{ item.label }\n\t\t\t\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</DropdownMenu>\n\t\t\t\t\t</Spacer>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t\t<div className=\"edit-site-global-styles-screen\">\n\t\t\t\t<ShadowsPreview shadow={ selectedShadow.shadow } />\n\t\t\t\t<ShadowEditor\n\t\t\t\t\tshadow={ selectedShadow.shadow }\n\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t{ isConfirmDialogVisible && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tisOpen\n\t\t\t\t\tonConfirm={ () => {\n\t\t\t\t\t\thandleShadowDelete();\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonCancel={ () => {\n\t\t\t\t\t\tsetIsConfirmDialogVisible( false );\n\t\t\t\t\t} }\n\t\t\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\t\t\tsize=\"medium\"\n\t\t\t\t>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: name of the shadow\n\t\t\t\t\t\t'Are you sure you want to delete \"%s\"?',\n\t\t\t\t\t\tselectedShadow.name\n\t\t\t\t\t) }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t\t{ isRenameModalVisible && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename' ) }\n\t\t\t\t\tonRequestClose={ () => setIsRenameModalVisible( false ) }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\thandleShadowRename( shadowName );\n\t\t\t\t\t\t\tsetIsRenameModalVisible( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\tplaceholder={ __( 'Shadow name' ) }\n\t\t\t\t\t\t\tvalue={ shadowName }\n\t\t\t\t\t\t\tonChange={ ( value ) => setShadowName( value ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Spacer marginBottom={ 6 } />\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"block-editor-shadow-edit-modal__actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsRenameModalVisible( false )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction ShadowsPreview( { shadow } ) {\n\tconst shadowStyle = {\n\t\tboxShadow: shadow,\n\t};\n\n\treturn (\n\t\t<Spacer marginBottom={ 4 } marginTop={ -2 }>\n\t\t\t<HStack\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-panel\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"edit-site-global-styles__shadow-preview-block\"\n\t\t\t\t\tstyle={ shadowStyle }\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t</Spacer>\n\t);\n}\n\nfunction ShadowEditor( { shadow, onChange } ) {\n\tconst shadowParts = useMemo( () => getShadowParts( shadow ), [ shadow ] );\n\n\tconst onChangeShadowPart = ( index, part ) => {\n\t\tshadowParts[ index ] = part;\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onAddShadowPart = () => {\n\t\tshadowParts.push( defaultShadow );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\tconst onRemoveShadowPart = ( index ) => {\n\t\tshadowParts.splice( index, 1 );\n\t\tonChange( shadowParts.join( ', ' ) );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t\t<Flex\n\t\t\t\t\t\talign=\"center\"\n\t\t\t\t\t\tclassName=\"edit-site-global-styles__shadows-panel__title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Subtitle level={ 3 }>{ __( 'Shadows' ) }</Subtitle>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<FlexItem className=\"edit-site-global-styles__shadows-panel__options-container\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\tlabel={ __( 'Add shadow' ) }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tonAddShadowPart();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t\t<Spacer />\n\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t{ shadowParts.map( ( part, index ) => (\n\t\t\t\t\t<ShadowItem\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tshadow={ part }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonChangeShadowPart( index, value )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcanRemove={ shadowParts.length > 1 }\n\t\t\t\t\t\tonRemove={ () => onRemoveShadowPart( index ) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ShadowItem( { shadow, onChange, canRemove, onRemove } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\tconst shadowObj = useMemo(\n\t\t() => shadowStringToObject( shadow ),\n\t\t[ shadow ]\n\t);\n\tconst onShadowChange = ( newShadow ) => {\n\t\tonChange( shadowObjectToString( newShadow ) );\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"edit-site-global-styles__shadow-editor__dropdown\"\n\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\tconst toggleProps = {\n\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__dropdown-toggle',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t};\n\t\t\t\tconst removeButtonProps = {\n\t\t\t\t\tonClick: onRemove,\n\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t'edit-site-global-styles__shadow-editor__remove-button',\n\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t),\n\t\t\t\t\tariaLabel: __( 'Remove shadow' ),\n\t\t\t\t\ttooltip: __( 'Remove shadow' ),\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\t<HStack align=\"center\" justify=\"flex-start\" spacing={ 0 }>\n\t\t\t\t\t\t<FlexItem style={ { flexGrow: 1 } }>\n\t\t\t\t\t\t\t<Button icon={ shadowIcon } { ...toggleProps }>\n\t\t\t\t\t\t\t\t{ shadowObj.inset\n\t\t\t\t\t\t\t\t\t? __( 'Inner shadow' )\n\t\t\t\t\t\t\t\t\t: __( 'Drop shadow' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={ reset }\n\t\t\t\t\t\t\t\t\t{ ...removeButtonProps }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</HStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor__dropdown-content\">\n\t\t\t\t\t\t<ShadowPopover\n\t\t\t\t\t\t\tshadowObj={ shadowObj }\n\t\t\t\t\t\t\tonChange={ onShadowChange }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction ShadowPopover( { shadowObj, onChange } ) {\n\tconst __experimentalIsRenderedInSidebar = true;\n\tconst enableAlpha = true;\n\n\tconst onShadowChange = ( key, value ) => {\n\t\tconst newShadow = {\n\t\t\t...shadowObj,\n\t\t\t[ key ]: value,\n\t\t};\n\t\tonChange( newShadow );\n\t};\n\n\treturn (\n\t\t<div className=\"edit-site-global-styles__shadow-editor-panel\">\n\t\t\t<VStack spacing={ 2 }>\n\t\t\t\t<Heading level={ 5 }>{ __( 'Shadow' ) }</Heading>\n\t\t\t\t<div className=\"edit-site-global-styles__shadow-editor-color-palette\">\n\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\tenableAlpha={ enableAlpha }\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar={\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvalue={ shadowObj.color }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'color', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<ToggleGroupControl\n\t\t\t\t\tvalue={ shadowObj.inset ? 'inset' : 'outset' }\n\t\t\t\t\tisBlock\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tonShadowChange( 'inset', value === 'inset' )\n\t\t\t\t\t}\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"outset\"\n\t\t\t\t\t\tlabel={ __( 'Outset' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\tvalue=\"inset\"\n\t\t\t\t\t\tlabel={ __( 'Inset' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToggleGroupControl>\n\t\t\t\t<Grid columns={ 2 } gap={ 4 }>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'X Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.x }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'x', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Y Position' ) }\n\t\t\t\t\t\tvalue={ shadowObj.y }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) => onShadowChange( 'y', value ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Blur' ) }\n\t\t\t\t\t\tvalue={ shadowObj.blur }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'blur', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ShadowInputControl\n\t\t\t\t\t\tlabel={ __( 'Spread' ) }\n\t\t\t\t\t\tvalue={ shadowObj.spread }\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tonShadowChange( 'spread', value )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Grid>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nfunction ShadowInputControl( { label, value, onChange, hasNegativeRange } ) {\n\tconst [ isCustomInput, setIsCustomInput ] = useState( false );\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\n\tconst sliderOnChange = ( next ) => {\n\t\tonChange(\n\t\t\tnext !== undefined ? [ next, parsedUnit || 'px' ].join( '' ) : '0px'\n\t\t);\n\t};\n\tconst onValueChange = ( next ) => {\n\t\tconst isNumeric = next !== undefined && ! isNaN( parseFloat( next ) );\n\t\tconst nextValue = isNumeric ? next : '0px';\n\t\tonChange( nextValue );\n\t};\n\n\treturn (\n\t\t<VStack justify=\"flex-start\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Subtitle>{ label }</Subtitle>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={ __( 'Use custom size' ) }\n\t\t\t\t\ticon={ settings }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsCustomInput( ! isCustomInput );\n\t\t\t\t\t} }\n\t\t\t\t\tisPressed={ isCustomInput }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t\t{ isCustomInput ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ onValueChange }\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<RangeControl\n\t\t\t\t\tvalue={ parsedQuantity ?? 0 }\n\t\t\t\t\tonChange={ sliderOnChange }\n\t\t\t\t\twithInputField={ false }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tmin={\n\t\t\t\t\t\thasNegativeRange\n\t\t\t\t\t\t\t? -(\n\t\t\t\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]\n\t\t\t\t\t\t\t\t\t\t?.max ?? 10\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: 0\n\t\t\t\t\t}\n\t\t\t\t\tmax={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.max ?? 10\n\t\t\t\t\t}\n\t\t\t\t\tstep={\n\t\t\t\t\t\tCUSTOM_VALUE_SETTINGS[ parsedUnit ?? 'px' ]?.step ?? 0.1\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -15,6 +15,7 @@ import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
|
15
15
|
/**
|
|
16
16
|
* Internal dependencies
|
|
17
17
|
*/
|
|
18
|
+
import { filterObjectByProperty } from '../../../hooks/use-theme-style-variations/use-theme-style-variations-by-property';
|
|
18
19
|
import { unlock } from '../../../lock-unlock';
|
|
19
20
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
20
21
|
const {
|
|
@@ -27,7 +28,8 @@ const {
|
|
|
27
28
|
export default function Variation({
|
|
28
29
|
variation,
|
|
29
30
|
children,
|
|
30
|
-
isPill
|
|
31
|
+
isPill,
|
|
32
|
+
property
|
|
31
33
|
}) {
|
|
32
34
|
const [isFocused, setIsFocused] = useState(false);
|
|
33
35
|
const {
|
|
@@ -36,25 +38,18 @@ export default function Variation({
|
|
|
36
38
|
setUserConfig
|
|
37
39
|
} = useContext(GlobalStylesContext);
|
|
38
40
|
const context = useMemo(() => {
|
|
39
|
-
|
|
41
|
+
let merged = mergeBaseAndUserConfigs(base, variation);
|
|
42
|
+
if (property) {
|
|
43
|
+
merged = filterObjectByProperty(merged, property);
|
|
44
|
+
}
|
|
40
45
|
return {
|
|
41
|
-
user:
|
|
42
|
-
settings: (_variation$settings = variation.settings) !== null && _variation$settings !== void 0 ? _variation$settings : {},
|
|
43
|
-
styles: (_variation$styles = variation.styles) !== null && _variation$styles !== void 0 ? _variation$styles : {},
|
|
44
|
-
_links: (_variation$_links = variation._links) !== null && _variation$_links !== void 0 ? _variation$_links : {}
|
|
45
|
-
},
|
|
46
|
+
user: variation,
|
|
46
47
|
base,
|
|
47
|
-
merged
|
|
48
|
+
merged,
|
|
48
49
|
setUserConfig: () => {}
|
|
49
50
|
};
|
|
50
|
-
}, [variation, base]);
|
|
51
|
-
const selectVariation = () =>
|
|
52
|
-
setUserConfig(() => ({
|
|
53
|
-
settings: variation.settings,
|
|
54
|
-
styles: variation.styles,
|
|
55
|
-
_links: variation._links
|
|
56
|
-
}));
|
|
57
|
-
};
|
|
51
|
+
}, [variation, base, property]);
|
|
52
|
+
const selectVariation = () => setUserConfig(variation);
|
|
58
53
|
const selectOnEnter = event => {
|
|
59
54
|
if (event.keyCode === ENTER) {
|
|
60
55
|
event.preventDefault();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","useMemo","useContext","useState","ENTER","__","sprintf","privateApis","blockEditorPrivateApis","editorPrivateApis","unlock","jsx","_jsx","mergeBaseAndUserConfigs","GlobalStylesContext","areGlobalStyleConfigsEqual","Variation","variation","children","isPill","isFocused","setIsFocused","base","user","setUserConfig","context","
|
|
1
|
+
{"version":3,"names":["clsx","useMemo","useContext","useState","ENTER","__","sprintf","privateApis","blockEditorPrivateApis","editorPrivateApis","filterObjectByProperty","unlock","jsx","_jsx","mergeBaseAndUserConfigs","GlobalStylesContext","areGlobalStyleConfigsEqual","Variation","variation","children","isPill","property","isFocused","setIsFocused","base","user","setUserConfig","context","merged","selectVariation","selectOnEnter","event","keyCode","preventDefault","isActive","label","title","description","Provider","value","className","role","onClick","onKeyDown","tabIndex","onFocus","onBlur"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variation.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useContext, useState } from '@wordpress/element';\nimport { ENTER } from '@wordpress/keycodes';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { filterObjectByProperty } from '../../../hooks/use-theme-style-variations/use-theme-style-variations-by-property';\nimport { unlock } from '../../../lock-unlock';\n\nconst { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );\nconst { GlobalStylesContext, areGlobalStyleConfigsEqual } = unlock(\n\tblockEditorPrivateApis\n);\n\nexport default function Variation( { variation, children, isPill, property } ) {\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\tconst { base, user, setUserConfig } = useContext( GlobalStylesContext );\n\n\tconst context = useMemo( () => {\n\t\tlet merged = mergeBaseAndUserConfigs( base, variation );\n\t\tif ( property ) {\n\t\t\tmerged = filterObjectByProperty( merged, property );\n\t\t}\n\t\treturn {\n\t\t\tuser: variation,\n\t\t\tbase,\n\t\t\tmerged,\n\t\t\tsetUserConfig: () => {},\n\t\t};\n\t}, [ variation, base, property ] );\n\n\tconst selectVariation = () => setUserConfig( variation );\n\n\tconst selectOnEnter = ( event ) => {\n\t\tif ( event.keyCode === ENTER ) {\n\t\t\tevent.preventDefault();\n\t\t\tselectVariation();\n\t\t}\n\t};\n\n\tconst isActive = useMemo(\n\t\t() => areGlobalStyleConfigsEqual( user, variation ),\n\t\t[ user, variation ]\n\t);\n\n\tlet label = variation?.title;\n\tif ( variation?.description ) {\n\t\tlabel = sprintf(\n\t\t\t/* translators: %1$s: variation title. %2$s variation description. */\n\t\t\t__( '%1$s (%2$s)' ),\n\t\t\tvariation?.title,\n\t\t\tvariation?.description\n\t\t);\n\t}\n\n\treturn (\n\t\t<GlobalStylesContext.Provider value={ context }>\n\t\t\t<div\n\t\t\t\tclassName={ clsx( 'edit-site-global-styles-variations_item', {\n\t\t\t\t\t'is-active': isActive,\n\t\t\t\t} ) }\n\t\t\t\trole=\"button\"\n\t\t\t\tonClick={ selectVariation }\n\t\t\t\tonKeyDown={ selectOnEnter }\n\t\t\t\ttabIndex=\"0\"\n\t\t\t\taria-label={ label }\n\t\t\t\taria-current={ isActive }\n\t\t\t\tonFocus={ () => setIsFocused( true ) }\n\t\t\t\tonBlur={ () => setIsFocused( false ) }\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t'edit-site-global-styles-variations_item-preview',\n\t\t\t\t\t\t{ 'is-pill': isPill }\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ children( isFocused ) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</GlobalStylesContext.Provider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -32,6 +32,7 @@ export default function ColorVariations({
|
|
|
32
32
|
children: colorVariations.map((variation, index) => /*#__PURE__*/_jsx(Variation, {
|
|
33
33
|
variation: variation,
|
|
34
34
|
isPill: true,
|
|
35
|
+
property: "color",
|
|
35
36
|
children: () => /*#__PURE__*/_jsx(StylesPreviewColors, {})
|
|
36
37
|
}, index))
|
|
37
38
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalVStack","VStack","__experimentalGrid","Grid","StylesPreviewColors","useColorVariations","Subtitle","Variation","jsx","_jsx","jsxs","_jsxs","ColorVariations","title","gap","colorVariations","length","spacing","children","level","map","variation","index","isPill"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-color.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalGrid as Grid,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport StylesPreviewColors from '../preview-colors';\nimport { useColorVariations } from '../hooks';\nimport Subtitle from '../subtitle';\nimport Variation from './variation';\n\nexport default function ColorVariations( { title, gap = 2 } ) {\n\tconst colorVariations = useColorVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( colorVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<Grid spacing={ gap }>\n\t\t\t\t{ colorVariations.map( ( variation, index ) => (\n\t\t\t\t\t<Variation
|
|
1
|
+
{"version":3,"names":["__experimentalVStack","VStack","__experimentalGrid","Grid","StylesPreviewColors","useColorVariations","Subtitle","Variation","jsx","_jsx","jsxs","_jsxs","ColorVariations","title","gap","colorVariations","length","spacing","children","level","map","variation","index","isPill","property"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-color.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalGrid as Grid,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport StylesPreviewColors from '../preview-colors';\nimport { useColorVariations } from '../hooks';\nimport Subtitle from '../subtitle';\nimport Variation from './variation';\n\nexport default function ColorVariations( { title, gap = 2 } ) {\n\tconst colorVariations = useColorVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( colorVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<Grid spacing={ gap }>\n\t\t\t\t{ colorVariations.map( ( variation, index ) => (\n\t\t\t\t\t<Variation\n\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\tvariation={ variation }\n\t\t\t\t\t\tisPill\n\t\t\t\t\t\tproperty=\"color\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ () => <StylesPreviewColors /> }\n\t\t\t\t\t</Variation>\n\t\t\t\t) ) }\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,kBAAkB,IAAIC,IAAI,QACpB,uBAAuB;;AAE9B;AACA;AACA;AACA,OAAOC,mBAAmB,MAAM,mBAAmB;AACnD,SAASC,kBAAkB,QAAQ,UAAU;AAC7C,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,SAAS,MAAM,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEpC,eAAe,SAASC,eAAeA,CAAE;EAAEC,KAAK;EAAEC,GAAG,GAAG;AAAE,CAAC,EAAG;EAC7D,MAAMC,eAAe,GAAGV,kBAAkB,CAAC,CAAC;;EAE5C;EACA,IAAKU,eAAe,EAAEC,MAAM,IAAI,CAAC,EAAG;IACnC,OAAO,IAAI;EACZ;EAEA,oBACCL,KAAA,CAACV,MAAM;IAACgB,OAAO,EAAG,CAAG;IAAAC,QAAA,GAClBL,KAAK,iBAAIJ,IAAA,CAACH,QAAQ;MAACa,KAAK,EAAG,CAAG;MAAAD,QAAA,EAAGL;IAAK,CAAY,CAAC,eACrDJ,IAAA,CAACN,IAAI;MAACc,OAAO,EAAGH,GAAK;MAAAI,QAAA,EAClBH,eAAe,CAACK,GAAG,CAAE,CAAEC,SAAS,EAAEC,KAAK,kBACxCb,IAAA,CAACF,SAAS;QAETc,SAAS,EAAGA,SAAW;QACvBE,MAAM;QACNC,QAAQ,EAAC,OAAO;QAAAN,QAAA,EAEdA,CAAA,kBAAMT,IAAA,CAACL,mBAAmB,IAAE;MAAC,GALzBkB,KAMI,CACV;IAAC,CACE,CAAC;EAAA,CACA,CAAC;AAEX","ignoreList":[]}
|
|
@@ -34,6 +34,7 @@ export default function TypographyVariations({
|
|
|
34
34
|
className: "edit-site-global-styles-style-variations-container",
|
|
35
35
|
children: typographyVariations && typographyVariations.length && typographyVariations.map((variation, index) => /*#__PURE__*/_jsx(Variation, {
|
|
36
36
|
variation: variation,
|
|
37
|
+
property: "typography",
|
|
37
38
|
children: isFocused => /*#__PURE__*/_jsx(PreviewIframe, {
|
|
38
39
|
label: variation?.title,
|
|
39
40
|
isFocused: isFocused,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalGrid","Grid","__experimentalVStack","HStack","VStack","useTypographyVariations","TypographyExample","PreviewIframe","Variation","Subtitle","jsx","_jsx","jsxs","_jsxs","TypographyVariations","title","gap","typographyVariations","length","spacing","children","level","columns","className","map","variation","index","isFocused","label","ratio","key","justify","style","height","overflow","fontSize"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-typography.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalGrid as Grid,\n\t__experimentalVStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useTypographyVariations } from '../hooks';\nimport TypographyExample from '../typography-example';\nimport PreviewIframe from '../preview-iframe';\nimport Variation from './variation';\nimport Subtitle from '../subtitle';\n\nexport default function TypographyVariations( { title, gap = 2 } ) {\n\tconst typographyVariations = useTypographyVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( typographyVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<Grid\n\t\t\t\tcolumns={ 3 }\n\t\t\t\tgap={ gap }\n\t\t\t\tclassName=\"edit-site-global-styles-style-variations-container\"\n\t\t\t>\n\t\t\t\t{ typographyVariations &&\n\t\t\t\t\ttypographyVariations.length &&\n\t\t\t\t\ttypographyVariations.map( ( variation, index ) => (\n\t\t\t\t\t\t<Variation
|
|
1
|
+
{"version":3,"names":["__experimentalGrid","Grid","__experimentalVStack","HStack","VStack","useTypographyVariations","TypographyExample","PreviewIframe","Variation","Subtitle","jsx","_jsx","jsxs","_jsxs","TypographyVariations","title","gap","typographyVariations","length","spacing","children","level","columns","className","map","variation","index","property","isFocused","label","ratio","key","justify","style","height","overflow","fontSize"],"sources":["@wordpress/edit-site/src/components/global-styles/variations/variations-typography.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalGrid as Grid,\n\t__experimentalVStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { useTypographyVariations } from '../hooks';\nimport TypographyExample from '../typography-example';\nimport PreviewIframe from '../preview-iframe';\nimport Variation from './variation';\nimport Subtitle from '../subtitle';\n\nexport default function TypographyVariations( { title, gap = 2 } ) {\n\tconst typographyVariations = useTypographyVariations();\n\n\t// Return null if there is only one variation (the default).\n\tif ( typographyVariations?.length <= 1 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 3 }>\n\t\t\t{ title && <Subtitle level={ 3 }>{ title }</Subtitle> }\n\t\t\t<Grid\n\t\t\t\tcolumns={ 3 }\n\t\t\t\tgap={ gap }\n\t\t\t\tclassName=\"edit-site-global-styles-style-variations-container\"\n\t\t\t>\n\t\t\t\t{ typographyVariations &&\n\t\t\t\t\ttypographyVariations.length &&\n\t\t\t\t\ttypographyVariations.map( ( variation, index ) => (\n\t\t\t\t\t\t<Variation\n\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\tvariation={ variation }\n\t\t\t\t\t\t\tproperty=\"typography\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( isFocused ) => (\n\t\t\t\t\t\t\t\t<PreviewIframe\n\t\t\t\t\t\t\t\t\tlabel={ variation?.title }\n\t\t\t\t\t\t\t\t\tisFocused={ isFocused }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ ( { ratio, key } ) => (\n\t\t\t\t\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t\t\t\t\t\tspacing={ 10 * ratio }\n\t\t\t\t\t\t\t\t\t\t\tjustify=\"center\"\n\t\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t<TypographyExample\n\t\t\t\t\t\t\t\t\t\t\t\tvariation={ variation }\n\t\t\t\t\t\t\t\t\t\t\t\tfontSize={ 85 * ratio }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</PreviewIframe>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Variation>\n\t\t\t\t\t) ) }\n\t\t\t</Grid>\n\t\t</VStack>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,kBAAkB,IAAIC,IAAI,EAC1BC,oBAAoB,IAAIC,MAAM,EAC9BD,oBAAoB,IAAIE,MAAM,QACxB,uBAAuB;;AAE9B;AACA;AACA;AACA,SAASC,uBAAuB,QAAQ,UAAU;AAClD,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,QAAQ,MAAM,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEnC,eAAe,SAASC,oBAAoBA,CAAE;EAAEC,KAAK;EAAEC,GAAG,GAAG;AAAE,CAAC,EAAG;EAClE,MAAMC,oBAAoB,GAAGZ,uBAAuB,CAAC,CAAC;;EAEtD;EACA,IAAKY,oBAAoB,EAAEC,MAAM,IAAI,CAAC,EAAG;IACxC,OAAO,IAAI;EACZ;EAEA,oBACCL,KAAA,CAACT,MAAM;IAACe,OAAO,EAAG,CAAG;IAAAC,QAAA,GAClBL,KAAK,iBAAIJ,IAAA,CAACF,QAAQ;MAACY,KAAK,EAAG,CAAG;MAAAD,QAAA,EAAGL;IAAK,CAAY,CAAC,eACrDJ,IAAA,CAACV,IAAI;MACJqB,OAAO,EAAG,CAAG;MACbN,GAAG,EAAGA,GAAK;MACXO,SAAS,EAAC,oDAAoD;MAAAH,QAAA,EAE5DH,oBAAoB,IACrBA,oBAAoB,CAACC,MAAM,IAC3BD,oBAAoB,CAACO,GAAG,CAAE,CAAEC,SAAS,EAAEC,KAAK,kBAC3Cf,IAAA,CAACH,SAAS;QAETiB,SAAS,EAAGA,SAAW;QACvBE,QAAQ,EAAC,YAAY;QAAAP,QAAA,EAEjBQ,SAAS,iBACZjB,IAAA,CAACJ,aAAa;UACbsB,KAAK,EAAGJ,SAAS,EAAEV,KAAO;UAC1Ba,SAAS,EAAGA,SAAW;UAAAR,QAAA,EAErBA,CAAE;YAAEU,KAAK;YAAEC;UAAI,CAAC,kBACjBpB,IAAA,CAACR,MAAM;YAENgB,OAAO,EAAG,EAAE,GAAGW,KAAO;YACtBE,OAAO,EAAC,QAAQ;YAChBC,KAAK,EAAG;cACPC,MAAM,EAAE,MAAM;cACdC,QAAQ,EAAE;YACX,CAAG;YAAAf,QAAA,eAEHT,IAAA,CAACL,iBAAiB;cACjBmB,SAAS,EAAGA,SAAW;cACvBW,QAAQ,EAAG,EAAE,GAAGN;YAAO,CACvB;UAAC,GAXIC,GAYC;QACR,CACa;MACf,GA1BKL,KA2BI,CACV;IAAC,CACC,CAAC;EAAA,CACA,CAAC;AAEX","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalConfirmDialog","ConfirmDialog","__","jsx","_jsx","DeleteConfirmDialog","onClose","onConfirm","isOpen","onCancel","confirmButtonText","children"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nexport default function DeleteConfirmDialog( { onClose, onConfirm } ) {\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen\n\t\t\tonConfirm={ () => {\n\t\t\t\tonConfirm();\n\n\t\t\t\t// Immediate close avoids ability to hit delete multiple times.\n\t\t\t\tonClose();\n\t\t\t} }\n\t\t\tonCancel={ onClose }\n\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t>\n\t\t\t{ __( 'Are you sure you want to delete this Navigation Menu?' ) }\n\t\t</ConfirmDialog>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,2BAA2B,IAAIC,aAAa,QAAQ,uBAAuB;AACpF,SAASC,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErC,eAAe,SAASC,mBAAmBA,CAAE;EAAEC,OAAO;EAAEC;AAAU,CAAC,EAAG;EACrE,oBACCH,IAAA,CAACH,aAAa;IACbO,MAAM;IACND,SAAS,EAAGA,CAAA,KAAM;MACjBA,SAAS,CAAC,CAAC;;MAEX;MACAD,OAAO,CAAC,CAAC;IACV,CAAG;IACHG,QAAQ,EAAGH,OAAS;IACpBI,iBAAiB,EAAGR,EAAE,CAAE,QAAS,CAAG;
|
|
1
|
+
{"version":3,"names":["__experimentalConfirmDialog","ConfirmDialog","__","jsx","_jsx","DeleteConfirmDialog","onClose","onConfirm","isOpen","onCancel","confirmButtonText","size","children"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-navigation-menu/delete-confirm-dialog.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalConfirmDialog as ConfirmDialog } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nexport default function DeleteConfirmDialog( { onClose, onConfirm } ) {\n\treturn (\n\t\t<ConfirmDialog\n\t\t\tisOpen\n\t\t\tonConfirm={ () => {\n\t\t\t\tonConfirm();\n\n\t\t\t\t// Immediate close avoids ability to hit delete multiple times.\n\t\t\t\tonClose();\n\t\t\t} }\n\t\t\tonCancel={ onClose }\n\t\t\tconfirmButtonText={ __( 'Delete' ) }\n\t\t\tsize=\"medium\"\n\t\t>\n\t\t\t{ __( 'Are you sure you want to delete this Navigation Menu?' ) }\n\t\t</ConfirmDialog>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,2BAA2B,IAAIC,aAAa,QAAQ,uBAAuB;AACpF,SAASC,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAErC,eAAe,SAASC,mBAAmBA,CAAE;EAAEC,OAAO;EAAEC;AAAU,CAAC,EAAG;EACrE,oBACCH,IAAA,CAACH,aAAa;IACbO,MAAM;IACND,SAAS,EAAGA,CAAA,KAAM;MACjBA,SAAS,CAAC,CAAC;;MAEX;MACAD,OAAO,CAAC,CAAC;IACV,CAAG;IACHG,QAAQ,EAAGH,OAAS;IACpBI,iBAAiB,EAAGR,EAAE,CAAE,QAAS,CAAG;IACpCS,IAAI,EAAC,QAAQ;IAAAC,QAAA,EAEXV,EAAE,CAAE,uDAAwD;EAAC,CACjD,CAAC;AAElB","ignoreList":[]}
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { PluginMoreMenuItem as EditorPluginMoreMenuItem, PluginSidebar as EditorPluginSidebar, PluginSidebarMoreMenuItem as EditorPluginSidebarMoreMenuItem } from '@wordpress/editor';
|
|
5
|
+
import { getPath } from '@wordpress/url';
|
|
5
6
|
import deprecated from '@wordpress/deprecated';
|
|
6
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
const isSiteEditor = getPath(window.location.href)?.includes('site-editor.php');
|
|
7
9
|
const deprecateSlot = name => {
|
|
8
10
|
deprecated(`wp.editPost.${name}`, {
|
|
9
11
|
since: '6.6',
|
|
@@ -16,6 +18,9 @@ const deprecateSlot = name => {
|
|
|
16
18
|
* @see PluginMoreMenuItem in @wordpress/editor package.
|
|
17
19
|
*/
|
|
18
20
|
export function PluginMoreMenuItem(props) {
|
|
21
|
+
if (!isSiteEditor) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
19
24
|
deprecateSlot('PluginMoreMenuItem');
|
|
20
25
|
return /*#__PURE__*/_jsx(EditorPluginMoreMenuItem, {
|
|
21
26
|
...props
|
|
@@ -26,6 +31,9 @@ export function PluginMoreMenuItem(props) {
|
|
|
26
31
|
* @see PluginSidebar in @wordpress/editor package.
|
|
27
32
|
*/
|
|
28
33
|
export function PluginSidebar(props) {
|
|
34
|
+
if (!isSiteEditor) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
29
37
|
deprecateSlot('PluginSidebar');
|
|
30
38
|
return /*#__PURE__*/_jsx(EditorPluginSidebar, {
|
|
31
39
|
...props
|
|
@@ -36,6 +44,9 @@ export function PluginSidebar(props) {
|
|
|
36
44
|
* @see PluginSidebarMoreMenuItem in @wordpress/editor package.
|
|
37
45
|
*/
|
|
38
46
|
export function PluginSidebarMoreMenuItem(props) {
|
|
47
|
+
if (!isSiteEditor) {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
39
50
|
deprecateSlot('PluginSidebarMoreMenuItem');
|
|
40
51
|
return /*#__PURE__*/_jsx(EditorPluginSidebarMoreMenuItem, {
|
|
41
52
|
...props
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PluginMoreMenuItem","EditorPluginMoreMenuItem","PluginSidebar","EditorPluginSidebar","PluginSidebarMoreMenuItem","EditorPluginSidebarMoreMenuItem","deprecated","jsx","_jsx","deprecateSlot","name","since","alternative","props"],"sources":["@wordpress/edit-site/src/deprecated.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPluginMoreMenuItem as EditorPluginMoreMenuItem,\n\tPluginSidebar as EditorPluginSidebar,\n\tPluginSidebarMoreMenuItem as EditorPluginSidebarMoreMenuItem,\n} from '@wordpress/editor';\nimport deprecated from '@wordpress/deprecated';\n\nconst deprecateSlot = ( name ) => {\n\tdeprecated( `wp.editPost.${ name }`, {\n\t\tsince: '6.6',\n\t\talternative: `wp.editor.${ name }`,\n\t} );\n};\n\n/* eslint-disable jsdoc/require-param */\n/**\n * @see PluginMoreMenuItem in @wordpress/editor package.\n */\nexport function PluginMoreMenuItem( props ) {\n\tdeprecateSlot( 'PluginMoreMenuItem' );\n\treturn <EditorPluginMoreMenuItem { ...props } />;\n}\n\n/**\n * @see PluginSidebar in @wordpress/editor package.\n */\nexport function PluginSidebar( props ) {\n\tdeprecateSlot( 'PluginSidebar' );\n\treturn <EditorPluginSidebar { ...props } />;\n}\n\n/**\n * @see PluginSidebarMoreMenuItem in @wordpress/editor package.\n */\nexport function PluginSidebarMoreMenuItem( props ) {\n\tdeprecateSlot( 'PluginSidebarMoreMenuItem' );\n\treturn <EditorPluginSidebarMoreMenuItem { ...props } />;\n}\n/* eslint-enable jsdoc/require-param */\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,kBAAkB,IAAIC,wBAAwB,EAC9CC,aAAa,IAAIC,mBAAmB,EACpCC,yBAAyB,IAAIC,+BAA+B,QACtD,mBAAmB;AAC1B,OAAOC,UAAU,MAAM,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/C,MAAMC,aAAa,GAAKC,IAAI,IAAM;
|
|
1
|
+
{"version":3,"names":["PluginMoreMenuItem","EditorPluginMoreMenuItem","PluginSidebar","EditorPluginSidebar","PluginSidebarMoreMenuItem","EditorPluginSidebarMoreMenuItem","getPath","deprecated","jsx","_jsx","isSiteEditor","window","location","href","includes","deprecateSlot","name","since","alternative","props"],"sources":["@wordpress/edit-site/src/deprecated.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPluginMoreMenuItem as EditorPluginMoreMenuItem,\n\tPluginSidebar as EditorPluginSidebar,\n\tPluginSidebarMoreMenuItem as EditorPluginSidebarMoreMenuItem,\n} from '@wordpress/editor';\nimport { getPath } from '@wordpress/url';\nimport deprecated from '@wordpress/deprecated';\n\nconst isSiteEditor = getPath( window.location.href )?.includes(\n\t'site-editor.php'\n);\n\nconst deprecateSlot = ( name ) => {\n\tdeprecated( `wp.editPost.${ name }`, {\n\t\tsince: '6.6',\n\t\talternative: `wp.editor.${ name }`,\n\t} );\n};\n\n/* eslint-disable jsdoc/require-param */\n/**\n * @see PluginMoreMenuItem in @wordpress/editor package.\n */\nexport function PluginMoreMenuItem( props ) {\n\tif ( ! isSiteEditor ) {\n\t\treturn null;\n\t}\n\tdeprecateSlot( 'PluginMoreMenuItem' );\n\treturn <EditorPluginMoreMenuItem { ...props } />;\n}\n\n/**\n * @see PluginSidebar in @wordpress/editor package.\n */\nexport function PluginSidebar( props ) {\n\tif ( ! isSiteEditor ) {\n\t\treturn null;\n\t}\n\tdeprecateSlot( 'PluginSidebar' );\n\treturn <EditorPluginSidebar { ...props } />;\n}\n\n/**\n * @see PluginSidebarMoreMenuItem in @wordpress/editor package.\n */\nexport function PluginSidebarMoreMenuItem( props ) {\n\tif ( ! isSiteEditor ) {\n\t\treturn null;\n\t}\n\tdeprecateSlot( 'PluginSidebarMoreMenuItem' );\n\treturn <EditorPluginSidebarMoreMenuItem { ...props } />;\n}\n/* eslint-enable jsdoc/require-param */\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,kBAAkB,IAAIC,wBAAwB,EAC9CC,aAAa,IAAIC,mBAAmB,EACpCC,yBAAyB,IAAIC,+BAA+B,QACtD,mBAAmB;AAC1B,SAASC,OAAO,QAAQ,gBAAgB;AACxC,OAAOC,UAAU,MAAM,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE/C,MAAMC,YAAY,GAAGJ,OAAO,CAAEK,MAAM,CAACC,QAAQ,CAACC,IAAK,CAAC,EAAEC,QAAQ,CAC7D,iBACD,CAAC;AAED,MAAMC,aAAa,GAAKC,IAAI,IAAM;EACjCT,UAAU,CAAG,eAAeS,IAAM,EAAC,EAAE;IACpCC,KAAK,EAAE,KAAK;IACZC,WAAW,EAAG,aAAaF,IAAM;EAClC,CAAE,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,SAAShB,kBAAkBA,CAAEmB,KAAK,EAAG;EAC3C,IAAK,CAAET,YAAY,EAAG;IACrB,OAAO,IAAI;EACZ;EACAK,aAAa,CAAE,oBAAqB,CAAC;EACrC,oBAAON,IAAA,CAACR,wBAAwB;IAAA,GAAMkB;EAAK,CAAI,CAAC;AACjD;;AAEA;AACA;AACA;AACA,OAAO,SAASjB,aAAaA,CAAEiB,KAAK,EAAG;EACtC,IAAK,CAAET,YAAY,EAAG;IACrB,OAAO,IAAI;EACZ;EACAK,aAAa,CAAE,eAAgB,CAAC;EAChC,oBAAON,IAAA,CAACN,mBAAmB;IAAA,GAAMgB;EAAK,CAAI,CAAC;AAC5C;;AAEA;AACA;AACA;AACA,OAAO,SAASf,yBAAyBA,CAAEe,KAAK,EAAG;EAClD,IAAK,CAAET,YAAY,EAAG;IACrB,OAAO,IAAI;EACZ;EACAK,aAAa,CAAE,2BAA4B,CAAC;EAC5C,oBAAON,IAAA,CAACJ,+BAA+B;IAAA,GAAMc;EAAK,CAAI,CAAC;AACxD;AACA","ignoreList":[]}
|
|
@@ -269,7 +269,7 @@ function PushChangesToGlobalStylesControl({
|
|
|
269
269
|
// notification.
|
|
270
270
|
__unstableMarkNextChangeAsNotPersistent();
|
|
271
271
|
setAttributes(newBlockAttributes);
|
|
272
|
-
setUserConfig(
|
|
272
|
+
setUserConfig(newUserConfig, {
|
|
273
273
|
undoIgnore: true
|
|
274
274
|
});
|
|
275
275
|
createSuccessNotice(sprintf(
|
|
@@ -281,7 +281,7 @@ function PushChangesToGlobalStylesControl({
|
|
|
281
281
|
onClick() {
|
|
282
282
|
__unstableMarkNextChangeAsNotPersistent();
|
|
283
283
|
setAttributes(attributes);
|
|
284
|
-
setUserConfig(
|
|
284
|
+
setUserConfig(userConfig, {
|
|
285
285
|
undoIgnore: true
|
|
286
286
|
});
|
|
287
287
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["addFilter","createHigherOrderComponent","InspectorAdvancedControls","store","blockEditorStore","privateApis","blockEditorPrivateApis","useBlockEditingMode","BaseControl","Button","__","sprintf","__EXPERIMENTAL_STYLE_PROPERTY","getBlockType","hasBlockSupport","useContext","useMemo","useCallback","useDispatch","useSelect","noticesStore","coreStore","useSupportedStyles","unlock","cloneDeep","setNestedValue","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","cleanEmptyObject","GlobalStylesContext","STYLE_PROPERTY","blockGap","value","STYLE_PATH_TO_CSS_VAR_INFIX","STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE","SUPPORTED_STYLES","getValueFromObjectPath","object","path","forEach","fieldName","flatBorderProperties","sides","getBorderStyleChanges","border","presetColor","userStyle","changes","getFallbackBorderStyleChange","color","customColor","style","width","hasColorOrWidth","side","push","globalBorderStyle","useChangesToPush","name","attributes","userConfig","supports","blockUserConfig","styles","blocks","flatMap","key","presetAttributeKey","join","presetAttributeValue","linkChanges","hoverPath","hoverValue","includes","borderChanges","currentPath","splice","borderColor","change","PushChangesToGlobalStylesControl","setAttributes","user","setUserConfig","__unstableMarkNextChangeAsNotPersistent","createSuccessNotice","pushChanges","length","blockStyles","newBlockStyles","newUserConfig","undefined","newBlockAttributes","backgroundColor","textColor","gradient","fontSize","fontFamily","undoIgnore","title","type","actions","label","onClick","className","help","children","VisualLabel","__next40pxDefaultSize","variant","__experimentalIsFocusable","disabled","PushChangesToGlobalStyles","props","blockEditingMode","isBlockBasedTheme","select","getCurrentTheme","is_block_theme","supportsStyles","some","feature","isDisplayed","withPushChangesToGlobalStyles","BlockEdit","isSelected"],"sources":["@wordpress/edit-site/src/hooks/push-changes-to-global-styles/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport {\n\tInspectorAdvancedControls,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { BaseControl, Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__EXPERIMENTAL_STYLE_PROPERTY,\n\tgetBlockType,\n\thasBlockSupport,\n} from '@wordpress/blocks';\nimport { useContext, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { useSupportedStyles } from '../../components/global-styles/hooks';\nimport { unlock } from '../../lock-unlock';\nimport cloneDeep from '../../utils/clone-deep';\nimport setNestedValue from '../../utils/set-nested-value';\n\nconst { cleanEmptyObject, GlobalStylesContext } = unlock(\n\tblockEditorPrivateApis\n);\n\n// Block Gap is a special case and isn't defined within the blocks\n// style properties config. We'll add it here to allow it to be pushed\n// to global styles as well.\nconst STYLE_PROPERTY = {\n\t...__EXPERIMENTAL_STYLE_PROPERTY,\n\tblockGap: { value: [ 'spacing', 'blockGap' ] },\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_CSS_VAR_INFIX = {\n\t'border.color': 'color',\n\t'color.background': 'color',\n\t'color.text': 'color',\n\t'elements.link.color.text': 'color',\n\t'elements.link.:hover.color.text': 'color',\n\t'elements.link.typography.fontFamily': 'font-family',\n\t'elements.link.typography.fontSize': 'font-size',\n\t'elements.button.color.text': 'color',\n\t'elements.button.color.background': 'color',\n\t'elements.button.typography.fontFamily': 'font-family',\n\t'elements.button.typography.fontSize': 'font-size',\n\t'elements.caption.color.text': 'color',\n\t'elements.heading.color': 'color',\n\t'elements.heading.color.background': 'color',\n\t'elements.heading.typography.fontFamily': 'font-family',\n\t'elements.heading.gradient': 'gradient',\n\t'elements.heading.color.gradient': 'gradient',\n\t'elements.h1.color': 'color',\n\t'elements.h1.color.background': 'color',\n\t'elements.h1.typography.fontFamily': 'font-family',\n\t'elements.h1.color.gradient': 'gradient',\n\t'elements.h2.color': 'color',\n\t'elements.h2.color.background': 'color',\n\t'elements.h2.typography.fontFamily': 'font-family',\n\t'elements.h2.color.gradient': 'gradient',\n\t'elements.h3.color': 'color',\n\t'elements.h3.color.background': 'color',\n\t'elements.h3.typography.fontFamily': 'font-family',\n\t'elements.h3.color.gradient': 'gradient',\n\t'elements.h4.color': 'color',\n\t'elements.h4.color.background': 'color',\n\t'elements.h4.typography.fontFamily': 'font-family',\n\t'elements.h4.color.gradient': 'gradient',\n\t'elements.h5.color': 'color',\n\t'elements.h5.color.background': 'color',\n\t'elements.h5.typography.fontFamily': 'font-family',\n\t'elements.h5.color.gradient': 'gradient',\n\t'elements.h6.color': 'color',\n\t'elements.h6.color.background': 'color',\n\t'elements.h6.typography.fontFamily': 'font-family',\n\t'elements.h6.color.gradient': 'gradient',\n\t'color.gradient': 'gradient',\n\tblockGap: 'spacing',\n\t'typography.fontSize': 'font-size',\n\t'typography.fontFamily': 'font-family',\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {\n\t'border.color': 'borderColor',\n\t'color.background': 'backgroundColor',\n\t'color.text': 'textColor',\n\t'color.gradient': 'gradient',\n\t'typography.fontSize': 'fontSize',\n\t'typography.fontFamily': 'fontFamily',\n};\n\nconst SUPPORTED_STYLES = [ 'border', 'color', 'spacing', 'typography' ];\n\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\nconst flatBorderProperties = [ 'borderColor', 'borderWidth', 'borderStyle' ];\nconst sides = [ 'top', 'right', 'bottom', 'left' ];\n\nfunction getBorderStyleChanges( border, presetColor, userStyle ) {\n\tif ( ! border && ! presetColor ) {\n\t\treturn [];\n\t}\n\n\tconst changes = [\n\t\t...getFallbackBorderStyleChange( 'top', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'right', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'bottom', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'left', border, userStyle ),\n\t];\n\n\t// Handle a flat border i.e. all sides the same, CSS shorthand.\n\tconst { color: customColor, style, width } = border || {};\n\tconst hasColorOrWidth = presetColor || customColor || width;\n\n\tif ( hasColorOrWidth && ! style ) {\n\t\t// Global Styles need individual side configurations to overcome\n\t\t// theme.json configurations which are per side as well.\n\t\tsides.forEach( ( side ) => {\n\t\t\t// Only add fallback border-style if global styles don't already\n\t\t\t// have something set.\n\t\t\tif ( ! userStyle?.[ side ]?.style ) {\n\t\t\t\tchanges.push( {\n\t\t\t\t\tpath: [ 'border', side, 'style' ],\n\t\t\t\t\tvalue: 'solid',\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}\n\n\treturn changes;\n}\n\nfunction getFallbackBorderStyleChange( side, border, globalBorderStyle ) {\n\tif ( ! border?.[ side ] || globalBorderStyle?.[ side ]?.style ) {\n\t\treturn [];\n\t}\n\n\tconst { color, style, width } = border[ side ];\n\tconst hasColorOrWidth = color || width;\n\n\tif ( ! hasColorOrWidth || style ) {\n\t\treturn [];\n\t}\n\n\treturn [ { path: [ 'border', side, 'style' ], value: 'solid' } ];\n}\n\nfunction useChangesToPush( name, attributes, userConfig ) {\n\tconst supports = useSupportedStyles( name );\n\tconst blockUserConfig = userConfig?.styles?.blocks?.[ name ];\n\n\treturn useMemo( () => {\n\t\tconst changes = supports.flatMap( ( key ) => {\n\t\t\tif ( ! STYLE_PROPERTY[ key ] ) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst { value: path } = STYLE_PROPERTY[ key ];\n\t\t\tconst presetAttributeKey = path.join( '.' );\n\t\t\tconst presetAttributeValue =\n\t\t\t\tattributes[\n\t\t\t\t\tSTYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE[ presetAttributeKey ]\n\t\t\t\t];\n\t\t\tconst value = presetAttributeValue\n\t\t\t\t? `var:preset|${ STYLE_PATH_TO_CSS_VAR_INFIX[ presetAttributeKey ] }|${ presetAttributeValue }`\n\t\t\t\t: getValueFromObjectPath( attributes.style, path );\n\n\t\t\t// Links only have a single support entry but have two element\n\t\t\t// style properties, color and hover color. The following check\n\t\t\t// will add the hover color to the changes if required.\n\t\t\tif ( key === 'linkColor' ) {\n\t\t\t\tconst linkChanges = value ? [ { path, value } ] : [];\n\t\t\t\tconst hoverPath = [\n\t\t\t\t\t'elements',\n\t\t\t\t\t'link',\n\t\t\t\t\t':hover',\n\t\t\t\t\t'color',\n\t\t\t\t\t'text',\n\t\t\t\t];\n\t\t\t\tconst hoverValue = getValueFromObjectPath(\n\t\t\t\t\tattributes.style,\n\t\t\t\t\thoverPath\n\t\t\t\t);\n\n\t\t\t\tif ( hoverValue ) {\n\t\t\t\t\tlinkChanges.push( { path: hoverPath, value: hoverValue } );\n\t\t\t\t}\n\n\t\t\t\treturn linkChanges;\n\t\t\t}\n\n\t\t\t// The shorthand border styles can't be mapped directly as global\n\t\t\t// styles requires longhand config.\n\t\t\tif ( flatBorderProperties.includes( key ) && value ) {\n\t\t\t\t// The shorthand config path is included to clear the block attribute.\n\t\t\t\tconst borderChanges = [ { path, value } ];\n\t\t\t\tsides.forEach( ( side ) => {\n\t\t\t\t\tconst currentPath = [ ...path ];\n\t\t\t\t\tcurrentPath.splice( -1, 0, side );\n\t\t\t\t\tborderChanges.push( { path: currentPath, value } );\n\t\t\t\t} );\n\t\t\t\treturn borderChanges;\n\t\t\t}\n\n\t\t\treturn value ? [ { path, value } ] : [];\n\t\t} );\n\n\t\t// To ensure display of a visible border, global styles require a\n\t\t// default border style if a border color or width is present.\n\t\tgetBorderStyleChanges(\n\t\t\tattributes.style?.border,\n\t\t\tattributes.borderColor,\n\t\t\tblockUserConfig?.border\n\t\t).forEach( ( change ) => changes.push( change ) );\n\n\t\treturn changes;\n\t}, [ supports, attributes, blockUserConfig ] );\n}\n\nfunction PushChangesToGlobalStylesControl( {\n\tname,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\n\tconst changes = useChangesToPush( name, attributes, userConfig );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst pushChanges = useCallback( () => {\n\t\tif ( changes.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( changes.length > 0 ) {\n\t\t\tconst { style: blockStyles } = attributes;\n\n\t\t\tconst newBlockStyles = cloneDeep( blockStyles );\n\t\t\tconst newUserConfig = cloneDeep( userConfig );\n\n\t\t\tfor ( const { path, value } of changes ) {\n\t\t\t\tsetNestedValue( newBlockStyles, path, undefined );\n\t\t\t\tsetNestedValue(\n\t\t\t\t\tnewUserConfig,\n\t\t\t\t\t[ 'styles', 'blocks', name, ...path ],\n\t\t\t\t\tvalue\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst newBlockAttributes = {\n\t\t\t\tborderColor: undefined,\n\t\t\t\tbackgroundColor: undefined,\n\t\t\t\ttextColor: undefined,\n\t\t\t\tgradient: undefined,\n\t\t\t\tfontSize: undefined,\n\t\t\t\tfontFamily: undefined,\n\t\t\t\tstyle: cleanEmptyObject( newBlockStyles ),\n\t\t\t};\n\n\t\t\t// @wordpress/core-data doesn't support editing multiple entity types in\n\t\t\t// a single undo level. So for now, we disable @wordpress/core-data undo\n\t\t\t// tracking and implement our own Undo button in the snackbar\n\t\t\t// notification.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( newBlockAttributes );\n\t\t\tsetUserConfig( () => newUserConfig, { undoIgnore: true } );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t\t__( '%s styles applied.' ),\n\t\t\t\t\tgetBlockType( name ).title\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\tonClick() {\n\t\t\t\t\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\t\t\t\t\tsetAttributes( attributes );\n\t\t\t\t\t\t\t\tsetUserConfig( () => userConfig, {\n\t\t\t\t\t\t\t\t\tundoIgnore: true,\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],\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tattributes,\n\t\tchanges,\n\t\tcreateSuccessNotice,\n\t\tname,\n\t\tsetAttributes,\n\t\tsetUserConfig,\n\t\tuserConfig,\n\t] );\n\n\treturn (\n\t\t<BaseControl\n\t\t\tclassName=\"edit-site-push-changes-to-global-styles-control\"\n\t\t\thelp={ sprintf(\n\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t__(\n\t\t\t\t\t'Apply this block’s typography, spacing, dimensions, and color styles to all %s blocks.'\n\t\t\t\t),\n\t\t\t\tgetBlockType( name ).title\n\t\t\t) }\n\t\t>\n\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t{ __( 'Styles' ) }\n\t\t\t</BaseControl.VisualLabel>\n\t\t\t<Button\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvariant=\"secondary\"\n\t\t\t\t__experimentalIsFocusable\n\t\t\t\tdisabled={ changes.length === 0 }\n\t\t\t\tonClick={ pushChanges }\n\t\t\t>\n\t\t\t\t{ __( 'Apply globally' ) }\n\t\t\t</Button>\n\t\t</BaseControl>\n\t);\n}\n\nfunction PushChangesToGlobalStyles( props ) {\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst isBlockBasedTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t[]\n\t);\n\tconst supportsStyles = SUPPORTED_STYLES.some( ( feature ) =>\n\t\thasBlockSupport( props.name, feature )\n\t);\n\tconst isDisplayed =\n\t\tblockEditingMode === 'default' && supportsStyles && isBlockBasedTheme;\n\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<InspectorAdvancedControls>\n\t\t\t<PushChangesToGlobalStylesControl { ...props } />\n\t\t</InspectorAdvancedControls>\n\t);\n}\n\nconst withPushChangesToGlobalStyles = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => (\n\t\t<>\n\t\t\t<BlockEdit { ...props } />\n\t\t\t{ props.isSelected && <PushChangesToGlobalStyles { ...props } /> }\n\t\t</>\n\t)\n);\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/edit-site/push-changes-to-global-styles',\n\twithPushChangesToGlobalStyles\n);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["addFilter","createHigherOrderComponent","InspectorAdvancedControls","store","blockEditorStore","privateApis","blockEditorPrivateApis","useBlockEditingMode","BaseControl","Button","__","sprintf","__EXPERIMENTAL_STYLE_PROPERTY","getBlockType","hasBlockSupport","useContext","useMemo","useCallback","useDispatch","useSelect","noticesStore","coreStore","useSupportedStyles","unlock","cloneDeep","setNestedValue","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","cleanEmptyObject","GlobalStylesContext","STYLE_PROPERTY","blockGap","value","STYLE_PATH_TO_CSS_VAR_INFIX","STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE","SUPPORTED_STYLES","getValueFromObjectPath","object","path","forEach","fieldName","flatBorderProperties","sides","getBorderStyleChanges","border","presetColor","userStyle","changes","getFallbackBorderStyleChange","color","customColor","style","width","hasColorOrWidth","side","push","globalBorderStyle","useChangesToPush","name","attributes","userConfig","supports","blockUserConfig","styles","blocks","flatMap","key","presetAttributeKey","join","presetAttributeValue","linkChanges","hoverPath","hoverValue","includes","borderChanges","currentPath","splice","borderColor","change","PushChangesToGlobalStylesControl","setAttributes","user","setUserConfig","__unstableMarkNextChangeAsNotPersistent","createSuccessNotice","pushChanges","length","blockStyles","newBlockStyles","newUserConfig","undefined","newBlockAttributes","backgroundColor","textColor","gradient","fontSize","fontFamily","undoIgnore","title","type","actions","label","onClick","className","help","children","VisualLabel","__next40pxDefaultSize","variant","__experimentalIsFocusable","disabled","PushChangesToGlobalStyles","props","blockEditingMode","isBlockBasedTheme","select","getCurrentTheme","is_block_theme","supportsStyles","some","feature","isDisplayed","withPushChangesToGlobalStyles","BlockEdit","isSelected"],"sources":["@wordpress/edit-site/src/hooks/push-changes-to-global-styles/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { addFilter } from '@wordpress/hooks';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport {\n\tInspectorAdvancedControls,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { BaseControl, Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__EXPERIMENTAL_STYLE_PROPERTY,\n\tgetBlockType,\n\thasBlockSupport,\n} from '@wordpress/blocks';\nimport { useContext, useMemo, useCallback } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { useSupportedStyles } from '../../components/global-styles/hooks';\nimport { unlock } from '../../lock-unlock';\nimport cloneDeep from '../../utils/clone-deep';\nimport setNestedValue from '../../utils/set-nested-value';\n\nconst { cleanEmptyObject, GlobalStylesContext } = unlock(\n\tblockEditorPrivateApis\n);\n\n// Block Gap is a special case and isn't defined within the blocks\n// style properties config. We'll add it here to allow it to be pushed\n// to global styles as well.\nconst STYLE_PROPERTY = {\n\t...__EXPERIMENTAL_STYLE_PROPERTY,\n\tblockGap: { value: [ 'spacing', 'blockGap' ] },\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_CSS_VAR_INFIX = {\n\t'border.color': 'color',\n\t'color.background': 'color',\n\t'color.text': 'color',\n\t'elements.link.color.text': 'color',\n\t'elements.link.:hover.color.text': 'color',\n\t'elements.link.typography.fontFamily': 'font-family',\n\t'elements.link.typography.fontSize': 'font-size',\n\t'elements.button.color.text': 'color',\n\t'elements.button.color.background': 'color',\n\t'elements.button.typography.fontFamily': 'font-family',\n\t'elements.button.typography.fontSize': 'font-size',\n\t'elements.caption.color.text': 'color',\n\t'elements.heading.color': 'color',\n\t'elements.heading.color.background': 'color',\n\t'elements.heading.typography.fontFamily': 'font-family',\n\t'elements.heading.gradient': 'gradient',\n\t'elements.heading.color.gradient': 'gradient',\n\t'elements.h1.color': 'color',\n\t'elements.h1.color.background': 'color',\n\t'elements.h1.typography.fontFamily': 'font-family',\n\t'elements.h1.color.gradient': 'gradient',\n\t'elements.h2.color': 'color',\n\t'elements.h2.color.background': 'color',\n\t'elements.h2.typography.fontFamily': 'font-family',\n\t'elements.h2.color.gradient': 'gradient',\n\t'elements.h3.color': 'color',\n\t'elements.h3.color.background': 'color',\n\t'elements.h3.typography.fontFamily': 'font-family',\n\t'elements.h3.color.gradient': 'gradient',\n\t'elements.h4.color': 'color',\n\t'elements.h4.color.background': 'color',\n\t'elements.h4.typography.fontFamily': 'font-family',\n\t'elements.h4.color.gradient': 'gradient',\n\t'elements.h5.color': 'color',\n\t'elements.h5.color.background': 'color',\n\t'elements.h5.typography.fontFamily': 'font-family',\n\t'elements.h5.color.gradient': 'gradient',\n\t'elements.h6.color': 'color',\n\t'elements.h6.color.background': 'color',\n\t'elements.h6.typography.fontFamily': 'font-family',\n\t'elements.h6.color.gradient': 'gradient',\n\t'color.gradient': 'gradient',\n\tblockGap: 'spacing',\n\t'typography.fontSize': 'font-size',\n\t'typography.fontFamily': 'font-family',\n};\n\n// TODO: Temporary duplication of constant in @wordpress/block-editor. Can be\n// removed by moving PushChangesToGlobalStylesControl to\n// @wordpress/block-editor.\nconst STYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE = {\n\t'border.color': 'borderColor',\n\t'color.background': 'backgroundColor',\n\t'color.text': 'textColor',\n\t'color.gradient': 'gradient',\n\t'typography.fontSize': 'fontSize',\n\t'typography.fontFamily': 'fontFamily',\n};\n\nconst SUPPORTED_STYLES = [ 'border', 'color', 'spacing', 'typography' ];\n\nconst getValueFromObjectPath = ( object, path ) => {\n\tlet value = object;\n\tpath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\nconst flatBorderProperties = [ 'borderColor', 'borderWidth', 'borderStyle' ];\nconst sides = [ 'top', 'right', 'bottom', 'left' ];\n\nfunction getBorderStyleChanges( border, presetColor, userStyle ) {\n\tif ( ! border && ! presetColor ) {\n\t\treturn [];\n\t}\n\n\tconst changes = [\n\t\t...getFallbackBorderStyleChange( 'top', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'right', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'bottom', border, userStyle ),\n\t\t...getFallbackBorderStyleChange( 'left', border, userStyle ),\n\t];\n\n\t// Handle a flat border i.e. all sides the same, CSS shorthand.\n\tconst { color: customColor, style, width } = border || {};\n\tconst hasColorOrWidth = presetColor || customColor || width;\n\n\tif ( hasColorOrWidth && ! style ) {\n\t\t// Global Styles need individual side configurations to overcome\n\t\t// theme.json configurations which are per side as well.\n\t\tsides.forEach( ( side ) => {\n\t\t\t// Only add fallback border-style if global styles don't already\n\t\t\t// have something set.\n\t\t\tif ( ! userStyle?.[ side ]?.style ) {\n\t\t\t\tchanges.push( {\n\t\t\t\t\tpath: [ 'border', side, 'style' ],\n\t\t\t\t\tvalue: 'solid',\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t}\n\n\treturn changes;\n}\n\nfunction getFallbackBorderStyleChange( side, border, globalBorderStyle ) {\n\tif ( ! border?.[ side ] || globalBorderStyle?.[ side ]?.style ) {\n\t\treturn [];\n\t}\n\n\tconst { color, style, width } = border[ side ];\n\tconst hasColorOrWidth = color || width;\n\n\tif ( ! hasColorOrWidth || style ) {\n\t\treturn [];\n\t}\n\n\treturn [ { path: [ 'border', side, 'style' ], value: 'solid' } ];\n}\n\nfunction useChangesToPush( name, attributes, userConfig ) {\n\tconst supports = useSupportedStyles( name );\n\tconst blockUserConfig = userConfig?.styles?.blocks?.[ name ];\n\n\treturn useMemo( () => {\n\t\tconst changes = supports.flatMap( ( key ) => {\n\t\t\tif ( ! STYLE_PROPERTY[ key ] ) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tconst { value: path } = STYLE_PROPERTY[ key ];\n\t\t\tconst presetAttributeKey = path.join( '.' );\n\t\t\tconst presetAttributeValue =\n\t\t\t\tattributes[\n\t\t\t\t\tSTYLE_PATH_TO_PRESET_BLOCK_ATTRIBUTE[ presetAttributeKey ]\n\t\t\t\t];\n\t\t\tconst value = presetAttributeValue\n\t\t\t\t? `var:preset|${ STYLE_PATH_TO_CSS_VAR_INFIX[ presetAttributeKey ] }|${ presetAttributeValue }`\n\t\t\t\t: getValueFromObjectPath( attributes.style, path );\n\n\t\t\t// Links only have a single support entry but have two element\n\t\t\t// style properties, color and hover color. The following check\n\t\t\t// will add the hover color to the changes if required.\n\t\t\tif ( key === 'linkColor' ) {\n\t\t\t\tconst linkChanges = value ? [ { path, value } ] : [];\n\t\t\t\tconst hoverPath = [\n\t\t\t\t\t'elements',\n\t\t\t\t\t'link',\n\t\t\t\t\t':hover',\n\t\t\t\t\t'color',\n\t\t\t\t\t'text',\n\t\t\t\t];\n\t\t\t\tconst hoverValue = getValueFromObjectPath(\n\t\t\t\t\tattributes.style,\n\t\t\t\t\thoverPath\n\t\t\t\t);\n\n\t\t\t\tif ( hoverValue ) {\n\t\t\t\t\tlinkChanges.push( { path: hoverPath, value: hoverValue } );\n\t\t\t\t}\n\n\t\t\t\treturn linkChanges;\n\t\t\t}\n\n\t\t\t// The shorthand border styles can't be mapped directly as global\n\t\t\t// styles requires longhand config.\n\t\t\tif ( flatBorderProperties.includes( key ) && value ) {\n\t\t\t\t// The shorthand config path is included to clear the block attribute.\n\t\t\t\tconst borderChanges = [ { path, value } ];\n\t\t\t\tsides.forEach( ( side ) => {\n\t\t\t\t\tconst currentPath = [ ...path ];\n\t\t\t\t\tcurrentPath.splice( -1, 0, side );\n\t\t\t\t\tborderChanges.push( { path: currentPath, value } );\n\t\t\t\t} );\n\t\t\t\treturn borderChanges;\n\t\t\t}\n\n\t\t\treturn value ? [ { path, value } ] : [];\n\t\t} );\n\n\t\t// To ensure display of a visible border, global styles require a\n\t\t// default border style if a border color or width is present.\n\t\tgetBorderStyleChanges(\n\t\t\tattributes.style?.border,\n\t\t\tattributes.borderColor,\n\t\t\tblockUserConfig?.border\n\t\t).forEach( ( change ) => changes.push( change ) );\n\n\t\treturn changes;\n\t}, [ supports, attributes, blockUserConfig ] );\n}\n\nfunction PushChangesToGlobalStylesControl( {\n\tname,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst { user: userConfig, setUserConfig } =\n\t\tuseContext( GlobalStylesContext );\n\n\tconst changes = useChangesToPush( name, attributes, userConfig );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\n\tconst pushChanges = useCallback( () => {\n\t\tif ( changes.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( changes.length > 0 ) {\n\t\t\tconst { style: blockStyles } = attributes;\n\n\t\t\tconst newBlockStyles = cloneDeep( blockStyles );\n\t\t\tconst newUserConfig = cloneDeep( userConfig );\n\n\t\t\tfor ( const { path, value } of changes ) {\n\t\t\t\tsetNestedValue( newBlockStyles, path, undefined );\n\t\t\t\tsetNestedValue(\n\t\t\t\t\tnewUserConfig,\n\t\t\t\t\t[ 'styles', 'blocks', name, ...path ],\n\t\t\t\t\tvalue\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst newBlockAttributes = {\n\t\t\t\tborderColor: undefined,\n\t\t\t\tbackgroundColor: undefined,\n\t\t\t\ttextColor: undefined,\n\t\t\t\tgradient: undefined,\n\t\t\t\tfontSize: undefined,\n\t\t\t\tfontFamily: undefined,\n\t\t\t\tstyle: cleanEmptyObject( newBlockStyles ),\n\t\t\t};\n\n\t\t\t// @wordpress/core-data doesn't support editing multiple entity types in\n\t\t\t// a single undo level. So for now, we disable @wordpress/core-data undo\n\t\t\t// tracking and implement our own Undo button in the snackbar\n\t\t\t// notification.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( newBlockAttributes );\n\t\t\tsetUserConfig( newUserConfig, { undoIgnore: true } );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t\t__( '%s styles applied.' ),\n\t\t\t\t\tgetBlockType( name ).title\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tactions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\t\tonClick() {\n\t\t\t\t\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\t\t\t\t\tsetAttributes( attributes );\n\t\t\t\t\t\t\t\tsetUserConfig( userConfig, {\n\t\t\t\t\t\t\t\t\tundoIgnore: true,\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],\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tattributes,\n\t\tchanges,\n\t\tcreateSuccessNotice,\n\t\tname,\n\t\tsetAttributes,\n\t\tsetUserConfig,\n\t\tuserConfig,\n\t] );\n\n\treturn (\n\t\t<BaseControl\n\t\t\tclassName=\"edit-site-push-changes-to-global-styles-control\"\n\t\t\thelp={ sprintf(\n\t\t\t\t// translators: %s: Title of the block e.g. 'Heading'.\n\t\t\t\t__(\n\t\t\t\t\t'Apply this block’s typography, spacing, dimensions, and color styles to all %s blocks.'\n\t\t\t\t),\n\t\t\t\tgetBlockType( name ).title\n\t\t\t) }\n\t\t>\n\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t{ __( 'Styles' ) }\n\t\t\t</BaseControl.VisualLabel>\n\t\t\t<Button\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvariant=\"secondary\"\n\t\t\t\t__experimentalIsFocusable\n\t\t\t\tdisabled={ changes.length === 0 }\n\t\t\t\tonClick={ pushChanges }\n\t\t\t>\n\t\t\t\t{ __( 'Apply globally' ) }\n\t\t\t</Button>\n\t\t</BaseControl>\n\t);\n}\n\nfunction PushChangesToGlobalStyles( props ) {\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst isBlockBasedTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t[]\n\t);\n\tconst supportsStyles = SUPPORTED_STYLES.some( ( feature ) =>\n\t\thasBlockSupport( props.name, feature )\n\t);\n\tconst isDisplayed =\n\t\tblockEditingMode === 'default' && supportsStyles && isBlockBasedTheme;\n\n\tif ( ! isDisplayed ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<InspectorAdvancedControls>\n\t\t\t<PushChangesToGlobalStylesControl { ...props } />\n\t\t</InspectorAdvancedControls>\n\t);\n}\n\nconst withPushChangesToGlobalStyles = createHigherOrderComponent(\n\t( BlockEdit ) => ( props ) => (\n\t\t<>\n\t\t\t<BlockEdit { ...props } />\n\t\t\t{ props.isSelected && <PushChangesToGlobalStyles { ...props } /> }\n\t\t</>\n\t)\n);\n\naddFilter(\n\t'editor.BlockEdit',\n\t'core/edit-site/push-changes-to-global-styles',\n\twithPushChangesToGlobalStyles\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,5 +5,5 @@ import { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/pri
|
|
|
5
5
|
export const {
|
|
6
6
|
lock,
|
|
7
7
|
unlock
|
|
8
|
-
} = __dangerousOptInToUnstableAPIsOnlyForCoreModules('I
|
|
8
|
+
} = __dangerousOptInToUnstableAPIsOnlyForCoreModules('I acknowledge private features are not for use in themes or plugins and doing so will break in the next version of WordPress.', '@wordpress/edit-site');
|
|
9
9
|
//# sourceMappingURL=lock-unlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__dangerousOptInToUnstableAPIsOnlyForCoreModules","lock","unlock"],"sources":["@wordpress/edit-site/src/lock-unlock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/private-apis';\n\nexport const { lock, unlock } =\n\t__dangerousOptInToUnstableAPIsOnlyForCoreModules(\n\t\t'I
|
|
1
|
+
{"version":3,"names":["__dangerousOptInToUnstableAPIsOnlyForCoreModules","lock","unlock"],"sources":["@wordpress/edit-site/src/lock-unlock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/private-apis';\n\nexport const { lock, unlock } =\n\t__dangerousOptInToUnstableAPIsOnlyForCoreModules(\n\t\t'I acknowledge private features are not for use in themes or plugins and doing so will break in the next version of WordPress.',\n\t\t'@wordpress/edit-site'\n\t);\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,gDAAgD,QAAQ,yBAAyB;AAE1F,OAAO,MAAM;EAAEC,IAAI;EAAEC;AAAO,CAAC,GAC5BF,gDAAgD,CAC/C,+HAA+H,EAC/H,sBACD,CAAC","ignoreList":[]}
|