@wordpress/block-editor 14.3.4 → 14.3.6
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/README.md +4 -0
- package/build/components/block-list/block.js +0 -3
- package/build/components/block-list/block.js.map +1 -1
- package/build/components/block-list/use-block-props/index.js +1 -4
- package/build/components/block-list/use-block-props/index.js.map +1 -1
- package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js +9 -12
- package/build/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +1 -1
- package/build/components/block-variation-picker/index.js +2 -4
- package/build/components/block-variation-picker/index.js.map +1 -1
- package/build/components/block-variation-transforms/index.js +3 -4
- package/build/components/block-variation-transforms/index.js.map +1 -1
- package/build/components/button-block-appender/index.js +2 -4
- package/build/components/button-block-appender/index.js.map +1 -1
- package/build/components/colors-gradients/dropdown.js +2 -4
- package/build/components/colors-gradients/dropdown.js.map +1 -1
- package/build/components/global-styles/color-panel.js +2 -4
- package/build/components/global-styles/color-panel.js.map +1 -1
- package/build/components/global-styles/filters-panel.js +2 -4
- package/build/components/global-styles/filters-panel.js.map +1 -1
- package/build/components/global-styles/shadow-panel-components.js +24 -29
- package/build/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build/components/iframe/index.js +6 -1
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/inserter/menu.js +3 -0
- package/build/components/inserter/menu.js.map +1 -1
- package/build/components/inspector-controls-tabs/index.js +11 -8
- package/build/components/inspector-controls-tabs/index.js.map +1 -1
- package/build/components/inspector-popover-header/index.js +4 -8
- package/build/components/inspector-popover-header/index.js.map +1 -1
- package/build/components/link-control/index.js +4 -8
- package/build/components/link-control/index.js.map +1 -1
- package/build/components/link-control/settings-drawer.js +2 -4
- package/build/components/link-control/settings-drawer.js.map +1 -1
- package/build/components/list-view/block-select-button.js +1 -4
- package/build/components/list-view/block-select-button.js.map +1 -1
- package/build/components/media-placeholder/index.js +12 -24
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/components/skip-to-selected-block/index.js +2 -4
- package/build/components/skip-to-selected-block/index.js.map +1 -1
- package/build/components/tool-selector/index.js +7 -5
- package/build/components/tool-selector/index.js.map +1 -1
- package/build/components/url-input/button.js +14 -16
- package/build/components/url-input/button.js.map +1 -1
- package/build/components/url-input/index.js +2 -4
- package/build/components/url-input/index.js.map +1 -1
- package/build/components/use-resize-canvas/index.js +1 -2
- package/build/components/use-resize-canvas/index.js.map +1 -1
- package/build/hooks/grid-visualizer.js +13 -11
- package/build/hooks/grid-visualizer.js.map +1 -1
- package/build/hooks/layout-child.js +41 -3
- package/build/hooks/layout-child.js.map +1 -1
- package/build/layouts/flex.js +6 -38
- package/build/layouts/flex.js.map +1 -1
- package/build/private-apis.js +2 -0
- package/build/private-apis.js.map +1 -1
- package/build/utils/block-bindings.js +9 -6
- package/build/utils/block-bindings.js.map +1 -1
- package/build-module/components/block-list/block.js +0 -3
- package/build-module/components/block-list/block.js.map +1 -1
- package/build-module/components/block-list/use-block-props/index.js +1 -4
- package/build-module/components/block-list/use-block-props/index.js.map +1 -1
- package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js +9 -12
- package/build-module/components/block-list/use-block-props/use-zoom-out-mode-exit.js.map +1 -1
- package/build-module/components/block-variation-picker/index.js +2 -4
- package/build-module/components/block-variation-picker/index.js.map +1 -1
- package/build-module/components/block-variation-transforms/index.js +3 -4
- package/build-module/components/block-variation-transforms/index.js.map +1 -1
- package/build-module/components/button-block-appender/index.js +2 -4
- package/build-module/components/button-block-appender/index.js.map +1 -1
- package/build-module/components/colors-gradients/dropdown.js +2 -4
- package/build-module/components/colors-gradients/dropdown.js.map +1 -1
- package/build-module/components/global-styles/color-panel.js +2 -4
- package/build-module/components/global-styles/color-panel.js.map +1 -1
- package/build-module/components/global-styles/filters-panel.js +2 -4
- package/build-module/components/global-styles/filters-panel.js.map +1 -1
- package/build-module/components/global-styles/shadow-panel-components.js +25 -30
- package/build-module/components/global-styles/shadow-panel-components.js.map +1 -1
- package/build-module/components/iframe/index.js +6 -1
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/inserter/menu.js +3 -0
- package/build-module/components/inserter/menu.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/index.js +12 -9
- package/build-module/components/inspector-controls-tabs/index.js.map +1 -1
- package/build-module/components/inspector-popover-header/index.js +4 -8
- package/build-module/components/inspector-popover-header/index.js.map +1 -1
- package/build-module/components/link-control/index.js +4 -8
- package/build-module/components/link-control/index.js.map +1 -1
- package/build-module/components/link-control/settings-drawer.js +2 -4
- package/build-module/components/link-control/settings-drawer.js.map +1 -1
- package/build-module/components/list-view/block-select-button.js +2 -5
- package/build-module/components/list-view/block-select-button.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +12 -24
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/components/skip-to-selected-block/index.js +2 -4
- package/build-module/components/skip-to-selected-block/index.js.map +1 -1
- package/build-module/components/tool-selector/index.js +7 -5
- package/build-module/components/tool-selector/index.js.map +1 -1
- package/build-module/components/url-input/button.js +15 -17
- package/build-module/components/url-input/button.js.map +1 -1
- package/build-module/components/url-input/index.js +2 -4
- package/build-module/components/url-input/index.js.map +1 -1
- package/build-module/components/use-resize-canvas/index.js +1 -2
- package/build-module/components/use-resize-canvas/index.js.map +1 -1
- package/build-module/hooks/grid-visualizer.js +13 -11
- package/build-module/hooks/grid-visualizer.js.map +1 -1
- package/build-module/hooks/layout-child.js +41 -3
- package/build-module/hooks/layout-child.js.map +1 -1
- package/build-module/layouts/flex.js +7 -39
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/private-apis.js +2 -0
- package/build-module/private-apis.js.map +1 -1
- package/build-module/utils/block-bindings.js +9 -6
- package/build-module/utils/block-bindings.js.map +1 -1
- package/build-style/content-rtl.css +6 -10
- package/build-style/content.css +6 -10
- package/build-style/style-rtl.css +27 -26
- package/build-style/style.css +27 -26
- package/package.json +5 -5
- package/src/components/block-inspector/style.scss +2 -0
- package/src/components/block-list/block.js +0 -3
- package/src/components/block-list/use-block-props/index.js +1 -2
- package/src/components/block-list/use-block-props/use-zoom-out-mode-exit.js +19 -11
- package/src/components/block-tools/style.scss +5 -0
- package/src/components/block-variation-picker/index.js +1 -2
- package/src/components/block-variation-transforms/index.js +2 -2
- package/src/components/button-block-appender/content.scss +0 -5
- package/src/components/button-block-appender/index.js +1 -2
- package/src/components/colors-gradients/dropdown.js +1 -5
- package/src/components/global-styles/color-panel.js +1 -5
- package/src/components/global-styles/filters-panel.js +1 -2
- package/src/components/global-styles/shadow-panel-components.js +28 -33
- package/src/components/global-styles/style.scss +5 -0
- package/src/components/iframe/content.scss +7 -8
- package/src/components/iframe/index.js +7 -1
- package/src/components/iframe/style.scss +17 -0
- package/src/components/inserter/menu.js +5 -0
- package/src/components/inspector-controls-tabs/index.js +21 -20
- package/src/components/inspector-popover-header/index.js +2 -4
- package/src/components/inspector-popover-header/style.scss +0 -13
- package/src/components/link-control/index.js +2 -4
- package/src/components/link-control/settings-drawer.js +1 -2
- package/src/components/list-view/block-select-button.js +2 -5
- package/src/components/list-view/style.scss +18 -0
- package/src/components/media-placeholder/index.js +6 -12
- package/src/components/skip-to-selected-block/index.js +1 -2
- package/src/components/skip-to-selected-block/style.scss +0 -9
- package/src/components/tool-selector/index.js +6 -4
- package/src/components/url-input/button.js +16 -12
- package/src/components/url-input/index.js +1 -2
- package/src/components/url-input/style.scss +0 -6
- package/src/components/use-resize-canvas/index.js +1 -3
- package/src/hooks/grid-visualizer.js +23 -9
- package/src/hooks/layout-child.js +48 -3
- package/src/layouts/flex.js +10 -53
- package/src/private-apis.js +2 -0
- package/src/utils/block-bindings.js +9 -6
- package/src/utils/test/use-block-bindings-utils.js +174 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_element","_i18n","_icons","_deprecated","_inserter","_compose","_jsxRuntime","ButtonBlockAppender","rootClientId","className","onFocus","tabIndex","onSelect","ref","inserterButtonRef","useRef","mergedInserterButtonRef","useMergeRefs","jsx","default","position","__experimentalIsQuick","onSelectOrClose","args","current","focus","renderToggle","onToggle","disabled","isOpen","blockTitle","hasSingleBlockType","isToggleButton","label","sprintf","_x","Button","__next40pxDefaultSize","clsx","onClick","undefined","showTooltip","children","Icon","icon","plus","isAppender","ButtonBlockerAppender","exports","forwardRef","props","deprecated","alternative","since","_default"],"sources":["@wordpress/block-editor/src/components/button-block-appender/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { forwardRef, useRef } from '@wordpress/element';\nimport { _x, sprintf } from '@wordpress/i18n';\nimport { Icon, plus } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport Inserter from '../inserter';\nimport { useMergeRefs } from '@wordpress/compose';\n\nfunction ButtonBlockAppender(\n\t{ rootClientId, className, onFocus, tabIndex, onSelect },\n\tref\n) {\n\tconst inserterButtonRef = useRef();\n\n\tconst mergedInserterButtonRef = useMergeRefs( [ inserterButtonRef, ref ] );\n\treturn (\n\t\t<Inserter\n\t\t\tposition=\"bottom center\"\n\t\t\trootClientId={ rootClientId }\n\t\t\t__experimentalIsQuick\n\t\t\tonSelectOrClose={ ( ...args ) => {\n\t\t\t\tif ( onSelect && typeof onSelect === 'function' ) {\n\t\t\t\t\tonSelect( ...args );\n\t\t\t\t}\n\t\t\t\tinserterButtonRef.current?.focus();\n\t\t\t} }\n\t\t\trenderToggle={ ( {\n\t\t\t\tonToggle,\n\t\t\t\tdisabled,\n\t\t\t\tisOpen,\n\t\t\t\tblockTitle,\n\t\t\t\thasSingleBlockType,\n\t\t\t} ) => {\n\t\t\t\tconst isToggleButton = ! hasSingleBlockType;\n\t\t\t\tconst label = hasSingleBlockType\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: %s: the name of the block when there is only one\n\t\t\t\t\t\t\t_x(\n\t\t\t\t\t\t\t\t'Add %s',\n\t\t\t\t\t\t\t\t'directly add the only allowed block'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t )\n\t\t\t\t\t: _x(\n\t\t\t\t\t\t\t'Add block',\n\t\t\t\t\t\t\t'Generic label for block inserter button'\n\t\t\t\t\t );\n\n\t\t\t\treturn (\n\t\t\t\t\t<Button\n\t\t\t\t\t\
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_element","_i18n","_icons","_deprecated","_inserter","_compose","_jsxRuntime","ButtonBlockAppender","rootClientId","className","onFocus","tabIndex","onSelect","ref","inserterButtonRef","useRef","mergedInserterButtonRef","useMergeRefs","jsx","default","position","__experimentalIsQuick","onSelectOrClose","args","current","focus","renderToggle","onToggle","disabled","isOpen","blockTitle","hasSingleBlockType","isToggleButton","label","sprintf","_x","Button","__next40pxDefaultSize","clsx","onClick","undefined","showTooltip","children","Icon","icon","plus","isAppender","ButtonBlockerAppender","exports","forwardRef","props","deprecated","alternative","since","_default"],"sources":["@wordpress/block-editor/src/components/button-block-appender/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { forwardRef, useRef } from '@wordpress/element';\nimport { _x, sprintf } from '@wordpress/i18n';\nimport { Icon, plus } from '@wordpress/icons';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport Inserter from '../inserter';\nimport { useMergeRefs } from '@wordpress/compose';\n\nfunction ButtonBlockAppender(\n\t{ rootClientId, className, onFocus, tabIndex, onSelect },\n\tref\n) {\n\tconst inserterButtonRef = useRef();\n\n\tconst mergedInserterButtonRef = useMergeRefs( [ inserterButtonRef, ref ] );\n\treturn (\n\t\t<Inserter\n\t\t\tposition=\"bottom center\"\n\t\t\trootClientId={ rootClientId }\n\t\t\t__experimentalIsQuick\n\t\t\tonSelectOrClose={ ( ...args ) => {\n\t\t\t\tif ( onSelect && typeof onSelect === 'function' ) {\n\t\t\t\t\tonSelect( ...args );\n\t\t\t\t}\n\t\t\t\tinserterButtonRef.current?.focus();\n\t\t\t} }\n\t\t\trenderToggle={ ( {\n\t\t\t\tonToggle,\n\t\t\t\tdisabled,\n\t\t\t\tisOpen,\n\t\t\t\tblockTitle,\n\t\t\t\thasSingleBlockType,\n\t\t\t} ) => {\n\t\t\t\tconst isToggleButton = ! hasSingleBlockType;\n\t\t\t\tconst label = hasSingleBlockType\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// translators: %s: the name of the block when there is only one\n\t\t\t\t\t\t\t_x(\n\t\t\t\t\t\t\t\t'Add %s',\n\t\t\t\t\t\t\t\t'directly add the only allowed block'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t )\n\t\t\t\t\t: _x(\n\t\t\t\t\t\t\t'Add block',\n\t\t\t\t\t\t\t'Generic label for block inserter button'\n\t\t\t\t\t );\n\n\t\t\t\treturn (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tref={ mergedInserterButtonRef }\n\t\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t\t\ttabIndex={ tabIndex }\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t\t'block-editor-button-block-appender'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\taria-haspopup={ isToggleButton ? 'true' : undefined }\n\t\t\t\t\t\taria-expanded={ isToggleButton ? isOpen : undefined }\n\t\t\t\t\t\t// Disable reason: There shouldn't be a case where this button is disabled but not visually hidden.\n\t\t\t\t\t\t// eslint-disable-next-line no-restricted-syntax\n\t\t\t\t\t\tdisabled={ disabled }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t>\n\t\t\t\t\t\t<Icon icon={ plus } />\n\t\t\t\t\t</Button>\n\t\t\t\t);\n\t\t\t} }\n\t\t\tisAppender\n\t\t/>\n\t);\n}\n\n/**\n * Use `ButtonBlockAppender` instead.\n *\n * @deprecated\n */\nexport const ButtonBlockerAppender = forwardRef( ( props, ref ) => {\n\tdeprecated( `wp.blockEditor.ButtonBlockerAppender`, {\n\t\talternative: 'wp.blockEditor.ButtonBlockAppender',\n\t\tsince: '5.9',\n\t} );\n\n\treturn ButtonBlockAppender( props, ref );\n} );\n\n/**\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/button-block-appender/README.md\n */\nexport default forwardRef( ButtonBlockAppender );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -86,10 +86,8 @@ const renderToggle = settings => ({
|
|
|
86
86
|
}),
|
|
87
87
|
'aria-expanded': isOpen
|
|
88
88
|
};
|
|
89
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
90
|
-
|
|
91
|
-
, {
|
|
92
|
-
__next40pxDefaultSize: false,
|
|
89
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
90
|
+
__next40pxDefaultSize: true,
|
|
93
91
|
...toggleProps,
|
|
94
92
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LabeledColorIndicator, {
|
|
95
93
|
colorValue: colorValue,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_control","_jsxRuntime","WithToolsPanelItem","setting","children","panelId","props","clearValue","colorValue","onColorChange","gradientValue","onGradientChange","jsx","__experimentalToolsPanelItem","hasValue","label","onDeselect","isShownByDefault","undefined","className","resetAllFilter","LabeledColorIndicator","jsxs","__experimentalHStack","justify","ColorIndicator","FlexItem","title","renderToggle","settings","onToggle","isOpen","toggleProps","onClick","clsx","Button","__next40pxDefaultSize","ColorGradientSettingsDropdown","colors","disableCustomColors","disableCustomGradients","enableAlpha","gradients","__experimentalIsRenderedInSidebar","popoverProps","placement","offset","shift","Fragment","map","index","_setting$gradientValu","controlProps","clearable","showTitle","toggleSettings","Dropdown","renderContent","__experimentalDropdownContentWrapper","paddingSize","default"],"sources":["@wordpress/block-editor/src/components/colors-gradients/dropdown.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tColorIndicator,\n\tDropdown,\n\tFlexItem,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalHStack as HStack,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from './control';\n\n// When the `ColorGradientSettingsDropdown` controls are being rendered to a\n// `ToolsPanel` they must be wrapped in a `ToolsPanelItem`.\nconst WithToolsPanelItem = ( { setting, children, panelId, ...props } ) => {\n\tconst clearValue = () => {\n\t\tif ( setting.colorValue ) {\n\t\t\tsetting.onColorChange();\n\t\t} else if ( setting.gradientValue ) {\n\t\t\tsetting.onGradientChange();\n\t\t}\n\t};\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\thasValue={ () => {\n\t\t\t\treturn !! setting.colorValue || !! setting.gradientValue;\n\t\t\t} }\n\t\t\tlabel={ setting.label }\n\t\t\tonDeselect={ clearValue }\n\t\t\tisShownByDefault={\n\t\t\t\tsetting.isShownByDefault !== undefined\n\t\t\t\t\t? setting.isShownByDefault\n\t\t\t\t\t: true\n\t\t\t}\n\t\t\t{ ...props }\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\tpanelId={ panelId }\n\t\t\t// Pass resetAllFilter if supplied due to rendering via SlotFill\n\t\t\t// into parent ToolsPanel.\n\t\t\tresetAllFilter={ setting.resetAllFilter }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanelItem>\n\t);\n};\n\nconst LabeledColorIndicator = ( { colorValue, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ColorIndicator\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-indicator\"\n\t\t\tcolorValue={ colorValue }\n\t\t/>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\n// Renders a color dropdown's toggle as an `Item` if it is within an `ItemGroup`\n// or as a `Button` if it isn't e.g. the controls are being rendered in\n// a `ToolsPanel`.\nconst renderToggle =\n\t( settings ) =>\n\t( { onToggle, isOpen } ) => {\n\t\tconst { colorValue, label } = settings;\n\n\t\tconst toggleProps = {\n\t\t\tonClick: onToggle,\n\t\t\tclassName: clsx(\n\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t{ 'is-open': isOpen }\n\t\t\t),\n\t\t\t'aria-expanded': isOpen,\n\t\t};\n\n\t\treturn (\n\t\t\t<Button
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_control","_jsxRuntime","WithToolsPanelItem","setting","children","panelId","props","clearValue","colorValue","onColorChange","gradientValue","onGradientChange","jsx","__experimentalToolsPanelItem","hasValue","label","onDeselect","isShownByDefault","undefined","className","resetAllFilter","LabeledColorIndicator","jsxs","__experimentalHStack","justify","ColorIndicator","FlexItem","title","renderToggle","settings","onToggle","isOpen","toggleProps","onClick","clsx","Button","__next40pxDefaultSize","ColorGradientSettingsDropdown","colors","disableCustomColors","disableCustomGradients","enableAlpha","gradients","__experimentalIsRenderedInSidebar","popoverProps","placement","offset","shift","Fragment","map","index","_setting$gradientValu","controlProps","clearable","showTitle","toggleSettings","Dropdown","renderContent","__experimentalDropdownContentWrapper","paddingSize","default"],"sources":["@wordpress/block-editor/src/components/colors-gradients/dropdown.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tColorIndicator,\n\tDropdown,\n\tFlexItem,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\t__experimentalHStack as HStack,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from './control';\n\n// When the `ColorGradientSettingsDropdown` controls are being rendered to a\n// `ToolsPanel` they must be wrapped in a `ToolsPanelItem`.\nconst WithToolsPanelItem = ( { setting, children, panelId, ...props } ) => {\n\tconst clearValue = () => {\n\t\tif ( setting.colorValue ) {\n\t\t\tsetting.onColorChange();\n\t\t} else if ( setting.gradientValue ) {\n\t\t\tsetting.onGradientChange();\n\t\t}\n\t};\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\thasValue={ () => {\n\t\t\t\treturn !! setting.colorValue || !! setting.gradientValue;\n\t\t\t} }\n\t\t\tlabel={ setting.label }\n\t\t\tonDeselect={ clearValue }\n\t\t\tisShownByDefault={\n\t\t\t\tsetting.isShownByDefault !== undefined\n\t\t\t\t\t? setting.isShownByDefault\n\t\t\t\t\t: true\n\t\t\t}\n\t\t\t{ ...props }\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\tpanelId={ panelId }\n\t\t\t// Pass resetAllFilter if supplied due to rendering via SlotFill\n\t\t\t// into parent ToolsPanel.\n\t\t\tresetAllFilter={ setting.resetAllFilter }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanelItem>\n\t);\n};\n\nconst LabeledColorIndicator = ( { colorValue, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ColorIndicator\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-indicator\"\n\t\t\tcolorValue={ colorValue }\n\t\t/>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\n// Renders a color dropdown's toggle as an `Item` if it is within an `ItemGroup`\n// or as a `Button` if it isn't e.g. the controls are being rendered in\n// a `ToolsPanel`.\nconst renderToggle =\n\t( settings ) =>\n\t( { onToggle, isOpen } ) => {\n\t\tconst { colorValue, label } = settings;\n\n\t\tconst toggleProps = {\n\t\t\tonClick: onToggle,\n\t\t\tclassName: clsx(\n\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t{ 'is-open': isOpen }\n\t\t\t),\n\t\t\t'aria-expanded': isOpen,\n\t\t};\n\n\t\treturn (\n\t\t\t<Button __next40pxDefaultSize { ...toggleProps }>\n\t\t\t\t<LabeledColorIndicator\n\t\t\t\t\tcolorValue={ colorValue }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t/>\n\t\t\t</Button>\n\t\t);\n\t};\n\n// Renders a collection of color controls as dropdowns. Depending upon the\n// context in which these dropdowns are being rendered, they may be wrapped\n// in an `ItemGroup` with each dropdown's toggle as an `Item`, or alternatively,\n// the may be individually wrapped in a `ToolsPanelItem` with the toggle as\n// a regular `Button`.\n//\n// For more context see: https://github.com/WordPress/gutenberg/pull/40084\nexport default function ColorGradientSettingsDropdown( {\n\tcolors,\n\tdisableCustomColors,\n\tdisableCustomGradients,\n\tenableAlpha,\n\tgradients,\n\tsettings,\n\t__experimentalIsRenderedInSidebar,\n\t...props\n} ) {\n\tlet popoverProps;\n\tif ( __experimentalIsRenderedInSidebar ) {\n\t\tpopoverProps = {\n\t\t\tplacement: 'left-start',\n\t\t\toffset: 36,\n\t\t\tshift: true,\n\t\t};\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ settings.map( ( setting, index ) => {\n\t\t\t\tconst controlProps = {\n\t\t\t\t\tclearable: false,\n\t\t\t\t\tcolorValue: setting.colorValue,\n\t\t\t\t\tcolors,\n\t\t\t\t\tdisableCustomColors,\n\t\t\t\t\tdisableCustomGradients,\n\t\t\t\t\tenableAlpha,\n\t\t\t\t\tgradientValue: setting.gradientValue,\n\t\t\t\t\tgradients,\n\t\t\t\t\tlabel: setting.label,\n\t\t\t\t\tonColorChange: setting.onColorChange,\n\t\t\t\t\tonGradientChange: setting.onGradientChange,\n\t\t\t\t\tshowTitle: false,\n\t\t\t\t\t__experimentalIsRenderedInSidebar,\n\t\t\t\t\t...setting,\n\t\t\t\t};\n\t\t\t\tconst toggleSettings = {\n\t\t\t\t\tcolorValue: setting.gradientValue ?? setting.colorValue,\n\t\t\t\t\tlabel: setting.label,\n\t\t\t\t};\n\n\t\t\t\treturn (\n\t\t\t\t\tsetting && (\n\t\t\t\t\t\t// If not in an `ItemGroup` wrap the dropdown in a\n\t\t\t\t\t\t// `ToolsPanelItem`\n\t\t\t\t\t\t<WithToolsPanelItem\n\t\t\t\t\t\t\tkey={ index }\n\t\t\t\t\t\t\tsetting={ setting }\n\t\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Dropdown\n\t\t\t\t\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\t\t\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__dropdown\"\n\t\t\t\t\t\t\t\trenderToggle={ renderToggle( toggleSettings ) }\n\t\t\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t\t\t\t\t<div className=\"block-editor-panel-color-gradient-settings__dropdown-content\">\n\t\t\t\t\t\t\t\t\t\t\t<ColorGradientControl\n\t\t\t\t\t\t\t\t\t\t\t\t{ ...controlProps }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</WithToolsPanelItem>\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -193,10 +193,8 @@ function ColorPanelDropdown({
|
|
|
193
193
|
'aria-label': (0, _i18n.sprintf)( /* translators: %s is the type of color property, e.g., "background" */
|
|
194
194
|
(0, _i18n.__)('Color %s styles'), label)
|
|
195
195
|
};
|
|
196
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
197
|
-
|
|
198
|
-
, {
|
|
199
|
-
__next40pxDefaultSize: false,
|
|
196
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
197
|
+
__next40pxDefaultSize: true,
|
|
200
198
|
...toggleProps,
|
|
201
199
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LabeledColorIndicators, {
|
|
202
200
|
indicators: indicators,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_element","_i18n","_control","_hooks","_utils","_object","_lockUnlock","_jsxRuntime","useHasColorPanel","settings","hasTextPanel","useHasTextPanel","hasBackgroundPanel","useHasBackgroundColorPanel","hasLinkPanel","useHasLinkPanel","hasHeadingPanel","useHasHeadingPanel","hasButtonPanel","useHasButtonPanel","hasCaptionPanel","useHasCaptionPanel","colors","useColorsPerOrigin","color","text","length","custom","link","caption","gradients","useGradientsPerOrigin","heading","customGradient","button","background","ColorToolsPanel","resetAllFilter","onChange","value","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","__","hasInnerWrapper","headingLevel","className","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","Tabs","unlock","componentsPrivateApis","LabeledColorIndicators","indicators","jsxs","__experimentalHStack","justify","__experimentalZStack","isLayered","map","indicator","index","Flex","expanded","ColorIndicator","colorValue","FlexItem","title","ColorPanelTab","isGradient","inheritedValue","userValue","setValue","colorGradientControlSettings","default","showTitle","enableAlpha","__experimentalIsRenderedInSidebar","undefined","gradientValue","onColorChange","onGradientChange","clearable","ColorPanelDropdown","hasValue","resetValue","isShownByDefault","tabs","_tabs$","currentTab","find","tab","key","firstTabKey","firstTab","__experimentalToolsPanelItem","onDeselect","Dropdown","renderToggle","onToggle","isOpen","toggleProps","onClick","clsx","sprintf","Button","__next40pxDefaultSize","renderContent","__experimentalDropdownContentWrapper","paddingSize","defaultTabId","TabList","Tab","tabId","tabKey","restTabProps","TabPanel","focusable","ColorPanel","as","Wrapper","defaultControls","areCustomSolidsEnabled","areCustomGradientsEnabled","hasSolidColors","hasGradientColors","decodeValue","rawValue","getValueFromVariable","encodeColorValue","allColors","flatMap","originColors","colorObject","slug","encodeGradientValue","allGradients","originGradients","gradientObject","gradient","showBackgroundPanel","backgroundColor","userBackgroundColor","userGradient","hasBackground","setBackgroundColor","newColor","newValue","setImmutably","setGradient","newGradient","resetBackground","showLinkPanel","linkColor","elements","userLinkColor","setLinkColor","hoverLinkColor","userHoverLinkColor","setHoverLinkColor","hasLink","resetLink","showTextPanel","textColor","userTextColor","hasTextColor","setTextColor","changedObject","resetTextColor","name","showPanel","useCallback","previousValue","reduce","acc","element","items","filter","Boolean","forEach","elementBackgroundColor","elementGradient","elementTextColor","elementBackgroundUserColor","elementGradientUserColor","elementTextUserColor","hasElement","resetElement","setElementTextColor","newTextColor","setElementBackgroundColor","newBackgroundColor","setElementGradient","supportsTextColor","supportsBackground","push","item","restItem","disableCustomColors","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/global-styles/color-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tColorIndicator,\n\tFlex,\n\tFlexItem,\n\tDropdown,\n\tButton,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from '../colors-gradients/control';\nimport { useColorsPerOrigin, useGradientsPerOrigin } from './hooks';\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport { unlock } from '../../lock-unlock';\n\nexport function useHasColorPanel( settings ) {\n\tconst hasTextPanel = useHasTextPanel( settings );\n\tconst hasBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst hasLinkPanel = useHasLinkPanel( settings );\n\tconst hasHeadingPanel = useHasHeadingPanel( settings );\n\tconst hasButtonPanel = useHasButtonPanel( settings );\n\tconst hasCaptionPanel = useHasCaptionPanel( settings );\n\n\treturn (\n\t\thasTextPanel ||\n\t\thasBackgroundPanel ||\n\t\thasLinkPanel ||\n\t\thasHeadingPanel ||\n\t\thasButtonPanel ||\n\t\thasCaptionPanel\n\t);\n}\n\nexport function useHasTextPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.text &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasLinkPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.link &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasCaptionPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.caption &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasHeadingPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.heading &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasButtonPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.button &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasBackgroundColorPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.background &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nfunction ColorToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Elements' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\thasInnerWrapper\n\t\t\theadingLevel={ 3 }\n\t\t\tclassName=\"color-block-support-panel\"\n\t\t\t__experimentalFirstVisibleItemClass=\"first\"\n\t\t\t__experimentalLastVisibleItemClass=\"last\"\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t<div className=\"color-block-support-panel__inner-wrapper\">\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\ttext: true,\n\tbackground: true,\n\tlink: true,\n\theading: true,\n\tbutton: true,\n\tcaption: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n};\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst LabeledColorIndicators = ( { indicators, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t{ indicators.map( ( indicator, index ) => (\n\t\t\t\t<Flex key={ index } expanded={ false }>\n\t\t\t\t\t<ColorIndicator colorValue={ indicator } />\n\t\t\t\t</Flex>\n\t\t\t) ) }\n\t\t</ZStack>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\nfunction ColorPanelTab( {\n\tisGradient,\n\tinheritedValue,\n\tuserValue,\n\tsetValue,\n\tcolorGradientControlSettings,\n} ) {\n\treturn (\n\t\t<ColorGradientControl\n\t\t\t{ ...colorGradientControlSettings }\n\t\t\tshowTitle={ false }\n\t\t\tenableAlpha\n\t\t\t__experimentalIsRenderedInSidebar\n\t\t\tcolorValue={ isGradient ? undefined : inheritedValue }\n\t\t\tgradientValue={ isGradient ? inheritedValue : undefined }\n\t\t\tonColorChange={ isGradient ? undefined : setValue }\n\t\t\tonGradientChange={ isGradient ? setValue : undefined }\n\t\t\tclearable={ inheritedValue === userValue }\n\t\t\theadingLevel={ 3 }\n\t\t/>\n\t);\n}\n\nfunction ColorPanelDropdown( {\n\tlabel,\n\thasValue,\n\tresetValue,\n\tisShownByDefault,\n\tindicators,\n\ttabs,\n\tcolorGradientControlSettings,\n\tpanelId,\n} ) {\n\tconst currentTab = tabs.find( ( tab ) => tab.userValue !== undefined );\n\tconst { key: firstTabKey, ...firstTab } = tabs[ 0 ] ?? {};\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\thasValue={ hasValue }\n\t\t\tlabel={ label }\n\t\t\tonDeselect={ resetValue }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__dropdown\"\n\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-label': sprintf(\n\t\t\t\t\t\t\t/* translators: %s is the type of color property, e.g., \"background\" */\n\t\t\t\t\t\t\t__( 'Color %s styles' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t{ ...toggleProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<LabeledColorIndicators\n\t\t\t\t\t\t\t\tindicators={ indicators }\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\trenderContent={ () => (\n\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t<div className=\"block-editor-panel-color-gradient-settings__dropdown-content\">\n\t\t\t\t\t\t\t{ tabs.length === 1 && (\n\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\tkey={ firstTabKey }\n\t\t\t\t\t\t\t\t\t{ ...firstTab }\n\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\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) }\n\t\t\t\t\t\t\t{ tabs.length > 1 && (\n\t\t\t\t\t\t\t\t<Tabs defaultTabId={ currentTab?.key }>\n\t\t\t\t\t\t\t\t\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ tab.label }\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t</Tabs.TabList>\n\n\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\t\t\t\tconst { key: tabKey, ...restTabProps } =\n\t\t\t\t\t\t\t\t\t\t\ttab;\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ ...restTabProps }\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t</Tabs>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nexport default function ColorPanel( {\n\tas: Wrapper = ColorToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tchildren,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\tconst areCustomSolidsEnabled = settings?.color?.custom;\n\tconst areCustomGradientsEnabled = settings?.color?.customGradient;\n\tconst hasSolidColors = colors.length > 0 || areCustomSolidsEnabled;\n\tconst hasGradientColors = gradients.length > 0 || areCustomGradientsEnabled;\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst encodeGradientValue = ( gradientValue ) => {\n\t\tconst allGradients = gradients.flatMap(\n\t\t\t( { gradients: originGradients } ) => originGradients\n\t\t);\n\t\tconst gradientObject = allGradients.find(\n\t\t\t( { gradient } ) => gradient === gradientValue\n\t\t);\n\t\treturn gradientObject\n\t\t\t? 'var:preset|gradient|' + gradientObject.slug\n\t\t\t: gradientValue;\n\t};\n\n\t// BackgroundColor\n\tconst showBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst backgroundColor = decodeValue( inheritedValue?.color?.background );\n\tconst userBackgroundColor = decodeValue( value?.color?.background );\n\tconst gradient = decodeValue( inheritedValue?.color?.gradient );\n\tconst userGradient = decodeValue( value?.color?.gradient );\n\tconst hasBackground = () => !! userBackgroundColor || !! userGradient;\n\tconst setBackgroundColor = ( newColor ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst setGradient = ( newGradient ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'gradient' ],\n\t\t\tencodeGradientValue( newGradient )\n\t\t);\n\t\tnewValue.color.background = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst resetBackground = () => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\n\t// Links\n\tconst showLinkPanel = useHasLinkPanel( settings );\n\tconst linkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.color?.text\n\t);\n\tconst userLinkColor = decodeValue( value?.elements?.link?.color?.text );\n\tconst setLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hoverLinkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst userHoverLinkColor = decodeValue(\n\t\tvalue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst setHoverLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLink = () => !! userLinkColor || !! userHoverLinkColor;\n\tconst resetLink = () => {\n\t\tlet newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue = setImmutably(\n\t\t\tnewValue,\n\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tonChange( newValue );\n\t};\n\n\t// Text Color\n\tconst showTextPanel = useHasTextPanel( settings );\n\tconst textColor = decodeValue( inheritedValue?.color?.text );\n\tconst userTextColor = decodeValue( value?.color?.text );\n\tconst hasTextColor = () => !! userTextColor;\n\tconst setTextColor = ( newColor ) => {\n\t\tlet changedObject = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'text' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tif ( textColor === linkColor ) {\n\t\t\tchangedObject = setImmutably(\n\t\t\t\tchangedObject,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t);\n\t\t}\n\n\t\tonChange( changedObject );\n\t};\n\tconst resetTextColor = () => setTextColor( undefined );\n\n\t// Elements\n\tconst elements = [\n\t\t{\n\t\t\tname: 'caption',\n\t\t\tlabel: __( 'Captions' ),\n\t\t\tshowPanel: useHasCaptionPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'button',\n\t\t\tlabel: __( 'Button' ),\n\t\t\tshowPanel: useHasButtonPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'heading',\n\t\t\tlabel: __( 'Heading' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h1',\n\t\t\tlabel: __( 'H1' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h2',\n\t\t\tlabel: __( 'H2' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h3',\n\t\t\tlabel: __( 'H3' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h4',\n\t\t\tlabel: __( 'H4' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h5',\n\t\t\tlabel: __( 'H5' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h6',\n\t\t\tlabel: __( 'H6' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t];\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tcolor: undefined,\n\t\t\telements: {\n\t\t\t\t...previousValue?.elements,\n\t\t\t\tlink: {\n\t\t\t\t\t...previousValue?.elements?.link,\n\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t':hover': {\n\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t...elements.reduce( ( acc, element ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ element.name ]: {\n\t\t\t\t\t\t\t...previousValue?.elements?.[ element.name ],\n\t\t\t\t\t\t\tcolor: undefined,\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\n\tconst items = [\n\t\tshowTextPanel && {\n\t\t\tkey: 'text',\n\t\t\tlabel: __( 'Text' ),\n\t\t\thasValue: hasTextColor,\n\t\t\tresetValue: resetTextColor,\n\t\t\tisShownByDefault: defaultControls.text,\n\t\t\tindicators: [ textColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'text',\n\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\tinheritedValue: textColor,\n\t\t\t\t\tsetValue: setTextColor,\n\t\t\t\t\tuserValue: userTextColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tshowBackgroundPanel && {\n\t\t\tkey: 'background',\n\t\t\tlabel: __( 'Background' ),\n\t\t\thasValue: hasBackground,\n\t\t\tresetValue: resetBackground,\n\t\t\tisShownByDefault: defaultControls.background,\n\t\t\tindicators: [ gradient ?? backgroundColor ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors && {\n\t\t\t\t\tkey: 'background',\n\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\tinheritedValue: backgroundColor,\n\t\t\t\t\tsetValue: setBackgroundColor,\n\t\t\t\t\tuserValue: userBackgroundColor,\n\t\t\t\t},\n\t\t\t\thasGradientColors && {\n\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\tinheritedValue: gradient,\n\t\t\t\t\tsetValue: setGradient,\n\t\t\t\t\tuserValue: userGradient,\n\t\t\t\t\tisGradient: true,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t},\n\t\tshowLinkPanel && {\n\t\t\tkey: 'link',\n\t\t\tlabel: __( 'Link' ),\n\t\t\thasValue: hasLink,\n\t\t\tresetValue: resetLink,\n\t\t\tisShownByDefault: defaultControls.link,\n\t\t\tindicators: [ linkColor, hoverLinkColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'link',\n\t\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\t\tinheritedValue: linkColor,\n\t\t\t\t\tsetValue: setLinkColor,\n\t\t\t\t\tuserValue: userLinkColor,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: 'hover',\n\t\t\t\t\tlabel: __( 'Hover' ),\n\t\t\t\t\tinheritedValue: hoverLinkColor,\n\t\t\t\t\tsetValue: setHoverLinkColor,\n\t\t\t\t\tuserValue: userHoverLinkColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t].filter( Boolean );\n\n\telements.forEach( ( { name, label, showPanel } ) => {\n\t\tif ( ! showPanel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elementBackgroundColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradient = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst elementBackgroundUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradientUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst hasElement = () =>\n\t\t\t!! (\n\t\t\t\telementTextUserColor ||\n\t\t\t\telementBackgroundUserColor ||\n\t\t\t\telementGradientUserColor\n\t\t\t);\n\t\tconst resetElement = () => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tundefined\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tnewValue.elements[ name ].color.text = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\n\t\tconst setElementTextColor = ( newTextColor ) => {\n\t\t\tonChange(\n\t\t\t\tsetImmutably(\n\t\t\t\t\tvalue,\n\t\t\t\t\t[ 'elements', name, 'color', 'text' ],\n\t\t\t\t\tencodeColorValue( newTextColor )\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tconst setElementBackgroundColor = ( newBackgroundColor ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tencodeColorValue( newBackgroundColor )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst setElementGradient = ( newGradient ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'gradient' ],\n\t\t\t\tencodeGradientValue( newGradient )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.background = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst supportsTextColor = true;\n\t\t// Background color is not supported for `caption`\n\t\t// as there isn't yet a way to set padding for the element.\n\t\tconst supportsBackground = name !== 'caption';\n\n\t\titems.push( {\n\t\t\tkey: name,\n\t\t\tlabel,\n\t\t\thasValue: hasElement,\n\t\t\tresetValue: resetElement,\n\t\t\tisShownByDefault: defaultControls[ name ],\n\t\t\tindicators:\n\t\t\t\tsupportsTextColor && supportsBackground\n\t\t\t\t\t? [\n\t\t\t\t\t\t\telementTextColor,\n\t\t\t\t\t\t\telementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ]\n\t\t\t\t\t: [\n\t\t\t\t\t\t\tsupportsTextColor\n\t\t\t\t\t\t\t\t? elementTextColor\n\t\t\t\t\t\t\t\t: elementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsTextColor && {\n\t\t\t\t\t\tkey: 'text',\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tinheritedValue: elementTextColor,\n\t\t\t\t\t\tsetValue: setElementTextColor,\n\t\t\t\t\t\tuserValue: elementTextUserColor,\n\t\t\t\t\t},\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'background',\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tinheritedValue: elementBackgroundColor,\n\t\t\t\t\t\tsetValue: setElementBackgroundColor,\n\t\t\t\t\t\tuserValue: elementBackgroundUserColor,\n\t\t\t\t\t},\n\t\t\t\thasGradientColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\t\tinheritedValue: elementGradient,\n\t\t\t\t\t\tsetValue: setElementGradient,\n\t\t\t\t\t\tuserValue: elementGradientUserColor,\n\t\t\t\t\t\tisGradient: true,\n\t\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ items.map( ( item ) => {\n\t\t\t\tconst { key, ...restItem } = item;\n\t\t\t\treturn (\n\t\t\t\t\t<ColorPanelDropdown\n\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t{ ...restItem }\n\t\t\t\t\t\tcolorGradientControlSettings={ {\n\t\t\t\t\t\t\tcolors,\n\t\t\t\t\t\t\tdisableCustomColors: ! areCustomSolidsEnabled,\n\t\t\t\t\t\t\tgradients,\n\t\t\t\t\t\t\tdisableCustomGradients: ! areCustomGradientsEnabled,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ children }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_element","_i18n","_control","_hooks","_utils","_object","_lockUnlock","_jsxRuntime","useHasColorPanel","settings","hasTextPanel","useHasTextPanel","hasBackgroundPanel","useHasBackgroundColorPanel","hasLinkPanel","useHasLinkPanel","hasHeadingPanel","useHasHeadingPanel","hasButtonPanel","useHasButtonPanel","hasCaptionPanel","useHasCaptionPanel","colors","useColorsPerOrigin","color","text","length","custom","link","caption","gradients","useGradientsPerOrigin","heading","customGradient","button","background","ColorToolsPanel","resetAllFilter","onChange","value","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","__","hasInnerWrapper","headingLevel","className","__experimentalFirstVisibleItemClass","__experimentalLastVisibleItemClass","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","Tabs","unlock","componentsPrivateApis","LabeledColorIndicators","indicators","jsxs","__experimentalHStack","justify","__experimentalZStack","isLayered","map","indicator","index","Flex","expanded","ColorIndicator","colorValue","FlexItem","title","ColorPanelTab","isGradient","inheritedValue","userValue","setValue","colorGradientControlSettings","default","showTitle","enableAlpha","__experimentalIsRenderedInSidebar","undefined","gradientValue","onColorChange","onGradientChange","clearable","ColorPanelDropdown","hasValue","resetValue","isShownByDefault","tabs","_tabs$","currentTab","find","tab","key","firstTabKey","firstTab","__experimentalToolsPanelItem","onDeselect","Dropdown","renderToggle","onToggle","isOpen","toggleProps","onClick","clsx","sprintf","Button","__next40pxDefaultSize","renderContent","__experimentalDropdownContentWrapper","paddingSize","defaultTabId","TabList","Tab","tabId","tabKey","restTabProps","TabPanel","focusable","ColorPanel","as","Wrapper","defaultControls","areCustomSolidsEnabled","areCustomGradientsEnabled","hasSolidColors","hasGradientColors","decodeValue","rawValue","getValueFromVariable","encodeColorValue","allColors","flatMap","originColors","colorObject","slug","encodeGradientValue","allGradients","originGradients","gradientObject","gradient","showBackgroundPanel","backgroundColor","userBackgroundColor","userGradient","hasBackground","setBackgroundColor","newColor","newValue","setImmutably","setGradient","newGradient","resetBackground","showLinkPanel","linkColor","elements","userLinkColor","setLinkColor","hoverLinkColor","userHoverLinkColor","setHoverLinkColor","hasLink","resetLink","showTextPanel","textColor","userTextColor","hasTextColor","setTextColor","changedObject","resetTextColor","name","showPanel","useCallback","previousValue","reduce","acc","element","items","filter","Boolean","forEach","elementBackgroundColor","elementGradient","elementTextColor","elementBackgroundUserColor","elementGradientUserColor","elementTextUserColor","hasElement","resetElement","setElementTextColor","newTextColor","setElementBackgroundColor","newBackgroundColor","setElementGradient","supportsTextColor","supportsBackground","push","item","restItem","disableCustomColors","disableCustomGradients"],"sources":["@wordpress/block-editor/src/components/global-styles/color-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tColorIndicator,\n\tFlex,\n\tFlexItem,\n\tDropdown,\n\tButton,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { useCallback } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ColorGradientControl from '../colors-gradients/control';\nimport { useColorsPerOrigin, useGradientsPerOrigin } from './hooks';\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\nimport { unlock } from '../../lock-unlock';\n\nexport function useHasColorPanel( settings ) {\n\tconst hasTextPanel = useHasTextPanel( settings );\n\tconst hasBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst hasLinkPanel = useHasLinkPanel( settings );\n\tconst hasHeadingPanel = useHasHeadingPanel( settings );\n\tconst hasButtonPanel = useHasButtonPanel( settings );\n\tconst hasCaptionPanel = useHasCaptionPanel( settings );\n\n\treturn (\n\t\thasTextPanel ||\n\t\thasBackgroundPanel ||\n\t\thasLinkPanel ||\n\t\thasHeadingPanel ||\n\t\thasButtonPanel ||\n\t\thasCaptionPanel\n\t);\n}\n\nexport function useHasTextPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.text &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasLinkPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.link &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasCaptionPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.caption &&\n\t\t( colors?.length > 0 || settings?.color?.custom )\n\t);\n}\n\nexport function useHasHeadingPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.heading &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasButtonPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.button &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nexport function useHasBackgroundColorPanel( settings ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\treturn (\n\t\tsettings?.color?.background &&\n\t\t( colors?.length > 0 ||\n\t\t\tsettings?.color?.custom ||\n\t\t\tgradients?.length > 0 ||\n\t\t\tsettings?.color?.customGradient )\n\t);\n}\n\nfunction ColorToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ __( 'Elements' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\thasInnerWrapper\n\t\t\theadingLevel={ 3 }\n\t\t\tclassName=\"color-block-support-panel\"\n\t\t\t__experimentalFirstVisibleItemClass=\"first\"\n\t\t\t__experimentalLastVisibleItemClass=\"last\"\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t<div className=\"color-block-support-panel__inner-wrapper\">\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\ttext: true,\n\tbackground: true,\n\tlink: true,\n\theading: true,\n\tbutton: true,\n\tcaption: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n};\n\nconst { Tabs } = unlock( componentsPrivateApis );\n\nconst LabeledColorIndicators = ( { indicators, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t{ indicators.map( ( indicator, index ) => (\n\t\t\t\t<Flex key={ index } expanded={ false }>\n\t\t\t\t\t<ColorIndicator colorValue={ indicator } />\n\t\t\t\t</Flex>\n\t\t\t) ) }\n\t\t</ZStack>\n\t\t<FlexItem\n\t\t\tclassName=\"block-editor-panel-color-gradient-settings__color-name\"\n\t\t\ttitle={ label }\n\t\t>\n\t\t\t{ label }\n\t\t</FlexItem>\n\t</HStack>\n);\n\nfunction ColorPanelTab( {\n\tisGradient,\n\tinheritedValue,\n\tuserValue,\n\tsetValue,\n\tcolorGradientControlSettings,\n} ) {\n\treturn (\n\t\t<ColorGradientControl\n\t\t\t{ ...colorGradientControlSettings }\n\t\t\tshowTitle={ false }\n\t\t\tenableAlpha\n\t\t\t__experimentalIsRenderedInSidebar\n\t\t\tcolorValue={ isGradient ? undefined : inheritedValue }\n\t\t\tgradientValue={ isGradient ? inheritedValue : undefined }\n\t\t\tonColorChange={ isGradient ? undefined : setValue }\n\t\t\tonGradientChange={ isGradient ? setValue : undefined }\n\t\t\tclearable={ inheritedValue === userValue }\n\t\t\theadingLevel={ 3 }\n\t\t/>\n\t);\n}\n\nfunction ColorPanelDropdown( {\n\tlabel,\n\thasValue,\n\tresetValue,\n\tisShownByDefault,\n\tindicators,\n\ttabs,\n\tcolorGradientControlSettings,\n\tpanelId,\n} ) {\n\tconst currentTab = tabs.find( ( tab ) => tab.userValue !== undefined );\n\tconst { key: firstTabKey, ...firstTab } = tabs[ 0 ] ?? {};\n\treturn (\n\t\t<ToolsPanelItem\n\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__item\"\n\t\t\thasValue={ hasValue }\n\t\t\tlabel={ label }\n\t\t\tonDeselect={ resetValue }\n\t\t\tisShownByDefault={ isShownByDefault }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t<Dropdown\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tclassName=\"block-editor-tools-panel-color-gradient-settings__dropdown\"\n\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\t'block-editor-panel-color-gradient-settings__dropdown',\n\t\t\t\t\t\t\t{ 'is-open': isOpen }\n\t\t\t\t\t\t),\n\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t'aria-label': sprintf(\n\t\t\t\t\t\t\t/* translators: %s is the type of color property, e.g., \"background\" */\n\t\t\t\t\t\t\t__( 'Color %s styles' ),\n\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button __next40pxDefaultSize { ...toggleProps }>\n\t\t\t\t\t\t\t<LabeledColorIndicators\n\t\t\t\t\t\t\t\tindicators={ indicators }\n\t\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\trenderContent={ () => (\n\t\t\t\t\t<DropdownContentWrapper paddingSize=\"none\">\n\t\t\t\t\t\t<div className=\"block-editor-panel-color-gradient-settings__dropdown-content\">\n\t\t\t\t\t\t\t{ tabs.length === 1 && (\n\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\tkey={ firstTabKey }\n\t\t\t\t\t\t\t\t\t{ ...firstTab }\n\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\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) }\n\t\t\t\t\t\t\t{ tabs.length > 1 && (\n\t\t\t\t\t\t\t\t<Tabs defaultTabId={ currentTab?.key }>\n\t\t\t\t\t\t\t\t\t<Tabs.TabList>\n\t\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.Tab\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tab.key }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ tab.label }\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.Tab>\n\t\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t\t</Tabs.TabList>\n\n\t\t\t\t\t\t\t\t\t{ tabs.map( ( tab ) => {\n\t\t\t\t\t\t\t\t\t\tconst { key: tabKey, ...restTabProps } =\n\t\t\t\t\t\t\t\t\t\t\ttab;\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t<Tabs.TabPanel\n\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\ttabId={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\tfocusable={ false }\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t<ColorPanelTab\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={ tabKey }\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ ...restTabProps }\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolorGradientControlSettings\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t</Tabs.TabPanel>\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t</Tabs>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</ToolsPanelItem>\n\t);\n}\n\nexport default function ColorPanel( {\n\tas: Wrapper = ColorToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n\tchildren,\n} ) {\n\tconst colors = useColorsPerOrigin( settings );\n\tconst gradients = useGradientsPerOrigin( settings );\n\tconst areCustomSolidsEnabled = settings?.color?.custom;\n\tconst areCustomGradientsEnabled = settings?.color?.customGradient;\n\tconst hasSolidColors = colors.length > 0 || areCustomSolidsEnabled;\n\tconst hasGradientColors = gradients.length > 0 || areCustomGradientsEnabled;\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\tconst encodeColorValue = ( colorValue ) => {\n\t\tconst allColors = colors.flatMap(\n\t\t\t( { colors: originColors } ) => originColors\n\t\t);\n\t\tconst colorObject = allColors.find(\n\t\t\t( { color } ) => color === colorValue\n\t\t);\n\t\treturn colorObject\n\t\t\t? 'var:preset|color|' + colorObject.slug\n\t\t\t: colorValue;\n\t};\n\tconst encodeGradientValue = ( gradientValue ) => {\n\t\tconst allGradients = gradients.flatMap(\n\t\t\t( { gradients: originGradients } ) => originGradients\n\t\t);\n\t\tconst gradientObject = allGradients.find(\n\t\t\t( { gradient } ) => gradient === gradientValue\n\t\t);\n\t\treturn gradientObject\n\t\t\t? 'var:preset|gradient|' + gradientObject.slug\n\t\t\t: gradientValue;\n\t};\n\n\t// BackgroundColor\n\tconst showBackgroundPanel = useHasBackgroundColorPanel( settings );\n\tconst backgroundColor = decodeValue( inheritedValue?.color?.background );\n\tconst userBackgroundColor = decodeValue( value?.color?.background );\n\tconst gradient = decodeValue( inheritedValue?.color?.gradient );\n\tconst userGradient = decodeValue( value?.color?.gradient );\n\tconst hasBackground = () => !! userBackgroundColor || !! userGradient;\n\tconst setBackgroundColor = ( newColor ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst setGradient = ( newGradient ) => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'gradient' ],\n\t\t\tencodeGradientValue( newGradient )\n\t\t);\n\t\tnewValue.color.background = undefined;\n\t\tonChange( newValue );\n\t};\n\tconst resetBackground = () => {\n\t\tconst newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'background' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue.color.gradient = undefined;\n\t\tonChange( newValue );\n\t};\n\n\t// Links\n\tconst showLinkPanel = useHasLinkPanel( settings );\n\tconst linkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.color?.text\n\t);\n\tconst userLinkColor = decodeValue( value?.elements?.link?.color?.text );\n\tconst setLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hoverLinkColor = decodeValue(\n\t\tinheritedValue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst userHoverLinkColor = decodeValue(\n\t\tvalue?.elements?.link?.[ ':hover' ]?.color?.text\n\t);\n\tconst setHoverLinkColor = ( newColor ) => {\n\t\tonChange(\n\t\t\tsetImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t)\n\t\t);\n\t};\n\tconst hasLink = () => !! userLinkColor || !! userHoverLinkColor;\n\tconst resetLink = () => {\n\t\tlet newValue = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'elements', 'link', ':hover', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tnewValue = setImmutably(\n\t\t\tnewValue,\n\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\tundefined\n\t\t);\n\t\tonChange( newValue );\n\t};\n\n\t// Text Color\n\tconst showTextPanel = useHasTextPanel( settings );\n\tconst textColor = decodeValue( inheritedValue?.color?.text );\n\tconst userTextColor = decodeValue( value?.color?.text );\n\tconst hasTextColor = () => !! userTextColor;\n\tconst setTextColor = ( newColor ) => {\n\t\tlet changedObject = setImmutably(\n\t\t\tvalue,\n\t\t\t[ 'color', 'text' ],\n\t\t\tencodeColorValue( newColor )\n\t\t);\n\t\tif ( textColor === linkColor ) {\n\t\t\tchangedObject = setImmutably(\n\t\t\t\tchangedObject,\n\t\t\t\t[ 'elements', 'link', 'color', 'text' ],\n\t\t\t\tencodeColorValue( newColor )\n\t\t\t);\n\t\t}\n\n\t\tonChange( changedObject );\n\t};\n\tconst resetTextColor = () => setTextColor( undefined );\n\n\t// Elements\n\tconst elements = [\n\t\t{\n\t\t\tname: 'caption',\n\t\t\tlabel: __( 'Captions' ),\n\t\t\tshowPanel: useHasCaptionPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'button',\n\t\t\tlabel: __( 'Button' ),\n\t\t\tshowPanel: useHasButtonPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'heading',\n\t\t\tlabel: __( 'Heading' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h1',\n\t\t\tlabel: __( 'H1' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h2',\n\t\t\tlabel: __( 'H2' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h3',\n\t\t\tlabel: __( 'H3' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h4',\n\t\t\tlabel: __( 'H4' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h5',\n\t\t\tlabel: __( 'H5' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t\t{\n\t\t\tname: 'h6',\n\t\t\tlabel: __( 'H6' ),\n\t\t\tshowPanel: useHasHeadingPanel( settings ),\n\t\t},\n\t];\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tcolor: undefined,\n\t\t\telements: {\n\t\t\t\t...previousValue?.elements,\n\t\t\t\tlink: {\n\t\t\t\t\t...previousValue?.elements?.link,\n\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t':hover': {\n\t\t\t\t\t\tcolor: undefined,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t...elements.reduce( ( acc, element ) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[ element.name ]: {\n\t\t\t\t\t\t\t...previousValue?.elements?.[ element.name ],\n\t\t\t\t\t\t\tcolor: undefined,\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\n\tconst items = [\n\t\tshowTextPanel && {\n\t\t\tkey: 'text',\n\t\t\tlabel: __( 'Text' ),\n\t\t\thasValue: hasTextColor,\n\t\t\tresetValue: resetTextColor,\n\t\t\tisShownByDefault: defaultControls.text,\n\t\t\tindicators: [ textColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'text',\n\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\tinheritedValue: textColor,\n\t\t\t\t\tsetValue: setTextColor,\n\t\t\t\t\tuserValue: userTextColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tshowBackgroundPanel && {\n\t\t\tkey: 'background',\n\t\t\tlabel: __( 'Background' ),\n\t\t\thasValue: hasBackground,\n\t\t\tresetValue: resetBackground,\n\t\t\tisShownByDefault: defaultControls.background,\n\t\t\tindicators: [ gradient ?? backgroundColor ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors && {\n\t\t\t\t\tkey: 'background',\n\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\tinheritedValue: backgroundColor,\n\t\t\t\t\tsetValue: setBackgroundColor,\n\t\t\t\t\tuserValue: userBackgroundColor,\n\t\t\t\t},\n\t\t\t\thasGradientColors && {\n\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\tinheritedValue: gradient,\n\t\t\t\t\tsetValue: setGradient,\n\t\t\t\t\tuserValue: userGradient,\n\t\t\t\t\tisGradient: true,\n\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t},\n\t\tshowLinkPanel && {\n\t\t\tkey: 'link',\n\t\t\tlabel: __( 'Link' ),\n\t\t\thasValue: hasLink,\n\t\t\tresetValue: resetLink,\n\t\t\tisShownByDefault: defaultControls.link,\n\t\t\tindicators: [ linkColor, hoverLinkColor ],\n\t\t\ttabs: [\n\t\t\t\t{\n\t\t\t\t\tkey: 'link',\n\t\t\t\t\tlabel: __( 'Default' ),\n\t\t\t\t\tinheritedValue: linkColor,\n\t\t\t\t\tsetValue: setLinkColor,\n\t\t\t\t\tuserValue: userLinkColor,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tkey: 'hover',\n\t\t\t\t\tlabel: __( 'Hover' ),\n\t\t\t\t\tinheritedValue: hoverLinkColor,\n\t\t\t\t\tsetValue: setHoverLinkColor,\n\t\t\t\t\tuserValue: userHoverLinkColor,\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t].filter( Boolean );\n\n\telements.forEach( ( { name, label, showPanel } ) => {\n\t\tif ( ! showPanel ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elementBackgroundColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradient = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextColor = decodeValue(\n\t\t\tinheritedValue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst elementBackgroundUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.background\n\t\t);\n\t\tconst elementGradientUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.gradient\n\t\t);\n\t\tconst elementTextUserColor = decodeValue(\n\t\t\tvalue?.elements?.[ name ]?.color?.text\n\t\t);\n\t\tconst hasElement = () =>\n\t\t\t!! (\n\t\t\t\telementTextUserColor ||\n\t\t\t\telementBackgroundUserColor ||\n\t\t\t\telementGradientUserColor\n\t\t\t);\n\t\tconst resetElement = () => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tundefined\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tnewValue.elements[ name ].color.text = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\n\t\tconst setElementTextColor = ( newTextColor ) => {\n\t\t\tonChange(\n\t\t\t\tsetImmutably(\n\t\t\t\t\tvalue,\n\t\t\t\t\t[ 'elements', name, 'color', 'text' ],\n\t\t\t\t\tencodeColorValue( newTextColor )\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tconst setElementBackgroundColor = ( newBackgroundColor ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'background' ],\n\t\t\t\tencodeColorValue( newBackgroundColor )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.gradient = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst setElementGradient = ( newGradient ) => {\n\t\t\tconst newValue = setImmutably(\n\t\t\t\tvalue,\n\t\t\t\t[ 'elements', name, 'color', 'gradient' ],\n\t\t\t\tencodeGradientValue( newGradient )\n\t\t\t);\n\t\t\tnewValue.elements[ name ].color.background = undefined;\n\t\t\tonChange( newValue );\n\t\t};\n\t\tconst supportsTextColor = true;\n\t\t// Background color is not supported for `caption`\n\t\t// as there isn't yet a way to set padding for the element.\n\t\tconst supportsBackground = name !== 'caption';\n\n\t\titems.push( {\n\t\t\tkey: name,\n\t\t\tlabel,\n\t\t\thasValue: hasElement,\n\t\t\tresetValue: resetElement,\n\t\t\tisShownByDefault: defaultControls[ name ],\n\t\t\tindicators:\n\t\t\t\tsupportsTextColor && supportsBackground\n\t\t\t\t\t? [\n\t\t\t\t\t\t\telementTextColor,\n\t\t\t\t\t\t\telementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ]\n\t\t\t\t\t: [\n\t\t\t\t\t\t\tsupportsTextColor\n\t\t\t\t\t\t\t\t? elementTextColor\n\t\t\t\t\t\t\t\t: elementGradient ?? elementBackgroundColor,\n\t\t\t\t\t ],\n\t\t\ttabs: [\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsTextColor && {\n\t\t\t\t\t\tkey: 'text',\n\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\tinheritedValue: elementTextColor,\n\t\t\t\t\t\tsetValue: setElementTextColor,\n\t\t\t\t\t\tuserValue: elementTextUserColor,\n\t\t\t\t\t},\n\t\t\t\thasSolidColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'background',\n\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\tinheritedValue: elementBackgroundColor,\n\t\t\t\t\t\tsetValue: setElementBackgroundColor,\n\t\t\t\t\t\tuserValue: elementBackgroundUserColor,\n\t\t\t\t\t},\n\t\t\t\thasGradientColors &&\n\t\t\t\t\tsupportsBackground && {\n\t\t\t\t\t\tkey: 'gradient',\n\t\t\t\t\t\tlabel: __( 'Gradient' ),\n\t\t\t\t\t\tinheritedValue: elementGradient,\n\t\t\t\t\t\tsetValue: setElementGradient,\n\t\t\t\t\t\tuserValue: elementGradientUserColor,\n\t\t\t\t\t\tisGradient: true,\n\t\t\t\t\t},\n\t\t\t].filter( Boolean ),\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ items.map( ( item ) => {\n\t\t\t\tconst { key, ...restItem } = item;\n\t\t\t\treturn (\n\t\t\t\t\t<ColorPanelDropdown\n\t\t\t\t\t\tkey={ key }\n\t\t\t\t\t\t{ ...restItem }\n\t\t\t\t\t\tcolorGradientControlSettings={ {\n\t\t\t\t\t\t\tcolors,\n\t\t\t\t\t\t\tdisableCustomColors: ! areCustomSolidsEnabled,\n\t\t\t\t\t\t\tgradients,\n\t\t\t\t\t\t\tdisableCustomGradients: ! areCustomGradientsEnabled,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t\t{ children }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -165,10 +165,8 @@ function FiltersPanel({
|
|
|
165
165
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalItemGroup, {
|
|
166
166
|
isBordered: true,
|
|
167
167
|
isSeparated: true,
|
|
168
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
169
|
-
|
|
170
|
-
, {
|
|
171
|
-
__next40pxDefaultSize: false,
|
|
168
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
169
|
+
__next40pxDefaultSize: true,
|
|
172
170
|
...toggleProps,
|
|
173
171
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(LabeledColorIndicator, {
|
|
174
172
|
indicator: duotone,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_element","_utils","_object","_jsxRuntime","EMPTY_ARRAY","useMultiOriginColorPresets","settings","presetSetting","defaultSetting","disableDefault","color","userPresets","custom","themePresets","theme","defaultPresets","default","useMemo","useHasFiltersPanel","useHasDuotoneControl","customDuotone","defaultDuotone","duotone","length","FiltersToolsPanel","resetAllFilter","onChange","value","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","_x","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","className","headerTitle","__","LabeledColorIndicator","indicator","jsxs","__experimentalHStack","justify","__experimentalZStack","isLayered","Flex","expanded","ColorIndicator","DuotoneSwatch","values","FlexItem","title","FiltersPanel","as","Wrapper","inheritedValue","defaultControls","decodeValue","rawValue","getValueFromVariable","hasDuotoneEnabled","duotonePalette","colorPalette","filter","setDuotone","newValue","duotonePreset","find","colors","settedValue","slug","setImmutably","hasDuotone","resetDuotone","undefined","useCallback","previousValue","__experimentalToolsPanelItem","hasValue","onDeselect","isShownByDefault","Dropdown","renderToggle","onToggle","isOpen","toggleProps","onClick","clsx","__experimentalItemGroup","isBordered","isSeparated","Button","__next40pxDefaultSize","renderContent","__experimentalDropdownContentWrapper","paddingSize","MenuGroup","DuotonePicker","disableCustomColors","disableCustomDuotone"],"sources":["@wordpress/block-editor/src/components/global-styles/filters-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tButton,\n\tMenuGroup,\n\tColorIndicator,\n\tDuotonePicker,\n\tDuotoneSwatch,\n\tDropdown,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\n\nconst EMPTY_ARRAY = [];\nfunction useMultiOriginColorPresets(\n\tsettings,\n\t{ presetSetting, defaultSetting }\n) {\n\tconst disableDefault = ! settings?.color?.[ defaultSetting ];\n\tconst userPresets =\n\t\tsettings?.color?.[ presetSetting ]?.custom || EMPTY_ARRAY;\n\tconst themePresets =\n\t\tsettings?.color?.[ presetSetting ]?.theme || EMPTY_ARRAY;\n\tconst defaultPresets =\n\t\tsettings?.color?.[ presetSetting ]?.default || EMPTY_ARRAY;\n\treturn useMemo(\n\t\t() => [\n\t\t\t...userPresets,\n\t\t\t...themePresets,\n\t\t\t...( disableDefault ? EMPTY_ARRAY : defaultPresets ),\n\t\t],\n\t\t[ disableDefault, userPresets, themePresets, defaultPresets ]\n\t);\n}\n\nexport function useHasFiltersPanel( settings ) {\n\treturn useHasDuotoneControl( settings );\n}\n\nfunction useHasDuotoneControl( settings ) {\n\treturn (\n\t\tsettings.color.customDuotone ||\n\t\tsettings.color.defaultDuotone ||\n\t\tsettings.color.duotone.length > 0\n\t);\n}\n\nfunction FiltersToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ _x( 'Filters', 'Name for applying graphical effects' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tduotone: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n\tclassName: 'block-editor-duotone-control__popover',\n\theaderTitle: __( 'Duotone' ),\n};\n\nconst LabeledColorIndicator = ( { indicator, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t<Flex expanded={ false }>\n\t\t\t\t{ indicator === 'unset' || ! indicator ? (\n\t\t\t\t\t<ColorIndicator className=\"block-editor-duotone-control__unset-indicator\" />\n\t\t\t\t) : (\n\t\t\t\t\t<DuotoneSwatch values={ indicator } />\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t</ZStack>\n\t\t<FlexItem title={ label }>{ label }</FlexItem>\n\t</HStack>\n);\n\nexport default function FiltersPanel( {\n\tas: Wrapper = FiltersToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\n\t// Duotone\n\tconst hasDuotoneEnabled = useHasDuotoneControl( settings );\n\tconst duotonePalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'duotone',\n\t\tdefaultSetting: 'defaultDuotone',\n\t} );\n\tconst colorPalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'palette',\n\t\tdefaultSetting: 'defaultPalette',\n\t} );\n\tconst duotone = decodeValue( inheritedValue?.filter?.duotone );\n\tconst setDuotone = ( newValue ) => {\n\t\tconst duotonePreset = duotonePalette.find( ( { colors } ) => {\n\t\t\treturn colors === newValue;\n\t\t} );\n\t\tconst settedValue = duotonePreset\n\t\t\t? `var:preset|duotone|${ duotonePreset.slug }`\n\t\t\t: newValue;\n\t\tonChange( setImmutably( value, [ 'filter', 'duotone' ], settedValue ) );\n\t};\n\tconst hasDuotone = () => !! value?.filter?.duotone;\n\tconst resetDuotone = () => setDuotone( undefined );\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tfilter: {\n\t\t\t\t...previousValue.filter,\n\t\t\t\tduotone: undefined,\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ hasDuotoneEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\thasValue={ hasDuotone }\n\t\t\t\t\tonDeselect={ resetDuotone }\n\t\t\t\t\tisShownByDefault={ defaultControls.duotone }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\t\t\tclassName=\"block-editor-global-styles-filters-panel__dropdown\"\n\t\t\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\t\t\tclassName: clsx( { 'is-open': isOpen } ),\n\t\t\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\t\t\t\t\t{ ...toggleProps }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<LabeledColorIndicator\n\t\t\t\t\t\t\t\t\t\t\tindicator={ duotone }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<DropdownContentWrapper paddingSize=\"small\">\n\t\t\t\t\t\t\t\t<MenuGroup label={ __( 'Duotone' ) }>\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Create a two-tone color effect without losing your original image.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<DuotonePicker\n\t\t\t\t\t\t\t\t\t\tcolorPalette={ colorPalette }\n\t\t\t\t\t\t\t\t\t\tduotonePalette={ duotonePalette }\n\t\t\t\t\t\t\t\t\t\t// TODO: Re-enable both when custom colors are supported for block-level styles.\n\t\t\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\t\t\tdisableCustomDuotone\n\t\t\t\t\t\t\t\t\t\tvalue={ duotone }\n\t\t\t\t\t\t\t\t\t\tonChange={ setDuotone }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_element","_utils","_object","_jsxRuntime","EMPTY_ARRAY","useMultiOriginColorPresets","settings","presetSetting","defaultSetting","disableDefault","color","userPresets","custom","themePresets","theme","defaultPresets","default","useMemo","useHasFiltersPanel","useHasDuotoneControl","customDuotone","defaultDuotone","duotone","length","FiltersToolsPanel","resetAllFilter","onChange","value","panelId","children","dropdownMenuProps","useToolsPanelDropdownMenuProps","resetAll","updatedValue","jsx","__experimentalToolsPanel","label","_x","DEFAULT_CONTROLS","popoverProps","placement","offset","shift","className","headerTitle","__","LabeledColorIndicator","indicator","jsxs","__experimentalHStack","justify","__experimentalZStack","isLayered","Flex","expanded","ColorIndicator","DuotoneSwatch","values","FlexItem","title","FiltersPanel","as","Wrapper","inheritedValue","defaultControls","decodeValue","rawValue","getValueFromVariable","hasDuotoneEnabled","duotonePalette","colorPalette","filter","setDuotone","newValue","duotonePreset","find","colors","settedValue","slug","setImmutably","hasDuotone","resetDuotone","undefined","useCallback","previousValue","__experimentalToolsPanelItem","hasValue","onDeselect","isShownByDefault","Dropdown","renderToggle","onToggle","isOpen","toggleProps","onClick","clsx","__experimentalItemGroup","isBordered","isSeparated","Button","__next40pxDefaultSize","renderContent","__experimentalDropdownContentWrapper","paddingSize","MenuGroup","DuotonePicker","disableCustomColors","disableCustomDuotone"],"sources":["@wordpress/block-editor/src/components/global-styles/filters-panel.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalZStack as ZStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tButton,\n\tMenuGroup,\n\tColorIndicator,\n\tDuotonePicker,\n\tDuotoneSwatch,\n\tDropdown,\n\tFlex,\n\tFlexItem,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport { useCallback, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { getValueFromVariable, useToolsPanelDropdownMenuProps } from './utils';\nimport { setImmutably } from '../../utils/object';\n\nconst EMPTY_ARRAY = [];\nfunction useMultiOriginColorPresets(\n\tsettings,\n\t{ presetSetting, defaultSetting }\n) {\n\tconst disableDefault = ! settings?.color?.[ defaultSetting ];\n\tconst userPresets =\n\t\tsettings?.color?.[ presetSetting ]?.custom || EMPTY_ARRAY;\n\tconst themePresets =\n\t\tsettings?.color?.[ presetSetting ]?.theme || EMPTY_ARRAY;\n\tconst defaultPresets =\n\t\tsettings?.color?.[ presetSetting ]?.default || EMPTY_ARRAY;\n\treturn useMemo(\n\t\t() => [\n\t\t\t...userPresets,\n\t\t\t...themePresets,\n\t\t\t...( disableDefault ? EMPTY_ARRAY : defaultPresets ),\n\t\t],\n\t\t[ disableDefault, userPresets, themePresets, defaultPresets ]\n\t);\n}\n\nexport function useHasFiltersPanel( settings ) {\n\treturn useHasDuotoneControl( settings );\n}\n\nfunction useHasDuotoneControl( settings ) {\n\treturn (\n\t\tsettings.color.customDuotone ||\n\t\tsettings.color.defaultDuotone ||\n\t\tsettings.color.duotone.length > 0\n\t);\n}\n\nfunction FiltersToolsPanel( {\n\tresetAllFilter,\n\tonChange,\n\tvalue,\n\tpanelId,\n\tchildren,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst resetAll = () => {\n\t\tconst updatedValue = resetAllFilter( value );\n\t\tonChange( updatedValue );\n\t};\n\n\treturn (\n\t\t<ToolsPanel\n\t\t\tlabel={ _x( 'Filters', 'Name for applying graphical effects' ) }\n\t\t\tresetAll={ resetAll }\n\t\t\tpanelId={ panelId }\n\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t>\n\t\t\t{ children }\n\t\t</ToolsPanel>\n\t);\n}\n\nconst DEFAULT_CONTROLS = {\n\tduotone: true,\n};\n\nconst popoverProps = {\n\tplacement: 'left-start',\n\toffset: 36,\n\tshift: true,\n\tclassName: 'block-editor-duotone-control__popover',\n\theaderTitle: __( 'Duotone' ),\n};\n\nconst LabeledColorIndicator = ( { indicator, label } ) => (\n\t<HStack justify=\"flex-start\">\n\t\t<ZStack isLayered={ false } offset={ -8 }>\n\t\t\t<Flex expanded={ false }>\n\t\t\t\t{ indicator === 'unset' || ! indicator ? (\n\t\t\t\t\t<ColorIndicator className=\"block-editor-duotone-control__unset-indicator\" />\n\t\t\t\t) : (\n\t\t\t\t\t<DuotoneSwatch values={ indicator } />\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t</ZStack>\n\t\t<FlexItem title={ label }>{ label }</FlexItem>\n\t</HStack>\n);\n\nexport default function FiltersPanel( {\n\tas: Wrapper = FiltersToolsPanel,\n\tvalue,\n\tonChange,\n\tinheritedValue = value,\n\tsettings,\n\tpanelId,\n\tdefaultControls = DEFAULT_CONTROLS,\n} ) {\n\tconst decodeValue = ( rawValue ) =>\n\t\tgetValueFromVariable( { settings }, '', rawValue );\n\n\t// Duotone\n\tconst hasDuotoneEnabled = useHasDuotoneControl( settings );\n\tconst duotonePalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'duotone',\n\t\tdefaultSetting: 'defaultDuotone',\n\t} );\n\tconst colorPalette = useMultiOriginColorPresets( settings, {\n\t\tpresetSetting: 'palette',\n\t\tdefaultSetting: 'defaultPalette',\n\t} );\n\tconst duotone = decodeValue( inheritedValue?.filter?.duotone );\n\tconst setDuotone = ( newValue ) => {\n\t\tconst duotonePreset = duotonePalette.find( ( { colors } ) => {\n\t\t\treturn colors === newValue;\n\t\t} );\n\t\tconst settedValue = duotonePreset\n\t\t\t? `var:preset|duotone|${ duotonePreset.slug }`\n\t\t\t: newValue;\n\t\tonChange( setImmutably( value, [ 'filter', 'duotone' ], settedValue ) );\n\t};\n\tconst hasDuotone = () => !! value?.filter?.duotone;\n\tconst resetDuotone = () => setDuotone( undefined );\n\n\tconst resetAllFilter = useCallback( ( previousValue ) => {\n\t\treturn {\n\t\t\t...previousValue,\n\t\t\tfilter: {\n\t\t\t\t...previousValue.filter,\n\t\t\t\tduotone: undefined,\n\t\t\t},\n\t\t};\n\t}, [] );\n\n\treturn (\n\t\t<Wrapper\n\t\t\tresetAllFilter={ resetAllFilter }\n\t\t\tvalue={ value }\n\t\t\tonChange={ onChange }\n\t\t\tpanelId={ panelId }\n\t\t>\n\t\t\t{ hasDuotoneEnabled && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\thasValue={ hasDuotone }\n\t\t\t\t\tonDeselect={ resetDuotone }\n\t\t\t\t\tisShownByDefault={ defaultControls.duotone }\n\t\t\t\t\tpanelId={ panelId }\n\t\t\t\t>\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\t\t\tclassName=\"block-editor-global-styles-filters-panel__dropdown\"\n\t\t\t\t\t\trenderToggle={ ( { onToggle, isOpen } ) => {\n\t\t\t\t\t\t\tconst toggleProps = {\n\t\t\t\t\t\t\t\tonClick: onToggle,\n\t\t\t\t\t\t\t\tclassName: clsx( { 'is-open': isOpen } ),\n\t\t\t\t\t\t\t\t'aria-expanded': isOpen,\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<ItemGroup isBordered isSeparated>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\t{ ...toggleProps }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<LabeledColorIndicator\n\t\t\t\t\t\t\t\t\t\t\tindicator={ duotone }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Duotone' ) }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<DropdownContentWrapper paddingSize=\"small\">\n\t\t\t\t\t\t\t\t<MenuGroup label={ __( 'Duotone' ) }>\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Create a two-tone color effect without losing your original image.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<DuotonePicker\n\t\t\t\t\t\t\t\t\t\tcolorPalette={ colorPalette }\n\t\t\t\t\t\t\t\t\t\tduotonePalette={ duotonePalette }\n\t\t\t\t\t\t\t\t\t\t// TODO: Re-enable both when custom colors are supported for block-level styles.\n\t\t\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\t\t\tdisableCustomDuotone\n\t\t\t\t\t\t\t\t\t\tvalue={ duotone }\n\t\t\t\t\t\t\t\t\t\tonChange={ setDuotone }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t</DropdownContentWrapper>\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</Wrapper>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -48,10 +48,8 @@ function ShadowPopoverContainer({
|
|
|
48
48
|
onSelect: onShadowChange
|
|
49
49
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
50
50
|
className: "block-editor-global-styles__clear-shadow",
|
|
51
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
52
|
-
|
|
53
|
-
, {
|
|
54
|
-
__next40pxDefaultSize: false,
|
|
51
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
52
|
+
__next40pxDefaultSize: true,
|
|
55
53
|
variant: "tertiary",
|
|
56
54
|
onClick: () => onShadowChange(undefined),
|
|
57
55
|
children: (0, _i18n.__)('Clear')
|
|
@@ -89,28 +87,27 @@ function ShadowIndicator({
|
|
|
89
87
|
onSelect,
|
|
90
88
|
shadow
|
|
91
89
|
}) {
|
|
92
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
// TODO: Switch to `true` (40px size) if possible
|
|
101
|
-
, {
|
|
102
|
-
__next40pxDefaultSize: false,
|
|
103
|
-
className: (0, _clsx.default)('block-editor-global-styles__shadow-indicator', {
|
|
104
|
-
unset: type === 'unset'
|
|
90
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Tooltip, {
|
|
91
|
+
text: label,
|
|
92
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Composite.Item, {
|
|
93
|
+
role: "option",
|
|
94
|
+
"aria-label": label,
|
|
95
|
+
"aria-selected": isActive,
|
|
96
|
+
className: (0, _clsx.default)('block-editor-global-styles__shadow__item', {
|
|
97
|
+
'is-active': isActive
|
|
105
98
|
}),
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
99
|
+
render: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
100
|
+
className: (0, _clsx.default)('block-editor-global-styles__shadow-indicator', {
|
|
101
|
+
unset: type === 'unset'
|
|
102
|
+
}),
|
|
103
|
+
onClick: onSelect,
|
|
104
|
+
style: {
|
|
105
|
+
boxShadow: shadow
|
|
106
|
+
},
|
|
107
|
+
"aria-label": label,
|
|
108
|
+
children: isActive && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.Icon, {
|
|
109
|
+
icon: _icons.check
|
|
110
|
+
})
|
|
114
111
|
})
|
|
115
112
|
})
|
|
116
113
|
});
|
|
@@ -151,10 +148,8 @@ function renderShadowToggle() {
|
|
|
151
148
|
}),
|
|
152
149
|
'aria-expanded': isOpen
|
|
153
150
|
};
|
|
154
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
155
|
-
|
|
156
|
-
, {
|
|
157
|
-
__next40pxDefaultSize: false,
|
|
151
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
152
|
+
__next40pxDefaultSize: true,
|
|
158
153
|
...toggleProps,
|
|
159
154
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
|
|
160
155
|
justify: "flex-start",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_components","_element","_icons","_clsx","_interopRequireDefault","_jsxRuntime","EMPTY_ARRAY","ShadowPopoverContainer","shadow","onShadowChange","settings","shadows","useShadowPresets","jsx","className","children","jsxs","__experimentalVStack","spacing","__experimentalHeading","level","__","ShadowPresets","presets","activeShadow","onSelect","Button","__next40pxDefaultSize","variant","onClick","undefined","Composite","role","map","name","slug","ShadowIndicator","label","isActive","type","Item","clsx","render","unset","style","boxShadow","showTooltip","Icon","icon","check","ShadowPopover","popoverProps","placement","offset","shift","Dropdown","renderToggle","renderShadowToggle","renderContent","__experimentalDropdownContentWrapper","paddingSize","onToggle","isOpen","toggleProps","__experimentalHStack","justify","shadowIcon","size","FlexItem","useMemo","_settings$shadow$pres","defaultPresetsEnabled","defaultPresets","default","defaultShadows","theme","themeShadows","custom","customShadows","unsetShadow","shadowPresets","length","unshift"],"sources":["@wordpress/block-editor/src/components/global-styles/shadow-panel-components.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHeading as Heading,\n\t__experimentalHStack as HStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tButton,\n\tFlexItem,\n\tDropdown,\n\tComposite,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { shadow as shadowIcon, Icon, check } from '@wordpress/icons';\n\n/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nexport function ShadowPopoverContainer( { shadow, onShadowChange, settings } ) {\n\tconst shadows = useShadowPresets( settings );\n\n\treturn (\n\t\t<div className=\"block-editor-global-styles__shadow-popover-container\">\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<Heading level={ 5 }>{ __( 'Drop shadow' ) }</Heading>\n\t\t\t\t<ShadowPresets\n\t\t\t\t\tpresets={ shadows }\n\t\t\t\t\tactiveShadow={ shadow }\n\t\t\t\t\tonSelect={ onShadowChange }\n\t\t\t\t/>\n\t\t\t\t<div className=\"block-editor-global-styles__clear-shadow\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onShadowChange( undefined ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport function ShadowPresets( { presets, activeShadow, onSelect } ) {\n\treturn ! presets ? null : (\n\t\t<Composite\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-global-styles__shadow__list\"\n\t\t\taria-label={ __( 'Drop shadows' ) }\n\t\t>\n\t\t\t{ presets.map( ( { name, slug, shadow } ) => (\n\t\t\t\t<ShadowIndicator\n\t\t\t\t\tkey={ slug }\n\t\t\t\t\tlabel={ name }\n\t\t\t\t\tisActive={ shadow === activeShadow }\n\t\t\t\t\ttype={ slug === 'unset' ? 'unset' : 'preset' }\n\t\t\t\t\tonSelect={ () =>\n\t\t\t\t\t\tonSelect( shadow === activeShadow ? undefined : shadow )\n\t\t\t\t\t}\n\t\t\t\t\tshadow={ shadow }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nexport function ShadowIndicator( { type, label, isActive, onSelect, shadow } ) {\n\treturn (\n\t\t<Composite.Item\n\t\t\trole=\"option\"\n\t\t\taria-label={ label }\n\t\t\taria-selected={ isActive }\n\t\t\tclassName={ clsx( 'block-editor-global-styles__shadow__item', {\n\t\t\t\t'is-active': isActive,\n\t\t\t} ) }\n\t\t\trender={\n\t\t\t\t<Button\n\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t'block-editor-global-styles__shadow-indicator',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tunset: type === 'unset',\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t\tonClick={ onSelect }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tstyle={ { boxShadow: shadow } }\n\t\t\t\t\tshowTooltip\n\t\t\t\t>\n\t\t\t\t\t{ isActive && <Icon icon={ check } /> }\n\t\t\t\t</Button>\n\t\t\t}\n\t\t/>\n\t);\n}\n\nexport function ShadowPopover( { shadow, onShadowChange, settings } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"block-editor-global-styles__shadow-dropdown\"\n\t\t\trenderToggle={ renderShadowToggle() }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"medium\">\n\t\t\t\t\t<ShadowPopoverContainer\n\t\t\t\t\t\tshadow={ shadow }\n\t\t\t\t\t\tonShadowChange={ onShadowChange }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction renderShadowToggle() {\n\treturn ( { onToggle, isOpen } ) => {\n\t\tconst toggleProps = {\n\t\t\tonClick: onToggle,\n\t\t\tclassName: clsx( { 'is-open': isOpen } ),\n\t\t\t'aria-expanded': isOpen,\n\t\t};\n\n\t\treturn (\n\t\t\t<Button\n\t\t\t\t// TODO: Switch to `true` (40px size) if possible\n\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t{ ...toggleProps }\n\t\t\t>\n\t\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"block-editor-global-styles__toggle-icon\"\n\t\t\t\t\t\ticon={ shadowIcon }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t\t<FlexItem>{ __( 'Drop shadow' ) }</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</Button>\n\t\t);\n\t};\n}\n\nexport function useShadowPresets( settings ) {\n\treturn useMemo( () => {\n\t\tif ( ! settings?.shadow ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\n\t\tconst defaultPresetsEnabled = settings?.shadow?.defaultPresets;\n\t\tconst {\n\t\t\tdefault: defaultShadows,\n\t\t\ttheme: themeShadows,\n\t\t\tcustom: customShadows,\n\t\t} = settings?.shadow?.presets ?? {};\n\t\tconst unsetShadow = {\n\t\t\tname: __( 'Unset' ),\n\t\t\tslug: 'unset',\n\t\t\tshadow: 'none',\n\t\t};\n\n\t\tconst shadowPresets = [\n\t\t\t...( ( defaultPresetsEnabled && defaultShadows ) || EMPTY_ARRAY ),\n\t\t\t...( themeShadows || EMPTY_ARRAY ),\n\t\t\t...( customShadows || EMPTY_ARRAY ),\n\t\t];\n\t\tif ( shadowPresets.length ) {\n\t\t\tshadowPresets.unshift( unsetShadow );\n\t\t}\n\n\t\treturn shadowPresets;\n\t}, [ settings ] );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_components","_element","_icons","_clsx","_interopRequireDefault","_jsxRuntime","EMPTY_ARRAY","ShadowPopoverContainer","shadow","onShadowChange","settings","shadows","useShadowPresets","jsx","className","children","jsxs","__experimentalVStack","spacing","__experimentalHeading","level","__","ShadowPresets","presets","activeShadow","onSelect","Button","__next40pxDefaultSize","variant","onClick","undefined","Composite","role","map","name","slug","ShadowIndicator","label","isActive","type","Tooltip","text","Item","clsx","render","unset","style","boxShadow","Icon","icon","check","ShadowPopover","popoverProps","placement","offset","shift","Dropdown","renderToggle","renderShadowToggle","renderContent","__experimentalDropdownContentWrapper","paddingSize","onToggle","isOpen","toggleProps","__experimentalHStack","justify","shadowIcon","size","FlexItem","useMemo","_settings$shadow$pres","defaultPresetsEnabled","defaultPresets","default","defaultShadows","theme","themeShadows","custom","customShadows","unsetShadow","shadowPresets","length","unshift"],"sources":["@wordpress/block-editor/src/components/global-styles/shadow-panel-components.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHeading as Heading,\n\t__experimentalHStack as HStack,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n\tButton,\n\tFlexItem,\n\tDropdown,\n\tComposite,\n\tTooltip,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\nimport { shadow as shadowIcon, Icon, check } from '@wordpress/icons';\n\n/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * Shared reference to an empty array for cases where it is important to avoid\n * returning a new array reference on every invocation.\n *\n * @type {Array}\n */\nconst EMPTY_ARRAY = [];\n\nexport function ShadowPopoverContainer( { shadow, onShadowChange, settings } ) {\n\tconst shadows = useShadowPresets( settings );\n\n\treturn (\n\t\t<div className=\"block-editor-global-styles__shadow-popover-container\">\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<Heading level={ 5 }>{ __( 'Drop shadow' ) }</Heading>\n\t\t\t\t<ShadowPresets\n\t\t\t\t\tpresets={ shadows }\n\t\t\t\t\tactiveShadow={ shadow }\n\t\t\t\t\tonSelect={ onShadowChange }\n\t\t\t\t/>\n\t\t\t\t<div className=\"block-editor-global-styles__clear-shadow\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onShadowChange( undefined ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n\nexport function ShadowPresets( { presets, activeShadow, onSelect } ) {\n\treturn ! presets ? null : (\n\t\t<Composite\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"block-editor-global-styles__shadow__list\"\n\t\t\taria-label={ __( 'Drop shadows' ) }\n\t\t>\n\t\t\t{ presets.map( ( { name, slug, shadow } ) => (\n\t\t\t\t<ShadowIndicator\n\t\t\t\t\tkey={ slug }\n\t\t\t\t\tlabel={ name }\n\t\t\t\t\tisActive={ shadow === activeShadow }\n\t\t\t\t\ttype={ slug === 'unset' ? 'unset' : 'preset' }\n\t\t\t\t\tonSelect={ () =>\n\t\t\t\t\t\tonSelect( shadow === activeShadow ? undefined : shadow )\n\t\t\t\t\t}\n\t\t\t\t\tshadow={ shadow }\n\t\t\t\t/>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nexport function ShadowIndicator( { type, label, isActive, onSelect, shadow } ) {\n\treturn (\n\t\t<Tooltip text={ label }>\n\t\t\t<Composite.Item\n\t\t\t\trole=\"option\"\n\t\t\t\taria-label={ label }\n\t\t\t\taria-selected={ isActive }\n\t\t\t\tclassName={ clsx( 'block-editor-global-styles__shadow__item', {\n\t\t\t\t\t'is-active': isActive,\n\t\t\t\t} ) }\n\t\t\t\trender={\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t'block-editor-global-styles__shadow-indicator',\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tunset: type === 'unset',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tonClick={ onSelect }\n\t\t\t\t\t\tstyle={ { boxShadow: shadow } }\n\t\t\t\t\t\taria-label={ label }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isActive && <Icon icon={ check } /> }\n\t\t\t\t\t</button>\n\t\t\t\t}\n\t\t\t/>\n\t\t</Tooltip>\n\t);\n}\n\nexport function ShadowPopover( { shadow, onShadowChange, settings } ) {\n\tconst popoverProps = {\n\t\tplacement: 'left-start',\n\t\toffset: 36,\n\t\tshift: true,\n\t};\n\n\treturn (\n\t\t<Dropdown\n\t\t\tpopoverProps={ popoverProps }\n\t\t\tclassName=\"block-editor-global-styles__shadow-dropdown\"\n\t\t\trenderToggle={ renderShadowToggle() }\n\t\t\trenderContent={ () => (\n\t\t\t\t<DropdownContentWrapper paddingSize=\"medium\">\n\t\t\t\t\t<ShadowPopoverContainer\n\t\t\t\t\t\tshadow={ shadow }\n\t\t\t\t\t\tonShadowChange={ onShadowChange }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t/>\n\t\t\t\t</DropdownContentWrapper>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nfunction renderShadowToggle() {\n\treturn ( { onToggle, isOpen } ) => {\n\t\tconst toggleProps = {\n\t\t\tonClick: onToggle,\n\t\t\tclassName: clsx( { 'is-open': isOpen } ),\n\t\t\t'aria-expanded': isOpen,\n\t\t};\n\n\t\treturn (\n\t\t\t<Button __next40pxDefaultSize { ...toggleProps }>\n\t\t\t\t<HStack justify=\"flex-start\">\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"block-editor-global-styles__toggle-icon\"\n\t\t\t\t\t\ticon={ shadowIcon }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t\t<FlexItem>{ __( 'Drop shadow' ) }</FlexItem>\n\t\t\t\t</HStack>\n\t\t\t</Button>\n\t\t);\n\t};\n}\n\nexport function useShadowPresets( settings ) {\n\treturn useMemo( () => {\n\t\tif ( ! settings?.shadow ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\n\t\tconst defaultPresetsEnabled = settings?.shadow?.defaultPresets;\n\t\tconst {\n\t\t\tdefault: defaultShadows,\n\t\t\ttheme: themeShadows,\n\t\t\tcustom: customShadows,\n\t\t} = settings?.shadow?.presets ?? {};\n\t\tconst unsetShadow = {\n\t\t\tname: __( 'Unset' ),\n\t\t\tslug: 'unset',\n\t\t\tshadow: 'none',\n\t\t};\n\n\t\tconst shadowPresets = [\n\t\t\t...( ( defaultPresetsEnabled && defaultShadows ) || EMPTY_ARRAY ),\n\t\t\t...( themeShadows || EMPTY_ARRAY ),\n\t\t\t...( customShadows || EMPTY_ARRAY ),\n\t\t];\n\t\tif ( shadowPresets.length ) {\n\t\t\tshadowPresets.unshift( unsetShadow );\n\t\t}\n\n\t\treturn shadowPresets;\n\t}, [ settings ] );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -263,7 +263,12 @@ function Iframe({
|
|
|
263
263
|
}
|
|
264
264
|
iframeDocument.documentElement.classList.add('is-zoomed-out');
|
|
265
265
|
const maxWidth = 750;
|
|
266
|
-
|
|
266
|
+
// This scaling calculation has to happen within the JS because CSS calc() can
|
|
267
|
+
// only divide and multiply by a unitless value. I.e. calc( 100px / 2 ) is valid
|
|
268
|
+
// but calc( 100px / 2px ) is not.
|
|
269
|
+
iframeDocument.documentElement.style.setProperty('--wp-block-editor-iframe-zoom-out-scale', scale === 'default' ? (Math.min(containerWidth, maxWidth) - parseInt(frameSize) * 2) / prevContainerWidthRef.current : scale);
|
|
270
|
+
|
|
271
|
+
// frameSize has to be a px value for the scaling and frame size to be computed correctly.
|
|
267
272
|
iframeDocument.documentElement.style.setProperty('--wp-block-editor-iframe-zoom-out-frame-size', typeof frameSize === 'number' ? `${frameSize}px` : frameSize);
|
|
268
273
|
iframeDocument.documentElement.style.setProperty('--wp-block-editor-iframe-zoom-out-content-height', `${contentHeight}px`);
|
|
269
274
|
iframeDocument.documentElement.style.setProperty('--wp-block-editor-iframe-zoom-out-inner-height', `${iframeWindowInnerHeight}px`);
|