@wordpress/edit-site 5.17.1 → 5.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/app/index.js +1 -1
- package/build/components/app/index.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +3 -3
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/{canvas-spinner → canvas-loader}/index.js +3 -3
- package/build/components/canvas-loader/index.js.map +1 -0
- package/build/components/editor/index.js +3 -3
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/screen-block.js +5 -0
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/header-edit-mode/index.js +9 -5
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js +19 -21
- package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +1 -1
- package/build/components/keyboard-shortcuts/edit-mode.js +1 -26
- package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +2 -2
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-status.js +21 -7
- package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +1 -45
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +2 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build/hooks/commands/use-common-commands.js +1 -17
- package/build/hooks/commands/use-common-commands.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +33 -21
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build/store/actions.js +52 -6
- package/build/store/actions.js.map +1 -1
- package/build/utils/constants.js.map +1 -0
- package/build-module/components/app/index.js +2 -2
- package/build-module/components/app/index.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +4 -4
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/{canvas-spinner → canvas-loader}/index.js +2 -2
- package/build-module/components/canvas-loader/index.js.map +1 -0
- package/build-module/components/editor/index.js +3 -3
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +5 -0
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/header-edit-mode/index.js +9 -5
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js +19 -21
- package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +1 -1
- package/build-module/components/keyboard-shortcuts/edit-mode.js +1 -26
- package/build-module/components/keyboard-shortcuts/edit-mode.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +3 -3
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +23 -8
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +1 -45
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +2 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build-module/hooks/commands/use-common-commands.js +1 -17
- package/build-module/hooks/commands/use-common-commands.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +34 -22
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/index.js +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/store/actions.js +48 -4
- package/build-module/store/actions.js.map +1 -1
- package/build-module/utils/constants.js.map +1 -0
- package/build-style/style-rtl.css +13 -6
- package/build-style/style.css +13 -6
- package/package.json +40 -40
- package/src/components/app/index.js +1 -2
- package/src/components/block-editor/site-editor-canvas.js +2 -9
- package/src/components/{canvas-spinner → canvas-loader}/index.js +2 -2
- package/src/components/{canvas-spinner → canvas-loader}/style.scss +3 -3
- package/src/components/editor/index.js +3 -3
- package/src/components/global-styles/screen-block.js +14 -0
- package/src/components/header-edit-mode/index.js +37 -34
- package/src/components/header-edit-mode/more-menu/copy-content-menu-item.js +20 -21
- package/src/components/keyboard-shortcuts/edit-mode.js +2 -30
- package/src/components/page-patterns/grid-item.js +3 -3
- package/src/components/page-patterns/style.scss +5 -1
- package/src/components/sidebar-edit-mode/page-panels/page-status.js +37 -18
- package/src/components/sidebar-edit-mode/page-panels/style.scss +9 -0
- package/src/components/sidebar-navigation-screen-global-styles/index.js +1 -40
- package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +1 -2
- package/src/hooks/commands/use-common-commands.js +0 -22
- package/src/hooks/commands/use-edit-mode-commands.js +43 -32
- package/src/index.js +1 -1
- package/src/store/actions.js +70 -7
- package/src/store/test/actions.js +88 -0
- package/src/store/test/reducer.js +22 -9
- package/src/style.scss +1 -1
- package/build/components/block-editor/constants.js.map +0 -1
- package/build/components/canvas-spinner/index.js.map +0 -1
- package/build-module/components/block-editor/constants.js.map +0 -1
- package/build-module/components/canvas-spinner/index.js.map +0 -1
- /package/build/{components/block-editor → utils}/constants.js +0 -0
- /package/build-module/{components/block-editor → utils}/constants.js +0 -0
- /package/src/{components/block-editor → utils}/constants.js +0 -0
|
@@ -30,6 +30,7 @@ import DocumentActions from './document-actions';
|
|
|
30
30
|
import { store as editSiteStore } from '../../store';
|
|
31
31
|
import { getEditorCanvasContainerTitle, useHasEditorCanvasContainer } from '../editor-canvas-container';
|
|
32
32
|
import { unlock } from '../../lock-unlock';
|
|
33
|
+
import { FOCUSABLE_ENTITIES } from '../../utils/constants';
|
|
33
34
|
const {
|
|
34
35
|
useShouldContextualToolbarShow
|
|
35
36
|
} = unlock(blockEditorPrivateApis);
|
|
@@ -118,7 +119,7 @@ export default function HeaderEditMode() {
|
|
|
118
119
|
// There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.
|
|
119
120
|
const blockToolbarCanBeFocused = shouldShowContextualToolbar || canFocusHiddenToolbar || fixedToolbarCanBeFocused;
|
|
120
121
|
const hasDefaultEditorCanvasView = !useHasEditorCanvasContainer();
|
|
121
|
-
const isFocusMode = templateType
|
|
122
|
+
const isFocusMode = FOCUSABLE_ENTITIES.includes(templateType);
|
|
122
123
|
|
|
123
124
|
/* translators: button label text should, if possible, be under 16 characters. */
|
|
124
125
|
const longLabel = _x('Toggle block inserter', 'Generic label for block inserter button');
|
|
@@ -168,7 +169,8 @@ export default function HeaderEditMode() {
|
|
|
168
169
|
disabled: !isVisualMode,
|
|
169
170
|
icon: plus,
|
|
170
171
|
label: showIconLabels ? shortLabel : longLabel,
|
|
171
|
-
showTooltip: !showIconLabels
|
|
172
|
+
showTooltip: !showIconLabels,
|
|
173
|
+
"aria-expanded": isInserterOpen
|
|
172
174
|
}), isLargeViewport && createElement(Fragment, null, !hasFixedToolbar && createElement(ToolbarItem, {
|
|
173
175
|
as: ToolSelector,
|
|
174
176
|
showTooltip: !showIconLabels,
|
|
@@ -193,7 +195,8 @@ export default function HeaderEditMode() {
|
|
|
193
195
|
onClick: toggleListView,
|
|
194
196
|
shortcut: listViewShortcut,
|
|
195
197
|
showTooltip: !showIconLabels,
|
|
196
|
-
variant: showIconLabels ? 'tertiary' : undefined
|
|
198
|
+
variant: showIconLabels ? 'tertiary' : undefined,
|
|
199
|
+
"aria-expanded": isListViewOpen
|
|
197
200
|
}), isZoomedOutViewExperimentEnabled && !isDistractionFree && !hasFixedToolbar && createElement(ToolbarItem, {
|
|
198
201
|
as: Button,
|
|
199
202
|
className: "edit-site-header-edit-mode__zoom-out-view-toggle",
|
|
@@ -213,14 +216,15 @@ export default function HeaderEditMode() {
|
|
|
213
216
|
className: "edit-site-header-edit-mode__actions",
|
|
214
217
|
variants: toolbarVariants,
|
|
215
218
|
transition: toolbarTransition
|
|
216
|
-
},
|
|
219
|
+
}, createElement("div", {
|
|
217
220
|
className: classnames('edit-site-header-edit-mode__preview-options', {
|
|
218
221
|
'is-zoomed-out': isZoomedOutView
|
|
219
222
|
})
|
|
220
223
|
}, createElement(PreviewOptions, {
|
|
221
224
|
deviceType: deviceType,
|
|
222
225
|
setDeviceType: setPreviewDeviceType,
|
|
223
|
-
label: __('View')
|
|
226
|
+
label: __('View'),
|
|
227
|
+
isEnabled: !isFocusMode && hasDefaultEditorCanvasView
|
|
224
228
|
}, ({
|
|
225
229
|
onClose
|
|
226
230
|
}) => createElement(MenuGroup, null, createElement(MenuItem, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","useCallback","useRef","useViewportMatch","useReducedMotion","store","coreStore","ToolSelector","__experimentalPreviewOptions","PreviewOptions","NavigableToolbar","blockEditorStore","privateApis","blockEditorPrivateApis","useSelect","useDispatch","PinnedItems","_x","__","listView","plus","external","chevronUpDown","__unstableMotion","motion","Button","ToolbarItem","MenuGroup","MenuItem","VisuallyHidden","keyboardShortcutsStore","preferencesStore","MoreMenu","SaveButton","UndoButton","RedoButton","DocumentActions","editSiteStore","getEditorCanvasContainerTitle","useHasEditorCanvasContainer","unlock","useShouldContextualToolbarShow","preventDefault","event","HeaderEditMode","inserterButton","deviceType","templateType","isInserterOpen","isListViewOpen","listViewShortcut","isVisualMode","isDistractionFree","blockEditorMode","homeUrl","showIconLabels","editorCanvasView","hasFixedToolbar","select","__experimentalGetPreviewDeviceType","getEditedPostType","isInserterOpened","isListViewOpened","getEditorMode","getShortcutRepresentation","__unstableGetEditorMode","postType","getUnstableBase","get","getPreference","home","name","getEditorCanvasContainerView","__experimentalSetPreviewDeviceType","setPreviewDeviceType","setIsInserterOpened","setIsListViewOpened","__unstableSetEditorMode","disableMotion","isLargeViewport","toggleInserter","current","focus","toggleListView","shouldShowContextualToolbar","canFocusHiddenToolbar","fixedToolbarCanBeFocused","blockToolbarCanBeFocused","hasDefaultEditorCanvasView","isFocusMode","longLabel","shortLabel","isZoomedOutViewExperimentEnabled","window","__experimentalEnableZoomedOutView","isZoomedOutView","toolbarVariants","y","isDistractionFreeHovering","view","edit","toolbarTransition","type","duration","ease","createElement","className","as","div","shouldUseKeyboardFocusShortcut","variants","transition","ref","variant","isPressed","onMouseDown","onClick","disabled","icon","label","showTooltip","Fragment","undefined","shortcut","setDeviceType","onClose","href","target","Slot","scope"],"sources":["@wordpress/edit-site/src/components/header-edit-mode/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useRef } from '@wordpress/element';\nimport { useViewportMatch, useReducedMotion } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tToolSelector,\n\t__experimentalPreviewOptions as PreviewOptions,\n\tNavigableToolbar,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { PinnedItems } from '@wordpress/interface';\nimport { _x, __ } from '@wordpress/i18n';\nimport { listView, plus, external, chevronUpDown } from '@wordpress/icons';\nimport {\n\t__unstableMotion as motion,\n\tButton,\n\tToolbarItem,\n\tMenuGroup,\n\tMenuItem,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport MoreMenu from './more-menu';\nimport SaveButton from '../save-button';\nimport UndoButton from './undo-redo/undo';\nimport RedoButton from './undo-redo/redo';\nimport DocumentActions from './document-actions';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tgetEditorCanvasContainerTitle,\n\tuseHasEditorCanvasContainer,\n} from '../editor-canvas-container';\nimport { unlock } from '../../lock-unlock';\n\nconst { useShouldContextualToolbarShow } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nexport default function HeaderEditMode() {\n\tconst inserterButton = useRef();\n\tconst {\n\t\tdeviceType,\n\t\ttemplateType,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\tisVisualMode,\n\t\tisDistractionFree,\n\t\tblockEditorMode,\n\t\thomeUrl,\n\t\tshowIconLabels,\n\t\teditorCanvasView,\n\t\thasFixedToolbar,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\tgetEditedPostType,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t\tgetEditorMode,\n\t\t} = select( editSiteStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\n\t\tconst postType = getEditedPostType();\n\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\tconst { get: getPreference } = select( preferencesStore );\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\ttemplateType: postType,\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/edit-site/toggle-list-view'\n\t\t\t),\n\t\t\tisVisualMode: getEditorMode() === 'visual',\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t\tshowIconLabels: getPreference(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\teditorCanvasView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tisDistractionFree: getPreference(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'distractionFree'\n\t\t\t),\n\t\t\thasFixedToolbar: getPreference(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'fixedToolbar'\n\t\t\t),\n\t\t};\n\t}, [] );\n\n\tconst {\n\t\t__experimentalSetPreviewDeviceType: setPreviewDeviceType,\n\t\tsetIsInserterOpened,\n\t\tsetIsListViewOpened,\n\t} = useDispatch( editSiteStore );\n\tconst { __unstableSetEditorMode } = useDispatch( blockEditorStore );\n\tconst disableMotion = useReducedMotion();\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\n\tconst toggleInserter = useCallback( () => {\n\t\tif ( isInserterOpen ) {\n\t\t\t// Focusing the inserter button should close the inserter popover.\n\t\t\t// However, there are some cases it won't close when the focus is lost.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/43090 for more details.\n\t\t\tinserterButton.current.focus();\n\t\t\tsetIsInserterOpened( false );\n\t\t} else {\n\t\t\tsetIsInserterOpened( true );\n\t\t}\n\t}, [ isInserterOpen, setIsInserterOpened ] );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\n\tconst {\n\t\tshouldShowContextualToolbar,\n\t\tcanFocusHiddenToolbar,\n\t\tfixedToolbarCanBeFocused,\n\t} = useShouldContextualToolbarShow();\n\t// If there's a block toolbar to be focused, disable the focus shortcut for the document toolbar.\n\t// There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.\n\tconst blockToolbarCanBeFocused =\n\t\tshouldShowContextualToolbar ||\n\t\tcanFocusHiddenToolbar ||\n\t\tfixedToolbarCanBeFocused;\n\n\tconst hasDefaultEditorCanvasView = ! useHasEditorCanvasContainer();\n\n\tconst isFocusMode =\n\t\ttemplateType === 'wp_template_part' || templateType === 'wp_navigation';\n\n\t/* translators: button label text should, if possible, be under 16 characters. */\n\tconst longLabel = _x(\n\t\t'Toggle block inserter',\n\t\t'Generic label for block inserter button'\n\t);\n\tconst shortLabel = ! isInserterOpen ? __( 'Add' ) : __( 'Close' );\n\n\tconst isZoomedOutViewExperimentEnabled =\n\t\twindow?.__experimentalEnableZoomedOutView && isVisualMode;\n\tconst isZoomedOutView = blockEditorMode === 'zoom-out';\n\n\tconst toolbarVariants = {\n\t\tisDistractionFree: { y: '-50px' },\n\t\tisDistractionFreeHovering: { y: 0 },\n\t\tview: { y: 0 },\n\t\tedit: { y: 0 },\n\t};\n\n\tconst toolbarTransition = {\n\t\ttype: 'tween',\n\t\tduration: disableMotion ? 0 : 0.2,\n\t\tease: 'easeOut',\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ classnames( 'edit-site-header-edit-mode', {\n\t\t\t\t'show-icon-labels': showIconLabels,\n\t\t\t} ) }\n\t\t>\n\t\t\t{ hasDefaultEditorCanvasView && (\n\t\t\t\t<NavigableToolbar\n\t\t\t\t\tas={ motion.div }\n\t\t\t\t\tclassName=\"edit-site-header-edit-mode__start\"\n\t\t\t\t\taria-label={ __( 'Document tools' ) }\n\t\t\t\t\tshouldUseKeyboardFocusShortcut={\n\t\t\t\t\t\t! blockToolbarCanBeFocused\n\t\t\t\t\t}\n\t\t\t\t\tvariants={ toolbarVariants }\n\t\t\t\t\ttransition={ toolbarTransition }\n\t\t\t\t>\n\t\t\t\t\t<div className=\"edit-site-header-edit-mode__toolbar\">\n\t\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__inserter-toggle\"\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tisPressed={ isInserterOpen }\n\t\t\t\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\t\t\t\tonClick={ toggleInserter }\n\t\t\t\t\t\t\t\tdisabled={ ! isVisualMode }\n\t\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tshowIconLabels ? shortLabel : longLabel\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ ! hasFixedToolbar && (\n\t\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\t\tas={ ToolSelector }\n\t\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\tshowIconLabels\n\t\t\t\t\t\t\t\t\t\t\t\t? 'tertiary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tdisabled={ ! isVisualMode }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\tas={ UndoButton }\n\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\tas={ RedoButton }\n\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__list-view-toggle\"\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\t! isVisualMode || isZoomedOutView\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\tshowIconLabels\n\t\t\t\t\t\t\t\t\t\t\t\t? 'tertiary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\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) }\n\t\t\t\t\t\t\t\t{ isZoomedOutViewExperimentEnabled &&\n\t\t\t\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\t\t\t\t! hasFixedToolbar && (\n\t\t\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__zoom-out-view-toggle\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ chevronUpDown }\n\t\t\t\t\t\t\t\t\t\t\tisPressed={ isZoomedOutView }\n\t\t\t\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Zoom-out View' ) }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetPreviewDeviceType(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Desktop'\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t__unstableSetEditorMode(\n\t\t\t\t\t\t\t\t\t\t\t\t\tisZoomedOutView\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'edit'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'zoom-out'\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} }\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</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t</NavigableToolbar>\n\t\t\t) }\n\n\t\t\t{ ! isDistractionFree && (\n\t\t\t\t<div className=\"edit-site-header-edit-mode__center\">\n\t\t\t\t\t{ ! hasDefaultEditorCanvasView ? (\n\t\t\t\t\t\tgetEditorCanvasContainerTitle( editorCanvasView )\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<DocumentActions />\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t<div className=\"edit-site-header-edit-mode__end\">\n\t\t\t\t<motion.div\n\t\t\t\t\tclassName=\"edit-site-header-edit-mode__actions\"\n\t\t\t\t\tvariants={ toolbarVariants }\n\t\t\t\t\ttransition={ toolbarTransition }\n\t\t\t\t>\n\t\t\t\t\t{ ! isFocusMode && hasDefaultEditorCanvasView && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-header-edit-mode__preview-options',\n\t\t\t\t\t\t\t\t{ 'is-zoomed-out': isZoomedOutView }\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<PreviewOptions\n\t\t\t\t\t\t\t\tdeviceType={ deviceType }\n\t\t\t\t\t\t\t\tsetDeviceType={ setPreviewDeviceType }\n\t\t\t\t\t\t\t\tlabel={ __( 'View' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'View site' ) }\n\t\t\t\t\t\t\t\t\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t/* translators: accessibility text */\n\t\t\t\t\t\t\t\t\t\t\t\t\t__( '(opens in a new tab)' )\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</VisuallyHidden>\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</PreviewOptions>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t\t<SaveButton />\n\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t<PinnedItems.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t) }\n\t\t\t\t\t<MoreMenu showIconLabels={ showIconLabels } />\n\t\t\t\t</motion.div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","useCallback","useRef","useViewportMatch","useReducedMotion","store","coreStore","ToolSelector","__experimentalPreviewOptions","PreviewOptions","NavigableToolbar","blockEditorStore","privateApis","blockEditorPrivateApis","useSelect","useDispatch","PinnedItems","_x","__","listView","plus","external","chevronUpDown","__unstableMotion","motion","Button","ToolbarItem","MenuGroup","MenuItem","VisuallyHidden","keyboardShortcutsStore","preferencesStore","MoreMenu","SaveButton","UndoButton","RedoButton","DocumentActions","editSiteStore","getEditorCanvasContainerTitle","useHasEditorCanvasContainer","unlock","FOCUSABLE_ENTITIES","useShouldContextualToolbarShow","preventDefault","event","HeaderEditMode","inserterButton","deviceType","templateType","isInserterOpen","isListViewOpen","listViewShortcut","isVisualMode","isDistractionFree","blockEditorMode","homeUrl","showIconLabels","editorCanvasView","hasFixedToolbar","select","__experimentalGetPreviewDeviceType","getEditedPostType","isInserterOpened","isListViewOpened","getEditorMode","getShortcutRepresentation","__unstableGetEditorMode","postType","getUnstableBase","get","getPreference","home","name","getEditorCanvasContainerView","__experimentalSetPreviewDeviceType","setPreviewDeviceType","setIsInserterOpened","setIsListViewOpened","__unstableSetEditorMode","disableMotion","isLargeViewport","toggleInserter","current","focus","toggleListView","shouldShowContextualToolbar","canFocusHiddenToolbar","fixedToolbarCanBeFocused","blockToolbarCanBeFocused","hasDefaultEditorCanvasView","isFocusMode","includes","longLabel","shortLabel","isZoomedOutViewExperimentEnabled","window","__experimentalEnableZoomedOutView","isZoomedOutView","toolbarVariants","y","isDistractionFreeHovering","view","edit","toolbarTransition","type","duration","ease","createElement","className","as","div","shouldUseKeyboardFocusShortcut","variants","transition","ref","variant","isPressed","onMouseDown","onClick","disabled","icon","label","showTooltip","Fragment","undefined","shortcut","setDeviceType","isEnabled","onClose","href","target","Slot","scope"],"sources":["@wordpress/edit-site/src/components/header-edit-mode/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useRef } from '@wordpress/element';\nimport { useViewportMatch, useReducedMotion } from '@wordpress/compose';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tToolSelector,\n\t__experimentalPreviewOptions as PreviewOptions,\n\tNavigableToolbar,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { PinnedItems } from '@wordpress/interface';\nimport { _x, __ } from '@wordpress/i18n';\nimport { listView, plus, external, chevronUpDown } from '@wordpress/icons';\nimport {\n\t__unstableMotion as motion,\n\tButton,\n\tToolbarItem,\n\tMenuGroup,\n\tMenuItem,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport MoreMenu from './more-menu';\nimport SaveButton from '../save-button';\nimport UndoButton from './undo-redo/undo';\nimport RedoButton from './undo-redo/redo';\nimport DocumentActions from './document-actions';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tgetEditorCanvasContainerTitle,\n\tuseHasEditorCanvasContainer,\n} from '../editor-canvas-container';\nimport { unlock } from '../../lock-unlock';\nimport { FOCUSABLE_ENTITIES } from '../../utils/constants';\n\nconst { useShouldContextualToolbarShow } = unlock( blockEditorPrivateApis );\n\nconst preventDefault = ( event ) => {\n\tevent.preventDefault();\n};\n\nexport default function HeaderEditMode() {\n\tconst inserterButton = useRef();\n\tconst {\n\t\tdeviceType,\n\t\ttemplateType,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tlistViewShortcut,\n\t\tisVisualMode,\n\t\tisDistractionFree,\n\t\tblockEditorMode,\n\t\thomeUrl,\n\t\tshowIconLabels,\n\t\teditorCanvasView,\n\t\thasFixedToolbar,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t\tgetEditedPostType,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t\tgetEditorMode,\n\t\t} = select( editSiteStore );\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\n\t\tconst postType = getEditedPostType();\n\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\tconst { get: getPreference } = select( preferencesStore );\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\ttemplateType: postType,\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tlistViewShortcut: getShortcutRepresentation(\n\t\t\t\t'core/edit-site/toggle-list-view'\n\t\t\t),\n\t\t\tisVisualMode: getEditorMode() === 'visual',\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t\tshowIconLabels: getPreference(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\teditorCanvasView: unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t).getEditorCanvasContainerView(),\n\t\t\tisDistractionFree: getPreference(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'distractionFree'\n\t\t\t),\n\t\t\thasFixedToolbar: getPreference(\n\t\t\t\teditSiteStore.name,\n\t\t\t\t'fixedToolbar'\n\t\t\t),\n\t\t};\n\t}, [] );\n\n\tconst {\n\t\t__experimentalSetPreviewDeviceType: setPreviewDeviceType,\n\t\tsetIsInserterOpened,\n\t\tsetIsListViewOpened,\n\t} = useDispatch( editSiteStore );\n\tconst { __unstableSetEditorMode } = useDispatch( blockEditorStore );\n\tconst disableMotion = useReducedMotion();\n\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\n\tconst toggleInserter = useCallback( () => {\n\t\tif ( isInserterOpen ) {\n\t\t\t// Focusing the inserter button should close the inserter popover.\n\t\t\t// However, there are some cases it won't close when the focus is lost.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/43090 for more details.\n\t\t\tinserterButton.current.focus();\n\t\t\tsetIsInserterOpened( false );\n\t\t} else {\n\t\t\tsetIsInserterOpened( true );\n\t\t}\n\t}, [ isInserterOpen, setIsInserterOpened ] );\n\n\tconst toggleListView = useCallback(\n\t\t() => setIsListViewOpened( ! isListViewOpen ),\n\t\t[ setIsListViewOpened, isListViewOpen ]\n\t);\n\n\tconst {\n\t\tshouldShowContextualToolbar,\n\t\tcanFocusHiddenToolbar,\n\t\tfixedToolbarCanBeFocused,\n\t} = useShouldContextualToolbarShow();\n\t// If there's a block toolbar to be focused, disable the focus shortcut for the document toolbar.\n\t// There's a fixed block toolbar when the fixed toolbar option is enabled or when the browser width is less than the large viewport.\n\tconst blockToolbarCanBeFocused =\n\t\tshouldShowContextualToolbar ||\n\t\tcanFocusHiddenToolbar ||\n\t\tfixedToolbarCanBeFocused;\n\n\tconst hasDefaultEditorCanvasView = ! useHasEditorCanvasContainer();\n\n\tconst isFocusMode = FOCUSABLE_ENTITIES.includes( templateType );\n\n\t/* translators: button label text should, if possible, be under 16 characters. */\n\tconst longLabel = _x(\n\t\t'Toggle block inserter',\n\t\t'Generic label for block inserter button'\n\t);\n\tconst shortLabel = ! isInserterOpen ? __( 'Add' ) : __( 'Close' );\n\n\tconst isZoomedOutViewExperimentEnabled =\n\t\twindow?.__experimentalEnableZoomedOutView && isVisualMode;\n\tconst isZoomedOutView = blockEditorMode === 'zoom-out';\n\n\tconst toolbarVariants = {\n\t\tisDistractionFree: { y: '-50px' },\n\t\tisDistractionFreeHovering: { y: 0 },\n\t\tview: { y: 0 },\n\t\tedit: { y: 0 },\n\t};\n\n\tconst toolbarTransition = {\n\t\ttype: 'tween',\n\t\tduration: disableMotion ? 0 : 0.2,\n\t\tease: 'easeOut',\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ classnames( 'edit-site-header-edit-mode', {\n\t\t\t\t'show-icon-labels': showIconLabels,\n\t\t\t} ) }\n\t\t>\n\t\t\t{ hasDefaultEditorCanvasView && (\n\t\t\t\t<NavigableToolbar\n\t\t\t\t\tas={ motion.div }\n\t\t\t\t\tclassName=\"edit-site-header-edit-mode__start\"\n\t\t\t\t\taria-label={ __( 'Document tools' ) }\n\t\t\t\t\tshouldUseKeyboardFocusShortcut={\n\t\t\t\t\t\t! blockToolbarCanBeFocused\n\t\t\t\t\t}\n\t\t\t\t\tvariants={ toolbarVariants }\n\t\t\t\t\ttransition={ toolbarTransition }\n\t\t\t\t>\n\t\t\t\t\t<div className=\"edit-site-header-edit-mode__toolbar\">\n\t\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\tref={ inserterButton }\n\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__inserter-toggle\"\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tisPressed={ isInserterOpen }\n\t\t\t\t\t\t\t\tonMouseDown={ preventDefault }\n\t\t\t\t\t\t\t\tonClick={ toggleInserter }\n\t\t\t\t\t\t\t\tdisabled={ ! isVisualMode }\n\t\t\t\t\t\t\t\ticon={ plus }\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tshowIconLabels ? shortLabel : longLabel\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\taria-expanded={ isInserterOpen }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isLargeViewport && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ ! hasFixedToolbar && (\n\t\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\t\tas={ ToolSelector }\n\t\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\tshowIconLabels\n\t\t\t\t\t\t\t\t\t\t\t\t? 'tertiary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tdisabled={ ! isVisualMode }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\tas={ UndoButton }\n\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\tas={ RedoButton }\n\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\tshowIconLabels ? 'tertiary' : undefined\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__list-view-toggle\"\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\t! isVisualMode || isZoomedOutView\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ticon={ listView }\n\t\t\t\t\t\t\t\t\t\tisPressed={ isListViewOpen }\n\t\t\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'List View' ) }\n\t\t\t\t\t\t\t\t\t\tonClick={ toggleListView }\n\t\t\t\t\t\t\t\t\t\tshortcut={ listViewShortcut }\n\t\t\t\t\t\t\t\t\t\tshowTooltip={ ! showIconLabels }\n\t\t\t\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\t\t\t\tshowIconLabels\n\t\t\t\t\t\t\t\t\t\t\t\t? 'tertiary'\n\t\t\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\taria-expanded={ isListViewOpen }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ isZoomedOutViewExperimentEnabled &&\n\t\t\t\t\t\t\t\t\t! isDistractionFree &&\n\t\t\t\t\t\t\t\t\t! hasFixedToolbar && (\n\t\t\t\t\t\t\t\t\t\t<ToolbarItem\n\t\t\t\t\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-header-edit-mode__zoom-out-view-toggle\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ chevronUpDown }\n\t\t\t\t\t\t\t\t\t\t\tisPressed={ isZoomedOutView }\n\t\t\t\t\t\t\t\t\t\t\t/* translators: button label text should, if possible, be under 16 characters. */\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Zoom-out View' ) }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetPreviewDeviceType(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Desktop'\n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t__unstableSetEditorMode(\n\t\t\t\t\t\t\t\t\t\t\t\t\tisZoomedOutView\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? 'edit'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 'zoom-out'\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} }\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</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</div>\n\t\t\t\t</NavigableToolbar>\n\t\t\t) }\n\n\t\t\t{ ! isDistractionFree && (\n\t\t\t\t<div className=\"edit-site-header-edit-mode__center\">\n\t\t\t\t\t{ ! hasDefaultEditorCanvasView ? (\n\t\t\t\t\t\tgetEditorCanvasContainerTitle( editorCanvasView )\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<DocumentActions />\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t<div className=\"edit-site-header-edit-mode__end\">\n\t\t\t\t<motion.div\n\t\t\t\t\tclassName=\"edit-site-header-edit-mode__actions\"\n\t\t\t\t\tvariants={ toolbarVariants }\n\t\t\t\t\ttransition={ toolbarTransition }\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'edit-site-header-edit-mode__preview-options',\n\t\t\t\t\t\t\t{ 'is-zoomed-out': isZoomedOutView }\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<PreviewOptions\n\t\t\t\t\t\t\tdeviceType={ deviceType }\n\t\t\t\t\t\t\tsetDeviceType={ setPreviewDeviceType }\n\t\t\t\t\t\t\tlabel={ __( 'View' ) }\n\t\t\t\t\t\t\tisEnabled={\n\t\t\t\t\t\t\t\t! isFocusMode && hasDefaultEditorCanvasView\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\thref={ homeUrl }\n\t\t\t\t\t\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\t\t\t\t\t\ticon={ external }\n\t\t\t\t\t\t\t\t\t\tonClick={ onClose }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'View site' ) }\n\t\t\t\t\t\t\t\t\t\t<VisuallyHidden as=\"span\">\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t/* translators: accessibility text */\n\t\t\t\t\t\t\t\t\t\t\t\t__( '(opens in a new tab)' )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</PreviewOptions>\n\t\t\t\t\t</div>\n\t\t\t\t\t<SaveButton />\n\t\t\t\t\t{ ! isDistractionFree && (\n\t\t\t\t\t\t<PinnedItems.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t) }\n\t\t\t\t\t<MoreMenu showIconLabels={ showIconLabels } />\n\t\t\t\t</motion.div>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -18,28 +18,26 @@ export default function CopyContentMenuItem() {
|
|
|
18
18
|
const {
|
|
19
19
|
createNotice
|
|
20
20
|
} = useDispatch(noticesStore);
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
if (record) {
|
|
32
|
-
if (typeof record.content === 'function') {
|
|
33
|
-
return record.content(record);
|
|
34
|
-
} else if (record.blocks) {
|
|
35
|
-
return __unstableSerializeAndClean(record.blocks);
|
|
36
|
-
} else if (record.content) {
|
|
37
|
-
return record.content;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
21
|
+
const {
|
|
22
|
+
getEditedPostId,
|
|
23
|
+
getEditedPostType
|
|
24
|
+
} = useSelect(editSiteStore);
|
|
25
|
+
const {
|
|
26
|
+
getEditedEntityRecord
|
|
27
|
+
} = useSelect(coreStore);
|
|
28
|
+
function getText() {
|
|
29
|
+
const record = getEditedEntityRecord('postType', getEditedPostType(), getEditedPostId());
|
|
30
|
+
if (!record) {
|
|
40
31
|
return '';
|
|
41
|
-
}
|
|
42
|
-
|
|
32
|
+
}
|
|
33
|
+
if (typeof record.content === 'function') {
|
|
34
|
+
return record.content(record);
|
|
35
|
+
} else if (record.blocks) {
|
|
36
|
+
return __unstableSerializeAndClean(record.blocks);
|
|
37
|
+
} else if (record.content) {
|
|
38
|
+
return record.content;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
43
41
|
function onSuccess() {
|
|
44
42
|
createNotice('info', __('All content copied.'), {
|
|
45
43
|
isDismissible: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MenuItem","useSelect","useDispatch","__","useCopyToClipboard","store","noticesStore","coreStore","__unstableSerializeAndClean","editSiteStore","CopyContentMenuItem","createNotice","
|
|
1
|
+
{"version":3,"names":["MenuItem","useSelect","useDispatch","__","useCopyToClipboard","store","noticesStore","coreStore","__unstableSerializeAndClean","editSiteStore","CopyContentMenuItem","createNotice","getEditedPostId","getEditedPostType","getEditedEntityRecord","getText","record","content","blocks","onSuccess","isDismissible","type","ref","createElement"],"sources":["@wordpress/edit-site/src/components/header-edit-mode/more-menu/copy-content-menu-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { MenuItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../../store';\n\nexport default function CopyContentMenuItem() {\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst { getEditedPostId, getEditedPostType } = useSelect( editSiteStore );\n\tconst { getEditedEntityRecord } = useSelect( coreStore );\n\n\tfunction getText() {\n\t\tconst record = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tgetEditedPostType(),\n\t\t\tgetEditedPostId()\n\t\t);\n\t\tif ( ! record ) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif ( typeof record.content === 'function' ) {\n\t\t\treturn record.content( record );\n\t\t} else if ( record.blocks ) {\n\t\t\treturn __unstableSerializeAndClean( record.blocks );\n\t\t} else if ( record.content ) {\n\t\t\treturn record.content;\n\t\t}\n\t}\n\n\tfunction onSuccess() {\n\t\tcreateNotice( 'info', __( 'All content copied.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}\n\n\tconst ref = useCopyToClipboard( getText, onSuccess );\n\n\treturn <MenuItem ref={ ref }>{ __( 'Copy all blocks' ) }</MenuItem>;\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,kBAAkB,QAAQ,oBAAoB;AACvD,SAASC,KAAK,IAAIC,YAAY,QAAQ,oBAAoB;AAC1D,SAASD,KAAK,IAAIE,SAAS,QAAQ,sBAAsB;AACzD,SAASC,2BAA2B,QAAQ,mBAAmB;;AAE/D;AACA;AACA;AACA,SAASH,KAAK,IAAII,aAAa,QAAQ,gBAAgB;AAEvD,eAAe,SAASC,mBAAmBA,CAAA,EAAG;EAC7C,MAAM;IAAEC;EAAa,CAAC,GAAGT,WAAW,CAAEI,YAAa,CAAC;EACpD,MAAM;IAAEM,eAAe;IAAEC;EAAkB,CAAC,GAAGZ,SAAS,CAAEQ,aAAc,CAAC;EACzE,MAAM;IAAEK;EAAsB,CAAC,GAAGb,SAAS,CAAEM,SAAU,CAAC;EAExD,SAASQ,OAAOA,CAAA,EAAG;IAClB,MAAMC,MAAM,GAAGF,qBAAqB,CACnC,UAAU,EACVD,iBAAiB,CAAC,CAAC,EACnBD,eAAe,CAAC,CACjB,CAAC;IACD,IAAK,CAAEI,MAAM,EAAG;MACf,OAAO,EAAE;IACV;IAEA,IAAK,OAAOA,MAAM,CAACC,OAAO,KAAK,UAAU,EAAG;MAC3C,OAAOD,MAAM,CAACC,OAAO,CAAED,MAAO,CAAC;IAChC,CAAC,MAAM,IAAKA,MAAM,CAACE,MAAM,EAAG;MAC3B,OAAOV,2BAA2B,CAAEQ,MAAM,CAACE,MAAO,CAAC;IACpD,CAAC,MAAM,IAAKF,MAAM,CAACC,OAAO,EAAG;MAC5B,OAAOD,MAAM,CAACC,OAAO;IACtB;EACD;EAEA,SAASE,SAASA,CAAA,EAAG;IACpBR,YAAY,CAAE,MAAM,EAAER,EAAE,CAAE,qBAAsB,CAAC,EAAE;MAClDiB,aAAa,EAAE,IAAI;MACnBC,IAAI,EAAE;IACP,CAAE,CAAC;EACJ;EAEA,MAAMC,GAAG,GAAGlB,kBAAkB,CAAEW,OAAO,EAAEI,SAAU,CAAC;EAEpD,OAAOI,aAAA,CAACvB,QAAQ;IAACsB,GAAG,EAAGA;EAAK,GAAGnB,EAAE,CAAE,iBAAkB,CAAa,CAAC;AACpE"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { __ } from '@wordpress/i18n';
|
|
5
4
|
import { useShortcut } from '@wordpress/keyboard-shortcuts';
|
|
6
5
|
import { useDispatch, useSelect } from '@wordpress/data';
|
|
7
6
|
import { store as coreStore } from '@wordpress/core-data';
|
|
8
7
|
import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
9
8
|
import { store as interfaceStore } from '@wordpress/interface';
|
|
10
9
|
import { createBlock } from '@wordpress/blocks';
|
|
11
|
-
import { store as preferencesStore } from '@wordpress/preferences';
|
|
12
|
-
import { store as noticesStore } from '@wordpress/notices';
|
|
13
10
|
|
|
14
11
|
/**
|
|
15
12
|
* Internal dependencies
|
|
@@ -30,8 +27,7 @@ function KeyboardShortcutsEditMode() {
|
|
|
30
27
|
const {
|
|
31
28
|
setIsListViewOpened,
|
|
32
29
|
switchEditorMode,
|
|
33
|
-
|
|
34
|
-
closeGeneralSidebar
|
|
30
|
+
toggleDistractionFree
|
|
35
31
|
} = useDispatch(editSiteStore);
|
|
36
32
|
const {
|
|
37
33
|
enableComplementaryArea,
|
|
@@ -45,22 +41,6 @@ function KeyboardShortcutsEditMode() {
|
|
|
45
41
|
getSelectedBlockClientId,
|
|
46
42
|
getBlockAttributes
|
|
47
43
|
} = useSelect(blockEditorStore);
|
|
48
|
-
const {
|
|
49
|
-
get: getPreference
|
|
50
|
-
} = useSelect(preferencesStore);
|
|
51
|
-
const {
|
|
52
|
-
set: setPreference,
|
|
53
|
-
toggle
|
|
54
|
-
} = useDispatch(preferencesStore);
|
|
55
|
-
const {
|
|
56
|
-
createInfoNotice
|
|
57
|
-
} = useDispatch(noticesStore);
|
|
58
|
-
const toggleDistractionFree = () => {
|
|
59
|
-
setPreference('core/edit-site', 'fixedToolbar', false);
|
|
60
|
-
setIsInserterOpened(false);
|
|
61
|
-
setIsListViewOpened(false);
|
|
62
|
-
closeGeneralSidebar();
|
|
63
|
-
};
|
|
64
44
|
const handleTextLevelShortcut = (event, level) => {
|
|
65
45
|
event.preventDefault();
|
|
66
46
|
const destinationBlockName = level === 0 ? 'core/paragraph' : 'core/heading';
|
|
@@ -121,11 +101,6 @@ function KeyboardShortcutsEditMode() {
|
|
|
121
101
|
});
|
|
122
102
|
useShortcut('core/edit-site/toggle-distraction-free', () => {
|
|
123
103
|
toggleDistractionFree();
|
|
124
|
-
toggle('core/edit-site', 'distractionFree');
|
|
125
|
-
createInfoNotice(getPreference('core/edit-site', 'distractionFree') ? __('Distraction free mode turned on.') : __('Distraction free mode turned off.'), {
|
|
126
|
-
id: 'core/edit-site/distraction-free-mode/notice',
|
|
127
|
-
type: 'snackbar'
|
|
128
|
-
});
|
|
129
104
|
});
|
|
130
105
|
return null;
|
|
131
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["useShortcut","useDispatch","useSelect","store","coreStore","blockEditorStore","interfaceStore","createBlock","editSiteStore","SIDEBAR_BLOCK","STORE_NAME","KeyboardShortcutsEditMode","getEditorMode","isListViewOpen","select","isListViewOpened","isBlockInspectorOpen","getActiveComplementaryArea","name","redo","undo","setIsListViewOpened","switchEditorMode","toggleDistractionFree","enableComplementaryArea","disableComplementaryArea","replaceBlocks","getBlockName","getSelectedBlockClientId","getBlockAttributes","handleTextLevelShortcut","event","level","preventDefault","destinationBlockName","currentClientId","blockName","attributes","textAlign","destinationTextAlign","content","forEach"],"sources":["@wordpress/edit-site/src/components/keyboard-shortcuts/edit-mode.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useShortcut } from '@wordpress/keyboard-shortcuts';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { createBlock } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { SIDEBAR_BLOCK } from '../sidebar-edit-mode/constants';\nimport { STORE_NAME } from '../../store/constants';\n\nfunction KeyboardShortcutsEditMode() {\n\tconst { getEditorMode } = useSelect( editSiteStore );\n\tconst isListViewOpen = useSelect(\n\t\t( select ) => select( editSiteStore ).isListViewOpened(),\n\t\t[]\n\t);\n\tconst isBlockInspectorOpen = useSelect(\n\t\t( select ) =>\n\t\t\tselect( interfaceStore ).getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t) === SIDEBAR_BLOCK,\n\t\t[]\n\t);\n\tconst { redo, undo } = useDispatch( coreStore );\n\tconst { setIsListViewOpened, switchEditorMode, toggleDistractionFree } =\n\t\tuseDispatch( editSiteStore );\n\tconst { enableComplementaryArea, disableComplementaryArea } =\n\t\tuseDispatch( interfaceStore );\n\n\tconst { replaceBlocks } = useDispatch( blockEditorStore );\n\tconst { getBlockName, getSelectedBlockClientId, getBlockAttributes } =\n\t\tuseSelect( blockEditorStore );\n\n\tconst handleTextLevelShortcut = ( event, level ) => {\n\t\tevent.preventDefault();\n\t\tconst destinationBlockName =\n\t\t\tlevel === 0 ? 'core/paragraph' : 'core/heading';\n\t\tconst currentClientId = getSelectedBlockClientId();\n\t\tif ( currentClientId === null ) {\n\t\t\treturn;\n\t\t}\n\t\tconst blockName = getBlockName( currentClientId );\n\t\tif ( blockName !== 'core/paragraph' && blockName !== 'core/heading' ) {\n\t\t\treturn;\n\t\t}\n\t\tconst attributes = getBlockAttributes( currentClientId );\n\t\tconst textAlign =\n\t\t\tblockName === 'core/paragraph' ? 'align' : 'textAlign';\n\t\tconst destinationTextAlign =\n\t\t\tdestinationBlockName === 'core/paragraph' ? 'align' : 'textAlign';\n\n\t\treplaceBlocks(\n\t\t\tcurrentClientId,\n\t\t\tcreateBlock( destinationBlockName, {\n\t\t\t\tlevel,\n\t\t\t\tcontent: attributes.content,\n\t\t\t\t...{ [ destinationTextAlign ]: attributes[ textAlign ] },\n\t\t\t} )\n\t\t);\n\t};\n\n\tuseShortcut( 'core/edit-site/undo', ( event ) => {\n\t\tundo();\n\t\tevent.preventDefault();\n\t} );\n\n\tuseShortcut( 'core/edit-site/redo', ( event ) => {\n\t\tredo();\n\t\tevent.preventDefault();\n\t} );\n\n\t// Only opens the list view. Other functionality for this shortcut happens in the rendered sidebar.\n\tuseShortcut( 'core/edit-site/toggle-list-view', () => {\n\t\tif ( isListViewOpen ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsListViewOpened( true );\n\t} );\n\n\tuseShortcut( 'core/edit-site/toggle-block-settings-sidebar', ( event ) => {\n\t\t// This shortcut has no known clashes, but use preventDefault to prevent any\n\t\t// obscure shortcuts from triggering.\n\t\tevent.preventDefault();\n\n\t\tif ( isBlockInspectorOpen ) {\n\t\t\tdisableComplementaryArea( STORE_NAME );\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t}\n\t} );\n\n\tuseShortcut( 'core/edit-site/toggle-mode', () => {\n\t\tswitchEditorMode( getEditorMode() === 'visual' ? 'text' : 'visual' );\n\t} );\n\n\tuseShortcut( 'core/edit-site/transform-heading-to-paragraph', ( event ) =>\n\t\thandleTextLevelShortcut( event, 0 )\n\t);\n\n\t[ 1, 2, 3, 4, 5, 6 ].forEach( ( level ) => {\n\t\t//the loop is based off on a constant therefore\n\t\t//the hook will execute the same way every time\n\t\t//eslint-disable-next-line react-hooks/rules-of-hooks\n\t\tuseShortcut(\n\t\t\t`core/edit-site/transform-paragraph-to-heading-${ level }`,\n\t\t\t( event ) => handleTextLevelShortcut( event, level )\n\t\t);\n\t} );\n\n\tuseShortcut( 'core/edit-site/toggle-distraction-free', () => {\n\t\ttoggleDistractionFree();\n\t} );\n\n\treturn null;\n}\n\nexport default KeyboardShortcutsEditMode;\n"],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import { Button, __experimentalConfirmDialog as ConfirmDialog, DropdownMenu, Men
|
|
|
12
12
|
import { useDispatch } from '@wordpress/data';
|
|
13
13
|
import { useState, useId, memo } from '@wordpress/element';
|
|
14
14
|
import { __, sprintf } from '@wordpress/i18n';
|
|
15
|
-
import { Icon, header, footer, symbolFilled as uncategorized, symbol,
|
|
15
|
+
import { Icon, header, footer, symbolFilled as uncategorized, symbol, moreVertical, lockSmall } from '@wordpress/icons';
|
|
16
16
|
import { store as noticesStore } from '@wordpress/notices';
|
|
17
17
|
import { store as reusableBlocksStore } from '@wordpress/reusable-blocks';
|
|
18
18
|
|
|
@@ -156,7 +156,7 @@ function GridItem({
|
|
|
156
156
|
icon: lockSmall,
|
|
157
157
|
size: 24
|
|
158
158
|
}))))), createElement(DropdownMenu, {
|
|
159
|
-
icon:
|
|
159
|
+
icon: moreVertical,
|
|
160
160
|
label: __('Actions'),
|
|
161
161
|
className: "edit-site-patterns__dropdown",
|
|
162
162
|
popoverProps: {
|
|
@@ -164,7 +164,6 @@ function GridItem({
|
|
|
164
164
|
},
|
|
165
165
|
toggleProps: {
|
|
166
166
|
className: 'edit-site-patterns__button',
|
|
167
|
-
isSmall: true,
|
|
168
167
|
describedBy: sprintf( /* translators: %s: pattern name */
|
|
169
168
|
__('Action menu for %s pattern'), item.title)
|
|
170
169
|
}
|
|
@@ -179,6 +178,7 @@ function GridItem({
|
|
|
179
178
|
onClose: onClose,
|
|
180
179
|
label: isNonUserPattern ? __('Copy to My patterns') : __('Duplicate')
|
|
181
180
|
}), isCustomPattern && createElement(MenuItem, {
|
|
181
|
+
isDestructive: !hasThemeFile,
|
|
182
182
|
onClick: () => setIsDeleteDialogOpen(true)
|
|
183
183
|
}, hasThemeFile ? __('Clear customizations') : __('Delete'))))), isDeleteDialogOpen && createElement(ConfirmDialog, {
|
|
184
184
|
confirmButtonText: confirmButtonText,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","BlockPreview","Button","__experimentalConfirmDialog","ConfirmDialog","DropdownMenu","MenuGroup","MenuItem","__experimentalHeading","Heading","__experimentalHStack","HStack","Tooltip","Flex","useDispatch","useState","useId","memo","__","sprintf","Icon","header","footer","symbolFilled","uncategorized","symbol","moreHorizontal","lockSmall","store","noticesStore","reusableBlocksStore","RenameMenuItem","DuplicateMenuItem","PATTERNS","TEMPLATE_PARTS","USER_PATTERNS","SYNC_TYPES","editSiteStore","useLink","templatePartIcons","GridItem","categoryId","item","props","descriptionId","isDeleteDialogOpen","setIsDeleteDialogOpen","removeTemplate","__experimentalDeleteReusableBlock","createErrorNotice","createSuccessNotice","isUserPattern","type","isNonUserPattern","isTemplatePart","onClick","postType","postId","id","name","categoryType","isEmpty","blocks","length","patternClassNames","previewClassNames","deletePattern","title","error","errorMessage","message","code","deleteItem","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","ariaDescriptions","push","description","itemIcon","syncStatus","full","undefined","confirmButtonText","confirmPrompt","createElement","className","map","_","index","join","ariaDescription","key","hidden","justify","alignment","spacing","position","text","icon","as","gap","level","variant","tabIndex","size","label","popoverProps","placement","toggleProps","isSmall","describedBy","onClose","onConfirm","onCancel"],"sources":["@wordpress/edit-site/src/components/page-patterns/grid-item.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { BlockPreview } from '@wordpress/block-editor';\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalHeading as Heading,\n\t__experimentalHStack as HStack,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useId, memo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tmoreHorizontal,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\n\n/**\n * Internal dependencies\n */\nimport RenameMenuItem from './rename-menu-item';\nimport DuplicateMenuItem from './duplicate-menu-item';\nimport { PATTERNS, TEMPLATE_PARTS, USER_PATTERNS, SYNC_TYPES } from './utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\n\nconst templatePartIcons = { header, footer, uncategorized };\n\nfunction GridItem( { categoryId, item, ...props } ) {\n\tconst descriptionId = useId();\n\tconst [ isDeleteDialogOpen, setIsDeleteDialogOpen ] = useState( false );\n\n\tconst { removeTemplate } = useDispatch( editSiteStore );\n\tconst { __experimentalDeleteReusableBlock } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst isUserPattern = item.type === USER_PATTERNS;\n\tconst isNonUserPattern = item.type === PATTERNS;\n\tconst isTemplatePart = item.type === TEMPLATE_PARTS;\n\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: item.type,\n\t} );\n\n\tconst isEmpty = ! item.blocks?.length;\n\tconst patternClassNames = classnames( 'edit-site-patterns__pattern', {\n\t\t'is-placeholder': isEmpty,\n\t} );\n\tconst previewClassNames = classnames( 'edit-site-patterns__preview', {\n\t\t'is-inactive': isNonUserPattern,\n\t} );\n\n\tconst deletePattern = async () => {\n\t\ttry {\n\t\t\tawait __experimentalDeleteReusableBlock( item.id );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The pattern's title e.g. 'Call to action'.\n\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while deleting the pattern.' );\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'edit-site-patterns-error',\n\t\t\t} );\n\t\t}\n\t};\n\tconst deleteItem = () =>\n\t\tisTemplatePart ? removeTemplate( item ) : deletePattern();\n\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\tconst ariaDescriptions = [];\n\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tif ( isNonUserPattern ) {\n\t\tariaDescriptions.push(\n\t\t\t__( 'Theme & plugin patterns cannot be edited.' )\n\t\t);\n\t}\n\n\tconst itemIcon =\n\t\ttemplatePartIcons[ categoryId ] ||\n\t\t( item.syncStatus === SYNC_TYPES.full ? symbol : undefined );\n\n\tconst confirmButtonText = hasThemeFile ? __( 'Clear' ) : __( 'Delete' );\n\tconst confirmPrompt = hasThemeFile\n\t\t? __( 'Are you sure you want to clear these customizations?' )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: The pattern or template part's title e.g. 'Call to action'.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\titem.title\n\t\t );\n\n\treturn (\n\t\t<li className={ patternClassNames }>\n\t\t\t<button\n\t\t\t\tclassName={ previewClassNames }\n\t\t\t\t// Even though still incomplete, passing ids helps performance.\n\t\t\t\t// @see https://reakit.io/docs/composite/#performance.\n\t\t\t\tid={ `edit-site-patterns-${ item.name }` }\n\t\t\t\t{ ...props }\n\t\t\t\tonClick={ item.type !== PATTERNS ? onClick : undefined }\n\t\t\t\taria-disabled={ item.type !== PATTERNS ? 'false' : 'true' }\n\t\t\t\taria-label={ item.title }\n\t\t\t\taria-describedby={\n\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ isEmpty && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && <BlockPreview blocks={ item.blocks } /> }\n\t\t\t</button>\n\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\thidden\n\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t>\n\t\t\t\t\t{ ariaDescription }\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t\t<HStack\n\t\t\t\tclassName=\"edit-site-patterns__footer\"\n\t\t\t\tjustify=\"space-between\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\tspacing={ 3 }\n\t\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t\t>\n\t\t\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t) }\n\t\t\t\t\t<Flex as=\"span\" gap={ 0 } justify=\"left\">\n\t\t\t\t\t\t{ item.type === PATTERNS ? (\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<Heading level={ 5 }>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ item.title }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ item.type === PATTERNS && (\n\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<span className=\"edit-site-patterns__pattern-lock-icon\">\n\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t</HStack>\n\t\t\t\t<DropdownMenu\n\t\t\t\t\ticon={ moreHorizontal }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tclassName=\"edit-site-patterns__dropdown\"\n\t\t\t\t\tpopoverProps={ { placement: 'bottom-end' } }\n\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\tisSmall: true,\n\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: pattern name */\n\t\t\t\t\t\t\t__( 'Action menu for %s pattern' ),\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ isCustomPattern && ! hasThemeFile && (\n\t\t\t\t\t\t\t\t<RenameMenuItem\n\t\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\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<DuplicateMenuItem\n\t\t\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tisNonUserPattern\n\t\t\t\t\t\t\t\t\t\t? __( 'Copy to My patterns' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Duplicate' )\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{ isCustomPattern && (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsDeleteDialogOpen( true )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasThemeFile\n\t\t\t\t\t\t\t\t\t\t? __( 'Clear customizations' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Delete' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t</HStack>\n\n\t\t\t{ isDeleteDialogOpen && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tconfirmButtonText={ confirmButtonText }\n\t\t\t\t\tonConfirm={ deleteItem }\n\t\t\t\t\tonCancel={ () => setIsDeleteDialogOpen( false ) }\n\t\t\t\t>\n\t\t\t\t\t{ confirmPrompt }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</li>\n\t);\n}\n\nexport default memo( GridItem );\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","BlockPreview","Button","__experimentalConfirmDialog","ConfirmDialog","DropdownMenu","MenuGroup","MenuItem","__experimentalHeading","Heading","__experimentalHStack","HStack","Tooltip","Flex","useDispatch","useState","useId","memo","__","sprintf","Icon","header","footer","symbolFilled","uncategorized","symbol","moreVertical","lockSmall","store","noticesStore","reusableBlocksStore","RenameMenuItem","DuplicateMenuItem","PATTERNS","TEMPLATE_PARTS","USER_PATTERNS","SYNC_TYPES","editSiteStore","useLink","templatePartIcons","GridItem","categoryId","item","props","descriptionId","isDeleteDialogOpen","setIsDeleteDialogOpen","removeTemplate","__experimentalDeleteReusableBlock","createErrorNotice","createSuccessNotice","isUserPattern","type","isNonUserPattern","isTemplatePart","onClick","postType","postId","id","name","categoryType","isEmpty","blocks","length","patternClassNames","previewClassNames","deletePattern","title","error","errorMessage","message","code","deleteItem","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","ariaDescriptions","push","description","itemIcon","syncStatus","full","undefined","confirmButtonText","confirmPrompt","createElement","className","map","_","index","join","ariaDescription","key","hidden","justify","alignment","spacing","position","text","icon","as","gap","level","variant","tabIndex","size","label","popoverProps","placement","toggleProps","describedBy","onClose","isDestructive","onConfirm","onCancel"],"sources":["@wordpress/edit-site/src/components/page-patterns/grid-item.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { BlockPreview } from '@wordpress/block-editor';\nimport {\n\tButton,\n\t__experimentalConfirmDialog as ConfirmDialog,\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalHeading as Heading,\n\t__experimentalHStack as HStack,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useId, memo } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tmoreVertical,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\n\n/**\n * Internal dependencies\n */\nimport RenameMenuItem from './rename-menu-item';\nimport DuplicateMenuItem from './duplicate-menu-item';\nimport { PATTERNS, TEMPLATE_PARTS, USER_PATTERNS, SYNC_TYPES } from './utils';\nimport { store as editSiteStore } from '../../store';\nimport { useLink } from '../routes/link';\n\nconst templatePartIcons = { header, footer, uncategorized };\n\nfunction GridItem( { categoryId, item, ...props } ) {\n\tconst descriptionId = useId();\n\tconst [ isDeleteDialogOpen, setIsDeleteDialogOpen ] = useState( false );\n\n\tconst { removeTemplate } = useDispatch( editSiteStore );\n\tconst { __experimentalDeleteReusableBlock } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst isUserPattern = item.type === USER_PATTERNS;\n\tconst isNonUserPattern = item.type === PATTERNS;\n\tconst isTemplatePart = item.type === TEMPLATE_PARTS;\n\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: item.type,\n\t} );\n\n\tconst isEmpty = ! item.blocks?.length;\n\tconst patternClassNames = classnames( 'edit-site-patterns__pattern', {\n\t\t'is-placeholder': isEmpty,\n\t} );\n\tconst previewClassNames = classnames( 'edit-site-patterns__preview', {\n\t\t'is-inactive': isNonUserPattern,\n\t} );\n\n\tconst deletePattern = async () => {\n\t\ttry {\n\t\t\tawait __experimentalDeleteReusableBlock( item.id );\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The pattern's title e.g. 'Call to action'.\n\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while deleting the pattern.' );\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tid: 'edit-site-patterns-error',\n\t\t\t} );\n\t\t}\n\t};\n\tconst deleteItem = () =>\n\t\tisTemplatePart ? removeTemplate( item ) : deletePattern();\n\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\tconst ariaDescriptions = [];\n\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tif ( isNonUserPattern ) {\n\t\tariaDescriptions.push(\n\t\t\t__( 'Theme & plugin patterns cannot be edited.' )\n\t\t);\n\t}\n\n\tconst itemIcon =\n\t\ttemplatePartIcons[ categoryId ] ||\n\t\t( item.syncStatus === SYNC_TYPES.full ? symbol : undefined );\n\n\tconst confirmButtonText = hasThemeFile ? __( 'Clear' ) : __( 'Delete' );\n\tconst confirmPrompt = hasThemeFile\n\t\t? __( 'Are you sure you want to clear these customizations?' )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: The pattern or template part's title e.g. 'Call to action'.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\titem.title\n\t\t );\n\n\treturn (\n\t\t<li className={ patternClassNames }>\n\t\t\t<button\n\t\t\t\tclassName={ previewClassNames }\n\t\t\t\t// Even though still incomplete, passing ids helps performance.\n\t\t\t\t// @see https://reakit.io/docs/composite/#performance.\n\t\t\t\tid={ `edit-site-patterns-${ item.name }` }\n\t\t\t\t{ ...props }\n\t\t\t\tonClick={ item.type !== PATTERNS ? onClick : undefined }\n\t\t\t\taria-disabled={ item.type !== PATTERNS ? 'false' : 'true' }\n\t\t\t\taria-label={ item.title }\n\t\t\t\taria-describedby={\n\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ isEmpty && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && <BlockPreview blocks={ item.blocks } /> }\n\t\t\t</button>\n\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\thidden\n\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t>\n\t\t\t\t\t{ ariaDescription }\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t\t<HStack\n\t\t\t\tclassName=\"edit-site-patterns__footer\"\n\t\t\t\tjustify=\"space-between\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tjustify=\"left\"\n\t\t\t\t\tspacing={ 3 }\n\t\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t\t>\n\t\t\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t<Icon\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t) }\n\t\t\t\t\t<Flex as=\"span\" gap={ 0 } justify=\"left\">\n\t\t\t\t\t\t{ item.type === PATTERNS ? (\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<Heading level={ 5 }>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ item.title }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ item.type === PATTERNS && (\n\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<span className=\"edit-site-patterns__pattern-lock-icon\">\n\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t</HStack>\n\t\t\t\t<DropdownMenu\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tclassName=\"edit-site-patterns__dropdown\"\n\t\t\t\t\tpopoverProps={ { placement: 'bottom-end' } }\n\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: pattern name */\n\t\t\t\t\t\t\t__( 'Action menu for %s pattern' ),\n\t\t\t\t\t\t\titem.title\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ isCustomPattern && ! hasThemeFile && (\n\t\t\t\t\t\t\t\t<RenameMenuItem\n\t\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\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<DuplicateMenuItem\n\t\t\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tisNonUserPattern\n\t\t\t\t\t\t\t\t\t\t? __( 'Copy to My patterns' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Duplicate' )\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{ isCustomPattern && (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tisDestructive={ ! hasThemeFile }\n\t\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\t\tsetIsDeleteDialogOpen( true )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasThemeFile\n\t\t\t\t\t\t\t\t\t\t? __( 'Clear customizations' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Delete' ) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t</HStack>\n\n\t\t\t{ isDeleteDialogOpen && (\n\t\t\t\t<ConfirmDialog\n\t\t\t\t\tconfirmButtonText={ confirmButtonText }\n\t\t\t\t\tonConfirm={ deleteItem }\n\t\t\t\t\tonCancel={ () => setIsDeleteDialogOpen( false ) }\n\t\t\t\t>\n\t\t\t\t\t{ confirmPrompt }\n\t\t\t\t</ConfirmDialog>\n\t\t\t) }\n\t\t</li>\n\t);\n}\n\nexport default memo( GridItem );\n"],"mappings":"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"}
|
|
@@ -2,13 +2,15 @@ import { createElement, Fragment } from "@wordpress/element";
|
|
|
2
2
|
/**
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
5
|
-
import { Button,
|
|
5
|
+
import { Button, ToggleControl, Dropdown, __experimentalText as Text, __experimentalHStack as HStack, __experimentalVStack as VStack, TextControl, RadioControl, VisuallyHidden } from '@wordpress/components';
|
|
6
6
|
import { __ } from '@wordpress/i18n';
|
|
7
7
|
import { useDispatch } from '@wordpress/data';
|
|
8
8
|
import { useState, useMemo } from '@wordpress/element';
|
|
9
9
|
import { store as coreStore } from '@wordpress/core-data';
|
|
10
10
|
import { store as noticesStore } from '@wordpress/notices';
|
|
11
11
|
import { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';
|
|
12
|
+
import { useInstanceId } from '@wordpress/compose';
|
|
13
|
+
|
|
12
14
|
/**
|
|
13
15
|
* Internal dependencies
|
|
14
16
|
*/
|
|
@@ -47,6 +49,7 @@ export default function PageStatus({
|
|
|
47
49
|
date
|
|
48
50
|
}) {
|
|
49
51
|
const [showPassword, setShowPassword] = useState(!!password);
|
|
52
|
+
const instanceId = useInstanceId(PageStatus);
|
|
50
53
|
const {
|
|
51
54
|
editEntityRecord
|
|
52
55
|
} = useDispatch(coreStore);
|
|
@@ -142,21 +145,33 @@ export default function PageStatus({
|
|
|
142
145
|
options: STATUS_OPTIONS,
|
|
143
146
|
onChange: handleStatus,
|
|
144
147
|
selected: status
|
|
145
|
-
}), status !== 'private' && createElement(
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
148
|
+
}), status !== 'private' && createElement("fieldset", {
|
|
149
|
+
className: "edit-site-change-status__password-fieldset"
|
|
150
|
+
}, createElement(Text, {
|
|
151
|
+
as: "legend",
|
|
152
|
+
className: "edit-site-change-status__password-legend",
|
|
153
|
+
size: "11",
|
|
154
|
+
lineHeight: 1.4,
|
|
155
|
+
weight: 500,
|
|
156
|
+
upperCase: true
|
|
157
|
+
}, __('Password')), createElement(ToggleControl, {
|
|
149
158
|
label: __('Hide this page behind a password'),
|
|
150
159
|
checked: showPassword,
|
|
151
160
|
onChange: handleTogglePassword
|
|
152
|
-
}), showPassword && createElement(
|
|
161
|
+
}), showPassword && createElement("div", {
|
|
162
|
+
className: "edit-site-change-status__password-input"
|
|
163
|
+
}, createElement(VisuallyHidden, {
|
|
164
|
+
as: "label",
|
|
165
|
+
htmlFor: `edit-site-change-status__password-input-${instanceId}`
|
|
166
|
+
}, __('Create password')), createElement(TextControl, {
|
|
153
167
|
onChange: value => saveStatus({
|
|
154
168
|
password: value
|
|
155
169
|
}),
|
|
156
170
|
value: password,
|
|
157
171
|
placeholder: __('Use a secure password'),
|
|
158
|
-
type: "text"
|
|
159
|
-
|
|
172
|
+
type: "text",
|
|
173
|
+
id: `edit-site-change-status__password-input-${instanceId}`
|
|
174
|
+
}))))))
|
|
160
175
|
}));
|
|
161
176
|
}
|
|
162
177
|
//# sourceMappingURL=page-status.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","BaseControl","ToggleControl","Dropdown","__experimentalText","Text","__experimentalHStack","HStack","__experimentalVStack","VStack","TextControl","RadioControl","__","useDispatch","useState","useMemo","store","coreStore","noticesStore","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","StatusLabel","STATUS_OPTIONS","label","createElement","Fragment","variant","value","PageStatus","postType","postId","status","password","date","showPassword","setShowPassword","editEntityRecord","createErrorNotice","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","saveStatus","newStatus","newPassword","newDate","error","errorMessage","message","code","type","handleTogglePassword","handleStatus","Date","setDate","getDate","className","contentClassName","focusOnMount","ref","renderToggle","onToggle","onClick","renderContent","onClose","title","spacing","hideLabelFromVision","options","onChange","selected","id","checked","placeholder"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/page-panels/page-status.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tBaseControl,\n\tToggleControl,\n\tDropdown,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tTextControl,\n\tRadioControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\n/**\n * Internal dependencies\n */\nimport StatusLabel from '../../sidebar-navigation-screen-page/status-label';\n\nconst STATUS_OPTIONS = [\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Draft' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Not ready to publish.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'draft',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Pending' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Waiting for review before publishing.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'pending',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Private' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Only visible to site admins and editors.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'private',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Scheduled' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Publish automatically on a chosen date.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'future',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Published' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Visible to everyone.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'publish',\n\t},\n];\n\nexport default function PageStatus( {\n\tpostType,\n\tpostId,\n\tstatus,\n\tpassword,\n\tdate,\n} ) {\n\tconst [ showPassword, setShowPassword ] = useState( !! password );\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\t'aria-label': __( 'Change status' ),\n\t\t\tplacement: 'bottom-end',\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\n\tconst saveStatus = async ( {\n\t\tstatus: newStatus = status,\n\t\tpassword: newPassword = password,\n\t\tdate: newDate = date,\n\t} ) => {\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', postType, postId, {\n\t\t\t\tstatus: newStatus,\n\t\t\t\tdate: newDate,\n\t\t\t\tpassword: newPassword,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while updating the status' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleTogglePassword = ( value ) => {\n\t\tsetShowPassword( value );\n\t\tif ( ! value ) {\n\t\t\tsaveStatus( { password: '' } );\n\t\t}\n\t};\n\n\tconst handleStatus = ( value ) => {\n\t\tlet newDate = date;\n\t\tlet newPassword = password;\n\t\tif ( value === 'publish' ) {\n\t\t\tif ( new Date( date ) > new Date() ) {\n\t\t\t\tnewDate = null;\n\t\t\t}\n\t\t} else if ( value === 'future' ) {\n\t\t\tif ( ! date || new Date( date ) < new Date() ) {\n\t\t\t\tnewDate = new Date();\n\t\t\t\tnewDate.setDate( newDate.getDate() + 7 );\n\t\t\t}\n\t\t} else if ( value === 'private' && password ) {\n\t\t\tsetShowPassword( false );\n\t\t\tnewPassword = '';\n\t\t}\n\t\tsaveStatus( {\n\t\t\tstatus: value,\n\t\t\tdate: newDate,\n\t\t\tpassword: newPassword,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<HStack className=\"edit-site-summary-field\">\n\t\t\t<Text className=\"edit-site-summary-field__label\">\n\t\t\t\t{ __( 'Status' ) }\n\t\t\t</Text>\n\t\t\t<Dropdown\n\t\t\t\tcontentClassName=\"edit-site-change-status__content\"\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tfocusOnMount\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-summary-field__trigger\"\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t<StatusLabel\n\t\t\t\t\t\t\tstatus={ password ? 'protected' : status }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Status' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<form>\n\t\t\t\t\t\t\t<VStack spacing={ 5 }>\n\t\t\t\t\t\t\t\t<RadioControl\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-change-status__options\"\n\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Status' ) }\n\t\t\t\t\t\t\t\t\toptions={ STATUS_OPTIONS }\n\t\t\t\t\t\t\t\t\tonChange={ handleStatus }\n\t\t\t\t\t\t\t\t\tselected={ status }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ status !== 'private' && (\n\t\t\t\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\t\t\t\tid={ `edit-site-change-status__password` }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Password' ) }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Hide this page behind a password'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tchecked={ showPassword }\n\t\t\t\t\t\t\t\t\t\t\tonChange={ handleTogglePassword }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ showPassword && (\n\t\t\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tsaveStatus( {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tpassword: value,\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\tvalue={ password }\n\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Use a secure password'\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\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</HStack>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,WAAW,EACXC,aAAa,EACbC,QAAQ,EACRC,kBAAkB,IAAIC,IAAI,EAC1BC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,EAC9BC,WAAW,EACXC,YAAY,QACN,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,QAAQ,EAAEC,OAAO,QAAQ,oBAAoB;AACtD,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASD,KAAK,IAAIE,YAAY,QAAQ,oBAAoB;AAC1D,SAASC,oCAAoC,IAAIC,sBAAsB,QAAQ,yBAAyB;AACxG;AACA;AACA;AACA,OAAOC,WAAW,MAAM,mDAAmD;AAE3E,MAAMC,cAAc,GAAG,CACtB;EACCC,KAAK,EACJC,aAAA,CAAAC,QAAA,QACGb,EAAE,CAAE,OAAQ,CAAC,EACfY,aAAA,CAACnB,IAAI;IAACqB,OAAO,EAAC;EAAO,GAAGd,EAAE,CAAE,uBAAwB,CAAS,CAC5D,CACF;EACDe,KAAK,EAAE;AACR,CAAC,EACD;EACCJ,KAAK,EACJC,aAAA,CAAAC,QAAA,QACGb,EAAE,CAAE,SAAU,CAAC,EACjBY,aAAA,CAACnB,IAAI;IAACqB,OAAO,EAAC;EAAO,GAClBd,EAAE,CAAE,uCAAwC,CACzC,CACL,CACF;EACDe,KAAK,EAAE;AACR,CAAC,EACD;EACCJ,KAAK,EACJC,aAAA,CAAAC,QAAA,QACGb,EAAE,CAAE,SAAU,CAAC,EACjBY,aAAA,CAACnB,IAAI;IAACqB,OAAO,EAAC;EAAO,GAClBd,EAAE,CAAE,0CAA2C,CAC5C,CACL,CACF;EACDe,KAAK,EAAE;AACR,CAAC,EACD;EACCJ,KAAK,EACJC,aAAA,CAAAC,QAAA,QACGb,EAAE,CAAE,WAAY,CAAC,EACnBY,aAAA,CAACnB,IAAI;IAACqB,OAAO,EAAC;EAAO,GAClBd,EAAE,CAAE,yCAA0C,CAC3C,CACL,CACF;EACDe,KAAK,EAAE;AACR,CAAC,EACD;EACCJ,KAAK,EACJC,aAAA,CAAAC,QAAA,QACGb,EAAE,CAAE,WAAY,CAAC,EACnBY,aAAA,CAACnB,IAAI;IAACqB,OAAO,EAAC;EAAO,GAAGd,EAAE,CAAE,sBAAuB,CAAS,CAC3D,CACF;EACDe,KAAK,EAAE;AACR,CAAC,CACD;AAED,eAAe,SAASC,UAAUA,CAAE;EACnCC,QAAQ;EACRC,MAAM;EACNC,MAAM;EACNC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,YAAY,EAAEC,eAAe,CAAE,GAAGrB,QAAQ,CAAE,CAAC,CAAEkB,QAAS,CAAC;EAEjE,MAAM;IAAEI;EAAiB,CAAC,GAAGvB,WAAW,CAAEI,SAAU,CAAC;EACrD,MAAM;IAAEoB;EAAkB,CAAC,GAAGxB,WAAW,CAAEK,YAAa,CAAC;EAEzD,MAAM,CAAEoB,aAAa,EAAEC,gBAAgB,CAAE,GAAGzB,QAAQ,CAAE,IAAK,CAAC;EAC5D;EACA,MAAM0B,YAAY,GAAGzB,OAAO,CAC3B,OAAQ;IACP;IACA;IACA0B,MAAM,EAAEH,aAAa;IACrB,YAAY,EAAE1B,EAAE,CAAE,eAAgB,CAAC;IACnC8B,SAAS,EAAE;EACZ,CAAC,CAAE,EACH,CAAEJ,aAAa,CAChB,CAAC;EAED,MAAMK,UAAU,GAAG,MAAAA,CAAQ;IAC1BZ,MAAM,EAAEa,SAAS,GAAGb,MAAM;IAC1BC,QAAQ,EAAEa,WAAW,GAAGb,QAAQ;IAChCC,IAAI,EAAEa,OAAO,GAAGb;EACjB,CAAC,KAAM;IACN,IAAI;MACH,MAAMG,gBAAgB,CAAE,UAAU,EAAEP,QAAQ,EAAEC,MAAM,EAAE;QACrDC,MAAM,EAAEa,SAAS;QACjBX,IAAI,EAAEa,OAAO;QACbd,QAAQ,EAAEa;MACX,CAAE,CAAC;IACJ,CAAC,CAAC,OAAQE,KAAK,EAAG;MACjB,MAAMC,YAAY,GACjBD,KAAK,CAACE,OAAO,IAAIF,KAAK,CAACG,IAAI,KAAK,eAAe,GAC5CH,KAAK,CAACE,OAAO,GACbrC,EAAE,CAAE,6CAA8C,CAAC;MAEvDyB,iBAAiB,CAAEW,YAAY,EAAE;QAChCG,IAAI,EAAE;MACP,CAAE,CAAC;IACJ;EACD,CAAC;EAED,MAAMC,oBAAoB,GAAKzB,KAAK,IAAM;IACzCQ,eAAe,CAAER,KAAM,CAAC;IACxB,IAAK,CAAEA,KAAK,EAAG;MACdgB,UAAU,CAAE;QAAEX,QAAQ,EAAE;MAAG,CAAE,CAAC;IAC/B;EACD,CAAC;EAED,MAAMqB,YAAY,GAAK1B,KAAK,IAAM;IACjC,IAAImB,OAAO,GAAGb,IAAI;IAClB,IAAIY,WAAW,GAAGb,QAAQ;IAC1B,IAAKL,KAAK,KAAK,SAAS,EAAG;MAC1B,IAAK,IAAI2B,IAAI,CAAErB,IAAK,CAAC,GAAG,IAAIqB,IAAI,CAAC,CAAC,EAAG;QACpCR,OAAO,GAAG,IAAI;MACf;IACD,CAAC,MAAM,IAAKnB,KAAK,KAAK,QAAQ,EAAG;MAChC,IAAK,CAAEM,IAAI,IAAI,IAAIqB,IAAI,CAAErB,IAAK,CAAC,GAAG,IAAIqB,IAAI,CAAC,CAAC,EAAG;QAC9CR,OAAO,GAAG,IAAIQ,IAAI,CAAC,CAAC;QACpBR,OAAO,CAACS,OAAO,CAAET,OAAO,CAACU,OAAO,CAAC,CAAC,GAAG,CAAE,CAAC;MACzC;IACD,CAAC,MAAM,IAAK7B,KAAK,KAAK,SAAS,IAAIK,QAAQ,EAAG;MAC7CG,eAAe,CAAE,KAAM,CAAC;MACxBU,WAAW,GAAG,EAAE;IACjB;IACAF,UAAU,CAAE;MACXZ,MAAM,EAAEJ,KAAK;MACbM,IAAI,EAAEa,OAAO;MACbd,QAAQ,EAAEa;IACX,CAAE,CAAC;EACJ,CAAC;EAED,OACCrB,aAAA,CAACjB,MAAM;IAACkD,SAAS,EAAC;EAAyB,GAC1CjC,aAAA,CAACnB,IAAI;IAACoD,SAAS,EAAC;EAAgC,GAC7C7C,EAAE,CAAE,QAAS,CACV,CAAC,EACPY,aAAA,CAACrB,QAAQ;IACRuD,gBAAgB,EAAC,kCAAkC;IACnDlB,YAAY,EAAGA,YAAc;IAC7BmB,YAAY;IACZC,GAAG,EAAGrB,gBAAkB;IACxBsB,YAAY,EAAGA,CAAE;MAAEC;IAAS,CAAC,KAC5BtC,aAAA,CAACxB,MAAM;MACNyD,SAAS,EAAC,kCAAkC;MAC5C/B,OAAO,EAAC,UAAU;MAClBqC,OAAO,EAAGD;IAAU,GAEpBtC,aAAA,CAACH,WAAW;MACXU,MAAM,EAAGC,QAAQ,GAAG,WAAW,GAAGD;IAAQ,CAC1C,CACM,CACN;IACHiC,aAAa,EAAGA,CAAE;MAAEC;IAAQ,CAAC,KAC5BzC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACJ,sBAAsB;MACtB8C,KAAK,EAAGtD,EAAE,CAAE,QAAS,CAAG;MACxBqD,OAAO,EAAGA;IAAS,CACnB,CAAC,EACFzC,aAAA,eACCA,aAAA,CAACf,MAAM;MAAC0D,OAAO,EAAG;IAAG,GACpB3C,aAAA,CAACb,YAAY;MACZ8C,SAAS,EAAC,kCAAkC;MAC5CW,mBAAmB;MACnB7C,KAAK,EAAGX,EAAE,CAAE,QAAS,CAAG;MACxByD,OAAO,EAAG/C,cAAgB;MAC1BgD,QAAQ,EAAGjB,YAAc;MACzBkB,QAAQ,EAAGxC;IAAQ,CACnB,CAAC,EACAA,MAAM,KAAK,SAAS,IACrBP,aAAA,CAACvB,WAAW;MACXuE,EAAE,EAAI,mCAAoC;MAC1CjD,KAAK,EAAGX,EAAE,CAAE,UAAW;IAAG,GAE1BY,aAAA,CAACtB,aAAa;MACbqB,KAAK,EAAGX,EAAE,CACT,kCACD,CAAG;MACH6D,OAAO,EAAGvC,YAAc;MACxBoC,QAAQ,EAAGlB;IAAsB,CACjC,CAAC,EACAlB,YAAY,IACbV,aAAA,CAACd,WAAW;MACX4D,QAAQ,EAAK3C,KAAK,IACjBgB,UAAU,CAAE;QACXX,QAAQ,EAAEL;MACX,CAAE,CACF;MACDA,KAAK,EAAGK,QAAU;MAClB0C,WAAW,EAAG9D,EAAE,CACf,uBACD,CAAG;MACHuC,IAAI,EAAC;IAAM,CACX,CAEU,CAEP,CACH,CACL;EACA,CACH,CACM,CAAC;AAEX"}
|
|
1
|
+
{"version":3,"names":["Button","ToggleControl","Dropdown","__experimentalText","Text","__experimentalHStack","HStack","__experimentalVStack","VStack","TextControl","RadioControl","VisuallyHidden","__","useDispatch","useState","useMemo","store","coreStore","noticesStore","__experimentalInspectorPopoverHeader","InspectorPopoverHeader","useInstanceId","StatusLabel","STATUS_OPTIONS","label","createElement","Fragment","variant","value","PageStatus","postType","postId","status","password","date","showPassword","setShowPassword","instanceId","editEntityRecord","createErrorNotice","popoverAnchor","setPopoverAnchor","popoverProps","anchor","placement","saveStatus","newStatus","newPassword","newDate","error","errorMessage","message","code","type","handleTogglePassword","handleStatus","Date","setDate","getDate","className","contentClassName","focusOnMount","ref","renderToggle","onToggle","onClick","renderContent","onClose","title","spacing","hideLabelFromVision","options","onChange","selected","as","size","lineHeight","weight","upperCase","checked","htmlFor","placeholder","id"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/page-panels/page-status.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tToggleControl,\n\tDropdown,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tTextControl,\n\tRadioControl,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { useState, useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __experimentalInspectorPopoverHeader as InspectorPopoverHeader } from '@wordpress/block-editor';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport StatusLabel from '../../sidebar-navigation-screen-page/status-label';\n\nconst STATUS_OPTIONS = [\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Draft' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Not ready to publish.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'draft',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Pending' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Waiting for review before publishing.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'pending',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Private' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Only visible to site admins and editors.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'private',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Scheduled' ) }\n\t\t\t\t<Text variant=\"muted\">\n\t\t\t\t\t{ __( 'Publish automatically on a chosen date.' ) }\n\t\t\t\t</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'future',\n\t},\n\t{\n\t\tlabel: (\n\t\t\t<>\n\t\t\t\t{ __( 'Published' ) }\n\t\t\t\t<Text variant=\"muted\">{ __( 'Visible to everyone.' ) }</Text>\n\t\t\t</>\n\t\t),\n\t\tvalue: 'publish',\n\t},\n];\n\nexport default function PageStatus( {\n\tpostType,\n\tpostId,\n\tstatus,\n\tpassword,\n\tdate,\n} ) {\n\tconst [ showPassword, setShowPassword ] = useState( !! password );\n\tconst instanceId = useInstanceId( PageStatus );\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\t// Memoize popoverProps to avoid returning a new object every time.\n\tconst popoverProps = useMemo(\n\t\t() => ( {\n\t\t\t// Anchor the popover to the middle of the entire row so that it doesn't\n\t\t\t// move around when the label changes.\n\t\t\tanchor: popoverAnchor,\n\t\t\t'aria-label': __( 'Change status' ),\n\t\t\tplacement: 'bottom-end',\n\t\t} ),\n\t\t[ popoverAnchor ]\n\t);\n\n\tconst saveStatus = async ( {\n\t\tstatus: newStatus = status,\n\t\tpassword: newPassword = password,\n\t\tdate: newDate = date,\n\t} ) => {\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', postType, postId, {\n\t\t\t\tstatus: newStatus,\n\t\t\t\tdate: newDate,\n\t\t\t\tpassword: newPassword,\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while updating the status' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst handleTogglePassword = ( value ) => {\n\t\tsetShowPassword( value );\n\t\tif ( ! value ) {\n\t\t\tsaveStatus( { password: '' } );\n\t\t}\n\t};\n\n\tconst handleStatus = ( value ) => {\n\t\tlet newDate = date;\n\t\tlet newPassword = password;\n\t\tif ( value === 'publish' ) {\n\t\t\tif ( new Date( date ) > new Date() ) {\n\t\t\t\tnewDate = null;\n\t\t\t}\n\t\t} else if ( value === 'future' ) {\n\t\t\tif ( ! date || new Date( date ) < new Date() ) {\n\t\t\t\tnewDate = new Date();\n\t\t\t\tnewDate.setDate( newDate.getDate() + 7 );\n\t\t\t}\n\t\t} else if ( value === 'private' && password ) {\n\t\t\tsetShowPassword( false );\n\t\t\tnewPassword = '';\n\t\t}\n\t\tsaveStatus( {\n\t\t\tstatus: value,\n\t\t\tdate: newDate,\n\t\t\tpassword: newPassword,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<HStack className=\"edit-site-summary-field\">\n\t\t\t<Text className=\"edit-site-summary-field__label\">\n\t\t\t\t{ __( 'Status' ) }\n\t\t\t</Text>\n\t\t\t<Dropdown\n\t\t\t\tcontentClassName=\"edit-site-change-status__content\"\n\t\t\t\tpopoverProps={ popoverProps }\n\t\t\t\tfocusOnMount\n\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\trenderToggle={ ( { onToggle } ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-site-summary-field__trigger\"\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t<StatusLabel\n\t\t\t\t\t\t\tstatus={ password ? 'protected' : status }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<InspectorPopoverHeader\n\t\t\t\t\t\t\ttitle={ __( 'Status' ) }\n\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<form>\n\t\t\t\t\t\t\t<VStack spacing={ 5 }>\n\t\t\t\t\t\t\t\t<RadioControl\n\t\t\t\t\t\t\t\t\tclassName=\"edit-site-change-status__options\"\n\t\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Status' ) }\n\t\t\t\t\t\t\t\t\toptions={ STATUS_OPTIONS }\n\t\t\t\t\t\t\t\t\tonChange={ handleStatus }\n\t\t\t\t\t\t\t\t\tselected={ status }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ status !== 'private' && (\n\t\t\t\t\t\t\t\t\t<fieldset className=\"edit-site-change-status__password-fieldset\">\n\t\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\t\tas=\"legend\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"edit-site-change-status__password-legend\"\n\t\t\t\t\t\t\t\t\t\t\tsize=\"11\"\n\t\t\t\t\t\t\t\t\t\t\tlineHeight={ 1.4 }\n\t\t\t\t\t\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\t\t\t\t\t\tupperCase={ true }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Password' ) }\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Hide this page behind a password'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tchecked={ showPassword }\n\t\t\t\t\t\t\t\t\t\t\tonChange={ handleTogglePassword }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{ showPassword && (\n\t\t\t\t\t\t\t\t\t\t\t<div className=\"edit-site-change-status__password-input\">\n\t\t\t\t\t\t\t\t\t\t\t\t<VisuallyHidden\n\t\t\t\t\t\t\t\t\t\t\t\t\tas=\"label\"\n\t\t\t\t\t\t\t\t\t\t\t\t\thtmlFor={ `edit-site-change-status__password-input-${ instanceId }` }\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Create password' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsaveStatus( {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpassword: value,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={ password }\n\t\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'Use a secure password'\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\ttype=\"text\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tid={ `edit-site-change-status__password-input-${ instanceId }` }\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</div>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</fieldset>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t/>\n\t\t</HStack>\n\t);\n}\n"],"mappings":"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"}
|