@wordpress/edit-widgets 4.12.0 → 4.12.1-next.d6164808d3.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.
@@ -17,6 +17,8 @@ var _mediaUtils = require("@wordpress/media-utils");
17
17
 
18
18
  var _data = require("@wordpress/data");
19
19
 
20
+ var _coreData = require("@wordpress/core-data");
21
+
20
22
  var _blockEditor = require("@wordpress/block-editor");
21
23
 
22
24
  var _reusableBlocks = require("@wordpress/reusable-blocks");
@@ -27,8 +29,6 @@ var _preferences = require("@wordpress/preferences");
27
29
 
28
30
  var _keyboardShortcuts2 = _interopRequireDefault(require("../keyboard-shortcuts"));
29
31
 
30
- var _coreData = require("@wordpress/core-data");
31
-
32
32
  var _utils = require("../../store/utils");
33
33
 
34
34
  var _useLastSelectedWidgetArea = _interopRequireDefault(require("../../hooks/use-last-selected-widget-area"));
@@ -50,30 +50,25 @@ function WidgetAreasBlockEditorProvider(_ref) {
50
50
  children,
51
51
  ...props
52
52
  } = _ref;
53
+ const mediaPermissions = (0, _coreData.useResourcePermissions)('media');
53
54
  const {
54
- hasUploadPermissions,
55
55
  reusableBlocks,
56
56
  isFixedToolbarActive,
57
57
  keepCaretInsideBlock
58
- } = (0, _data.useSelect)(select => {
59
- var _select$canUser;
60
-
61
- return {
62
- hasUploadPermissions: (_select$canUser = select(_coreData.store).canUser('create', 'media')) !== null && _select$canUser !== void 0 ? _select$canUser : true,
63
- widgetAreas: select(_store.store).getWidgetAreas(),
64
- widgets: select(_store.store).getWidgets(),
65
- reusableBlocks: _constants.ALLOW_REUSABLE_BLOCKS ? select(_coreData.store).getEntityRecords('postType', 'wp_block') : [],
66
- isFixedToolbarActive: !!select(_preferences.store).get('core/edit-widgets', 'fixedToolbar'),
67
- keepCaretInsideBlock: !!select(_preferences.store).get('core/edit-widgets', 'keepCaretInsideBlock')
68
- };
69
- }, []);
58
+ } = (0, _data.useSelect)(select => ({
59
+ widgetAreas: select(_store.store).getWidgetAreas(),
60
+ widgets: select(_store.store).getWidgets(),
61
+ reusableBlocks: _constants.ALLOW_REUSABLE_BLOCKS ? select(_coreData.store).getEntityRecords('postType', 'wp_block') : [],
62
+ isFixedToolbarActive: !!select(_preferences.store).get('core/edit-widgets', 'fixedToolbar'),
63
+ keepCaretInsideBlock: !!select(_preferences.store).get('core/edit-widgets', 'keepCaretInsideBlock')
64
+ }), []);
70
65
  const {
71
66
  setIsInserterOpened
72
67
  } = (0, _data.useDispatch)(_store.store);
