@wordpress/edit-post 6.3.5 → 6.5.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 +4 -0
- package/build/components/header/header-toolbar/index.native.js +25 -7
- package/build/components/header/header-toolbar/index.native.js.map +1 -1
- package/build/components/layout/index.native.js +5 -3
- package/build/components/layout/index.native.js.map +1 -1
- package/build/components/secondary-sidebar/list-view-sidebar.js +1 -5
- package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
- package/build/components/sidebar/plugin-document-setting-panel/index.js +0 -1
- package/build/components/sidebar/plugin-document-setting-panel/index.js.map +1 -1
- package/build/components/sidebar/post-visibility/index.js +16 -1
- package/build/components/sidebar/post-visibility/index.js.map +1 -1
- package/build/components/visual-editor/index.js +19 -1
- package/build/components/visual-editor/index.js.map +1 -1
- package/build-module/components/header/header-toolbar/index.native.js +26 -8
- package/build-module/components/header/header-toolbar/index.native.js.map +1 -1
- package/build-module/components/layout/index.native.js +5 -3
- package/build-module/components/layout/index.native.js.map +1 -1
- package/build-module/components/secondary-sidebar/list-view-sidebar.js +1 -5
- package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
- package/build-module/components/sidebar/plugin-document-setting-panel/index.js +0 -1
- package/build-module/components/sidebar/plugin-document-setting-panel/index.js.map +1 -1
- package/build-module/components/sidebar/post-visibility/index.js +17 -1
- package/build-module/components/sidebar/post-visibility/index.js.map +1 -1
- package/build-module/components/visual-editor/index.js +20 -2
- package/build-module/components/visual-editor/index.js.map +1 -1
- package/build-style/style-rtl.css +15 -70
- package/build-style/style.css +15 -70
- package/package.json +27 -27
- package/src/components/block-manager/style.scss +0 -4
- package/src/components/header/header-toolbar/index.native.js +45 -8
- package/src/components/header/header-toolbar/style.native.scss +8 -4
- package/src/components/header/style.scss +12 -32
- package/src/components/layout/index.native.js +8 -5
- package/src/components/secondary-sidebar/list-view-sidebar.js +1 -5
- package/src/components/sidebar/plugin-document-setting-panel/index.js +0 -1
- package/src/components/sidebar/post-visibility/index.js +12 -2
- package/src/components/sidebar/post-visibility/style.scss +2 -30
- package/src/components/visual-editor/index.js +14 -2
- package/src/test/editor.native.js +11 -2
- package/build/components/admin-notices/index.js +0 -129
- package/build/components/admin-notices/index.js.map +0 -1
- package/build/components/block-manager/show-all.js +0 -39
- package/build/components/block-manager/show-all.js.map +0 -1
- package/build/components/editor-initialization/utils.js +0 -38
- package/build/components/editor-initialization/utils.js.map +0 -1
- package/build-module/components/admin-notices/index.js +0 -114
- package/build-module/components/admin-notices/index.js.map +0 -1
- package/build-module/components/block-manager/show-all.js +0 -29
- package/build-module/components/block-manager/show-all.js.map +0 -1
- package/build-module/components/editor-initialization/utils.js +0 -29
- package/build-module/components/editor-initialization/utils.js.map +0 -1
- package/src/components/admin-notices/index.js +0 -110
- package/src/components/admin-notices/test/index.js +0 -63
- package/src/components/block-manager/show-all.js +0 -30
- package/src/components/editor-initialization/utils.js +0 -24
package/CHANGELOG.md
CHANGED
|
@@ -52,8 +52,11 @@ function HeaderToolbar(_ref) {
|
|
|
52
52
|
showKeyboardHideButton,
|
|
53
53
|
getStylesFromColorScheme,
|
|
54
54
|
onHideKeyboard,
|
|
55
|
-
isRTL
|
|
55
|
+
isRTL,
|
|
56
|
+
noContentSelected
|
|
56
57
|
} = _ref;
|
|
58
|
+
const wasNoContentSelected = (0, _element.useRef)(noContentSelected);
|
|
59
|
+
const [isInserterOpen, setIsInserterOpen] = (0, _element.useState)(false);
|
|
57
60
|
const scrollViewRef = (0, _element.useRef)(null);
|
|
58
61
|
|
|
59
62
|
const scrollToStart = () => {
|
|
@@ -94,8 +97,18 @@ function HeaderToolbar(_ref) {
|
|
|
94
97
|
return isRTL ? buttons.reverse() : buttons;
|
|
95
98
|
};
|
|
96
99
|
|
|
100
|
+
const onToggleInserter = (0, _element.useCallback)(isOpen => {
|
|
101
|
+
if (isOpen) {
|
|
102
|
+
wasNoContentSelected.current = noContentSelected;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
setIsInserterOpen(isOpen);
|
|
106
|
+
}, [noContentSelected]); // Expanded mode should be preserved while the inserter is open.
|
|
107
|
+
// This way we prevent style updates during the opening transition.
|
|
108
|
+
|
|
109
|
+
const useExpandedMode = isInserterOpen ? wasNoContentSelected.current : noContentSelected;
|
|
97
110
|
return (0, _element.createElement)(_reactNative.View, {
|
|
98
|
-
style: getStylesFromColorScheme(_style.default.
|
|
111
|
+
style: [getStylesFromColorScheme(_style.default['header-toolbar__container'], _style.default['header-toolbar__container--dark']), useExpandedMode && _style.default['header-toolbar__container--expanded']]
|
|
99
112
|
}, (0, _element.createElement)(_reactNative.ScrollView, {
|
|
100
113
|
ref: scrollViewRef,
|
|
101
114
|
onContentSizeChange: scrollToStart,
|
|
@@ -103,11 +116,13 @@ function HeaderToolbar(_ref) {
|
|
|
103
116
|
showsHorizontalScrollIndicator: false,
|
|
104
117
|
keyboardShouldPersistTaps: "always",
|
|
105
118
|
alwaysBounceHorizontal: false,
|
|
106
|
-
contentContainerStyle: _style.default
|
|
119
|
+
contentContainerStyle: _style.default['header-toolbar__scrollable-content']
|
|
107
120
|
}, (0, _element.createElement)(_blockEditor.Inserter, {
|
|
108
|
-
disabled: !showInserter
|
|
121
|
+
disabled: !showInserter,
|
|
122
|
+
useExpandedMode: useExpandedMode,
|
|
123
|
+
onToggle: onToggleInserter
|
|
109
124
|
}), renderHistoryButtons(), (0, _element.createElement)(_blockEditor.BlockToolbar, null)), showKeyboardHideButton && (0, _element.createElement)(_components.ToolbarGroup, {
|
|
110
|
-
passedStyle: _style.default
|
|
125
|
+
passedStyle: _style.default['header-toolbar__keyboard-hide-container']
|
|
111
126
|
}, (0, _element.createElement)(_components.ToolbarButton, {
|
|
112
127
|
title: (0, _i18n.__)('Hide keyboard'),
|
|
113
128
|
icon: _icons.keyboardClose,
|
|
@@ -122,18 +137,21 @@ var _default = (0, _compose.compose)([(0, _data.withSelect)(select => {
|
|
|
122
137
|
const {
|
|
123
138
|
getBlockRootClientId,
|
|
124
139
|
getBlockSelectionEnd,
|
|
125
|
-
hasInserterItems
|
|
140
|
+
hasInserterItems,
|
|
141
|
+
hasSelectedBlock
|
|
126
142
|
} = select(_blockEditor.store);
|
|
127
143
|
const {
|
|
128
144
|
getEditorSettings
|
|
129
145
|
} = select(_editor.store);
|
|
146
|
+
const isAnyBlockSelected = hasSelectedBlock();
|
|
130
147
|
return {
|
|
131
148
|
hasRedo: select(_editor.store).hasEditorRedo(),
|
|
132
149
|
hasUndo: select(_editor.store).hasEditorUndo(),
|
|
133
150
|
// This setting (richEditingEnabled) should not live in the block editor's setting.
|
|
134
151
|
showInserter: select(_store.store).getEditorMode() === 'visual' && getEditorSettings().richEditingEnabled && hasInserterItems(getBlockRootClientId(getBlockSelectionEnd())),
|
|
135
152
|
isTextModeEnabled: select(_store.store).getEditorMode() === 'text',
|
|
136
|
-
isRTL: select(_blockEditor.store).getSettings().isRTL
|
|
153
|
+
isRTL: select(_blockEditor.store).getSettings().isRTL,
|
|
154
|
+
noContentSelected: !isAnyBlockSelected
|
|
137
155
|
};
|
|
138
156
|
}), (0, _data.withDispatch)(dispatch => {
|
|
139
157
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.native.js"],"names":["HeaderToolbar","hasRedo","hasUndo","redo","undo","showInserter","showKeyboardHideButton","getStylesFromColorScheme","onHideKeyboard","isRTL","scrollViewRef","scrollToStart","isAndroid","Platform","OS","current","scrollToEnd","scrollTo","x","renderHistoryButtons","buttons","undoIcon","redoIcon","hint","reverse","styles","container","containerDark","scrollableContent","keyboardHideContainer","keyboardClose","select","getBlockRootClientId","getBlockSelectionEnd","hasInserterItems","blockEditorStore","getEditorSettings","editorStore","hasEditorRedo","hasEditorUndo","editPostStore","getEditorMode","richEditingEnabled","isTextModeEnabled","getSettings","dispatch","clearSelectedBlock","togglePostTitleSelection","isLargeViewport","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform, ScrollView, View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useRef } from '@wordpress/element';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { withViewportMatch } from '@wordpress/viewport';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInserter,\n\tBlockToolbar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarGroup, ToolbarButton } from '@wordpress/components';\nimport {\n\tkeyboardClose,\n\tundo as undoIcon,\n\tredo as redoIcon,\n} from '@wordpress/icons';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { store as editPostStore } from '../../../store';\n\nfunction HeaderToolbar( {\n\thasRedo,\n\thasUndo,\n\tredo,\n\tundo,\n\tshowInserter,\n\tshowKeyboardHideButton,\n\tgetStylesFromColorScheme,\n\tonHideKeyboard,\n\tisRTL,\n} ) {\n\tconst scrollViewRef = useRef( null );\n\tconst scrollToStart = () => {\n\t\t// scrollview doesn't seem to automatically adjust to RTL on Android so, scroll to end when Android\n\t\tconst isAndroid = Platform.OS === 'android';\n\t\tif ( isAndroid && isRTL ) {\n\t\t\tscrollViewRef.current.scrollToEnd();\n\t\t} else {\n\t\t\tscrollViewRef.current.scrollTo( { x: 0 } );\n\t\t}\n\t};\n\tconst renderHistoryButtons = () => {\n\t\tconst buttons = [\n\t\t\t/* TODO: replace with EditorHistoryRedo and EditorHistoryUndo. */\n\t\t\t<ToolbarButton\n\t\t\t\tkey=\"undoButton\"\n\t\t\t\ttitle={ __( 'Undo' ) }\n\t\t\t\ticon={ ! isRTL ? undoIcon : redoIcon }\n\t\t\t\tisDisabled={ ! hasUndo }\n\t\t\t\tonClick={ undo }\n\t\t\t\textraProps={ {\n\t\t\t\t\thint: __( 'Double tap to undo last change' ),\n\t\t\t\t} }\n\t\t\t/>,\n\t\t\t<ToolbarButton\n\t\t\t\tkey=\"redoButton\"\n\t\t\t\ttitle={ __( 'Redo' ) }\n\t\t\t\ticon={ ! isRTL ? redoIcon : undoIcon }\n\t\t\t\tisDisabled={ ! hasRedo }\n\t\t\t\tonClick={ redo }\n\t\t\t\textraProps={ {\n\t\t\t\t\thint: __( 'Double tap to redo last change' ),\n\t\t\t\t} }\n\t\t\t/>,\n\t\t];\n\n\t\treturn isRTL ? buttons.reverse() : buttons;\n\t};\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\tstyles.container,\n\t\t\t\tstyles.containerDark\n\t\t\t) }\n\t\t>\n\t\t\t<ScrollView\n\t\t\t\tref={ scrollViewRef }\n\t\t\t\tonContentSizeChange={ scrollToStart }\n\t\t\t\thorizontal={ true }\n\t\t\t\tshowsHorizontalScrollIndicator={ false }\n\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\talwaysBounceHorizontal={ false }\n\t\t\t\tcontentContainerStyle={ styles.scrollableContent }\n\t\t\t>\n\t\t\t\t<Inserter disabled={ ! showInserter } />\n\t\t\t\t{ renderHistoryButtons() }\n\t\t\t\t<BlockToolbar />\n\t\t\t</ScrollView>\n\t\t\t{ showKeyboardHideButton && (\n\t\t\t\t<ToolbarGroup passedStyle={ styles.keyboardHideContainer }>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Hide keyboard' ) }\n\t\t\t\t\t\ticon={ keyboardClose }\n\t\t\t\t\t\tonClick={ onHideKeyboard }\n\t\t\t\t\t\textraProps={ {\n\t\t\t\t\t\t\thint: __( 'Tap to hide the keyboard' ),\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\thasInserterItems,\n\t\t} = select( blockEditorStore );\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\treturn {\n\t\t\thasRedo: select( editorStore ).hasEditorRedo(),\n\t\t\thasUndo: select( editorStore ).hasEditorUndo(),\n\t\t\t// This setting (richEditingEnabled) should not live in the block editor's setting.\n\t\t\tshowInserter:\n\t\t\t\tselect( editPostStore ).getEditorMode() === 'visual' &&\n\t\t\t\tgetEditorSettings().richEditingEnabled &&\n\t\t\t\thasInserterItems(\n\t\t\t\t\tgetBlockRootClientId( getBlockSelectionEnd() )\n\t\t\t\t),\n\t\t\tisTextModeEnabled:\n\t\t\t\tselect( editPostStore ).getEditorMode() === 'text',\n\t\t\tisRTL: select( blockEditorStore ).getSettings().isRTL,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { clearSelectedBlock } = dispatch( blockEditorStore );\n\t\tconst { togglePostTitleSelection } = dispatch( editorStore );\n\n\t\treturn {\n\t\t\tredo: dispatch( editorStore ).redo,\n\t\t\tundo: dispatch( editorStore ).undo,\n\t\t\tonHideKeyboard() {\n\t\t\t\tclearSelectedBlock();\n\t\t\t\ttogglePostTitleSelection( false );\n\t\t\t},\n\t\t};\n\t} ),\n\twithViewportMatch( { isLargeViewport: 'medium' } ),\n\twithPreferredColorScheme,\n] )( HeaderToolbar );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/header/header-toolbar/index.native.js"],"names":["HeaderToolbar","hasRedo","hasUndo","redo","undo","showInserter","showKeyboardHideButton","getStylesFromColorScheme","onHideKeyboard","isRTL","noContentSelected","wasNoContentSelected","isInserterOpen","setIsInserterOpen","scrollViewRef","scrollToStart","isAndroid","Platform","OS","current","scrollToEnd","scrollTo","x","renderHistoryButtons","buttons","undoIcon","redoIcon","hint","reverse","onToggleInserter","isOpen","useExpandedMode","styles","keyboardClose","select","getBlockRootClientId","getBlockSelectionEnd","hasInserterItems","hasSelectedBlock","blockEditorStore","getEditorSettings","editorStore","isAnyBlockSelected","hasEditorRedo","hasEditorUndo","editPostStore","getEditorMode","richEditingEnabled","isTextModeEnabled","getSettings","dispatch","clearSelectedBlock","togglePostTitleSelection","isLargeViewport","withPreferredColorScheme"],"mappings":";;;;;;;;;AAQA;;AALA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AAKA;;AAKA;;AACA;;AA9BA;AACA;AACA;;AAGA;AACA;AACA;;AAmBA;AACA;AACA;AAIA,SAASA,aAAT,OAWI;AAAA,MAXoB;AACvBC,IAAAA,OADuB;AAEvBC,IAAAA,OAFuB;AAGvBC,IAAAA,IAHuB;AAIvBC,IAAAA,IAJuB;AAKvBC,IAAAA,YALuB;AAMvBC,IAAAA,sBANuB;AAOvBC,IAAAA,wBAPuB;AAQvBC,IAAAA,cARuB;AASvBC,IAAAA,KATuB;AAUvBC,IAAAA;AAVuB,GAWpB;AACH,QAAMC,oBAAoB,GAAG,qBAAQD,iBAAR,CAA7B;AACA,QAAM,CAAEE,cAAF,EAAkBC,iBAAlB,IAAwC,uBAAU,KAAV,CAA9C;AAEA,QAAMC,aAAa,GAAG,qBAAQ,IAAR,CAAtB;;AACA,QAAMC,aAAa,GAAG,MAAM;AAC3B;AACA,UAAMC,SAAS,GAAGC,sBAASC,EAAT,KAAgB,SAAlC;;AACA,QAAKF,SAAS,IAAIP,KAAlB,EAA0B;AACzBK,MAAAA,aAAa,CAACK,OAAd,CAAsBC,WAAtB;AACA,KAFD,MAEO;AACNN,MAAAA,aAAa,CAACK,OAAd,CAAsBE,QAAtB,CAAgC;AAAEC,QAAAA,CAAC,EAAE;AAAL,OAAhC;AACA;AACD,GARD;;AASA,QAAMC,oBAAoB,GAAG,MAAM;AAClC,UAAMC,OAAO,GAAG;AACf;AACA,gCAAC,yBAAD;AACC,MAAA,GAAG,EAAC,YADL;AAEC,MAAA,KAAK,EAAG,cAAI,MAAJ,CAFT;AAGC,MAAA,IAAI,EAAG,CAAEf,KAAF,GAAUgB,WAAV,GAAqBC,WAH7B;AAIC,MAAA,UAAU,EAAG,CAAExB,OAJhB;AAKC,MAAA,OAAO,EAAGE,IALX;AAMC,MAAA,UAAU,EAAG;AACZuB,QAAAA,IAAI,EAAE,cAAI,gCAAJ;AADM;AANd,MAFe,EAYf,4BAAC,yBAAD;AACC,MAAA,GAAG,EAAC,YADL;AAEC,MAAA,KAAK,EAAG,cAAI,MAAJ,CAFT;AAGC,MAAA,IAAI,EAAG,CAAElB,KAAF,GAAUiB,WAAV,GAAqBD,WAH7B;AAIC,MAAA,UAAU,EAAG,CAAExB,OAJhB;AAKC,MAAA,OAAO,EAAGE,IALX;AAMC,MAAA,UAAU,EAAG;AACZwB,QAAAA,IAAI,EAAE,cAAI,gCAAJ;AADM;AANd,MAZe,CAAhB;AAwBA,WAAOlB,KAAK,GAAGe,OAAO,CAACI,OAAR,EAAH,GAAuBJ,OAAnC;AACA,GA1BD;;AA4BA,QAAMK,gBAAgB,GAAG,0BACtBC,MAAF,IAAc;AACb,QAAKA,MAAL,EAAc;AACbnB,MAAAA,oBAAoB,CAACQ,OAArB,GAA+BT,iBAA/B;AACA;;AACDG,IAAAA,iBAAiB,CAAEiB,MAAF,CAAjB;AACA,GANuB,EAOxB,CAAEpB,iBAAF,CAPwB,CAAzB,CA1CG,CAoDH;AACA;;AACA,QAAMqB,eAAe,GAAGnB,cAAc,GACnCD,oBAAoB,CAACQ,OADc,GAEnCT,iBAFH;AAIA,SACC,4BAAC,iBAAD;AACC,IAAA,KAAK,EAAG,CACPH,wBAAwB,CACvByB,eAAQ,2BAAR,CADuB,EAEvBA,eAAQ,iCAAR,CAFuB,CADjB,EAKPD,eAAe,IACdC,eAAQ,qCAAR,CANM;AADT,KAUC,4BAAC,uBAAD;AACC,IAAA,GAAG,EAAGlB,aADP;AAEC,IAAA,mBAAmB,EAAGC,aAFvB;AAGC,IAAA,UAAU,EAAG,IAHd;AAIC,IAAA,8BAA8B,EAAG,KAJlC;AAKC,IAAA,yBAAyB,EAAC,QAL3B;AAMC,IAAA,sBAAsB,EAAG,KAN1B;AAOC,IAAA,qBAAqB,EACpBiB,eAAQ,oCAAR;AARF,KAWC,4BAAC,qBAAD;AACC,IAAA,QAAQ,EAAG,CAAE3B,YADd;AAEC,IAAA,eAAe,EAAG0B,eAFnB;AAGC,IAAA,QAAQ,EAAGF;AAHZ,IAXD,EAgBGN,oBAAoB,EAhBvB,EAiBC,4BAAC,yBAAD,OAjBD,CAVD,EA6BGjB,sBAAsB,IACvB,4BAAC,wBAAD;AACC,IAAA,WAAW,EACV0B,eAAQ,yCAAR;AAFF,KAKC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,eAAJ,CADT;AAEC,IAAA,IAAI,EAAGC,oBAFR;AAGC,IAAA,OAAO,EAAGzB,cAHX;AAIC,IAAA,UAAU,EAAG;AACZmB,MAAAA,IAAI,EAAE,cAAI,0BAAJ;AADM;AAJd,IALD,CA9BF,CADD;AAgDA;;eAEc,sBAAS,CACvB,sBAAcO,MAAF,IAAc;AACzB,QAAM;AACLC,IAAAA,oBADK;AAELC,IAAAA,oBAFK;AAGLC,IAAAA,gBAHK;AAILC,IAAAA;AAJK,MAKFJ,MAAM,CAAEK,kBAAF,CALV;AAMA,QAAM;AAAEC,IAAAA;AAAF,MAAwBN,MAAM,CAAEO,aAAF,CAApC;AACA,QAAMC,kBAAkB,GAAGJ,gBAAgB,EAA3C;AACA,SAAO;AACNrC,IAAAA,OAAO,EAAEiC,MAAM,CAAEO,aAAF,CAAN,CAAsBE,aAAtB,EADH;AAENzC,IAAAA,OAAO,EAAEgC,MAAM,CAAEO,aAAF,CAAN,CAAsBG,aAAtB,EAFH;AAGN;AACAvC,IAAAA,YAAY,EACX6B,MAAM,CAAEW,YAAF,CAAN,CAAwBC,aAAxB,OAA4C,QAA5C,IACAN,iBAAiB,GAAGO,kBADpB,IAEAV,gBAAgB,CACfF,oBAAoB,CAAEC,oBAAoB,EAAtB,CADL,CAPX;AAUNY,IAAAA,iBAAiB,EAChBd,MAAM,CAAEW,YAAF,CAAN,CAAwBC,aAAxB,OAA4C,MAXvC;AAYNrC,IAAAA,KAAK,EAAEyB,MAAM,CAAEK,kBAAF,CAAN,CAA2BU,WAA3B,GAAyCxC,KAZ1C;AAaNC,IAAAA,iBAAiB,EAAE,CAAEgC;AAbf,GAAP;AAeA,CAxBD,CADuB,EA0BvB,wBAAgBQ,QAAF,IAAgB;AAC7B,QAAM;AAAEC,IAAAA;AAAF,MAAyBD,QAAQ,CAAEX,kBAAF,CAAvC;AACA,QAAM;AAAEa,IAAAA;AAAF,MAA+BF,QAAQ,CAAET,aAAF,CAA7C;AAEA,SAAO;AACNtC,IAAAA,IAAI,EAAE+C,QAAQ,CAAET,aAAF,CAAR,CAAwBtC,IADxB;AAENC,IAAAA,IAAI,EAAE8C,QAAQ,CAAET,aAAF,CAAR,CAAwBrC,IAFxB;;AAGNI,IAAAA,cAAc,GAAG;AAChB2C,MAAAA,kBAAkB;AAClBC,MAAAA,wBAAwB,CAAE,KAAF,CAAxB;AACA;;AANK,GAAP;AAQA,CAZD,CA1BuB,EAuCvB,iCAAmB;AAAEC,EAAAA,eAAe,EAAE;AAAnB,CAAnB,CAvCuB,EAwCvBC,iCAxCuB,CAAT,EAyCVtD,aAzCU,C","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform, ScrollView, View } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useRef, useState } from '@wordpress/element';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { withViewportMatch } from '@wordpress/viewport';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInserter,\n\tBlockToolbar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarGroup, ToolbarButton } from '@wordpress/components';\nimport {\n\tkeyboardClose,\n\tundo as undoIcon,\n\tredo as redoIcon,\n} from '@wordpress/icons';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport { store as editPostStore } from '../../../store';\n\nfunction HeaderToolbar( {\n\thasRedo,\n\thasUndo,\n\tredo,\n\tundo,\n\tshowInserter,\n\tshowKeyboardHideButton,\n\tgetStylesFromColorScheme,\n\tonHideKeyboard,\n\tisRTL,\n\tnoContentSelected,\n} ) {\n\tconst wasNoContentSelected = useRef( noContentSelected );\n\tconst [ isInserterOpen, setIsInserterOpen ] = useState( false );\n\n\tconst scrollViewRef = useRef( null );\n\tconst scrollToStart = () => {\n\t\t// scrollview doesn't seem to automatically adjust to RTL on Android so, scroll to end when Android\n\t\tconst isAndroid = Platform.OS === 'android';\n\t\tif ( isAndroid && isRTL ) {\n\t\t\tscrollViewRef.current.scrollToEnd();\n\t\t} else {\n\t\t\tscrollViewRef.current.scrollTo( { x: 0 } );\n\t\t}\n\t};\n\tconst renderHistoryButtons = () => {\n\t\tconst buttons = [\n\t\t\t/* TODO: replace with EditorHistoryRedo and EditorHistoryUndo. */\n\t\t\t<ToolbarButton\n\t\t\t\tkey=\"undoButton\"\n\t\t\t\ttitle={ __( 'Undo' ) }\n\t\t\t\ticon={ ! isRTL ? undoIcon : redoIcon }\n\t\t\t\tisDisabled={ ! hasUndo }\n\t\t\t\tonClick={ undo }\n\t\t\t\textraProps={ {\n\t\t\t\t\thint: __( 'Double tap to undo last change' ),\n\t\t\t\t} }\n\t\t\t/>,\n\t\t\t<ToolbarButton\n\t\t\t\tkey=\"redoButton\"\n\t\t\t\ttitle={ __( 'Redo' ) }\n\t\t\t\ticon={ ! isRTL ? redoIcon : undoIcon }\n\t\t\t\tisDisabled={ ! hasRedo }\n\t\t\t\tonClick={ redo }\n\t\t\t\textraProps={ {\n\t\t\t\t\thint: __( 'Double tap to redo last change' ),\n\t\t\t\t} }\n\t\t\t/>,\n\t\t];\n\n\t\treturn isRTL ? buttons.reverse() : buttons;\n\t};\n\n\tconst onToggleInserter = useCallback(\n\t\t( isOpen ) => {\n\t\t\tif ( isOpen ) {\n\t\t\t\twasNoContentSelected.current = noContentSelected;\n\t\t\t}\n\t\t\tsetIsInserterOpen( isOpen );\n\t\t},\n\t\t[ noContentSelected ]\n\t);\n\n\t// Expanded mode should be preserved while the inserter is open.\n\t// This way we prevent style updates during the opening transition.\n\tconst useExpandedMode = isInserterOpen\n\t\t? wasNoContentSelected.current\n\t\t: noContentSelected;\n\n\treturn (\n\t\t<View\n\t\t\tstyle={ [\n\t\t\t\tgetStylesFromColorScheme(\n\t\t\t\t\tstyles[ 'header-toolbar__container' ],\n\t\t\t\t\tstyles[ 'header-toolbar__container--dark' ]\n\t\t\t\t),\n\t\t\t\tuseExpandedMode &&\n\t\t\t\t\tstyles[ 'header-toolbar__container--expanded' ],\n\t\t\t] }\n\t\t>\n\t\t\t<ScrollView\n\t\t\t\tref={ scrollViewRef }\n\t\t\t\tonContentSizeChange={ scrollToStart }\n\t\t\t\thorizontal={ true }\n\t\t\t\tshowsHorizontalScrollIndicator={ false }\n\t\t\t\tkeyboardShouldPersistTaps=\"always\"\n\t\t\t\talwaysBounceHorizontal={ false }\n\t\t\t\tcontentContainerStyle={\n\t\t\t\t\tstyles[ 'header-toolbar__scrollable-content' ]\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<Inserter\n\t\t\t\t\tdisabled={ ! showInserter }\n\t\t\t\t\tuseExpandedMode={ useExpandedMode }\n\t\t\t\t\tonToggle={ onToggleInserter }\n\t\t\t\t/>\n\t\t\t\t{ renderHistoryButtons() }\n\t\t\t\t<BlockToolbar />\n\t\t\t</ScrollView>\n\t\t\t{ showKeyboardHideButton && (\n\t\t\t\t<ToolbarGroup\n\t\t\t\t\tpassedStyle={\n\t\t\t\t\t\tstyles[ 'header-toolbar__keyboard-hide-container' ]\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ttitle={ __( 'Hide keyboard' ) }\n\t\t\t\t\t\ticon={ keyboardClose }\n\t\t\t\t\t\tonClick={ onHideKeyboard }\n\t\t\t\t\t\textraProps={ {\n\t\t\t\t\t\t\thint: __( 'Tap to hide the keyboard' ),\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockRootClientId,\n\t\t\tgetBlockSelectionEnd,\n\t\t\thasInserterItems,\n\t\t\thasSelectedBlock,\n\t\t} = select( blockEditorStore );\n\t\tconst { getEditorSettings } = select( editorStore );\n\t\tconst isAnyBlockSelected = hasSelectedBlock();\n\t\treturn {\n\t\t\thasRedo: select( editorStore ).hasEditorRedo(),\n\t\t\thasUndo: select( editorStore ).hasEditorUndo(),\n\t\t\t// This setting (richEditingEnabled) should not live in the block editor's setting.\n\t\t\tshowInserter:\n\t\t\t\tselect( editPostStore ).getEditorMode() === 'visual' &&\n\t\t\t\tgetEditorSettings().richEditingEnabled &&\n\t\t\t\thasInserterItems(\n\t\t\t\t\tgetBlockRootClientId( getBlockSelectionEnd() )\n\t\t\t\t),\n\t\t\tisTextModeEnabled:\n\t\t\t\tselect( editPostStore ).getEditorMode() === 'text',\n\t\t\tisRTL: select( blockEditorStore ).getSettings().isRTL,\n\t\t\tnoContentSelected: ! isAnyBlockSelected,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch ) => {\n\t\tconst { clearSelectedBlock } = dispatch( blockEditorStore );\n\t\tconst { togglePostTitleSelection } = dispatch( editorStore );\n\n\t\treturn {\n\t\t\tredo: dispatch( editorStore ).redo,\n\t\t\tundo: dispatch( editorStore ).undo,\n\t\t\tonHideKeyboard() {\n\t\t\t\tclearSelectedBlock();\n\t\t\t\ttogglePostTitleSelection( false );\n\t\t\t},\n\t\t};\n\t} ),\n\twithViewportMatch( { isLargeViewport: 'medium' } ),\n\twithPreferredColorScheme,\n] )( HeaderToolbar );\n"]}
|
|
@@ -138,17 +138,19 @@ class Layout extends _element.Component {
|
|
|
138
138
|
} = this.props;
|
|
139
139
|
const isHtmlView = mode === 'text'; // Add a margin view at the bottom for the header.
|
|
140
140
|
|
|
141
|
-
const marginBottom = _reactNative.Platform.OS === 'android' && !isHtmlView ? _style2.default.
|
|
141
|
+
const marginBottom = _reactNative.Platform.OS === 'android' && !isHtmlView ? _style2.default['header-toolbar__container'].height : 0;
|
|
142
|
+
const containerStyles = getStylesFromColorScheme(_style.default.container, _style.default.containerDark);
|
|
142
143
|
const toolbarKeyboardAvoidingViewStyle = { ..._style.default.toolbarKeyboardAvoidingView,
|
|
143
144
|
left: this.state.safeAreaInsets.left,
|
|
144
145
|
right: this.state.safeAreaInsets.right,
|
|
145
|
-
bottom: this.state.safeAreaInsets.bottom
|
|
146
|
+
bottom: this.state.safeAreaInsets.bottom,
|
|
147
|
+
backgroundColor: containerStyles.backgroundColor
|
|
146
148
|
};
|
|
147
149
|
const editorStyles = [getStylesFromColorScheme(_style.default.background, _style.default.backgroundDark), (globalStyles === null || globalStyles === void 0 ? void 0 : globalStyles.background) && {
|
|
148
150
|
backgroundColor: globalStyles.background
|
|
149
151
|
}];
|
|
150
152
|
return (0, _element.createElement)(_components.Tooltip.Slot, null, (0, _element.createElement)(_reactNative.SafeAreaView, {
|
|
151
|
-
style:
|
|
153
|
+
style: containerStyles,
|
|
152
154
|
onLayout: this.onRootViewLayout
|
|
153
155
|
}, (0, _element.createElement)(_editor.AutosaveMonitor, {
|
|
154
156
|
disableIntervalChecks: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/layout/index.native.js"],"names":["Layout","Component","constructor","arguments","onSafeAreaInsetsUpdate","bind","onRootViewLayout","state","rootViewHeight","safeAreaInsets","top","bottom","right","left","SafeArea","getSafeAreaInsetsForRootView","then","componentDidMount","_isMounted","safeAreaSubscription","addEventListener","componentWillUnmount","remove","result","setState","event","setHeightState","height","nativeEvent","layout","sendNativeEditorDidLayout","renderHTML","globalStyles","props","renderVisual","isReady","setTitleRef","render","getStylesFromColorScheme","mode","isHtmlView","marginBottom","Platform","OS","headerToolbarStyles","container","toolbarKeyboardAvoidingViewStyle","styles","toolbarKeyboardAvoidingView","editorStyles","background","backgroundDark","backgroundColor","containerDark","flex","flexBasis","select","__unstableIsEditorReady","isEditorReady","editorStore","getEditorMode","editPostStore","getSettings","blockEditorStore","__experimentalGlobalStylesBaseStyles","color","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform, SafeAreaView, View } from 'react-native';\nimport SafeArea from 'react-native-safe-area';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { withSelect } from '@wordpress/data';\nimport {\n\tBottomSheetSettings,\n\tFloatingToolbar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport {\n\tHTMLTextInput,\n\tKeyboardAvoidingView,\n\tNoticeList,\n\tTooltip,\n\t__unstableAutocompletionItemsSlot as AutocompletionItemsSlot,\n} from '@wordpress/components';\nimport { AutosaveMonitor, store as editorStore } from '@wordpress/editor';\nimport { sendNativeEditorDidLayout } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport headerToolbarStyles from '../header/header-toolbar/style.scss';\nimport Header from '../header';\nimport VisualEditor from '../visual-editor';\nimport { store as editPostStore } from '../../store';\n\nclass Layout extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onSafeAreaInsetsUpdate = this.onSafeAreaInsetsUpdate.bind( this );\n\t\tthis.onRootViewLayout = this.onRootViewLayout.bind( this );\n\n\t\tthis.state = {\n\t\t\trootViewHeight: 0,\n\t\t\tsafeAreaInsets: { top: 0, bottom: 0, right: 0, left: 0 },\n\t\t};\n\n\t\tSafeArea.getSafeAreaInsetsForRootView().then(\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\t}\n\n\tcomponentDidMount() {\n\t\tthis._isMounted = true;\n\t\tthis.safeAreaSubscription = SafeArea.addEventListener(\n\t\t\t'safeAreaInsetsForRootViewDidChange',\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.safeAreaSubscription?.remove();\n\t\tthis._isMounted = false;\n\t}\n\n\tonSafeAreaInsetsUpdate( result ) {\n\t\tconst { safeAreaInsets } = result;\n\t\tif ( this._isMounted ) {\n\t\t\tthis.setState( { safeAreaInsets } );\n\t\t}\n\t}\n\n\tonRootViewLayout( event ) {\n\t\tif ( this._isMounted ) {\n\t\t\tthis.setHeightState( event );\n\t\t}\n\t}\n\n\tsetHeightState( event ) {\n\t\tconst { height } = event.nativeEvent.layout;\n\t\tif ( height !== this.state.rootViewHeight ) {\n\t\t\tthis.setState(\n\t\t\t\t{ rootViewHeight: height },\n\t\t\t\tsendNativeEditorDidLayout\n\t\t\t);\n\t\t}\n\t}\n\n\trenderHTML() {\n\t\tconst { globalStyles } = this.props;\n\t\treturn (\n\t\t\t<HTMLTextInput\n\t\t\t\tparentHeight={ this.state.rootViewHeight }\n\t\t\t\tstyle={ globalStyles }\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderVisual() {\n\t\tconst { isReady } = this.props;\n\n\t\tif ( ! isReady ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn <VisualEditor setTitleRef={ this.props.setTitleRef } />;\n\t}\n\n\trender() {\n\t\tconst { getStylesFromColorScheme, mode, globalStyles } = this.props;\n\n\t\tconst isHtmlView = mode === 'text';\n\n\t\t// Add a margin view at the bottom for the header.\n\t\tconst marginBottom =\n\t\t\tPlatform.OS === 'android' && ! isHtmlView\n\t\t\t\t? headerToolbarStyles.container.height\n\t\t\t\t: 0;\n\n\t\tconst toolbarKeyboardAvoidingViewStyle = {\n\t\t\t...styles.toolbarKeyboardAvoidingView,\n\t\t\tleft: this.state.safeAreaInsets.left,\n\t\t\tright: this.state.safeAreaInsets.right,\n\t\t\tbottom: this.state.safeAreaInsets.bottom,\n\t\t};\n\n\t\tconst editorStyles = [\n\t\t\tgetStylesFromColorScheme(\n\t\t\t\tstyles.background,\n\t\t\t\tstyles.backgroundDark\n\t\t\t),\n\t\t\tglobalStyles?.background && {\n\t\t\t\tbackgroundColor: globalStyles.background,\n\t\t\t},\n\t\t];\n\n\t\treturn (\n\t\t\t<Tooltip.Slot>\n\t\t\t\t<SafeAreaView\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.container,\n\t\t\t\t\t\tstyles.containerDark\n\t\t\t\t\t) }\n\t\t\t\t\tonLayout={ this.onRootViewLayout }\n\t\t\t\t>\n\t\t\t\t\t<AutosaveMonitor disableIntervalChecks />\n\t\t\t\t\t<View style={ editorStyles }>\n\t\t\t\t\t\t{ isHtmlView ? this.renderHTML() : this.renderVisual() }\n\t\t\t\t\t\t{ ! isHtmlView && Platform.OS === 'android' && (\n\t\t\t\t\t\t\t<FloatingToolbar />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<NoticeList />\n\t\t\t\t\t</View>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tflex: 0,\n\t\t\t\t\t\t\tflexBasis: marginBottom,\n\t\t\t\t\t\t\theight: marginBottom,\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isHtmlView && (\n\t\t\t\t\t\t<KeyboardAvoidingView\n\t\t\t\t\t\t\tparentHeight={ this.state.rootViewHeight }\n\t\t\t\t\t\t\tstyle={ toolbarKeyboardAvoidingViewStyle }\n\t\t\t\t\t\t\twithAnimatedHeight\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ Platform.OS === 'ios' && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<AutocompletionItemsSlot />\n\t\t\t\t\t\t\t\t\t<FloatingToolbar />\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<Header />\n\t\t\t\t\t\t\t<BottomSheetSettings />\n\t\t\t\t\t\t</KeyboardAvoidingView>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.OS === 'android' && <AutocompletionItemsSlot /> }\n\t\t\t\t</SafeAreaView>\n\t\t\t</Tooltip.Slot>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { __unstableIsEditorReady: isEditorReady } = select(\n\t\t\teditorStore\n\t\t);\n\t\tconst { getEditorMode } = select( editPostStore );\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst globalStyles = getSettings()?.__experimentalGlobalStylesBaseStyles\n\t\t\t?.color;\n\n\t\treturn {\n\t\t\tisReady: isEditorReady(),\n\t\t\tmode: getEditorMode(),\n\t\t\tglobalStyles,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( Layout );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/layout/index.native.js"],"names":["Layout","Component","constructor","arguments","onSafeAreaInsetsUpdate","bind","onRootViewLayout","state","rootViewHeight","safeAreaInsets","top","bottom","right","left","SafeArea","getSafeAreaInsetsForRootView","then","componentDidMount","_isMounted","safeAreaSubscription","addEventListener","componentWillUnmount","remove","result","setState","event","setHeightState","height","nativeEvent","layout","sendNativeEditorDidLayout","renderHTML","globalStyles","props","renderVisual","isReady","setTitleRef","render","getStylesFromColorScheme","mode","isHtmlView","marginBottom","Platform","OS","headerToolbarStyles","containerStyles","styles","container","containerDark","toolbarKeyboardAvoidingViewStyle","toolbarKeyboardAvoidingView","backgroundColor","editorStyles","background","backgroundDark","flex","flexBasis","select","__unstableIsEditorReady","isEditorReady","editorStore","getEditorMode","editPostStore","getSettings","blockEditorStore","__experimentalGlobalStylesBaseStyles","color","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform, SafeAreaView, View } from 'react-native';\nimport SafeArea from 'react-native-safe-area';\n\n/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { withSelect } from '@wordpress/data';\nimport {\n\tBottomSheetSettings,\n\tFloatingToolbar,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport {\n\tHTMLTextInput,\n\tKeyboardAvoidingView,\n\tNoticeList,\n\tTooltip,\n\t__unstableAutocompletionItemsSlot as AutocompletionItemsSlot,\n} from '@wordpress/components';\nimport { AutosaveMonitor, store as editorStore } from '@wordpress/editor';\nimport { sendNativeEditorDidLayout } from '@wordpress/react-native-bridge';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport headerToolbarStyles from '../header/header-toolbar/style.scss';\nimport Header from '../header';\nimport VisualEditor from '../visual-editor';\nimport { store as editPostStore } from '../../store';\n\nclass Layout extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.onSafeAreaInsetsUpdate = this.onSafeAreaInsetsUpdate.bind( this );\n\t\tthis.onRootViewLayout = this.onRootViewLayout.bind( this );\n\n\t\tthis.state = {\n\t\t\trootViewHeight: 0,\n\t\t\tsafeAreaInsets: { top: 0, bottom: 0, right: 0, left: 0 },\n\t\t};\n\n\t\tSafeArea.getSafeAreaInsetsForRootView().then(\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\t}\n\n\tcomponentDidMount() {\n\t\tthis._isMounted = true;\n\t\tthis.safeAreaSubscription = SafeArea.addEventListener(\n\t\t\t'safeAreaInsetsForRootViewDidChange',\n\t\t\tthis.onSafeAreaInsetsUpdate\n\t\t);\n\t}\n\n\tcomponentWillUnmount() {\n\t\tthis.safeAreaSubscription?.remove();\n\t\tthis._isMounted = false;\n\t}\n\n\tonSafeAreaInsetsUpdate( result ) {\n\t\tconst { safeAreaInsets } = result;\n\t\tif ( this._isMounted ) {\n\t\t\tthis.setState( { safeAreaInsets } );\n\t\t}\n\t}\n\n\tonRootViewLayout( event ) {\n\t\tif ( this._isMounted ) {\n\t\t\tthis.setHeightState( event );\n\t\t}\n\t}\n\n\tsetHeightState( event ) {\n\t\tconst { height } = event.nativeEvent.layout;\n\t\tif ( height !== this.state.rootViewHeight ) {\n\t\t\tthis.setState(\n\t\t\t\t{ rootViewHeight: height },\n\t\t\t\tsendNativeEditorDidLayout\n\t\t\t);\n\t\t}\n\t}\n\n\trenderHTML() {\n\t\tconst { globalStyles } = this.props;\n\t\treturn (\n\t\t\t<HTMLTextInput\n\t\t\t\tparentHeight={ this.state.rootViewHeight }\n\t\t\t\tstyle={ globalStyles }\n\t\t\t/>\n\t\t);\n\t}\n\n\trenderVisual() {\n\t\tconst { isReady } = this.props;\n\n\t\tif ( ! isReady ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn <VisualEditor setTitleRef={ this.props.setTitleRef } />;\n\t}\n\n\trender() {\n\t\tconst { getStylesFromColorScheme, mode, globalStyles } = this.props;\n\n\t\tconst isHtmlView = mode === 'text';\n\n\t\t// Add a margin view at the bottom for the header.\n\t\tconst marginBottom =\n\t\t\tPlatform.OS === 'android' && ! isHtmlView\n\t\t\t\t? headerToolbarStyles[ 'header-toolbar__container' ].height\n\t\t\t\t: 0;\n\n\t\tconst containerStyles = getStylesFromColorScheme(\n\t\t\tstyles.container,\n\t\t\tstyles.containerDark\n\t\t);\n\n\t\tconst toolbarKeyboardAvoidingViewStyle = {\n\t\t\t...styles.toolbarKeyboardAvoidingView,\n\t\t\tleft: this.state.safeAreaInsets.left,\n\t\t\tright: this.state.safeAreaInsets.right,\n\t\t\tbottom: this.state.safeAreaInsets.bottom,\n\t\t\tbackgroundColor: containerStyles.backgroundColor,\n\t\t};\n\n\t\tconst editorStyles = [\n\t\t\tgetStylesFromColorScheme(\n\t\t\t\tstyles.background,\n\t\t\t\tstyles.backgroundDark\n\t\t\t),\n\t\t\tglobalStyles?.background && {\n\t\t\t\tbackgroundColor: globalStyles.background,\n\t\t\t},\n\t\t];\n\n\t\treturn (\n\t\t\t<Tooltip.Slot>\n\t\t\t\t<SafeAreaView\n\t\t\t\t\tstyle={ containerStyles }\n\t\t\t\t\tonLayout={ this.onRootViewLayout }\n\t\t\t\t>\n\t\t\t\t\t<AutosaveMonitor disableIntervalChecks />\n\t\t\t\t\t<View style={ editorStyles }>\n\t\t\t\t\t\t{ isHtmlView ? this.renderHTML() : this.renderVisual() }\n\t\t\t\t\t\t{ ! isHtmlView && Platform.OS === 'android' && (\n\t\t\t\t\t\t\t<FloatingToolbar />\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<NoticeList />\n\t\t\t\t\t</View>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tflex: 0,\n\t\t\t\t\t\t\tflexBasis: marginBottom,\n\t\t\t\t\t\t\theight: marginBottom,\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isHtmlView && (\n\t\t\t\t\t\t<KeyboardAvoidingView\n\t\t\t\t\t\t\tparentHeight={ this.state.rootViewHeight }\n\t\t\t\t\t\t\tstyle={ toolbarKeyboardAvoidingViewStyle }\n\t\t\t\t\t\t\twithAnimatedHeight\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ Platform.OS === 'ios' && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<AutocompletionItemsSlot />\n\t\t\t\t\t\t\t\t\t<FloatingToolbar />\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<Header />\n\t\t\t\t\t\t\t<BottomSheetSettings />\n\t\t\t\t\t\t</KeyboardAvoidingView>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.OS === 'android' && <AutocompletionItemsSlot /> }\n\t\t\t\t</SafeAreaView>\n\t\t\t</Tooltip.Slot>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select ) => {\n\t\tconst { __unstableIsEditorReady: isEditorReady } = select(\n\t\t\teditorStore\n\t\t);\n\t\tconst { getEditorMode } = select( editPostStore );\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst globalStyles = getSettings()?.__experimentalGlobalStylesBaseStyles\n\t\t\t?.color;\n\n\t\treturn {\n\t\t\tisReady: isEditorReady(),\n\t\t\tmode: getEditorMode(),\n\t\t\tglobalStyles,\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( Layout );\n"]}
|
|
@@ -64,11 +64,7 @@ function ListViewSidebar() {
|
|
|
64
64
|
})), (0, _element.createElement)("div", {
|
|
65
65
|
className: "edit-post-editor__list-view-panel-content",
|
|
66
66
|
ref: (0, _compose.useMergeRefs)([contentFocusReturnRef, focusOnMountRef])
|
|
67
|
-
}, (0, _element.createElement)(_blockEditor.__experimentalListView,
|
|
68
|
-
showNestedBlocks: true,
|
|
69
|
-
__experimentalFeatures: true,
|
|
70
|
-
__experimentalPersistentListViewFeatures: true
|
|
71
|
-
})))
|
|
67
|
+
}, (0, _element.createElement)(_blockEditor.__experimentalListView, null)))
|
|
72
68
|
);
|
|
73
69
|
}
|
|
74
70
|
//# sourceMappingURL=list-view-sidebar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/secondary-sidebar/list-view-sidebar.js"],"names":["ListViewSidebar","setIsListViewOpened","editPostStore","focusOnMountRef","headerFocusReturnRef","contentFocusReturnRef","closeOnEscape","event","keyCode","ESCAPE","defaultPrevented","preventDefault","instanceId","labelId","closeSmall"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AAKA;;AAnBA;AACA;AACA;;AAcA;AACA;AACA;AAGe,SAASA,eAAT,GAA2B;AACzC,QAAM;AAAEC,IAAAA;AAAF,MAA0B,uBAAaC,YAAb,CAAhC;AAEA,QAAMC,eAAe,GAAG,8BAAiB,cAAjB,CAAxB;AACA,QAAMC,oBAAoB,GAAG,8BAA7B;AACA,QAAMC,qBAAqB,GAAG,8BAA9B;;AACA,WAASC,aAAT,CAAwBC,KAAxB,EAAgC;AAC/B,QAAKA,KAAK,CAACC,OAAN,KAAkBC,gBAAlB,IAA4B,CAAEF,KAAK,CAACG,gBAAzC,EAA4D;AAC3DH,MAAAA,KAAK,CAACI,cAAN;AACAV,MAAAA,mBAAmB,CAAE,KAAF,CAAnB;AACA;AACD;;AAED,QAAMW,UAAU,GAAG,4BAAeZ,eAAf,CAAnB;AACA,QAAMa,OAAO,GAAI,2CAA2CD,UAAY,EAAxE;AAEA,SACC;AACA;AACC,yBAAkBC,OADnB;AAEC,MAAA,SAAS,EAAC,mCAFX;AAGC,MAAA,SAAS,EAAGP;AAHb,OAKC;AACC,MAAA,SAAS,EAAC,0CADX;AAEC,MAAA,GAAG,EAAGF;AAFP,OAIC;AAAQ,MAAA,EAAE,EAAGS;AAAb,OAAyB,cAAI,WAAJ,CAAzB,CAJD,EAKC,4BAAC,kBAAD;AACC,MAAA,IAAI,EAAGC,iBADR;AAEC,MAAA,KAAK,EAAG,cAAI,yBAAJ,CAFT;AAGC,MAAA,OAAO,EAAG,MAAMb,mBAAmB,CAAE,KAAF;AAHpC,MALD,CALD,EAgBC;AACC,MAAA,SAAS,EAAC,2CADX;AAEC,MAAA,GAAG,EAAG,2BAAc,CACnBI,qBADmB,EAEnBF,eAFmB,CAAd;AAFP,OAOC,4BAAC,mCAAD
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/secondary-sidebar/list-view-sidebar.js"],"names":["ListViewSidebar","setIsListViewOpened","editPostStore","focusOnMountRef","headerFocusReturnRef","contentFocusReturnRef","closeOnEscape","event","keyCode","ESCAPE","defaultPrevented","preventDefault","instanceId","labelId","closeSmall"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AAKA;;AAnBA;AACA;AACA;;AAcA;AACA;AACA;AAGe,SAASA,eAAT,GAA2B;AACzC,QAAM;AAAEC,IAAAA;AAAF,MAA0B,uBAAaC,YAAb,CAAhC;AAEA,QAAMC,eAAe,GAAG,8BAAiB,cAAjB,CAAxB;AACA,QAAMC,oBAAoB,GAAG,8BAA7B;AACA,QAAMC,qBAAqB,GAAG,8BAA9B;;AACA,WAASC,aAAT,CAAwBC,KAAxB,EAAgC;AAC/B,QAAKA,KAAK,CAACC,OAAN,KAAkBC,gBAAlB,IAA4B,CAAEF,KAAK,CAACG,gBAAzC,EAA4D;AAC3DH,MAAAA,KAAK,CAACI,cAAN;AACAV,MAAAA,mBAAmB,CAAE,KAAF,CAAnB;AACA;AACD;;AAED,QAAMW,UAAU,GAAG,4BAAeZ,eAAf,CAAnB;AACA,QAAMa,OAAO,GAAI,2CAA2CD,UAAY,EAAxE;AAEA,SACC;AACA;AACC,yBAAkBC,OADnB;AAEC,MAAA,SAAS,EAAC,mCAFX;AAGC,MAAA,SAAS,EAAGP;AAHb,OAKC;AACC,MAAA,SAAS,EAAC,0CADX;AAEC,MAAA,GAAG,EAAGF;AAFP,OAIC;AAAQ,MAAA,EAAE,EAAGS;AAAb,OAAyB,cAAI,WAAJ,CAAzB,CAJD,EAKC,4BAAC,kBAAD;AACC,MAAA,IAAI,EAAGC,iBADR;AAEC,MAAA,KAAK,EAAG,cAAI,yBAAJ,CAFT;AAGC,MAAA,OAAO,EAAG,MAAMb,mBAAmB,CAAE,KAAF;AAHpC,MALD,CALD,EAgBC;AACC,MAAA,SAAS,EAAC,2CADX;AAEC,MAAA,GAAG,EAAG,2BAAc,CACnBI,qBADmB,EAEnBF,eAFmB,CAAd;AAFP,OAOC,4BAAC,mCAAD,OAPD,CAhBD;AAFD;AA6BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalListView as ListView } from '@wordpress/block-editor';\nimport { Button } from '@wordpress/components';\nimport {\n\tuseFocusOnMount,\n\tuseFocusReturn,\n\tuseInstanceId,\n\tuseMergeRefs,\n} from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\nimport { ESCAPE } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as editPostStore } from '../../store';\n\nexport default function ListViewSidebar() {\n\tconst { setIsListViewOpened } = useDispatch( editPostStore );\n\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\tconst headerFocusReturnRef = useFocusReturn();\n\tconst contentFocusReturnRef = useFocusReturn();\n\tfunction closeOnEscape( event ) {\n\t\tif ( event.keyCode === ESCAPE && ! event.defaultPrevented ) {\n\t\t\tevent.preventDefault();\n\t\t\tsetIsListViewOpened( false );\n\t\t}\n\t}\n\n\tconst instanceId = useInstanceId( ListViewSidebar );\n\tconst labelId = `edit-post-editor__list-view-panel-label-${ instanceId }`;\n\n\treturn (\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\taria-labelledby={ labelId }\n\t\t\tclassName=\"edit-post-editor__list-view-panel\"\n\t\t\tonKeyDown={ closeOnEscape }\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-editor__list-view-panel-header\"\n\t\t\t\tref={ headerFocusReturnRef }\n\t\t\t>\n\t\t\t\t<strong id={ labelId }>{ __( 'List View' ) }</strong>\n\t\t\t\t<Button\n\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\tlabel={ __( 'Close List View Sidebar' ) }\n\t\t\t\t\tonClick={ () => setIsListViewOpened( false ) }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-post-editor__list-view-panel-content\"\n\t\t\t\tref={ useMergeRefs( [\n\t\t\t\t\tcontentFocusReturnRef,\n\t\t\t\t\tfocusOnMountRef,\n\t\t\t\t] ) }\n\t\t\t>\n\t\t\t\t<ListView />\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/plugin-document-setting-panel/index.js"],"names":["Fill","Slot","PluginDocumentSettingFill","isEnabled","panelName","opened","onToggle","className","title","icon","children","PluginDocumentSettingPanel","context","ownProps","undefined","name","select","editPostStore","isEditorPanelOpened","isEditorPanelEnabled","dispatch","toggleEditorPanelOpened"],"mappings":";;;;;;;;;;;AAOA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AAjBA;AACA;AACA;;AAEA;AACA;AACA;;AAOA;AACA;AACA;AAIO,MAAM;AAAEA,EAAAA,IAAF;AAAQC,EAAAA;AAAR,IAAiB,gCAAgB,4BAAhB,CAAvB;;;;AAEP,MAAMC,yBAAyB,GAAG,QAS3B;AAAA,MAT6B;AACnCC,IAAAA,SADmC;AAEnCC,IAAAA,SAFmC;AAGnCC,IAAAA,MAHmC;AAInCC,IAAAA,QAJmC;AAKnCC,IAAAA,SALmC;AAMnCC,IAAAA,KANmC;AAOnCC,IAAAA,IAPmC;AAQnCC,IAAAA;AARmC,GAS7B;AACN,SACC,qDACC,4BAAC,+CAAD;AACC,IAAA,KAAK,EAAGF,KADT;AAEC,IAAA,SAAS,EAAGJ;AAFb,IADD,EAKC,4BAAC,IAAD,QACGD,SAAS,IACV,4BAAC,qBAAD;AACC,IAAA,SAAS,EAAGI,SADb;AAEC,IAAA,KAAK,EAAGC,KAFT;AAGC,IAAA,IAAI,EAAGC,IAHR;AAIC,IAAA,MAAM,EAAGJ,MAJV;AAKC,IAAA,QAAQ,EAAGC;AALZ,KAOGI,QAPH,CAFF,CALD,CADD;AAqBA,CA/BD;AAiCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,0BAA0B,GAAG,sBAClC,gCAAmB,CAAEC,OAAF,EAAWC,QAAX,KAAyB;AAC3C,MAAKC,SAAS,KAAKD,QAAQ,CAACE,IAA5B,EAAmC;AAClC,mHAAS,sDAAT;AACA;;AACD,SAAO;
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/plugin-document-setting-panel/index.js"],"names":["Fill","Slot","PluginDocumentSettingFill","isEnabled","panelName","opened","onToggle","className","title","icon","children","PluginDocumentSettingPanel","context","ownProps","undefined","name","select","editPostStore","isEditorPanelOpened","isEditorPanelEnabled","dispatch","toggleEditorPanelOpened"],"mappings":";;;;;;;;;;;AAOA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AAjBA;AACA;AACA;;AAEA;AACA;AACA;;AAOA;AACA;AACA;AAIO,MAAM;AAAEA,EAAAA,IAAF;AAAQC,EAAAA;AAAR,IAAiB,gCAAgB,4BAAhB,CAAvB;;;;AAEP,MAAMC,yBAAyB,GAAG,QAS3B;AAAA,MAT6B;AACnCC,IAAAA,SADmC;AAEnCC,IAAAA,SAFmC;AAGnCC,IAAAA,MAHmC;AAInCC,IAAAA,QAJmC;AAKnCC,IAAAA,SALmC;AAMnCC,IAAAA,KANmC;AAOnCC,IAAAA,IAPmC;AAQnCC,IAAAA;AARmC,GAS7B;AACN,SACC,qDACC,4BAAC,+CAAD;AACC,IAAA,KAAK,EAAGF,KADT;AAEC,IAAA,SAAS,EAAGJ;AAFb,IADD,EAKC,4BAAC,IAAD,QACGD,SAAS,IACV,4BAAC,qBAAD;AACC,IAAA,SAAS,EAAGI,SADb;AAEC,IAAA,KAAK,EAAGC,KAFT;AAGC,IAAA,IAAI,EAAGC,IAHR;AAIC,IAAA,MAAM,EAAGJ,MAJV;AAKC,IAAA,QAAQ,EAAGC;AALZ,KAOGI,QAPH,CAFF,CALD,CADD;AAqBA,CA/BD;AAiCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMC,0BAA0B,GAAG,sBAClC,gCAAmB,CAAEC,OAAF,EAAWC,QAAX,KAAyB;AAC3C,MAAKC,SAAS,KAAKD,QAAQ,CAACE,IAA5B,EAAmC;AAClC,mHAAS,sDAAT;AACA;;AACD,SAAO;AACNX,IAAAA,SAAS,EAAG,GAAGQ,OAAO,CAACG,IAAM,IAAIF,QAAQ,CAACE,IAAM;AAD1C,GAAP;AAGA,CAPD,CADkC,EASlC,sBAAY,CAAEC,MAAF,YAA6B;AAAA,MAAnB;AAAEZ,IAAAA;AAAF,GAAmB;AACxC,SAAO;AACNC,IAAAA,MAAM,EAAEW,MAAM,CAAEC,YAAF,CAAN,CAAwBC,mBAAxB,CAA6Cd,SAA7C,CADF;AAEND,IAAAA,SAAS,EAAEa,MAAM,CAAEC,YAAF,CAAN,CAAwBE,oBAAxB,CACVf,SADU;AAFL,GAAP;AAMA,CAPD,CATkC,EAiBlC,wBAAc,CAAEgB,QAAF;AAAA,MAAY;AAAEhB,IAAAA;AAAF,GAAZ;AAAA,SAAiC;AAC9CE,IAAAA,QAAQ,GAAG;AACV,aAAOc,QAAQ,CAAEH,YAAF,CAAR,CAA0BI,uBAA1B,CACNjB,SADM,CAAP;AAGA;;AAL6C,GAAjC;AAAA,CAAd,CAjBkC,EAwBhCF,yBAxBgC,CAAnC;AA0BAS,0BAA0B,CAACV,IAA3B,GAAkCA,IAAlC;eAEeU,0B","sourcesContent":["/**\n * Defines as extensibility slot for the Settings sidebar\n */\n\n/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\nimport { withPluginContext } from '@wordpress/plugins';\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport warning from '@wordpress/warning';\n\n/**\n * Internal dependencies\n */\nimport { EnablePluginDocumentSettingPanelOption } from '../../preferences-modal/options';\nimport { store as editPostStore } from '../../../store';\n\nexport const { Fill, Slot } = createSlotFill( 'PluginDocumentSettingPanel' );\n\nconst PluginDocumentSettingFill = ( {\n\tisEnabled,\n\tpanelName,\n\topened,\n\tonToggle,\n\tclassName,\n\ttitle,\n\ticon,\n\tchildren,\n} ) => {\n\treturn (\n\t\t<>\n\t\t\t<EnablePluginDocumentSettingPanelOption\n\t\t\t\tlabel={ title }\n\t\t\t\tpanelName={ panelName }\n\t\t\t/>\n\t\t\t<Fill>\n\t\t\t\t{ isEnabled && (\n\t\t\t\t\t<PanelBody\n\t\t\t\t\t\tclassName={ className }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\topened={ opened }\n\t\t\t\t\t\tonToggle={ onToggle }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ children }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</Fill>\n\t\t</>\n\t);\n};\n\n/**\n * Renders items below the Status & Availability panel in the Document Sidebar.\n *\n * @param {Object} props Component properties.\n * @param {string} [props.name] The machine-friendly name for the panel.\n * @param {string} [props.className] An optional class name added to the row.\n * @param {string} [props.title] The title of the panel\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var el = wp.element.createElement;\n * var __ = wp.i18n.__;\n * var registerPlugin = wp.plugins.registerPlugin;\n * var PluginDocumentSettingPanel = wp.editPost.PluginDocumentSettingPanel;\n *\n * function MyDocumentSettingPlugin() {\n * \treturn el(\n * \t\tPluginDocumentSettingPanel,\n * \t\t{\n * \t\t\tclassName: 'my-document-setting-plugin',\n * \t\t\ttitle: 'My Panel',\n * \t\t},\n * \t\t__( 'My Document Setting Panel' )\n * \t);\n * }\n *\n * registerPlugin( 'my-document-setting-plugin', {\n * \t\trender: MyDocumentSettingPlugin\n * } );\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { registerPlugin } from '@wordpress/plugins';\n * import { PluginDocumentSettingPanel } from '@wordpress/edit-post';\n *\n * const MyDocumentSettingTest = () => (\n * \t\t<PluginDocumentSettingPanel className=\"my-document-setting-plugin\" title=\"My Panel\">\n *\t\t\t<p>My Document Setting Panel</p>\n *\t\t</PluginDocumentSettingPanel>\n *\t);\n *\n * registerPlugin( 'document-setting-test', { render: MyDocumentSettingTest } );\n * ```\n *\n * @return {WPComponent} The component to be rendered.\n */\nconst PluginDocumentSettingPanel = compose(\n\twithPluginContext( ( context, ownProps ) => {\n\t\tif ( undefined === ownProps.name ) {\n\t\t\twarning( 'PluginDocumentSettingPanel requires a name property.' );\n\t\t}\n\t\treturn {\n\t\t\tpanelName: `${ context.name }/${ ownProps.name }`,\n\t\t};\n\t} ),\n\twithSelect( ( select, { panelName } ) => {\n\t\treturn {\n\t\t\topened: select( editPostStore ).isEditorPanelOpened( panelName ),\n\t\t\tisEnabled: select( editPostStore ).isEditorPanelEnabled(\n\t\t\t\tpanelName\n\t\t\t),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { panelName } ) => ( {\n\t\tonToggle() {\n\t\t\treturn dispatch( editPostStore ).toggleEditorPanelOpened(\n\t\t\t\tpanelName\n\t\t\t);\n\t\t},\n\t} ) )\n)( PluginDocumentSettingFill );\n\nPluginDocumentSettingPanel.Slot = Slot;\n\nexport default PluginDocumentSettingPanel;\n"]}
|
|
@@ -18,16 +18,24 @@ var _editor = require("@wordpress/editor");
|
|
|
18
18
|
* WordPress dependencies
|
|
19
19
|
*/
|
|
20
20
|
function PostVisibility() {
|
|
21
|
+
const rowRef = (0, _element.useRef)();
|
|
21
22
|
return (0, _element.createElement)(_editor.PostVisibilityCheck, {
|
|
22
23
|
render: _ref => {
|
|
23
24
|
let {
|
|
24
25
|
canEdit
|
|
25
26
|
} = _ref;
|
|
26
27
|
return (0, _element.createElement)(_components.PanelRow, {
|
|
28
|
+
ref: rowRef,
|
|
27
29
|
className: "edit-post-post-visibility"
|
|
28
30
|
}, (0, _element.createElement)("span", null, (0, _i18n.__)('Visibility')), !canEdit && (0, _element.createElement)("span", null, (0, _element.createElement)(_editor.PostVisibilityLabel, null)), canEdit && (0, _element.createElement)(_components.Dropdown, {
|
|
29
31
|
position: "bottom left",
|
|
30
32
|
contentClassName: "edit-post-post-visibility__dialog",
|
|
33
|
+
popoverProps: {
|
|
34
|
+
// Anchor the popover to the middle of the
|
|
35
|
+
// entire row so that it doesn't move around
|
|
36
|
+
// when the label changes.
|
|
37
|
+
anchorRef: rowRef.current
|
|
38
|
+
},
|
|
31
39
|
renderToggle: _ref2 => {
|
|
32
40
|
let {
|
|
33
41
|
isOpen,
|
|
@@ -40,7 +48,14 @@ function PostVisibility() {
|
|
|
40
48
|
variant: "tertiary"
|
|
41
49
|
}, (0, _element.createElement)(_editor.PostVisibilityLabel, null));
|
|
42
50
|
},
|
|
43
|
-
renderContent:
|
|
51
|
+
renderContent: _ref3 => {
|
|
52
|
+
let {
|
|
53
|
+
onClose
|
|
54
|
+
} = _ref3;
|
|
55
|
+
return (0, _element.createElement)(_editor.PostVisibility, {
|
|
56
|
+
onClose: onClose
|
|
57
|
+
});
|
|
58
|
+
}
|
|
44
59
|
}));
|
|
45
60
|
}
|
|
46
61
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-visibility/index.js"],"names":["PostVisibility","canEdit","isOpen","onToggle"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/sidebar/post-visibility/index.js"],"names":["PostVisibility","rowRef","canEdit","anchorRef","current","isOpen","onToggle","onClose"],"mappings":";;;;;;;;AAUA;;AAPA;;AACA;;AACA;;AALA;AACA;AACA;AAUO,SAASA,cAAT,GAA0B;AAChC,QAAMC,MAAM,GAAG,sBAAf;AACA,SACC,4BAAC,2BAAD;AACC,IAAA,MAAM,EAAG;AAAA,UAAE;AAAEC,QAAAA;AAAF,OAAF;AAAA,aACR,4BAAC,oBAAD;AAAU,QAAA,GAAG,EAAGD,MAAhB;AAAyB,QAAA,SAAS,EAAC;AAAnC,SACC,0CAAQ,cAAI,YAAJ,CAAR,CADD,EAEG,CAAEC,OAAF,IACD,0CACC,4BAAC,2BAAD,OADD,CAHF,EAOGA,OAAO,IACR,4BAAC,oBAAD;AACC,QAAA,QAAQ,EAAC,aADV;AAEC,QAAA,gBAAgB,EAAC,mCAFlB;AAGC,QAAA,YAAY,EAAG;AACd;AACA;AACA;AACAC,UAAAA,SAAS,EAAEF,MAAM,CAACG;AAJJ,SAHhB;AASC,QAAA,YAAY,EAAG;AAAA,cAAE;AAAEC,YAAAA,MAAF;AAAUC,YAAAA;AAAV,WAAF;AAAA,iBACd,4BAAC,kBAAD;AACC,6BAAgBD,MADjB;AAEC,YAAA,SAAS,EAAC,mCAFX;AAGC,YAAA,OAAO,EAAGC,QAHX;AAIC,YAAA,OAAO,EAAC;AAJT,aAMC,4BAAC,2BAAD,OAND,CADc;AAAA,SAThB;AAmBC,QAAA,aAAa,EAAG;AAAA,cAAE;AAAEC,YAAAA;AAAF,WAAF;AAAA,iBACf,4BAAC,sBAAD;AAAoB,YAAA,OAAO,EAAGA;AAA9B,YADe;AAAA;AAnBjB,QARF,CADQ;AAAA;AADV,IADD;AAuCA;;eAEcP,c","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelRow, Dropdown, Button } from '@wordpress/components';\nimport {\n\tPostVisibility as PostVisibilityForm,\n\tPostVisibilityLabel,\n\tPostVisibilityCheck,\n} from '@wordpress/editor';\nimport { useRef } from '@wordpress/element';\n\nexport function PostVisibility() {\n\tconst rowRef = useRef();\n\treturn (\n\t\t<PostVisibilityCheck\n\t\t\trender={ ( { canEdit } ) => (\n\t\t\t\t<PanelRow ref={ rowRef } className=\"edit-post-post-visibility\">\n\t\t\t\t\t<span>{ __( 'Visibility' ) }</span>\n\t\t\t\t\t{ ! canEdit && (\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<PostVisibilityLabel />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canEdit && (\n\t\t\t\t\t\t<Dropdown\n\t\t\t\t\t\t\tposition=\"bottom left\"\n\t\t\t\t\t\t\tcontentClassName=\"edit-post-post-visibility__dialog\"\n\t\t\t\t\t\t\tpopoverProps={ {\n\t\t\t\t\t\t\t\t// Anchor the popover to the middle of the\n\t\t\t\t\t\t\t\t// entire row so that it doesn't move around\n\t\t\t\t\t\t\t\t// when the label changes.\n\t\t\t\t\t\t\t\tanchorRef: rowRef.current,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\t\tclassName=\"edit-post-post-visibility__toggle\"\n\t\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<PostVisibilityLabel />\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\trenderContent={ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t<PostVisibilityForm onClose={ onClose } />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelRow>\n\t\t\t) }\n\t\t/>\n\t);\n}\n\nexport default PostVisibility;\n"]}
|
|
@@ -87,11 +87,13 @@ function VisualEditor(_ref2) {
|
|
|
87
87
|
} = _ref2;
|
|
88
88
|
const {
|
|
89
89
|
deviceType,
|
|
90
|
+
isWelcomeGuideVisible,
|
|
90
91
|
isTemplateMode,
|
|
91
92
|
wrapperBlockName,
|
|
92
93
|
wrapperUniqueId
|
|
93
94
|
} = (0, _data.useSelect)(select => {
|
|
94
95
|
const {
|
|
96
|
+
isFeatureActive,
|
|
95
97
|
isEditingTemplate,
|
|
96
98
|
__experimentalGetPreviewDeviceType
|
|
97
99
|
} = select(_store.store);
|
|
@@ -112,11 +114,15 @@ function VisualEditor(_ref2) {
|
|
|
112
114
|
|
|
113
115
|
return {
|
|
114
116
|
deviceType: __experimentalGetPreviewDeviceType(),
|
|
117
|
+
isWelcomeGuideVisible: isFeatureActive('welcomeGuide'),
|
|
115
118
|
isTemplateMode: _isTemplateMode,
|
|
116
119
|
wrapperBlockName: _wrapperBlockName,
|
|
117
120
|
wrapperUniqueId: getCurrentPostId()
|
|
118
121
|
};
|
|
119
122
|
}, []);
|
|
123
|
+
const {
|
|
124
|
+
isCleanNewPost
|
|
125
|
+
} = (0, _data.useSelect)(_editor.store);
|
|
120
126
|
const hasMetaBoxes = (0, _data.useSelect)(select => select(_store.store).hasMetaBoxes(), []);
|
|
121
127
|
const {
|
|
122
128
|
themeSupportsLayout,
|
|
@@ -183,6 +189,16 @@ function VisualEditor(_ref2) {
|
|
|
183
189
|
|
|
184
190
|
return undefined;
|
|
185
191
|
}, [isTemplateMode, themeSupportsLayout, defaultLayout]);
|
|
192
|
+
const titleRef = (0, _element.useRef)();
|
|
193
|
+
(0, _element.useEffect)(() => {
|
|
194
|
+
var _titleRef$current;
|
|
195
|
+
|
|
196
|
+
if (isWelcomeGuideVisible || !isCleanNewPost()) {
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
titleRef === null || titleRef === void 0 ? void 0 : (_titleRef$current = titleRef.current) === null || _titleRef$current === void 0 ? void 0 : _titleRef$current.focus();
|
|
201
|
+
}, [isWelcomeGuideVisible, isCleanNewPost]);
|
|
186
202
|
return (0, _element.createElement)(_blockEditor.BlockTools, {
|
|
187
203
|
__unstableContentRef: ref,
|
|
188
204
|
className: (0, _classnames.default)('edit-post-visual-editor', {
|
|
@@ -219,7 +235,9 @@ function VisualEditor(_ref2) {
|
|
|
219
235
|
}), !isTemplateMode && (0, _element.createElement)("div", {
|
|
220
236
|
className: "edit-post-visual-editor__post-title-wrapper",
|
|
221
237
|
contentEditable: false
|
|
222
|
-
}, (0, _element.createElement)(_editor.PostTitle,
|
|
238
|
+
}, (0, _element.createElement)(_editor.PostTitle, {
|
|
239
|
+
ref: titleRef
|
|
240
|
+
})), (0, _element.createElement)(RecursionProvider, null, (0, _element.createElement)(_blockEditor.BlockList, {
|
|
223
241
|
className: isTemplateMode ? 'wp-site-blocks' : undefined,
|
|
224
242
|
__experimentalLayout: layout
|
|
225
243
|
}))))), (0, _element.createElement)(_blockEditor.__unstableBlockSettingsMenuFirstItem, null, _ref3 => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isEditingTemplate","__experimentalGetPreviewDeviceType","editPostStore","getCurrentPostId","getCurrentPostType","editorStore","_isTemplateMode","_wrapperBlockName","hasMetaBoxes","themeSupportsLayout","_settings","blockEditorStore","getSettings","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","RecursionProvider","layout","type","undefined","padding","arrowLeft","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n} from '@wordpress/block-editor';\nimport { useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeSupportsLayout, assets } = useSelect( ( select ) => {\n\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t};\n\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst [ , RecursionProvider ] = useNoRecursiveRenders(\n\t\twrapperUniqueId,\n\t\twrapperBlockName\n\t);\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\treturn defaultLayout;\n\t\t}\n\n\t\treturn undefined;\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout && ! isTemplateMode && (\n\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\tlayout={ defaultLayout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-post/src/components/visual-editor/index.js"],"names":["MaybeIframe","children","contentRef","shouldIframe","styles","assets","style","ref","flex","width","height","display","VisualEditor","deviceType","isWelcomeGuideVisible","isTemplateMode","wrapperBlockName","wrapperUniqueId","select","isFeatureActive","isEditingTemplate","__experimentalGetPreviewDeviceType","editPostStore","getCurrentPostId","getCurrentPostType","editorStore","_isTemplateMode","_wrapperBlockName","isCleanNewPost","hasMetaBoxes","themeSupportsLayout","_settings","blockEditorStore","getSettings","supportsLayout","__unstableResolvedAssets","clearSelectedBlock","setIsEditingTemplate","desktopCanvasStyles","margin","flexFlow","background","templateModeStyles","borderRadius","border","borderBottom","resizedCanvasStyles","defaultLayout","previewMode","toLowerCase","animatedStyles","paddingBottom","blockSelectionClearerRef","RecursionProvider","layout","type","undefined","titleRef","current","focus","padding","arrowLeft","onClose"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tVisualEditorGlobalKeyboardShortcuts,\n\tPostTitle,\n\tstore as editorStore,\n} from '@wordpress/editor';\nimport {\n\tWritingFlow,\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n\t__unstableUseBlockSelectionClearer as useBlockSelectionClearer,\n\t__unstableUseTypewriter as useTypewriter,\n\t__unstableUseClipboardHandler as useClipboardHandler,\n\t__unstableUseTypingObserver as useTypingObserver,\n\t__unstableBlockSettingsMenuFirstItem,\n\t__experimentalUseResizeCanvas as useResizeCanvas,\n\t__unstableEditorStyles as EditorStyles,\n\tuseSetting,\n\t__experimentalLayoutStyle as LayoutStyle,\n\t__unstableUseMouseMoveTypingReset as useMouseMoveTypingReset,\n\t__unstableIframe as Iframe,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useMemo } from '@wordpress/element';\nimport { Button, __unstableMotion as motion } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { arrowLeft } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport BlockInspectorButton from './block-inspector-button';\nimport { store as editPostStore } from '../../store';\n\nfunction MaybeIframe( {\n\tchildren,\n\tcontentRef,\n\tshouldIframe,\n\tstyles,\n\tassets,\n\tstyle,\n} ) {\n\tconst ref = useMouseMoveTypingReset();\n\n\tif ( ! shouldIframe ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<EditorStyles styles={ styles } />\n\t\t\t\t<WritingFlow\n\t\t\t\t\tref={ contentRef }\n\t\t\t\t\tclassName=\"editor-styles-wrapper\"\n\t\t\t\t\tstyle={ { flex: '1', ...style } }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t>\n\t\t\t\t\t{ children }\n\t\t\t\t</WritingFlow>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Iframe\n\t\t\thead={ <EditorStyles styles={ styles } /> }\n\t\t\tassets={ assets }\n\t\t\tref={ ref }\n\t\t\tcontentRef={ contentRef }\n\t\t\tstyle={ { width: '100%', height: '100%', display: 'block' } }\n\t\t\tname=\"editor-canvas\"\n\t\t>\n\t\t\t{ children }\n\t\t</Iframe>\n\t);\n}\n\nexport default function VisualEditor( { styles } ) {\n\tconst {\n\t\tdeviceType,\n\t\tisWelcomeGuideVisible,\n\t\tisTemplateMode,\n\t\twrapperBlockName,\n\t\twrapperUniqueId,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tisFeatureActive,\n\t\t\tisEditingTemplate,\n\t\t\t__experimentalGetPreviewDeviceType,\n\t\t} = select( editPostStore );\n\t\tconst { getCurrentPostId, getCurrentPostType } = select( editorStore );\n\t\tconst _isTemplateMode = isEditingTemplate();\n\t\tlet _wrapperBlockName;\n\n\t\tif ( getCurrentPostType() === 'wp_block' ) {\n\t\t\t_wrapperBlockName = 'core/block';\n\t\t} else if ( ! _isTemplateMode ) {\n\t\t\t_wrapperBlockName = 'core/post-content';\n\t\t}\n\n\t\treturn {\n\t\t\tdeviceType: __experimentalGetPreviewDeviceType(),\n\t\t\tisWelcomeGuideVisible: isFeatureActive( 'welcomeGuide' ),\n\t\t\tisTemplateMode: _isTemplateMode,\n\t\t\twrapperBlockName: _wrapperBlockName,\n\t\t\twrapperUniqueId: getCurrentPostId(),\n\t\t};\n\t}, [] );\n\tconst { isCleanNewPost } = useSelect( editorStore );\n\tconst hasMetaBoxes = useSelect(\n\t\t( select ) => select( editPostStore ).hasMetaBoxes(),\n\t\t[]\n\t);\n\tconst { themeSupportsLayout, assets } = useSelect( ( select ) => {\n\t\tconst _settings = select( blockEditorStore ).getSettings();\n\t\treturn {\n\t\t\tthemeSupportsLayout: _settings.supportsLayout,\n\t\t\tassets: _settings.__unstableResolvedAssets,\n\t\t};\n\t}, [] );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\tconst { setIsEditingTemplate } = useDispatch( editPostStore );\n\tconst desktopCanvasStyles = {\n\t\theight: '100%',\n\t\twidth: '100%',\n\t\tmargin: 0,\n\t\tdisplay: 'flex',\n\t\tflexFlow: 'column',\n\t\t// Default background color so that grey\n\t\t// .edit-post-editor-regions__content color doesn't show through.\n\t\tbackground: 'white',\n\t};\n\tconst templateModeStyles = {\n\t\t...desktopCanvasStyles,\n\t\tborderRadius: '2px 2px 0 0',\n\t\tborder: '1px solid #ddd',\n\t\tborderBottom: 0,\n\t};\n\tconst resizedCanvasStyles = useResizeCanvas( deviceType, isTemplateMode );\n\tconst defaultLayout = useSetting( 'layout' );\n\tconst previewMode = 'is-' + deviceType.toLowerCase() + '-preview';\n\n\tlet animatedStyles = isTemplateMode\n\t\t? templateModeStyles\n\t\t: desktopCanvasStyles;\n\tif ( resizedCanvasStyles ) {\n\t\tanimatedStyles = resizedCanvasStyles;\n\t}\n\n\tlet paddingBottom;\n\n\t// Add a constant padding for the typewritter effect. When typing at the\n\t// bottom, there needs to be room to scroll up.\n\tif ( ! hasMetaBoxes && ! resizedCanvasStyles && ! isTemplateMode ) {\n\t\tpaddingBottom = '40vh';\n\t}\n\n\tconst ref = useRef();\n\tconst contentRef = useMergeRefs( [\n\t\tref,\n\t\tuseClipboardHandler(),\n\t\tuseTypewriter(),\n\t\tuseTypingObserver(),\n\t\tuseBlockSelectionClearer(),\n\t] );\n\n\tconst blockSelectionClearerRef = useBlockSelectionClearer();\n\n\tconst [ , RecursionProvider ] = useNoRecursiveRenders(\n\t\twrapperUniqueId,\n\t\twrapperBlockName\n\t);\n\n\tconst layout = useMemo( () => {\n\t\tif ( isTemplateMode ) {\n\t\t\treturn { type: 'default' };\n\t\t}\n\n\t\tif ( themeSupportsLayout ) {\n\t\t\treturn defaultLayout;\n\t\t}\n\n\t\treturn undefined;\n\t}, [ isTemplateMode, themeSupportsLayout, defaultLayout ] );\n\n\tconst titleRef = useRef();\n\tuseEffect( () => {\n\t\tif ( isWelcomeGuideVisible || ! isCleanNewPost() ) {\n\t\t\treturn;\n\t\t}\n\t\ttitleRef?.current?.focus();\n\t}, [ isWelcomeGuideVisible, isCleanNewPost ] );\n\n\treturn (\n\t\t<BlockTools\n\t\t\t__unstableContentRef={ ref }\n\t\t\tclassName={ classnames( 'edit-post-visual-editor', {\n\t\t\t\t'is-template-mode': isTemplateMode,\n\t\t\t} ) }\n\t\t>\n\t\t\t<VisualEditorGlobalKeyboardShortcuts />\n\t\t\t<motion.div\n\t\t\t\tclassName=\"edit-post-visual-editor__content-area\"\n\t\t\t\tanimate={ {\n\t\t\t\t\tpadding: isTemplateMode ? '48px 48px 0' : '0',\n\t\t\t\t} }\n\t\t\t\tref={ blockSelectionClearerRef }\n\t\t\t>\n\t\t\t\t{ isTemplateMode && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"edit-post-visual-editor__exit-template-mode\"\n\t\t\t\t\t\ticon={ arrowLeft }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\tsetIsEditingTemplate( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Back' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t\t<motion.div\n\t\t\t\t\tanimate={ animatedStyles }\n\t\t\t\t\tinitial={ desktopCanvasStyles }\n\t\t\t\t\tclassName={ previewMode }\n\t\t\t\t>\n\t\t\t\t\t<MaybeIframe\n\t\t\t\t\t\tshouldIframe={\n\t\t\t\t\t\t\tisTemplateMode ||\n\t\t\t\t\t\t\tdeviceType === 'Tablet' ||\n\t\t\t\t\t\t\tdeviceType === 'Mobile'\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\tstyles={ styles }\n\t\t\t\t\t\tassets={ assets }\n\t\t\t\t\t\tstyle={ { paddingBottom } }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ themeSupportsLayout && ! isTemplateMode && (\n\t\t\t\t\t\t\t<LayoutStyle\n\t\t\t\t\t\t\t\tselector=\".edit-post-visual-editor__post-title-wrapper, .block-editor-block-list__layout.is-root-container\"\n\t\t\t\t\t\t\t\tlayout={ defaultLayout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! isTemplateMode && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"edit-post-visual-editor__post-title-wrapper\"\n\t\t\t\t\t\t\t\tcontentEditable={ false }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<PostTitle ref={ titleRef } />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<RecursionProvider>\n\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\tclassName={\n\t\t\t\t\t\t\t\t\tisTemplateMode\n\t\t\t\t\t\t\t\t\t\t? 'wp-site-blocks'\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__experimentalLayout={ layout }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</RecursionProvider>\n\t\t\t\t\t</MaybeIframe>\n\t\t\t\t</motion.div>\n\t\t\t</motion.div>\n\t\t\t<__unstableBlockSettingsMenuFirstItem>\n\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t<BlockInspectorButton onClick={ onClose } />\n\t\t\t\t) }\n\t\t\t</__unstableBlockSettingsMenuFirstItem>\n\t\t</BlockTools>\n\t);\n}\n"]}
|
|
@@ -8,7 +8,7 @@ import { Platform, ScrollView, View } from 'react-native';
|
|
|
8
8
|
* WordPress dependencies
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import { useRef } from '@wordpress/element';
|
|
11
|
+
import { useCallback, useRef, useState } from '@wordpress/element';
|
|
12
12
|
import { compose, withPreferredColorScheme } from '@wordpress/compose';
|
|
13
13
|
import { withSelect, withDispatch } from '@wordpress/data';
|
|
14
14
|
import { withViewportMatch } from '@wordpress/viewport';
|
|
@@ -34,8 +34,11 @@ function HeaderToolbar(_ref) {
|
|
|
34
34
|
showKeyboardHideButton,
|
|
35
35
|
getStylesFromColorScheme,
|
|
36
36
|
onHideKeyboard,
|
|
37
|
-
isRTL
|
|
37
|
+
isRTL,
|
|
38
|
+
noContentSelected
|
|
38
39
|
} = _ref;
|
|
40
|
+
const wasNoContentSelected = useRef(noContentSelected);
|
|
41
|
+
const [isInserterOpen, setIsInserterOpen] = useState(false);
|
|
39
42
|
const scrollViewRef = useRef(null);
|
|
40
43
|
|
|
41
44
|
const scrollToStart = () => {
|
|
@@ -76,8 +79,18 @@ function HeaderToolbar(_ref) {
|
|
|
76
79
|
return isRTL ? buttons.reverse() : buttons;
|
|
77
80
|
};
|
|
78
81
|
|
|
82
|
+
const onToggleInserter = useCallback(isOpen => {
|
|
83
|
+
if (isOpen) {
|
|
84
|
+
wasNoContentSelected.current = noContentSelected;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
setIsInserterOpen(isOpen);
|
|
88
|
+
}, [noContentSelected]); // Expanded mode should be preserved while the inserter is open.
|
|
89
|
+
// This way we prevent style updates during the opening transition.
|
|
90
|
+
|
|
91
|
+
const useExpandedMode = isInserterOpen ? wasNoContentSelected.current : noContentSelected;
|
|
79
92
|
return createElement(View, {
|
|
80
|
-
style: getStylesFromColorScheme(styles
|
|
93
|
+
style: [getStylesFromColorScheme(styles['header-toolbar__container'], styles['header-toolbar__container--dark']), useExpandedMode && styles['header-toolbar__container--expanded']]
|
|
81
94
|
}, createElement(ScrollView, {
|
|
82
95
|
ref: scrollViewRef,
|
|
83
96
|
onContentSizeChange: scrollToStart,
|
|
@@ -85,11 +98,13 @@ function HeaderToolbar(_ref) {
|
|
|
85
98
|
showsHorizontalScrollIndicator: false,
|
|
86
99
|
keyboardShouldPersistTaps: "always",
|
|
87
100
|
alwaysBounceHorizontal: false,
|
|
88
|
-
contentContainerStyle: styles
|
|
101
|
+
contentContainerStyle: styles['header-toolbar__scrollable-content']
|
|
89
102
|
}, createElement(Inserter, {
|
|
90
|
-
disabled: !showInserter
|
|
103
|
+
disabled: !showInserter,
|
|
104
|
+
useExpandedMode: useExpandedMode,
|
|
105
|
+
onToggle: onToggleInserter
|
|
91
106
|
}), renderHistoryButtons(), createElement(BlockToolbar, null)), showKeyboardHideButton && createElement(ToolbarGroup, {
|
|
92
|
-
passedStyle: styles
|
|
107
|
+
passedStyle: styles['header-toolbar__keyboard-hide-container']
|
|
93
108
|
}, createElement(ToolbarButton, {
|
|
94
109
|
title: __('Hide keyboard'),
|
|
95
110
|
icon: keyboardClose,
|
|
@@ -104,18 +119,21 @@ export default compose([withSelect(select => {
|
|
|
104
119
|
const {
|
|
105
120
|
getBlockRootClientId,
|
|
106
121
|
getBlockSelectionEnd,
|
|
107
|
-
hasInserterItems
|
|
122
|
+
hasInserterItems,
|
|
123
|
+
hasSelectedBlock
|
|
108
124
|
} = select(blockEditorStore);
|
|
109
125
|
const {
|
|
110
126
|
getEditorSettings
|
|
111
127
|
} = select(editorStore);
|
|
128
|
+
const isAnyBlockSelected = hasSelectedBlock();
|
|
112
129
|
return {
|
|
113
130
|
hasRedo: select(editorStore).hasEditorRedo(),
|
|
114
131
|
hasUndo: select(editorStore).hasEditorUndo(),
|
|
115
132
|
// This setting (richEditingEnabled) should not live in the block editor's setting.
|
|
116
133
|
showInserter: select(editPostStore).getEditorMode() === 'visual' && getEditorSettings().richEditingEnabled && hasInserterItems(getBlockRootClientId(getBlockSelectionEnd())),
|
|
117
134
|
isTextModeEnabled: select(editPostStore).getEditorMode() === 'text',
|
|
118
|
-
isRTL: select(blockEditorStore).getSettings().isRTL
|
|
135
|
+
isRTL: select(blockEditorStore).getSettings().isRTL,
|
|
136
|
+
noContentSelected: !isAnyBlockSelected
|
|
119
137
|
};
|
|
120
138
|
}), withDispatch(dispatch => {
|
|
121
139
|
const {
|