73
68
  const settings = (0, _element.useMemo)(() => {
74
69
  let mediaUploadBlockEditor;
75
70
 
76
- if (hasUploadPermissions) {
71
+ if (mediaPermissions.canCreate) {
77
72
  mediaUploadBlockEditor = _ref2 => {
78
73
  let {
79
74
  onError,
@@ -100,7 +95,7 @@ function WidgetAreasBlockEditorProvider(_ref) {
100
95
  templateLock: 'all',
101
96
  __experimentalSetIsInserterOpened: setIsInserterOpened
102
97
  };
103
- }, [blockEditorSettings, isFixedToolbarActive, keepCaretInsideBlock, hasUploadPermissions, reusableBlocks, setIsInserterOpened]);
98
+ }, [blockEditorSettings, isFixedToolbarActive, keepCaretInsideBlock, mediaPermissions.canCreate, reusableBlocks, setIsInserterOpened]);
104
99
  const widgetAreaId = (0, _useLastSelectedWidgetArea.default)();
105
100
  const [blocks, onInput, onChange] = (0, _coreData.useEntityBlockEditor)(_utils.KIND, _utils.POST_TYPE, {
106
101
  id: (0, _utils.buildWidgetAreasPostId)()
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/widget-areas-block-editor-provider/index.js"],"names":["WidgetAreasBlockEditorProvider","blockEditorSettings","children","props","hasUploadPermissions","reusableBlocks","isFixedToolbarActive","keepCaretInsideBlock","select","coreStore","canUser","widgetAreas","editWidgetsStore","getWidgetAreas","widgets","getWidgets","ALLOW_REUSABLE_BLOCKS","getEntityRecords","preferencesStore","get","setIsInserterOpened","settings","mediaUploadBlockEditor","onError","argumentsObject","wpAllowedMimeTypes","allowedMimeTypes","message","__experimentalReusableBlocks","hasFixedToolbar","mediaUpload","templateLock","__experimentalSetIsInserterOpened","widgetAreaId","blocks","onInput","onChange","KIND","POST_TYPE","id"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SlotFillProvider } from '@wordpress/components';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport {\n\tBlockEditorProvider,\n\tBlockEditorKeyboardShortcuts,\n\tCopyHandler,\n} from '@wordpress/block-editor';\nimport { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcuts from '../keyboard-shortcuts';\nimport { useEntityBlockEditor, store as coreStore } from '@wordpress/core-data';\nimport { buildWidgetAreasPostId, KIND, POST_TYPE } from '../../store/utils';\nimport useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';\nimport { store as editWidgetsStore } from '../../store';\nimport { ALLOW_REUSABLE_BLOCKS } from '../../constants';\n\nexport default function WidgetAreasBlockEditorProvider( {\n\tblockEditorSettings,\n\tchildren,\n\t...props\n} ) {\n\tconst {\n\t\thasUploadPermissions,\n\t\treusableBlocks,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t} = useSelect(\n\t\t( select ) => ( {\n\t\t\thasUploadPermissions:\n\t\t\t\tselect( coreStore ).canUser( 'create', 'media' ) ?? true,\n\t\t\twidgetAreas: select( editWidgetsStore ).getWidgetAreas(),\n\t\t\twidgets: select( editWidgetsStore ).getWidgets(),\n\t\t\treusableBlocks: ALLOW_REUSABLE_BLOCKS\n\t\t\t\t? select( coreStore ).getEntityRecords( 'postType', 'wp_block' )\n\t\t\t\t: [],\n\t\t\tisFixedToolbarActive: !! select( preferencesStore ).get(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'fixedToolbar'\n\t\t\t),\n\t\t\tkeepCaretInsideBlock: !! select( preferencesStore ).get(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'keepCaretInsideBlock'\n\t\t\t),\n\t\t} ),\n\t\t[]\n\t);\n\tconst { setIsInserterOpened } = useDispatch( editWidgetsStore );\n\n\tconst settings = useMemo( () => {\n\t\tlet mediaUploadBlockEditor;\n\t\tif ( hasUploadPermissions ) {\n\t\t\tmediaUploadBlockEditor = ( { onError, ...argumentsObject } ) => {\n\t\t\t\tuploadMedia( {\n\t\t\t\t\twpAllowedMimeTypes: blockEditorSettings.allowedMimeTypes,\n\t\t\t\t\tonError: ( { message } ) => onError( message ),\n\t\t\t\t\t...argumentsObject,\n\t\t\t\t} );\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\t...blockEditorSettings,\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\thasFixedToolbar: isFixedToolbarActive,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: mediaUploadBlockEditor,\n\t\t\ttemplateLock: 'all',\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t};\n\t}, [\n\t\tblockEditorSettings,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t\thasUploadPermissions,\n\t\treusableBlocks,\n\t\tsetIsInserterOpened,\n\t] );\n\n\tconst widgetAreaId = useLastSelectedWidgetArea();\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\tKIND,\n\t\tPOST_TYPE,\n\t\t{ id: buildWidgetAreasPostId() }\n\t);\n\n\treturn (\n\t\t<ShortcutProvider>\n\t\t\t<BlockEditorKeyboardShortcuts.Register />\n\t\t\t<KeyboardShortcuts.Register />\n\t\t\t<SlotFillProvider>\n\t\t\t\t<BlockEditorProvider\n\t\t\t\t\tvalue={ blocks }\n\t\t\t\t\tonInput={ onInput }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<CopyHandler>{ children }</CopyHandler>\n\t\t\t\t\t<ReusableBlocksMenuItems rootClientId={ widgetAreaId } />\n\t\t\t\t</BlockEditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t</ShortcutProvider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/widget-areas-block-editor-provider/index.js"],"names":["WidgetAreasBlockEditorProvider","blockEditorSettings","children","props","mediaPermissions","reusableBlocks","isFixedToolbarActive","keepCaretInsideBlock","select","widgetAreas","editWidgetsStore","getWidgetAreas","widgets","getWidgets","ALLOW_REUSABLE_BLOCKS","coreStore","getEntityRecords","preferencesStore","get","setIsInserterOpened","settings","mediaUploadBlockEditor","canCreate","onError","argumentsObject","wpAllowedMimeTypes","allowedMimeTypes","message","__experimentalReusableBlocks","hasFixedToolbar","mediaUpload","templateLock","__experimentalSetIsInserterOpened","widgetAreaId","blocks","onInput","onChange","KIND","POST_TYPE","id"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SlotFillProvider } from '@wordpress/components';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEntityBlockEditor,\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMemo } from '@wordpress/element';\nimport {\n\tBlockEditorProvider,\n\tBlockEditorKeyboardShortcuts,\n\tCopyHandler,\n} from '@wordpress/block-editor';\nimport { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcuts from '../keyboard-shortcuts';\nimport { buildWidgetAreasPostId, KIND, POST_TYPE } from '../../store/utils';\nimport useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';\nimport { store as editWidgetsStore } from '../../store';\nimport { ALLOW_REUSABLE_BLOCKS } from '../../constants';\n\nexport default function WidgetAreasBlockEditorProvider( {\n\tblockEditorSettings,\n\tchildren,\n\t...props\n} ) {\n\tconst mediaPermissions = useResourcePermissions( 'media' );\n\tconst { reusableBlocks, isFixedToolbarActive, keepCaretInsideBlock } =\n\t\tuseSelect(\n\t\t\t( select ) => ( {\n\t\t\t\twidgetAreas: select( editWidgetsStore ).getWidgetAreas(),\n\t\t\t\twidgets: select( editWidgetsStore ).getWidgets(),\n\t\t\t\treusableBlocks: ALLOW_REUSABLE_BLOCKS\n\t\t\t\t\t? select( coreStore ).getEntityRecords(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t'wp_block'\n\t\t\t\t\t )\n\t\t\t\t\t: [],\n\t\t\t\tisFixedToolbarActive: !! select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-widgets',\n\t\t\t\t\t'fixedToolbar'\n\t\t\t\t),\n\t\t\t\tkeepCaretInsideBlock: !! select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-widgets',\n\t\t\t\t\t'keepCaretInsideBlock'\n\t\t\t\t),\n\t\t\t} ),\n\t\t\t[]\n\t\t);\n\tconst { setIsInserterOpened } = useDispatch( editWidgetsStore );\n\n\tconst settings = useMemo( () => {\n\t\tlet mediaUploadBlockEditor;\n\t\tif ( mediaPermissions.canCreate ) {\n\t\t\tmediaUploadBlockEditor = ( { onError, ...argumentsObject } ) => {\n\t\t\t\tuploadMedia( {\n\t\t\t\t\twpAllowedMimeTypes: blockEditorSettings.allowedMimeTypes,\n\t\t\t\t\tonError: ( { message } ) => onError( message ),\n\t\t\t\t\t...argumentsObject,\n\t\t\t\t} );\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\t...blockEditorSettings,\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\thasFixedToolbar: isFixedToolbarActive,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: mediaUploadBlockEditor,\n\t\t\ttemplateLock: 'all',\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t};\n\t}, [\n\t\tblockEditorSettings,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t\tmediaPermissions.canCreate,\n\t\treusableBlocks,\n\t\tsetIsInserterOpened,\n\t] );\n\n\tconst widgetAreaId = useLastSelectedWidgetArea();\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\tKIND,\n\t\tPOST_TYPE,\n\t\t{ id: buildWidgetAreasPostId() }\n\t);\n\n\treturn (\n\t\t<ShortcutProvider>\n\t\t\t<BlockEditorKeyboardShortcuts.Register />\n\t\t\t<KeyboardShortcuts.Register />\n\t\t\t<SlotFillProvider>\n\t\t\t\t<BlockEditorProvider\n\t\t\t\t\tvalue={ blocks }\n\t\t\t\t\tonInput={ onInput }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<CopyHandler>{ children }</CopyHandler>\n\t\t\t\t\t<ReusableBlocksMenuItems rootClientId={ widgetAreaId } />\n\t\t\t\t</BlockEditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t</ShortcutProvider>\n\t);\n}\n"]}
@@ -7,6 +7,7 @@ import { createElement } from "@wordpress/element";
7
7
  import { SlotFillProvider } from '@wordpress/components';
8
8
  import { uploadMedia } from '@wordpress/media-utils';
9
9
  import { useDispatch, useSelect } from '@wordpress/data';
10
+ import { useEntityBlockEditor, store as coreStore, useResourcePermissions } from '@wordpress/core-data';
10
11
  import { useMemo } from '@wordpress/element';
11
12
  import { BlockEditorProvider, BlockEditorKeyboardShortcuts, CopyHandler } from '@wordpress/block-editor';
12
13
  import { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';
@@ -17,7 +18,6 @@ import { store as preferencesStore } from '@wordpress/preferences';
17
18
  */
18
19
 
19
20
  import KeyboardShortcuts from '../keyboard-shortcuts';
20
- import { useEntityBlockEditor, store as coreStore } from '@wordpress/core-data';
21
21
  import { buildWidgetAreasPostId, KIND, POST_TYPE } from '../../store/utils';
22
22
  import useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';
23
23
  import { store as editWidgetsStore } from '../../store';
@@ -28,30 +28,25 @@ export default function WidgetAreasBlockEditorProvider(_ref) {
28
28
  children,
29
29
  ...props
30
30
  } = _ref;
31
+ const mediaPermissions = useResourcePermissions('media');
31
32
  const {
32
- hasUploadPermissions,
33
33
  reusableBlocks,
34
34
  isFixedToolbarActive,
35
35
  keepCaretInsideBlock
36
- } = useSelect(select => {
37
- var _select$canUser;
38
-
39
- return {
40
- hasUploadPermissions: (_select$canUser = select(coreStore).canUser('create', 'media')) !== null && _select$canUser !== void 0 ? _select$canUser : true,
41
- widgetAreas: select(editWidgetsStore).getWidgetAreas(),
42
- widgets: select(editWidgetsStore).getWidgets(),
43
- reusableBlocks: ALLOW_REUSABLE_BLOCKS ? select(coreStore).getEntityRecords('postType', 'wp_block') : [],
44
- isFixedToolbarActive: !!select(preferencesStore).get('core/edit-widgets', 'fixedToolbar'),
45
- keepCaretInsideBlock: !!select(preferencesStore).get('core/edit-widgets', 'keepCaretInsideBlock')
46
- };
47
- }, []);
36
+ } = useSelect(select => ({
37
+ widgetAreas: select(editWidgetsStore).getWidgetAreas(),
38
+ widgets: select(editWidgetsStore).getWidgets(),
39
+ reusableBlocks: ALLOW_REUSABLE_BLOCKS ? select(coreStore).getEntityRecords('postType', 'wp_block') : [],
40
+ isFixedToolbarActive: !!select(preferencesStore).get('core/edit-widgets', 'fixedToolbar'),
41
+ keepCaretInsideBlock: !!select(preferencesStore).get('core/edit-widgets', 'keepCaretInsideBlock')
42
+ }), []);
48
43
  const {
49
44
  setIsInserterOpened
50
45
  } = useDispatch(editWidgetsStore);
51
46
  const settings = useMemo(() => {
52
47
  let mediaUploadBlockEditor;
53
48
 
54
- if (hasUploadPermissions) {
49
+ if (mediaPermissions.canCreate) {
55
50
  mediaUploadBlockEditor = _ref2 => {
56
51
  let {
57
52
  onError,
@@ -78,7 +73,7 @@ export default function WidgetAreasBlockEditorProvider(_ref) {
78
73
  templateLock: 'all',
79
74
  __experimentalSetIsInserterOpened: setIsInserterOpened
80
75
  };
81
- }, [blockEditorSettings, isFixedToolbarActive, keepCaretInsideBlock, hasUploadPermissions, reusableBlocks, setIsInserterOpened]);
76
+ }, [blockEditorSettings, isFixedToolbarActive, keepCaretInsideBlock, mediaPermissions.canCreate, reusableBlocks, setIsInserterOpened]);
82
77
  const widgetAreaId = useLastSelectedWidgetArea();
83
78
  const [blocks, onInput, onChange] = useEntityBlockEditor(KIND, POST_TYPE, {
84
79
  id: buildWidgetAreasPostId()
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-widgets/src/components/widget-areas-block-editor-provider/index.js"],"names":["SlotFillProvider","uploadMedia","useDispatch","useSelect","useMemo","BlockEditorProvider","BlockEditorKeyboardShortcuts","CopyHandler","ReusableBlocksMenuItems","ShortcutProvider","store","preferencesStore","KeyboardShortcuts","useEntityBlockEditor","coreStore","buildWidgetAreasPostId","KIND","POST_TYPE","useLastSelectedWidgetArea","editWidgetsStore","ALLOW_REUSABLE_BLOCKS","WidgetAreasBlockEditorProvider","blockEditorSettings","children","props","hasUploadPermissions","reusableBlocks","isFixedToolbarActive","keepCaretInsideBlock","select","canUser","widgetAreas","getWidgetAreas","widgets","getWidgets","getEntityRecords","get","setIsInserterOpened","settings","mediaUploadBlockEditor","onError","argumentsObject","wpAllowedMimeTypes","allowedMimeTypes","message","__experimentalReusableBlocks","hasFixedToolbar","mediaUpload","templateLock","__experimentalSetIsInserterOpened","widgetAreaId","blocks","onInput","onChange","id"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SlotFillProvider } from '@wordpress/components';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport {\n\tBlockEditorProvider,\n\tBlockEditorKeyboardShortcuts,\n\tCopyHandler,\n} from '@wordpress/block-editor';\nimport { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcuts from '../keyboard-shortcuts';\nimport { useEntityBlockEditor, store as coreStore } from '@wordpress/core-data';\nimport { buildWidgetAreasPostId, KIND, POST_TYPE } from '../../store/utils';\nimport useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';\nimport { store as editWidgetsStore } from '../../store';\nimport { ALLOW_REUSABLE_BLOCKS } from '../../constants';\n\nexport default function WidgetAreasBlockEditorProvider( {\n\tblockEditorSettings,\n\tchildren,\n\t...props\n} ) {\n\tconst {\n\t\thasUploadPermissions,\n\t\treusableBlocks,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t} = useSelect(\n\t\t( select ) => ( {\n\t\t\thasUploadPermissions:\n\t\t\t\tselect( coreStore ).canUser( 'create', 'media' ) ?? true,\n\t\t\twidgetAreas: select( editWidgetsStore ).getWidgetAreas(),\n\t\t\twidgets: select( editWidgetsStore ).getWidgets(),\n\t\t\treusableBlocks: ALLOW_REUSABLE_BLOCKS\n\t\t\t\t? select( coreStore ).getEntityRecords( 'postType', 'wp_block' )\n\t\t\t\t: [],\n\t\t\tisFixedToolbarActive: !! select( preferencesStore ).get(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'fixedToolbar'\n\t\t\t),\n\t\t\tkeepCaretInsideBlock: !! select( preferencesStore ).get(\n\t\t\t\t'core/edit-widgets',\n\t\t\t\t'keepCaretInsideBlock'\n\t\t\t),\n\t\t} ),\n\t\t[]\n\t);\n\tconst { setIsInserterOpened } = useDispatch( editWidgetsStore );\n\n\tconst settings = useMemo( () => {\n\t\tlet mediaUploadBlockEditor;\n\t\tif ( hasUploadPermissions ) {\n\t\t\tmediaUploadBlockEditor = ( { onError, ...argumentsObject } ) => {\n\t\t\t\tuploadMedia( {\n\t\t\t\t\twpAllowedMimeTypes: blockEditorSettings.allowedMimeTypes,\n\t\t\t\t\tonError: ( { message } ) => onError( message ),\n\t\t\t\t\t...argumentsObject,\n\t\t\t\t} );\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\t...blockEditorSettings,\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\thasFixedToolbar: isFixedToolbarActive,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: mediaUploadBlockEditor,\n\t\t\ttemplateLock: 'all',\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t};\n\t}, [\n\t\tblockEditorSettings,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t\thasUploadPermissions,\n\t\treusableBlocks,\n\t\tsetIsInserterOpened,\n\t] );\n\n\tconst widgetAreaId = useLastSelectedWidgetArea();\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\tKIND,\n\t\tPOST_TYPE,\n\t\t{ id: buildWidgetAreasPostId() }\n\t);\n\n\treturn (\n\t\t<ShortcutProvider>\n\t\t\t<BlockEditorKeyboardShortcuts.Register />\n\t\t\t<KeyboardShortcuts.Register />\n\t\t\t<SlotFillProvider>\n\t\t\t\t<BlockEditorProvider\n\t\t\t\t\tvalue={ blocks }\n\t\t\t\t\tonInput={ onInput }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<CopyHandler>{ children }</CopyHandler>\n\t\t\t\t\t<ReusableBlocksMenuItems rootClientId={ widgetAreaId } />\n\t\t\t\t</BlockEditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t</ShortcutProvider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-widgets/src/components/widget-areas-block-editor-provider/index.js"],"names":["SlotFillProvider","uploadMedia","useDispatch","useSelect","useEntityBlockEditor","store","coreStore","useResourcePermissions","useMemo","BlockEditorProvider","BlockEditorKeyboardShortcuts","CopyHandler","ReusableBlocksMenuItems","ShortcutProvider","preferencesStore","KeyboardShortcuts","buildWidgetAreasPostId","KIND","POST_TYPE","useLastSelectedWidgetArea","editWidgetsStore","ALLOW_REUSABLE_BLOCKS","WidgetAreasBlockEditorProvider","blockEditorSettings","children","props","mediaPermissions","reusableBlocks","isFixedToolbarActive","keepCaretInsideBlock","select","widgetAreas","getWidgetAreas","widgets","getWidgets","getEntityRecords","get","setIsInserterOpened","settings","mediaUploadBlockEditor","canCreate","onError","argumentsObject","wpAllowedMimeTypes","allowedMimeTypes","message","__experimentalReusableBlocks","hasFixedToolbar","mediaUpload","templateLock","__experimentalSetIsInserterOpened","widgetAreaId","blocks","onInput","onChange","id"],"mappings":";;;AAAA;AACA;AACA;AACA,SAASA,gBAAT,QAAiC,uBAAjC;AACA,SAASC,WAAT,QAA4B,wBAA5B;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SACCC,oBADD,EAECC,KAAK,IAAIC,SAFV,EAGCC,sBAHD,QAIO,sBAJP;AAKA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SACCC,mBADD,EAECC,4BAFD,EAGCC,WAHD,QAIO,yBAJP;AAKA,SAASC,uBAAT,QAAwC,4BAAxC;AACA,SAASC,gBAAT,QAAiC,+BAAjC;AACA,SAASR,KAAK,IAAIS,gBAAlB,QAA0C,wBAA1C;AAEA;AACA;AACA;;AACA,OAAOC,iBAAP,MAA8B,uBAA9B;AACA,SAASC,sBAAT,EAAiCC,IAAjC,EAAuCC,SAAvC,QAAwD,mBAAxD;AACA,OAAOC,yBAAP,MAAsC,2CAAtC;AACA,SAASd,KAAK,IAAIe,gBAAlB,QAA0C,aAA1C;AACA,SAASC,qBAAT,QAAsC,iBAAtC;AAEA,eAAe,SAASC,8BAAT,OAIX;AAAA,MAJoD;AACvDC,IAAAA,mBADuD;AAEvDC,IAAAA,QAFuD;AAGvD,OAAGC;AAHoD,GAIpD;AACH,QAAMC,gBAAgB,GAAGnB,sBAAsB,CAAE,OAAF,CAA/C;AACA,QAAM;AAAEoB,IAAAA,cAAF;AAAkBC,IAAAA,oBAAlB;AAAwCC,IAAAA;AAAxC,MACL1B,SAAS,CACN2B,MAAF,KAAgB;AACfC,IAAAA,WAAW,EAAED,MAAM,CAAEV,gBAAF,CAAN,CAA2BY,cAA3B,EADE;AAEfC,IAAAA,OAAO,EAAEH,MAAM,CAAEV,gBAAF,CAAN,CAA2Bc,UAA3B,EAFM;AAGfP,IAAAA,cAAc,EAAEN,qBAAqB,GAClCS,MAAM,CAAExB,SAAF,CAAN,CAAoB6B,gBAApB,CACA,UADA,EAEA,UAFA,CADkC,GAKlC,EARY;AASfP,IAAAA,oBAAoB,EAAE,CAAC,CAAEE,MAAM,CAAEhB,gBAAF,CAAN,CAA2BsB,GAA3B,CACxB,mBADwB,EAExB,cAFwB,CATV;AAafP,IAAAA,oBAAoB,EAAE,CAAC,CAAEC,MAAM,CAAEhB,gBAAF,CAAN,CAA2BsB,GAA3B,CACxB,mBADwB,EAExB,sBAFwB;AAbV,GAAhB,CADQ,EAmBR,EAnBQ,CADV;AAsBA,QAAM;AAAEC,IAAAA;AAAF,MAA0BnC,WAAW,CAAEkB,gBAAF,CAA3C;AAEA,QAAMkB,QAAQ,GAAG9B,OAAO,CAAE,MAAM;AAC/B,QAAI+B,sBAAJ;;AACA,QAAKb,gBAAgB,CAACc,SAAtB,EAAkC;AACjCD,MAAAA,sBAAsB,GAAG,SAAuC;AAAA,YAArC;AAAEE,UAAAA,OAAF;AAAW,aAAGC;AAAd,SAAqC;AAC/DzC,QAAAA,WAAW,CAAE;AACZ0C,UAAAA,kBAAkB,EAAEpB,mBAAmB,CAACqB,gBAD5B;AAEZH,UAAAA,OAAO,EAAE;AAAA,gBAAE;AAAEI,cAAAA;AAAF,aAAF;AAAA,mBAAmBJ,OAAO,CAAEI,OAAF,CAA1B;AAAA,WAFG;AAGZ,aAAGH;AAHS,SAAF,CAAX;AAKA,OAND;AAOA;;AACD,WAAO,EACN,GAAGnB,mBADG;AAENuB,MAAAA,4BAA4B,EAAEnB,cAFxB;AAGNoB,MAAAA,eAAe,EAAEnB,oBAHX;AAINC,MAAAA,oBAJM;AAKNmB,MAAAA,WAAW,EAAET,sBALP;AAMNU,MAAAA,YAAY,EAAE,KANR;AAONC,MAAAA,iCAAiC,EAAEb;AAP7B,KAAP;AASA,GApBuB,EAoBrB,CACFd,mBADE,EAEFK,oBAFE,EAGFC,oBAHE,EAIFH,gBAAgB,CAACc,SAJf,EAKFb,cALE,EAMFU,mBANE,CApBqB,CAAxB;AA6BA,QAAMc,YAAY,GAAGhC,yBAAyB,EAA9C;AAEA,QAAM,CAAEiC,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgClD,oBAAoB,CACzDa,IADyD,EAEzDC,SAFyD,EAGzD;AAAEqC,IAAAA,EAAE,EAAEvC,sBAAsB;AAA5B,GAHyD,CAA1D;AAMA,SACC,cAAC,gBAAD,QACC,cAAC,4BAAD,CAA8B,QAA9B,OADD,EAEC,cAAC,iBAAD,CAAmB,QAAnB,OAFD,EAGC,cAAC,gBAAD,QACC,cAAC,mBAAD;AACC,IAAA,KAAK,EAAGoC,MADT;AAEC,IAAA,OAAO,EAAGC,OAFX;AAGC,IAAA,QAAQ,EAAGC,QAHZ;AAIC,IAAA,QAAQ,EAAGhB,QAJZ;AAKC,IAAA,cAAc,EAAG;AALlB,KAMMb,KANN,GAQC,cAAC,WAAD,QAAeD,QAAf,CARD,EASC,cAAC,uBAAD;AAAyB,IAAA,YAAY,EAAG2B;AAAxC,IATD,CADD,CAHD,CADD;AAmBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SlotFillProvider } from '@wordpress/components';\nimport { uploadMedia } from '@wordpress/media-utils';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEntityBlockEditor,\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { useMemo } from '@wordpress/element';\nimport {\n\tBlockEditorProvider,\n\tBlockEditorKeyboardShortcuts,\n\tCopyHandler,\n} from '@wordpress/block-editor';\nimport { ReusableBlocksMenuItems } from '@wordpress/reusable-blocks';\nimport { ShortcutProvider } from '@wordpress/keyboard-shortcuts';\nimport { store as preferencesStore } from '@wordpress/preferences';\n\n/**\n * Internal dependencies\n */\nimport KeyboardShortcuts from '../keyboard-shortcuts';\nimport { buildWidgetAreasPostId, KIND, POST_TYPE } from '../../store/utils';\nimport useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';\nimport { store as editWidgetsStore } from '../../store';\nimport { ALLOW_REUSABLE_BLOCKS } from '../../constants';\n\nexport default function WidgetAreasBlockEditorProvider( {\n\tblockEditorSettings,\n\tchildren,\n\t...props\n} ) {\n\tconst mediaPermissions = useResourcePermissions( 'media' );\n\tconst { reusableBlocks, isFixedToolbarActive, keepCaretInsideBlock } =\n\t\tuseSelect(\n\t\t\t( select ) => ( {\n\t\t\t\twidgetAreas: select( editWidgetsStore ).getWidgetAreas(),\n\t\t\t\twidgets: select( editWidgetsStore ).getWidgets(),\n\t\t\t\treusableBlocks: ALLOW_REUSABLE_BLOCKS\n\t\t\t\t\t? select( coreStore ).getEntityRecords(\n\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t'wp_block'\n\t\t\t\t\t )\n\t\t\t\t\t: [],\n\t\t\t\tisFixedToolbarActive: !! select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-widgets',\n\t\t\t\t\t'fixedToolbar'\n\t\t\t\t),\n\t\t\t\tkeepCaretInsideBlock: !! select( preferencesStore ).get(\n\t\t\t\t\t'core/edit-widgets',\n\t\t\t\t\t'keepCaretInsideBlock'\n\t\t\t\t),\n\t\t\t} ),\n\t\t\t[]\n\t\t);\n\tconst { setIsInserterOpened } = useDispatch( editWidgetsStore );\n\n\tconst settings = useMemo( () => {\n\t\tlet mediaUploadBlockEditor;\n\t\tif ( mediaPermissions.canCreate ) {\n\t\t\tmediaUploadBlockEditor = ( { onError, ...argumentsObject } ) => {\n\t\t\t\tuploadMedia( {\n\t\t\t\t\twpAllowedMimeTypes: blockEditorSettings.allowedMimeTypes,\n\t\t\t\t\tonError: ( { message } ) => onError( message ),\n\t\t\t\t\t...argumentsObject,\n\t\t\t\t} );\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\t...blockEditorSettings,\n\t\t\t__experimentalReusableBlocks: reusableBlocks,\n\t\t\thasFixedToolbar: isFixedToolbarActive,\n\t\t\tkeepCaretInsideBlock,\n\t\t\tmediaUpload: mediaUploadBlockEditor,\n\t\t\ttemplateLock: 'all',\n\t\t\t__experimentalSetIsInserterOpened: setIsInserterOpened,\n\t\t};\n\t}, [\n\t\tblockEditorSettings,\n\t\tisFixedToolbarActive,\n\t\tkeepCaretInsideBlock,\n\t\tmediaPermissions.canCreate,\n\t\treusableBlocks,\n\t\tsetIsInserterOpened,\n\t] );\n\n\tconst widgetAreaId = useLastSelectedWidgetArea();\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\tKIND,\n\t\tPOST_TYPE,\n\t\t{ id: buildWidgetAreasPostId() }\n\t);\n\n\treturn (\n\t\t<ShortcutProvider>\n\t\t\t<BlockEditorKeyboardShortcuts.Register />\n\t\t\t<KeyboardShortcuts.Register />\n\t\t\t<SlotFillProvider>\n\t\t\t\t<BlockEditorProvider\n\t\t\t\t\tvalue={ blocks }\n\t\t\t\t\tonInput={ onInput }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tsettings={ settings }\n\t\t\t\t\tuseSubRegistry={ false }\n\t\t\t\t\t{ ...props }\n\t\t\t\t>\n\t\t\t\t\t<CopyHandler>{ children }</CopyHandler>\n\t\t\t\t\t<ReusableBlocksMenuItems rootClientId={ widgetAreaId } />\n\t\t\t\t</BlockEditorProvider>\n\t\t\t</SlotFillProvider>\n\t\t</ShortcutProvider>\n\t);\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/edit-widgets",
3
- "version": "4.12.0",
3
+ "version": "4.12.1-next.d6164808d3.0",
4
4
  "description": "Widgets Page module for WordPress..",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -27,30 +27,30 @@
27
27
  "react-native": "src/index",
28
28
  "dependencies": {
29
29
  "@babel/runtime": "^7.16.0",
30
- "@wordpress/api-fetch": "^6.12.0",
31
- "@wordpress/block-editor": "^9.7.0",
32
- "@wordpress/block-library": "^7.12.0",
33
- "@wordpress/blocks": "^11.14.0",
34
- "@wordpress/components": "^19.17.0",
35
- "@wordpress/compose": "^5.13.0",
36
- "@wordpress/core-data": "^4.13.0",
37
- "@wordpress/data": "^6.15.0",
38
- "@wordpress/deprecated": "^3.15.0",
39
- "@wordpress/dom": "^3.15.0",
40
- "@wordpress/element": "^4.13.0",
41
- "@wordpress/hooks": "^3.15.0",
42
- "@wordpress/i18n": "^4.15.0",
43
- "@wordpress/icons": "^9.6.0",
44
- "@wordpress/interface": "^4.14.0",
45
- "@wordpress/keyboard-shortcuts": "^3.13.0",
46
- "@wordpress/keycodes": "^3.15.0",
47
- "@wordpress/media-utils": "^4.6.0",
48
- "@wordpress/notices": "^3.15.0",
49
- "@wordpress/plugins": "^4.13.0",
50
- "@wordpress/preferences": "^2.7.0",
51
- "@wordpress/reusable-blocks": "^3.13.0",
52
- "@wordpress/url": "^3.16.0",
53
- "@wordpress/widgets": "^2.13.0",
30
+ "@wordpress/api-fetch": "^6.12.1-next.d6164808d3.0",
31
+ "@wordpress/block-editor": "^9.7.1-next.d6164808d3.0",
32
+ "@wordpress/block-library": "^7.12.2-next.d6164808d3.0",
33
+ "@wordpress/blocks": "^11.14.1-next.d6164808d3.0",
34
+ "@wordpress/components": "^20.0.1-next.d6164808d3.0",
35
+ "@wordpress/compose": "^5.13.1-next.d6164808d3.0",
36
+ "@wordpress/core-data": "^4.14.1-next.d6164808d3.0",
37
+ "@wordpress/data": "^7.0.1-next.d6164808d3.0",
38
+ "@wordpress/deprecated": "^3.15.1-next.d6164808d3.0",
39
+ "@wordpress/dom": "^3.15.1-next.d6164808d3.0",
40
+ "@wordpress/element": "^4.13.1-next.d6164808d3.0",
41
+ "@wordpress/hooks": "^3.15.1-next.d6164808d3.0",
42
+ "@wordpress/i18n": "^4.15.1-next.d6164808d3.0",
43
+ "@wordpress/icons": "^9.6.1-next.d6164808d3.0",
44
+ "@wordpress/interface": "^4.14.1-next.d6164808d3.0",
45
+ "@wordpress/keyboard-shortcuts": "^3.13.1-next.d6164808d3.0",
46
+ "@wordpress/keycodes": "^3.15.1-next.d6164808d3.0",
47
+ "@wordpress/media-utils": "^4.6.1-next.d6164808d3.0",
48
+ "@wordpress/notices": "^3.15.1-next.d6164808d3.0",
49
+ "@wordpress/plugins": "^4.13.1-next.d6164808d3.0",
50
+ "@wordpress/preferences": "^2.7.1-next.d6164808d3.0",
51
+ "@wordpress/reusable-blocks": "^3.13.1-next.d6164808d3.0",
52
+ "@wordpress/url": "^3.16.1-next.d6164808d3.0",
53
+ "@wordpress/widgets": "^2.13.1-next.d6164808d3.0",
54
54
  "classnames": "^2.3.1",
55
55
  "lodash": "^4.17.21"
56
56
  },
@@ -61,5 +61,5 @@
61
61
  "publishConfig": {
62
62
  "access": "public"
63
63
  },
64
- "gitHead": "08358f53b627a15148c3a3e433cdf58cf8714aa4"
64
+ "gitHead": "ba8a396d2f418e53a6c4c50575582f3f3eb11ff7"
65
65
  }
@@ -4,6 +4,11 @@
4
4
  import { SlotFillProvider } from '@wordpress/components';
5
5
  import { uploadMedia } from '@wordpress/media-utils';
6
6
  import { useDispatch, useSelect } from '@wordpress/data';
7
+ import {
8
+ useEntityBlockEditor,
9
+ store as coreStore,
10
+ useResourcePermissions,
11
+ } from '@wordpress/core-data';
7
12
  import { useMemo } from '@wordpress/element';
8
13
  import {
9
14
  BlockEditorProvider,
@@ -18,7 +23,6 @@ import { store as preferencesStore } from '@wordpress/preferences';
18
23
  * Internal dependencies
19
24
  */
20
25
  import KeyboardShortcuts from '../keyboard-shortcuts';
21
- import { useEntityBlockEditor, store as coreStore } from '@wordpress/core-data';
22
26
  import { buildWidgetAreasPostId, KIND, POST_TYPE } from '../../store/utils';
23
27
  import useLastSelectedWidgetArea from '../../hooks/use-last-selected-widget-area';
24
28
  import { store as editWidgetsStore } from '../../store';
@@ -29,36 +33,34 @@ export default function WidgetAreasBlockEditorProvider( {
29
33
  children,
30
34
  ...props
31
35
  } ) {
32
- const {
33
- hasUploadPermissions,
34
- reusableBlocks,
35
- isFixedToolbarActive,
36
- keepCaretInsideBlock,
37
- } = useSelect(
38
- ( select ) => ( {
39
- hasUploadPermissions:
40
- select( coreStore ).canUser( 'create', 'media' ) ?? true,
41
- widgetAreas: select( editWidgetsStore ).getWidgetAreas(),
42
- widgets: select( editWidgetsStore ).getWidgets(),
43
- reusableBlocks: ALLOW_REUSABLE_BLOCKS
44
- ? select( coreStore ).getEntityRecords( 'postType', 'wp_block' )
45
- : [],
46
- isFixedToolbarActive: !! select( preferencesStore ).get(
47
- 'core/edit-widgets',
48
- 'fixedToolbar'
49
- ),
50
- keepCaretInsideBlock: !! select( preferencesStore ).get(
51
- 'core/edit-widgets',
52
- 'keepCaretInsideBlock'
53
- ),
54
- } ),
55
- []
56
- );
36
+ const mediaPermissions = useResourcePermissions( 'media' );
37
+ const { reusableBlocks, isFixedToolbarActive, keepCaretInsideBlock } =
38
+ useSelect(
39
+ ( select ) => ( {
40
+ widgetAreas: select( editWidgetsStore ).getWidgetAreas(),
41
+ widgets: select( editWidgetsStore ).getWidgets(),
42
+ reusableBlocks: ALLOW_REUSABLE_BLOCKS
43
+ ? select( coreStore ).getEntityRecords(
44
+ 'postType',
45
+ 'wp_block'
46
+ )
47
+ : [],
48
+ isFixedToolbarActive: !! select( preferencesStore ).get(
49
+ 'core/edit-widgets',
50
+ 'fixedToolbar'
51
+ ),
52
+ keepCaretInsideBlock: !! select( preferencesStore ).get(
53
+ 'core/edit-widgets',
54
+ 'keepCaretInsideBlock'
55
+ ),
56
+ } ),
57
+ []
58
+ );
57
59
  const { setIsInserterOpened } = useDispatch( editWidgetsStore );
58
60
 
59
61
  const settings = useMemo( () => {
60
62
  let mediaUploadBlockEditor;
61
- if ( hasUploadPermissions ) {
63
+ if ( mediaPermissions.canCreate ) {
62
64
  mediaUploadBlockEditor = ( { onError, ...argumentsObject } ) => {
63
65
  uploadMedia( {
64
66
  wpAllowedMimeTypes: blockEditorSettings.allowedMimeTypes,
@@ -80,7 +82,7 @@ export default function WidgetAreasBlockEditorProvider( {
80
82
  blockEditorSettings,
81
83
  isFixedToolbarActive,
82
84
  keepCaretInsideBlock,
83
- hasUploadPermissions,
85
+ mediaPermissions.canCreate,
84
86
  reusableBlocks,
85
87
  setIsInserterOpened,
86
88
  ] );