@wordpress/edit-widgets 3.1.2 → 3.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/blocks/widget-area/edit/index.js +29 -24
- package/build/blocks/widget-area/edit/index.js.map +1 -1
- package/build/blocks/widget-area/edit/inner-blocks.js +4 -3
- package/build/blocks/widget-area/edit/inner-blocks.js.map +1 -1
- package/build/blocks/widget-area/index.js +6 -3
- package/build/blocks/widget-area/index.js.map +1 -1
- package/build/components/error-boundary/index.js +5 -4
- package/build/components/error-boundary/index.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +4 -3
- package/build/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/index.js +50 -41
- package/build/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build/components/keyboard-shortcut-help-modal/shortcut.js +12 -10
- package/build/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -1
- package/build/components/layout/index.js +5 -4
- package/build/components/layout/index.js.map +1 -1
- package/build/components/layout/interface.js +4 -3
- package/build/components/layout/interface.js.map +1 -1
- package/build/components/sidebar/index.js +6 -5
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar/widget-areas.js +4 -3
- package/build/components/sidebar/widget-areas.js.map +1 -1
- package/build/components/welcome-guide/index.js +5 -4
- package/build/components/welcome-guide/index.js.map +1 -1
- package/build/components/widget-areas-block-editor-content/index.js +4 -3
- package/build/components/widget-areas-block-editor-content/index.js.map +1 -1
- package/build/components/widget-areas-block-editor-provider/index.js +17 -12
- package/build/components/widget-areas-block-editor-provider/index.js.map +1 -1
- package/build/index.js +5 -3
- package/build/index.js.map +1 -1
- package/build/store/actions.js +74 -51
- package/build/store/actions.js.map +1 -1
- package/build/store/index.js +4 -2
- package/build/store/index.js.map +1 -1
- package/build/store/reducer.js +13 -5
- package/build/store/reducer.js.map +1 -1
- package/build/store/resolvers.js +10 -8
- package/build/store/resolvers.js.map +1 -1
- package/build/store/selectors.js +28 -14
- package/build/store/selectors.js.map +1 -1
- package/build/store/transformers.js +3 -2
- package/build/store/transformers.js.map +1 -1
- package/build/store/utils.js +2 -1
- package/build/store/utils.js.map +1 -1
- package/build-module/blocks/widget-area/edit/index.js +29 -24
- package/build-module/blocks/widget-area/edit/index.js.map +1 -1
- package/build-module/blocks/widget-area/edit/inner-blocks.js +4 -3
- package/build-module/blocks/widget-area/edit/inner-blocks.js.map +1 -1
- package/build-module/blocks/widget-area/index.js +6 -3
- package/build-module/blocks/widget-area/index.js.map +1 -1
- package/build-module/components/error-boundary/index.js +5 -4
- package/build-module/components/error-boundary/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js +4 -3
- package/build-module/components/keyboard-shortcut-help-modal/dynamic-shortcut.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/index.js +48 -39
- package/build-module/components/keyboard-shortcut-help-modal/index.js.map +1 -1
- package/build-module/components/keyboard-shortcut-help-modal/shortcut.js +12 -10
- package/build-module/components/keyboard-shortcut-help-modal/shortcut.js.map +1 -1
- package/build-module/components/layout/index.js +5 -4
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/layout/interface.js +4 -3
- package/build-module/components/layout/interface.js.map +1 -1
- package/build-module/components/sidebar/index.js +6 -5
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar/widget-areas.js +4 -3
- package/build-module/components/sidebar/widget-areas.js.map +1 -1
- package/build-module/components/welcome-guide/index.js +5 -4
- package/build-module/components/welcome-guide/index.js.map +1 -1
- package/build-module/components/widget-areas-block-editor-content/index.js +4 -3
- package/build-module/components/widget-areas-block-editor-content/index.js.map +1 -1
- package/build-module/components/widget-areas-block-editor-provider/index.js +17 -12
- package/build-module/components/widget-areas-block-editor-provider/index.js.map +1 -1
- package/build-module/index.js +2 -2
- package/build-module/index.js.map +1 -1
- package/build-module/store/actions.js +70 -47
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/reducer.js +11 -3
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/resolvers.js +10 -8
- package/build-module/store/resolvers.js.map +1 -1
- package/build-module/store/selectors.js +25 -12
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/store/transformers.js +2 -1
- package/build-module/store/transformers.js.map +1 -1
- package/package.json +27 -27
package/build/store/index.js
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
-
|
|
5
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
4
|
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
@@ -23,6 +21,10 @@ var actions = _interopRequireWildcard(require("./actions"));
|
|
|
23
21
|
|
|
24
22
|
var _constants = require("./constants");
|
|
25
23
|
|
|
24
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
|
+
|
|
26
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
|
+
|
|
26
28
|
/**
|
|
27
29
|
* WordPress dependencies
|
|
28
30
|
*/
|
package/build/store/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/store/index.js"],"names":["storeConfig","reducer","selectors","resolvers","actions","__experimentalUseThunks","store","STORE_NAME","apiFetch","use","options","next","path","indexOf","Promise","resolve"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/store/index.js"],"names":["storeConfig","reducer","selectors","resolvers","actions","__experimentalUseThunks","store","STORE_NAME","apiFetch","use","options","next","path","indexOf","Promise","resolve"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;;;;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,WAAW,GAAG;AACnBC,EAAAA,OAAO,EAAPA,gBADmB;AAEnBC,EAAAA,SAFmB;AAGnBC,EAAAA,SAHmB;AAInBC,EAAAA,OAJmB;AAKnBC,EAAAA,uBAAuB,EAAE;AALN,CAApB;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;;AACO,MAAMC,KAAK,GAAG,4BAAkBC,qBAAlB,EAA8BP,WAA9B,CAAd,C,CAEP;AACA;;;AACA,yBAAeO,qBAAf,EAA2BP,WAA3B,E,CAEA;AACA;AACA;;AACAQ,kBAASC,GAAT,CAAc,UAAWC,OAAX,EAAoBC,IAApB,EAA2B;AAAA;;AACxC,MAAK,kBAAAD,OAAO,CAACE,IAAR,gEAAcC,OAAd,CAAuB,0BAAvB,OAAwD,CAA7D,EAAiE;AAChE,WAAOC,OAAO,CAACC,OAAR,CAAiB,EAAjB,CAAP;AACA;;AAED,SAAOJ,IAAI,CAAED,OAAF,CAAX;AACA,CAND","sourcesContent":["/**\n * WordPress dependencies\n */\nimport apiFetch from '@wordpress/api-fetch';\nimport { createReduxStore, registerStore } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport reducer from './reducer';\nimport * as resolvers from './resolvers';\nimport * as selectors from './selectors';\nimport * as actions from './actions';\nimport { STORE_NAME } from './constants';\n\n/**\n * Block editor data store configuration.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#registerStore\n *\n * @type {Object}\n */\nconst storeConfig = {\n\treducer,\n\tselectors,\n\tresolvers,\n\tactions,\n\t__experimentalUseThunks: true,\n};\n\n/**\n * Store definition for the edit widgets namespace.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#createReduxStore\n *\n * @type {Object}\n */\nexport const store = createReduxStore( STORE_NAME, storeConfig );\n\n// Once we build a more generic persistence plugin that works across types of stores\n// we'd be able to replace this with a register call.\nregisterStore( STORE_NAME, storeConfig );\n\n// This package uses a few in-memory post types as wrappers for convenience.\n// This middleware prevents any network requests related to these types as they are\n// bound to fail anyway.\napiFetch.use( function ( options, next ) {\n\tif ( options.path?.indexOf( '/wp/v2/types/widget-area' ) === 0 ) {\n\t\treturn Promise.resolve( {} );\n\t}\n\n\treturn next( options );\n} );\n"]}
|
package/build/store/reducer.js
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.widgetAreasOpenState = widgetAreasOpenState;
|
|
7
6
|
exports.blockInserterPanel = blockInserterPanel;
|
|
8
|
-
exports.listViewPanel = listViewPanel;
|
|
9
7
|
exports.default = void 0;
|
|
8
|
+
exports.listViewPanel = listViewPanel;
|
|
9
|
+
exports.widgetAreasOpenState = widgetAreasOpenState;
|
|
10
10
|
|
|
11
11
|
var _data = require("@wordpress/data");
|
|
12
12
|
|
|
@@ -22,7 +22,9 @@ var _data = require("@wordpress/data");
|
|
|
22
22
|
*
|
|
23
23
|
* @return {Array} Updated state.
|
|
24
24
|
*/
|
|
25
|
-
function widgetAreasOpenState(
|
|
25
|
+
function widgetAreasOpenState() {
|
|
26
|
+
let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
27
|
+
let action = arguments.length > 1 ? arguments[1] : undefined;
|
|
26
28
|
const {
|
|
27
29
|
type
|
|
28
30
|
} = action;
|
|
@@ -61,7 +63,10 @@ function widgetAreasOpenState(state = {}, action) {
|
|
|
61
63
|
*/
|
|
62
64
|
|
|
63
65
|
|
|
64
|
-
function blockInserterPanel(
|
|
66
|
+
function blockInserterPanel() {
|
|
67
|
+
let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
68
|
+
let action = arguments.length > 1 ? arguments[1] : undefined;
|
|
69
|
+
|
|
65
70
|
switch (action.type) {
|
|
66
71
|
case 'SET_IS_LIST_VIEW_OPENED':
|
|
67
72
|
return action.isOpen ? false : state;
|
|
@@ -83,7 +88,10 @@ function blockInserterPanel(state = false, action) {
|
|
|
83
88
|
*/
|
|
84
89
|
|
|
85
90
|
|
|
86
|
-
function listViewPanel(
|
|
91
|
+
function listViewPanel() {
|
|
92
|
+
let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
93
|
+
let action = arguments.length > 1 ? arguments[1] : undefined;
|
|
94
|
+
|
|
87
95
|
switch (action.type) {
|
|
88
96
|
case 'SET_IS_INSERTER_OPENED':
|
|
89
97
|
return action.value ? false : state;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/store/reducer.js"],"names":["widgetAreasOpenState","state","action","type","clientId","isOpen","blockInserterPanel","value","listViewPanel"],"mappings":";;;;;;;;;;AAGA;;AAHA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,oBAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/store/reducer.js"],"names":["widgetAreasOpenState","state","action","type","clientId","isOpen","blockInserterPanel","value","listViewPanel"],"mappings":";;;;;;;;;;AAGA;;AAHA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,oBAAT,GAAoD;AAAA,MAArBC,KAAqB,uEAAb,EAAa;AAAA,MAATC,MAAS;AAC1D,QAAM;AAAEC,IAAAA;AAAF,MAAWD,MAAjB;;AACA,UAASC,IAAT;AACC,SAAK,6BAAL;AAAoC;AACnC,eAAOD,MAAM,CAACF,oBAAd;AACA;;AACD,SAAK,yBAAL;AAAgC;AAC/B,cAAM;AAAEI,UAAAA,QAAF;AAAYC,UAAAA;AAAZ,YAAuBH,MAA7B;AACA,eAAO,EACN,GAAGD,KADG;AAEN,WAAEG,QAAF,GAAcC;AAFR,SAAP;AAIA;;AACD;AAAS;AACR,eAAOJ,KAAP;AACA;AAbF;AAeA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASK,kBAAT,GAAqD;AAAA,MAAxBL,KAAwB,uEAAhB,KAAgB;AAAA,MAATC,MAAS;;AAC3D,UAASA,MAAM,CAACC,IAAhB;AACC,SAAK,yBAAL;AACC,aAAOD,MAAM,CAACG,MAAP,GAAgB,KAAhB,GAAwBJ,KAA/B;;AACD,SAAK,wBAAL;AACC,aAAOC,MAAM,CAACK,KAAd;AAJF;;AAMA,SAAON,KAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASO,aAAT,GAAgD;AAAA,MAAxBP,KAAwB,uEAAhB,KAAgB;AAAA,MAATC,MAAS;;AACtD,UAASA,MAAM,CAACC,IAAhB;AACC,SAAK,wBAAL;AACC,aAAOD,MAAM,CAACK,KAAP,GAAe,KAAf,GAAuBN,KAA9B;;AACD,SAAK,yBAAL;AACC,aAAOC,MAAM,CAACG,MAAd;AAJF;;AAMA,SAAOJ,KAAP;AACA;;eAEc,2BAAiB;AAC/BK,EAAAA,kBAD+B;AAE/BE,EAAAA,aAF+B;AAG/BR,EAAAA;AAH+B,CAAjB,C","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { combineReducers } from '@wordpress/data';\n\n/**\n * Controls the open state of the widget areas.\n *\n * @param {Object} state Redux state.\n * @param {Object} action Redux action.\n *\n * @return {Array} Updated state.\n */\nexport function widgetAreasOpenState( state = {}, action ) {\n\tconst { type } = action;\n\tswitch ( type ) {\n\t\tcase 'SET_WIDGET_AREAS_OPEN_STATE': {\n\t\t\treturn action.widgetAreasOpenState;\n\t\t}\n\t\tcase 'SET_IS_WIDGET_AREA_OPEN': {\n\t\t\tconst { clientId, isOpen } = action;\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\t[ clientId ]: isOpen,\n\t\t\t};\n\t\t}\n\t\tdefault: {\n\t\t\treturn state;\n\t\t}\n\t}\n}\n\n/**\n * Reducer to set the block inserter panel open or closed.\n *\n * Note: this reducer interacts with the list view panel reducer\n * to make sure that only one of the two panels is open at the same time.\n *\n * @param {Object} state Current state.\n * @param {Object} action Dispatched action.\n */\nexport function blockInserterPanel( state = false, action ) {\n\tswitch ( action.type ) {\n\t\tcase 'SET_IS_LIST_VIEW_OPENED':\n\t\t\treturn action.isOpen ? false : state;\n\t\tcase 'SET_IS_INSERTER_OPENED':\n\t\t\treturn action.value;\n\t}\n\treturn state;\n}\n\n/**\n * Reducer to set the list view panel open or closed.\n *\n * Note: this reducer interacts with the inserter panel reducer\n * to make sure that only one of the two panels is open at the same time.\n *\n * @param {Object} state Current state.\n * @param {Object} action Dispatched action.\n */\nexport function listViewPanel( state = false, action ) {\n\tswitch ( action.type ) {\n\t\tcase 'SET_IS_INSERTER_OPENED':\n\t\t\treturn action.value ? false : state;\n\t\tcase 'SET_IS_LIST_VIEW_OPENED':\n\t\t\treturn action.isOpen;\n\t}\n\treturn state;\n}\n\nexport default combineReducers( {\n\tblockInserterPanel,\n\tlistViewPanel,\n\twidgetAreasOpenState,\n} );\n"]}
|
package/build/store/resolvers.js
CHANGED
|
@@ -32,10 +32,11 @@ var _transformers = require("./transformers");
|
|
|
32
32
|
*
|
|
33
33
|
* @return {Function} An action creator.
|
|
34
34
|
*/
|
|
35
|
-
const getWidgetAreas = () => async
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
const getWidgetAreas = () => async _ref => {
|
|
36
|
+
let {
|
|
37
|
+
dispatch,
|
|
38
|
+
registry
|
|
39
|
+
} = _ref;
|
|
39
40
|
const query = (0, _utils.buildWidgetAreasQuery)();
|
|
40
41
|
const widgetAreas = await registry.resolveSelect(_coreData.store).getEntityRecords(_utils.KIND, _utils.WIDGET_AREA_ENTITY_TYPE, query);
|
|
41
42
|
const widgetAreaBlocks = [];
|
|
@@ -81,10 +82,11 @@ const getWidgetAreas = () => async ({
|
|
|
81
82
|
|
|
82
83
|
exports.getWidgetAreas = getWidgetAreas;
|
|
83
84
|
|
|
84
|
-
const getWidgets = () => async
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
85
|
+
const getWidgets = () => async _ref2 => {
|
|
86
|
+
let {
|
|
87
|
+
dispatch,
|
|
88
|
+
registry
|
|
89
|
+
} = _ref2;
|
|
88
90
|
const query = (0, _utils.buildWidgetsQuery)();
|
|
89
91
|
const widgets = await registry.resolveSelect(_coreData.store).getEntityRecords('root', 'widget', query);
|
|
90
92
|
const groupedBySidebar = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/store/resolvers.js"],"names":["getWidgetAreas","dispatch","registry","query","widgetAreas","resolveSelect","coreStore","getEntityRecords","KIND","WIDGET_AREA_ENTITY_TYPE","widgetAreaBlocks","sortedWidgetAreas","sort","a","b","id","widgetArea","push","name","widgets","length","widgetAreasOpenState","forEach","widgetAreaBlock","index","clientId","getWidgets","groupedBySidebar","widget","block","sidebar","sidebarId","hasOwnProperty"],"mappings":";;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAQA;;AAlBA;AACA;AACA;;AAIA;AACA;AACA;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,cAAc,GAAG,MAAM,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/store/resolvers.js"],"names":["getWidgetAreas","dispatch","registry","query","widgetAreas","resolveSelect","coreStore","getEntityRecords","KIND","WIDGET_AREA_ENTITY_TYPE","widgetAreaBlocks","sortedWidgetAreas","sort","a","b","id","widgetArea","push","name","widgets","length","widgetAreasOpenState","forEach","widgetAreaBlock","index","clientId","getWidgets","groupedBySidebar","widget","block","sidebar","sidebarId","hasOwnProperty"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { persistStubPost, setWidgetAreasOpenState } from './actions';\nimport {\n\tKIND,\n\tWIDGET_AREA_ENTITY_TYPE,\n\tbuildWidgetsQuery,\n\tbuildWidgetAreasQuery,\n\tbuildWidgetAreaPostId,\n\tbuildWidgetAreasPostId,\n} from './utils';\nimport { transformWidgetToBlock } from './transformers';\n\n/**\n * Creates a \"stub\" widgets post reflecting all available widget areas. The\n * post is meant as a convenient to only exists in runtime and should never be saved. It\n * enables a convenient way of editing the widgets by using a regular post editor.\n *\n * Fetches all widgets from all widgets aras, converts them into blocks, and hydrates a new post with them.\n *\n * @return {Function} An action creator.\n */\nexport const getWidgetAreas = () => async ( { dispatch, registry } ) => {\n\tconst query = buildWidgetAreasQuery();\n\tconst widgetAreas = await registry\n\t\t.resolveSelect( coreStore )\n\t\t.getEntityRecords( KIND, WIDGET_AREA_ENTITY_TYPE, query );\n\n\tconst widgetAreaBlocks = [];\n\tconst sortedWidgetAreas = widgetAreas.sort( ( a, b ) => {\n\t\tif ( a.id === 'wp_inactive_widgets' ) {\n\t\t\treturn 1;\n\t\t}\n\t\tif ( b.id === 'wp_inactive_widgets' ) {\n\t\t\treturn -1;\n\t\t}\n\t\treturn 0;\n\t} );\n\tfor ( const widgetArea of sortedWidgetAreas ) {\n\t\twidgetAreaBlocks.push(\n\t\t\tcreateBlock( 'core/widget-area', {\n\t\t\t\tid: widgetArea.id,\n\t\t\t\tname: widgetArea.name,\n\t\t\t} )\n\t\t);\n\n\t\tif ( ! widgetArea.widgets.length ) {\n\t\t\t// If this widget area has no widgets, it won't get a post setup by\n\t\t\t// the getWidgets resolver.\n\t\t\tdispatch(\n\t\t\t\tpersistStubPost( buildWidgetAreaPostId( widgetArea.id ), [] )\n\t\t\t);\n\t\t}\n\t}\n\n\tconst widgetAreasOpenState = {};\n\twidgetAreaBlocks.forEach( ( widgetAreaBlock, index ) => {\n\t\t// Defaults to open the first widget area.\n\t\twidgetAreasOpenState[ widgetAreaBlock.clientId ] = index === 0;\n\t} );\n\tdispatch( setWidgetAreasOpenState( widgetAreasOpenState ) );\n\n\tdispatch( persistStubPost( buildWidgetAreasPostId(), widgetAreaBlocks ) );\n};\n\n/**\n * Fetches all widgets from all widgets ares, and groups them by widget area Id.\n *\n * @return {Function} An action creator.\n */\nexport const getWidgets = () => async ( { dispatch, registry } ) => {\n\tconst query = buildWidgetsQuery();\n\tconst widgets = await registry\n\t\t.resolveSelect( coreStore )\n\t\t.getEntityRecords( 'root', 'widget', query );\n\n\tconst groupedBySidebar = {};\n\n\tfor ( const widget of widgets ) {\n\t\tconst block = transformWidgetToBlock( widget );\n\t\tgroupedBySidebar[ widget.sidebar ] =\n\t\t\tgroupedBySidebar[ widget.sidebar ] || [];\n\t\tgroupedBySidebar[ widget.sidebar ].push( block );\n\t}\n\n\tfor ( const sidebarId in groupedBySidebar ) {\n\t\tif ( groupedBySidebar.hasOwnProperty( sidebarId ) ) {\n\t\t\t// Persist the actual post containing the widget block\n\t\t\tdispatch(\n\t\t\t\tpersistStubPost(\n\t\t\t\t\tbuildWidgetAreaPostId( sidebarId ),\n\t\t\t\t\tgroupedBySidebar[ sidebarId ]\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t}\n};\n"]}
|
package/build/store/selectors.js
CHANGED
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.isInserterOpened = isInserterOpened;
|
|
7
6
|
exports.__experimentalGetInsertionPoint = __experimentalGetInsertionPoint;
|
|
7
|
+
exports.getWidgets = exports.getWidgetAreas = exports.getWidgetAreaForWidgetId = exports.getWidget = exports.getReferenceWidgetBlocks = exports.getParentWidgetAreaBlock = exports.getIsWidgetAreaOpen = exports.getEditedWidgetAreas = exports.canInsertBlockInWidgetArea = void 0;
|
|
8
|
+
exports.isInserterOpened = isInserterOpened;
|
|
8
9
|
exports.isListViewOpened = isListViewOpened;
|
|
9
|
-
exports.
|
|
10
|
+
exports.isSavingWidgetAreas = void 0;
|
|
10
11
|
|
|
11
12
|
var _lodash = require("lodash");
|
|
12
13
|
|
|
@@ -117,16 +118,25 @@ const getEditedWidgetAreas = (0, _data.createRegistrySelector)(select => (state,
|
|
|
117
118
|
}
|
|
118
119
|
|
|
119
120
|
if (ids) {
|
|
120
|
-
widgetAreas = widgetAreas.filter(
|
|
121
|
-
|
|
122
|
-
|
|
121
|
+
widgetAreas = widgetAreas.filter(_ref => {
|
|
122
|
+
let {
|
|
123
|
+
id
|
|
124
|
+
} = _ref;
|
|
125
|
+
return ids.includes(id);
|
|
126
|
+
});
|
|
123
127
|
}
|
|
124
128
|
|
|
125
|
-
return widgetAreas.filter(
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
129
|
+
return widgetAreas.filter(_ref2 => {
|
|
130
|
+
let {
|
|
131
|
+
id
|
|
132
|
+
} = _ref2;
|
|
133
|
+
return select(_coreData.store).hasEditsForEntityRecord(_utils.KIND, _utils.POST_TYPE, (0, _utils.buildWidgetAreaPostId)(id));
|
|
134
|
+
}).map(_ref3 => {
|
|
135
|
+
let {
|
|
136
|
+
id
|
|
137
|
+
} = _ref3;
|
|
138
|
+
return select(_coreData.store).getEditedEntityRecord(_utils.KIND, _utils.WIDGET_AREA_ENTITY_TYPE, id);
|
|
139
|
+
});
|
|
130
140
|
});
|
|
131
141
|
/**
|
|
132
142
|
* Returns all blocks representing reference widgets.
|
|
@@ -136,7 +146,8 @@ const getEditedWidgetAreas = (0, _data.createRegistrySelector)(select => (state,
|
|
|
136
146
|
*/
|
|
137
147
|
|
|
138
148
|
exports.getEditedWidgetAreas = getEditedWidgetAreas;
|
|
139
|
-
const getReferenceWidgetBlocks = (0, _data.createRegistrySelector)(select => (state
|
|
149
|
+
const getReferenceWidgetBlocks = (0, _data.createRegistrySelector)(select => function (state) {
|
|
150
|
+
let referenceWidgetName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
140
151
|
const results = [];
|
|
141
152
|
const widgetAreas = select(_constants.STORE_NAME).getWidgetAreas();
|
|
142
153
|
|
|
@@ -164,9 +175,12 @@ exports.getReferenceWidgetBlocks = getReferenceWidgetBlocks;
|
|
|
164
175
|
const isSavingWidgetAreas = (0, _data.createRegistrySelector)(select => () => {
|
|
165
176
|
var _select$getWidgetArea;
|
|
166
177
|
|
|
167
|
-
const widgetAreasIds = (_select$getWidgetArea = select(_constants.STORE_NAME).getWidgetAreas()) === null || _select$getWidgetArea === void 0 ? void 0 : _select$getWidgetArea.map(
|
|
168
|
-
|
|
169
|
-
|
|
178
|
+
const widgetAreasIds = (_select$getWidgetArea = select(_constants.STORE_NAME).getWidgetAreas()) === null || _select$getWidgetArea === void 0 ? void 0 : _select$getWidgetArea.map(_ref4 => {
|
|
179
|
+
let {
|
|
180
|
+
id
|
|
181
|
+
} = _ref4;
|
|
182
|
+
return id;
|
|
183
|
+
});
|
|
170
184
|
|
|
171
185
|
if (!widgetAreasIds) {
|
|
172
186
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/store/selectors.js"],"names":["getWidgets","select","widgets","coreStore","getEntityRecords","getWidget","state","id","editWidgetsStoreName","getWidgetAreas","query","KIND","WIDGET_AREA_ENTITY_TYPE","getWidgetAreaForWidgetId","widgetId","widgetAreas","find","widgetArea","post","getEditedEntityRecord","POST_TYPE","blockWidgetIds","blocks","map","block","includes","getParentWidgetAreaBlock","clientId","getBlock","getBlockName","getBlockParents","blockEditorStore","blockParents","widgetAreaClientId","parentClientId","getEditedWidgetAreas","ids","filter","hasEditsForEntityRecord","getReferenceWidgetBlocks","referenceWidgetName","results","_widgetArea","name","attributes","push","isSavingWidgetAreas","widgetAreasIds","isSaving","isSavingEntityRecord","widgetIds","Object","keys","undefined","getIsWidgetAreaOpen","widgetAreasOpenState","isInserterOpened","blockInserterPanel","__experimentalGetInsertionPoint","rootClientId","insertionIndex","canInsertBlockInWidgetArea","blockName","getBlocks","firstWidgetArea","canInsertBlockType","isListViewOpened","listViewPanel"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { keyBy } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createRegistrySelector } from '@wordpress/data';\nimport { getWidgetIdFromBlock } from '@wordpress/widgets';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport {\n\tbuildWidgetsQuery,\n\tbuildWidgetAreasQuery,\n\tbuildWidgetAreaPostId,\n\tKIND,\n\tPOST_TYPE,\n\tWIDGET_AREA_ENTITY_TYPE,\n} from './utils';\nimport { STORE_NAME as editWidgetsStoreName } from './constants';\n\n/**\n * Returns all API widgets.\n *\n * @return {Object[]} API List of widgets.\n */\nexport const getWidgets = createRegistrySelector( ( select ) => () => {\n\tconst widgets = select( coreStore ).getEntityRecords(\n\t\t'root',\n\t\t'widget',\n\t\tbuildWidgetsQuery()\n\t);\n\n\treturn keyBy( widgets, 'id' );\n} );\n\n/**\n * Returns API widget data for a particular widget ID.\n *\n * @param {number} id Widget ID.\n *\n * @return {Object} API widget data for a particular widget ID.\n */\nexport const getWidget = createRegistrySelector(\n\t( select ) => ( state, id ) => {\n\t\tconst widgets = select( editWidgetsStoreName ).getWidgets();\n\t\treturn widgets[ id ];\n\t}\n);\n\n/**\n * Returns all API widget areas.\n *\n * @return {Object[]} API List of widget areas.\n */\nexport const getWidgetAreas = createRegistrySelector( ( select ) => () => {\n\tconst query = buildWidgetAreasQuery();\n\treturn select( coreStore ).getEntityRecords(\n\t\tKIND,\n\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\tquery\n\t);\n} );\n\n/**\n * Returns widgetArea containing a block identify by given widgetId\n *\n * @param {string} widgetId The ID of the widget.\n * @return {Object} Containing widget area.\n */\nexport const getWidgetAreaForWidgetId = createRegistrySelector(\n\t( select ) => ( state, widgetId ) => {\n\t\tconst widgetAreas = select( editWidgetsStoreName ).getWidgetAreas();\n\t\treturn widgetAreas.find( ( widgetArea ) => {\n\t\t\tconst post = select( coreStore ).getEditedEntityRecord(\n\t\t\t\tKIND,\n\t\t\t\tPOST_TYPE,\n\t\t\t\tbuildWidgetAreaPostId( widgetArea.id )\n\t\t\t);\n\t\t\tconst blockWidgetIds = post.blocks.map( ( block ) =>\n\t\t\t\tgetWidgetIdFromBlock( block )\n\t\t\t);\n\t\t\treturn blockWidgetIds.includes( widgetId );\n\t\t} );\n\t}\n);\n\n/**\n * Given a child client id, returns the parent widget area block.\n *\n * @param {string} clientId The client id of a block in a widget area.\n *\n * @return {WPBlock} The widget area block.\n */\nexport const getParentWidgetAreaBlock = createRegistrySelector(\n\t( select ) => ( state, clientId ) => {\n\t\tconst { getBlock, getBlockName, getBlockParents } = select(\n\t\t\tblockEditorStore\n\t\t);\n\t\tconst blockParents = getBlockParents( clientId );\n\t\tconst widgetAreaClientId = blockParents.find(\n\t\t\t( parentClientId ) =>\n\t\t\t\tgetBlockName( parentClientId ) === 'core/widget-area'\n\t\t);\n\t\treturn getBlock( widgetAreaClientId );\n\t}\n);\n\n/**\n * Returns all edited widget area entity records.\n *\n * @return {Object[]} List of edited widget area entity records.\n */\nexport const getEditedWidgetAreas = createRegistrySelector(\n\t( select ) => ( state, ids ) => {\n\t\tlet widgetAreas = select( editWidgetsStoreName ).getWidgetAreas();\n\t\tif ( ! widgetAreas ) {\n\t\t\treturn [];\n\t\t}\n\t\tif ( ids ) {\n\t\t\twidgetAreas = widgetAreas.filter( ( { id } ) =>\n\t\t\t\tids.includes( id )\n\t\t\t);\n\t\t}\n\t\treturn widgetAreas\n\t\t\t.filter( ( { id } ) =>\n\t\t\t\tselect( coreStore ).hasEditsForEntityRecord(\n\t\t\t\t\tKIND,\n\t\t\t\t\tPOST_TYPE,\n\t\t\t\t\tbuildWidgetAreaPostId( id )\n\t\t\t\t)\n\t\t\t)\n\t\t\t.map( ( { id } ) =>\n\t\t\t\tselect( coreStore ).getEditedEntityRecord(\n\t\t\t\t\tKIND,\n\t\t\t\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\t\t\t\tid\n\t\t\t\t)\n\t\t\t);\n\t}\n);\n\n/**\n * Returns all blocks representing reference widgets.\n *\n * @param {string} referenceWidgetName Optional. If given, only reference widgets with this name will be returned.\n * @return {Array} List of all blocks representing reference widgets\n */\nexport const getReferenceWidgetBlocks = createRegistrySelector(\n\t( select ) => ( state, referenceWidgetName = null ) => {\n\t\tconst results = [];\n\t\tconst widgetAreas = select( editWidgetsStoreName ).getWidgetAreas();\n\t\tfor ( const _widgetArea of widgetAreas ) {\n\t\t\tconst post = select( coreStore ).getEditedEntityRecord(\n\t\t\t\tKIND,\n\t\t\t\tPOST_TYPE,\n\t\t\t\tbuildWidgetAreaPostId( _widgetArea.id )\n\t\t\t);\n\t\t\tfor ( const block of post.blocks ) {\n\t\t\t\tif (\n\t\t\t\t\tblock.name === 'core/legacy-widget' &&\n\t\t\t\t\t( ! referenceWidgetName ||\n\t\t\t\t\t\tblock.attributes?.referenceWidgetName ===\n\t\t\t\t\t\t\treferenceWidgetName )\n\t\t\t\t) {\n\t\t\t\t\tresults.push( block );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn results;\n\t}\n);\n\n/**\n * Returns true if any widget area is currently being saved.\n *\n * @return {boolean} True if any widget area is currently being saved. False otherwise.\n */\nexport const isSavingWidgetAreas = createRegistrySelector( ( select ) => () => {\n\tconst widgetAreasIds = select( editWidgetsStoreName )\n\t\t.getWidgetAreas()\n\t\t?.map( ( { id } ) => id );\n\tif ( ! widgetAreasIds ) {\n\t\treturn false;\n\t}\n\n\tfor ( const id of widgetAreasIds ) {\n\t\tconst isSaving = select( coreStore ).isSavingEntityRecord(\n\t\t\tKIND,\n\t\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\t\tid\n\t\t);\n\t\tif ( isSaving ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tconst widgetIds = [\n\t\t...Object.keys( select( editWidgetsStoreName ).getWidgets() ),\n\t\tundefined, // account for new widgets without an ID\n\t];\n\tfor ( const id of widgetIds ) {\n\t\tconst isSaving = select( coreStore ).isSavingEntityRecord(\n\t\t\t'root',\n\t\t\t'widget',\n\t\t\tid\n\t\t);\n\t\tif ( isSaving ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n} );\n\n/**\n * Gets whether the widget area is opened.\n *\n * @param {Array} state The open state of the widget areas.\n * @param {string} clientId The clientId of the widget area.\n *\n * @return {boolean} True if the widget area is open.\n */\nexport const getIsWidgetAreaOpen = ( state, clientId ) => {\n\tconst { widgetAreasOpenState } = state;\n\treturn !! widgetAreasOpenState[ clientId ];\n};\n\n/**\n * Returns true if the inserter is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport function isInserterOpened( state ) {\n\treturn !! state.blockInserterPanel;\n}\n\n/**\n * Get the insertion point for the inserter.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID and index to insert at.\n */\nexport function __experimentalGetInsertionPoint( state ) {\n\tconst { rootClientId, insertionIndex } = state.blockInserterPanel;\n\treturn { rootClientId, insertionIndex };\n}\n\n/**\n * Returns true if a block can be inserted into a widget area.\n *\n * @param {Array} state The open state of the widget areas.\n * @param {string} blockName The name of the block being inserted.\n *\n * @return {boolean} True if the block can be inserted in a widget area.\n */\nexport const canInsertBlockInWidgetArea = createRegistrySelector(\n\t( select ) => ( state, blockName ) => {\n\t\t// Widget areas are always top-level blocks, which getBlocks will return.\n\t\tconst widgetAreas = select( blockEditorStore ).getBlocks();\n\n\t\t// Makes an assumption that a block that can be inserted into one\n\t\t// widget area can be inserted into any widget area. Uses the first\n\t\t// widget area for testing whether the block can be inserted.\n\t\tconst [ firstWidgetArea ] = widgetAreas;\n\t\treturn select( blockEditorStore ).canInsertBlockType(\n\t\t\tblockName,\n\t\t\tfirstWidgetArea.clientId\n\t\t);\n\t}\n);\n\n/**\n * Returns true if the list view is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the list view is opened.\n */\nexport function isListViewOpened( state ) {\n\treturn state.listViewPanel;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/store/selectors.js"],"names":["getWidgets","select","widgets","coreStore","getEntityRecords","getWidget","state","id","editWidgetsStoreName","getWidgetAreas","query","KIND","WIDGET_AREA_ENTITY_TYPE","getWidgetAreaForWidgetId","widgetId","widgetAreas","find","widgetArea","post","getEditedEntityRecord","POST_TYPE","blockWidgetIds","blocks","map","block","includes","getParentWidgetAreaBlock","clientId","getBlock","getBlockName","getBlockParents","blockEditorStore","blockParents","widgetAreaClientId","parentClientId","getEditedWidgetAreas","ids","filter","hasEditsForEntityRecord","getReferenceWidgetBlocks","referenceWidgetName","results","_widgetArea","name","attributes","push","isSavingWidgetAreas","widgetAreasIds","isSaving","isSavingEntityRecord","widgetIds","Object","keys","undefined","getIsWidgetAreaOpen","widgetAreasOpenState","isInserterOpened","blockInserterPanel","__experimentalGetInsertionPoint","rootClientId","insertionIndex","canInsertBlockInWidgetArea","blockName","getBlocks","firstWidgetArea","canInsertBlockType","isListViewOpened","listViewPanel"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { keyBy } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createRegistrySelector } from '@wordpress/data';\nimport { getWidgetIdFromBlock } from '@wordpress/widgets';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport {\n\tbuildWidgetsQuery,\n\tbuildWidgetAreasQuery,\n\tbuildWidgetAreaPostId,\n\tKIND,\n\tPOST_TYPE,\n\tWIDGET_AREA_ENTITY_TYPE,\n} from './utils';\nimport { STORE_NAME as editWidgetsStoreName } from './constants';\n\n/**\n * Returns all API widgets.\n *\n * @return {Object[]} API List of widgets.\n */\nexport const getWidgets = createRegistrySelector( ( select ) => () => {\n\tconst widgets = select( coreStore ).getEntityRecords(\n\t\t'root',\n\t\t'widget',\n\t\tbuildWidgetsQuery()\n\t);\n\n\treturn keyBy( widgets, 'id' );\n} );\n\n/**\n * Returns API widget data for a particular widget ID.\n *\n * @param {number} id Widget ID.\n *\n * @return {Object} API widget data for a particular widget ID.\n */\nexport const getWidget = createRegistrySelector(\n\t( select ) => ( state, id ) => {\n\t\tconst widgets = select( editWidgetsStoreName ).getWidgets();\n\t\treturn widgets[ id ];\n\t}\n);\n\n/**\n * Returns all API widget areas.\n *\n * @return {Object[]} API List of widget areas.\n */\nexport const getWidgetAreas = createRegistrySelector( ( select ) => () => {\n\tconst query = buildWidgetAreasQuery();\n\treturn select( coreStore ).getEntityRecords(\n\t\tKIND,\n\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\tquery\n\t);\n} );\n\n/**\n * Returns widgetArea containing a block identify by given widgetId\n *\n * @param {string} widgetId The ID of the widget.\n * @return {Object} Containing widget area.\n */\nexport const getWidgetAreaForWidgetId = createRegistrySelector(\n\t( select ) => ( state, widgetId ) => {\n\t\tconst widgetAreas = select( editWidgetsStoreName ).getWidgetAreas();\n\t\treturn widgetAreas.find( ( widgetArea ) => {\n\t\t\tconst post = select( coreStore ).getEditedEntityRecord(\n\t\t\t\tKIND,\n\t\t\t\tPOST_TYPE,\n\t\t\t\tbuildWidgetAreaPostId( widgetArea.id )\n\t\t\t);\n\t\t\tconst blockWidgetIds = post.blocks.map( ( block ) =>\n\t\t\t\tgetWidgetIdFromBlock( block )\n\t\t\t);\n\t\t\treturn blockWidgetIds.includes( widgetId );\n\t\t} );\n\t}\n);\n\n/**\n * Given a child client id, returns the parent widget area block.\n *\n * @param {string} clientId The client id of a block in a widget area.\n *\n * @return {WPBlock} The widget area block.\n */\nexport const getParentWidgetAreaBlock = createRegistrySelector(\n\t( select ) => ( state, clientId ) => {\n\t\tconst { getBlock, getBlockName, getBlockParents } = select(\n\t\t\tblockEditorStore\n\t\t);\n\t\tconst blockParents = getBlockParents( clientId );\n\t\tconst widgetAreaClientId = blockParents.find(\n\t\t\t( parentClientId ) =>\n\t\t\t\tgetBlockName( parentClientId ) === 'core/widget-area'\n\t\t);\n\t\treturn getBlock( widgetAreaClientId );\n\t}\n);\n\n/**\n * Returns all edited widget area entity records.\n *\n * @return {Object[]} List of edited widget area entity records.\n */\nexport const getEditedWidgetAreas = createRegistrySelector(\n\t( select ) => ( state, ids ) => {\n\t\tlet widgetAreas = select( editWidgetsStoreName ).getWidgetAreas();\n\t\tif ( ! widgetAreas ) {\n\t\t\treturn [];\n\t\t}\n\t\tif ( ids ) {\n\t\t\twidgetAreas = widgetAreas.filter( ( { id } ) =>\n\t\t\t\tids.includes( id )\n\t\t\t);\n\t\t}\n\t\treturn widgetAreas\n\t\t\t.filter( ( { id } ) =>\n\t\t\t\tselect( coreStore ).hasEditsForEntityRecord(\n\t\t\t\t\tKIND,\n\t\t\t\t\tPOST_TYPE,\n\t\t\t\t\tbuildWidgetAreaPostId( id )\n\t\t\t\t)\n\t\t\t)\n\t\t\t.map( ( { id } ) =>\n\t\t\t\tselect( coreStore ).getEditedEntityRecord(\n\t\t\t\t\tKIND,\n\t\t\t\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\t\t\t\tid\n\t\t\t\t)\n\t\t\t);\n\t}\n);\n\n/**\n * Returns all blocks representing reference widgets.\n *\n * @param {string} referenceWidgetName Optional. If given, only reference widgets with this name will be returned.\n * @return {Array} List of all blocks representing reference widgets\n */\nexport const getReferenceWidgetBlocks = createRegistrySelector(\n\t( select ) => ( state, referenceWidgetName = null ) => {\n\t\tconst results = [];\n\t\tconst widgetAreas = select( editWidgetsStoreName ).getWidgetAreas();\n\t\tfor ( const _widgetArea of widgetAreas ) {\n\t\t\tconst post = select( coreStore ).getEditedEntityRecord(\n\t\t\t\tKIND,\n\t\t\t\tPOST_TYPE,\n\t\t\t\tbuildWidgetAreaPostId( _widgetArea.id )\n\t\t\t);\n\t\t\tfor ( const block of post.blocks ) {\n\t\t\t\tif (\n\t\t\t\t\tblock.name === 'core/legacy-widget' &&\n\t\t\t\t\t( ! referenceWidgetName ||\n\t\t\t\t\t\tblock.attributes?.referenceWidgetName ===\n\t\t\t\t\t\t\treferenceWidgetName )\n\t\t\t\t) {\n\t\t\t\t\tresults.push( block );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn results;\n\t}\n);\n\n/**\n * Returns true if any widget area is currently being saved.\n *\n * @return {boolean} True if any widget area is currently being saved. False otherwise.\n */\nexport const isSavingWidgetAreas = createRegistrySelector( ( select ) => () => {\n\tconst widgetAreasIds = select( editWidgetsStoreName )\n\t\t.getWidgetAreas()\n\t\t?.map( ( { id } ) => id );\n\tif ( ! widgetAreasIds ) {\n\t\treturn false;\n\t}\n\n\tfor ( const id of widgetAreasIds ) {\n\t\tconst isSaving = select( coreStore ).isSavingEntityRecord(\n\t\t\tKIND,\n\t\t\tWIDGET_AREA_ENTITY_TYPE,\n\t\t\tid\n\t\t);\n\t\tif ( isSaving ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\tconst widgetIds = [\n\t\t...Object.keys( select( editWidgetsStoreName ).getWidgets() ),\n\t\tundefined, // account for new widgets without an ID\n\t];\n\tfor ( const id of widgetIds ) {\n\t\tconst isSaving = select( coreStore ).isSavingEntityRecord(\n\t\t\t'root',\n\t\t\t'widget',\n\t\t\tid\n\t\t);\n\t\tif ( isSaving ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n} );\n\n/**\n * Gets whether the widget area is opened.\n *\n * @param {Array} state The open state of the widget areas.\n * @param {string} clientId The clientId of the widget area.\n *\n * @return {boolean} True if the widget area is open.\n */\nexport const getIsWidgetAreaOpen = ( state, clientId ) => {\n\tconst { widgetAreasOpenState } = state;\n\treturn !! widgetAreasOpenState[ clientId ];\n};\n\n/**\n * Returns true if the inserter is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the inserter is opened.\n */\nexport function isInserterOpened( state ) {\n\treturn !! state.blockInserterPanel;\n}\n\n/**\n * Get the insertion point for the inserter.\n *\n * @param {Object} state Global application state.\n *\n * @return {Object} The root client ID and index to insert at.\n */\nexport function __experimentalGetInsertionPoint( state ) {\n\tconst { rootClientId, insertionIndex } = state.blockInserterPanel;\n\treturn { rootClientId, insertionIndex };\n}\n\n/**\n * Returns true if a block can be inserted into a widget area.\n *\n * @param {Array} state The open state of the widget areas.\n * @param {string} blockName The name of the block being inserted.\n *\n * @return {boolean} True if the block can be inserted in a widget area.\n */\nexport const canInsertBlockInWidgetArea = createRegistrySelector(\n\t( select ) => ( state, blockName ) => {\n\t\t// Widget areas are always top-level blocks, which getBlocks will return.\n\t\tconst widgetAreas = select( blockEditorStore ).getBlocks();\n\n\t\t// Makes an assumption that a block that can be inserted into one\n\t\t// widget area can be inserted into any widget area. Uses the first\n\t\t// widget area for testing whether the block can be inserted.\n\t\tconst [ firstWidgetArea ] = widgetAreas;\n\t\treturn select( blockEditorStore ).canInsertBlockType(\n\t\t\tblockName,\n\t\t\tfirstWidgetArea.clientId\n\t\t);\n\t}\n);\n\n/**\n * Returns true if the list view is opened.\n *\n * @param {Object} state Global application state.\n *\n * @return {boolean} Whether the list view is opened.\n */\nexport function isListViewOpened( state ) {\n\treturn state.listViewPanel;\n}\n"]}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.transformWidgetToBlock = transformWidgetToBlock;
|
|
7
6
|
exports.transformBlockToWidget = transformBlockToWidget;
|
|
7
|
+
exports.transformWidgetToBlock = transformWidgetToBlock;
|
|
8
8
|
|
|
9
9
|
var _blocks = require("@wordpress/blocks");
|
|
10
10
|
|
|
@@ -55,7 +55,8 @@ function transformWidgetToBlock(widget) {
|
|
|
55
55
|
*/
|
|
56
56
|
|
|
57
57
|
|
|
58
|
-
function transformBlockToWidget(block
|
|
58
|
+
function transformBlockToWidget(block) {
|
|
59
|
+
let relatedWidget = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
59
60
|
let widget;
|
|
60
61
|
const isValidLegacyWidgetBlock = block.name === 'core/legacy-widget' && (block.attributes.id || block.attributes.instance);
|
|
61
62
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/store/transformers.js"],"names":["transformWidgetToBlock","widget","id_base","parsedBlocks","instance","raw","content","length","id","attributes","_embedded","about","is_multi","idBase","transformBlockToWidget","block","relatedWidget","isValidLegacyWidgetBlock","name","rendered","rendered_form"],"mappings":";;;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,sBAAT,CAAiCC,MAAjC,EAA0C;AAChD,MAAKA,MAAM,CAACC,OAAP,KAAmB,OAAxB,EAAkC;AACjC,UAAMC,YAAY,GAAG,mBAAOF,MAAM,CAACG,QAAP,CAAgBC,GAAhB,CAAoBC,OAA3B,CAArB;;AACA,QAAK,CAAEH,YAAY,CAACI,MAApB,EAA6B;AAC5B,aAAO,iCACN,yBAAa,gBAAb,EAA+B,EAA/B,EAAmC,EAAnC,CADM,EAENN,MAAM,CAACO,EAFD,CAAP;AAIA;;AACD,WAAO,iCAAoBL,YAAY,CAAE,CAAF,CAAhC,EAAuCF,MAAM,CAACO,EAA9C,CAAP;AACA;;AAED,MAAIC,UAAJ;;AACA,MAAKR,MAAM,CAACS,SAAP,CAAiBC,KAAjB,CAAwB,CAAxB,EAA4BC,QAAjC,EAA4C;AAC3CH,IAAAA,UAAU,GAAG;AACZI,MAAAA,MAAM,EAAEZ,MAAM,CAACC,OADH;AAEZE,MAAAA,QAAQ,EAAEH,MAAM,CAACG;AAFL,KAAb;AAIA,GALD,MAKO;AACNK,IAAAA,UAAU,GAAG;AACZD,MAAAA,EAAE,EAAEP,MAAM,CAACO;AADC,KAAb;AAGA;;AAED,SAAO,iCACN,yBAAa,oBAAb,EAAmCC,UAAnC,EAA+C,EAA/C,CADM,EAENR,MAAM,CAACO,EAFD,CAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASM,sBAAT,CAAiCC,KAAjC,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/store/transformers.js"],"names":["transformWidgetToBlock","widget","id_base","parsedBlocks","instance","raw","content","length","id","attributes","_embedded","about","is_multi","idBase","transformBlockToWidget","block","relatedWidget","isValidLegacyWidgetBlock","name","rendered","rendered_form"],"mappings":";;;;;;;;AAGA;;AACA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,sBAAT,CAAiCC,MAAjC,EAA0C;AAChD,MAAKA,MAAM,CAACC,OAAP,KAAmB,OAAxB,EAAkC;AACjC,UAAMC,YAAY,GAAG,mBAAOF,MAAM,CAACG,QAAP,CAAgBC,GAAhB,CAAoBC,OAA3B,CAArB;;AACA,QAAK,CAAEH,YAAY,CAACI,MAApB,EAA6B;AAC5B,aAAO,iCACN,yBAAa,gBAAb,EAA+B,EAA/B,EAAmC,EAAnC,CADM,EAENN,MAAM,CAACO,EAFD,CAAP;AAIA;;AACD,WAAO,iCAAoBL,YAAY,CAAE,CAAF,CAAhC,EAAuCF,MAAM,CAACO,EAA9C,CAAP;AACA;;AAED,MAAIC,UAAJ;;AACA,MAAKR,MAAM,CAACS,SAAP,CAAiBC,KAAjB,CAAwB,CAAxB,EAA4BC,QAAjC,EAA4C;AAC3CH,IAAAA,UAAU,GAAG;AACZI,MAAAA,MAAM,EAAEZ,MAAM,CAACC,OADH;AAEZE,MAAAA,QAAQ,EAAEH,MAAM,CAACG;AAFL,KAAb;AAIA,GALD,MAKO;AACNK,IAAAA,UAAU,GAAG;AACZD,MAAAA,EAAE,EAAEP,MAAM,CAACO;AADC,KAAb;AAGA;;AAED,SAAO,iCACN,yBAAa,oBAAb,EAAmCC,UAAnC,EAA+C,EAA/C,CADM,EAENR,MAAM,CAACO,EAFD,CAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASM,sBAAT,CAAiCC,KAAjC,EAA6D;AAAA,MAArBC,aAAqB,uEAAL,EAAK;AACnE,MAAIf,MAAJ;AAEA,QAAMgB,wBAAwB,GAC7BF,KAAK,CAACG,IAAN,KAAe,oBAAf,KACEH,KAAK,CAACN,UAAN,CAAiBD,EAAjB,IAAuBO,KAAK,CAACN,UAAN,CAAiBL,QAD1C,CADD;;AAIA,MAAKa,wBAAL,EAAgC;AAAA;;AAC/BhB,IAAAA,MAAM,GAAG,EACR,GAAGe,aADK;AAERR,MAAAA,EAAE,0BAAEO,KAAK,CAACN,UAAN,CAAiBD,EAAnB,uEAAyBQ,aAAa,CAACR,EAFjC;AAGRN,MAAAA,OAAO,2BAAEa,KAAK,CAACN,UAAN,CAAiBI,MAAnB,yEAA6BG,aAAa,CAACd,OAH1C;AAIRE,MAAAA,QAAQ,2BAAEW,KAAK,CAACN,UAAN,CAAiBL,QAAnB,yEAA+BY,aAAa,CAACZ;AAJ7C,KAAT;AAMA,GAPD,MAOO;AACNH,IAAAA,MAAM,GAAG,EACR,GAAGe,aADK;AAERd,MAAAA,OAAO,EAAE,OAFD;AAGRE,MAAAA,QAAQ,EAAE;AACTC,QAAAA,GAAG,EAAE;AACJC,UAAAA,OAAO,EAAE,uBAAWS,KAAX;AADL;AADI;AAHF,KAAT;AASA,GAxBkE,CA0BnE;;;AACA,SAAOd,MAAM,CAACkB,QAAd;AACA,SAAOlB,MAAM,CAACmB,aAAd;AAEA,SAAOnB,MAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, parse, serialize } from '@wordpress/blocks';\nimport { addWidgetIdToBlock } from '@wordpress/widgets';\n\n/**\n * Converts a widget entity record into a block.\n *\n * @param {Object} widget The widget entity record.\n * @return {Object} a block (converted from the entity record).\n */\nexport function transformWidgetToBlock( widget ) {\n\tif ( widget.id_base === 'block' ) {\n\t\tconst parsedBlocks = parse( widget.instance.raw.content );\n\t\tif ( ! parsedBlocks.length ) {\n\t\t\treturn addWidgetIdToBlock(\n\t\t\t\tcreateBlock( 'core/paragraph', {}, [] ),\n\t\t\t\twidget.id\n\t\t\t);\n\t\t}\n\t\treturn addWidgetIdToBlock( parsedBlocks[ 0 ], widget.id );\n\t}\n\n\tlet attributes;\n\tif ( widget._embedded.about[ 0 ].is_multi ) {\n\t\tattributes = {\n\t\t\tidBase: widget.id_base,\n\t\t\tinstance: widget.instance,\n\t\t};\n\t} else {\n\t\tattributes = {\n\t\t\tid: widget.id,\n\t\t};\n\t}\n\n\treturn addWidgetIdToBlock(\n\t\tcreateBlock( 'core/legacy-widget', attributes, [] ),\n\t\twidget.id\n\t);\n}\n\n/**\n * Converts a block to a widget entity record.\n *\n * @param {Object} block The block.\n * @param {Object?} relatedWidget A related widget entity record from the API (optional).\n * @return {Object} the widget object (converted from block).\n */\nexport function transformBlockToWidget( block, relatedWidget = {} ) {\n\tlet widget;\n\n\tconst isValidLegacyWidgetBlock =\n\t\tblock.name === 'core/legacy-widget' &&\n\t\t( block.attributes.id || block.attributes.instance );\n\n\tif ( isValidLegacyWidgetBlock ) {\n\t\twidget = {\n\t\t\t...relatedWidget,\n\t\t\tid: block.attributes.id ?? relatedWidget.id,\n\t\t\tid_base: block.attributes.idBase ?? relatedWidget.id_base,\n\t\t\tinstance: block.attributes.instance ?? relatedWidget.instance,\n\t\t};\n\t} else {\n\t\twidget = {\n\t\t\t...relatedWidget,\n\t\t\tid_base: 'block',\n\t\t\tinstance: {\n\t\t\t\traw: {\n\t\t\t\t\tcontent: serialize( block ),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\t// Delete read-only properties.\n\tdelete widget.rendered;\n\tdelete widget.rendered_form;\n\n\treturn widget;\n}\n"]}
|
package/build/store/utils.js
CHANGED
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.buildWidgetAreasPostId = exports.buildWidgetAreaPostId = exports.WIDGET_AREA_ENTITY_TYPE = exports.POST_TYPE = exports.KIND = void 0;
|
|
6
7
|
exports.buildWidgetAreasQuery = buildWidgetAreasQuery;
|
|
7
8
|
exports.buildWidgetsQuery = buildWidgetsQuery;
|
|
8
|
-
exports.createStubPost =
|
|
9
|
+
exports.createStubPost = void 0;
|
|
9
10
|
|
|
10
11
|
/**
|
|
11
12
|
* "Kind" of the navigation post.
|
package/build/store/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/store/utils.js"],"names":["KIND","WIDGET_AREA_ENTITY_TYPE","POST_TYPE","buildWidgetAreaPostId","widgetAreaId","buildWidgetAreasPostId","buildWidgetAreasQuery","per_page","buildWidgetsQuery","_embed","createStubPost","id","blocks","slug","status","type","meta"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/store/utils.js"],"names":["KIND","WIDGET_AREA_ENTITY_TYPE","POST_TYPE","buildWidgetAreaPostId","widgetAreaId","buildWidgetAreasPostId","buildWidgetAreasQuery","per_page","buildWidgetsQuery","_embed","createStubPost","id","blocks","slug","status","type","meta"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACO,MAAMA,IAAI,GAAG,MAAb;AAEP;AACA;AACA;AACA;AACA;;;AACO,MAAMC,uBAAuB,GAAG,SAAhC;AAEP;AACA;AACA;AACA;AACA;;;AACO,MAAMC,SAAS,GAAG,UAAlB;AAEP;AACA;AACA;AACA;AACA;AACA;;;;AACO,MAAMC,qBAAqB,GAAKC,YAAF,IACnC,eAAeA,YAAc,EADxB;AAGP;AACA;AACA;AACA;AACA;;;;;AACO,MAAMC,sBAAsB,GAAG,MAAO,cAAtC;AAEP;AACA;AACA;AACA;AACA;;;;;AACO,SAASC,qBAAT,GAAiC;AACvC,SAAO;AACNC,IAAAA,QAAQ,EAAE,CAAC;AADL,GAAP;AAGA;AAED;AACA;AACA;AACA;AACA;;;AACO,SAASC,iBAAT,GAA6B;AACnC,SAAO;AACND,IAAAA,QAAQ,EAAE,CAAC,CADL;AAENE,IAAAA,MAAM,EAAE;AAFF,GAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,MAAMC,cAAc,GAAG,CAAEC,EAAF,EAAMC,MAAN,MAAoB;AACjDD,EAAAA,EADiD;AAEjDE,EAAAA,IAAI,EAAEF,EAF2C;AAGjDG,EAAAA,MAAM,EAAE,OAHyC;AAIjDC,EAAAA,IAAI,EAAE,MAJ2C;AAKjDH,EAAAA,MALiD;AAMjDI,EAAAA,IAAI,EAAE;AACLZ,IAAAA,YAAY,EAAEO;AADT;AAN2C,CAApB,CAAvB","sourcesContent":["/**\n * \"Kind\" of the navigation post.\n *\n * @type {string}\n */\nexport const KIND = 'root';\n\n/**\n * \"post type\" of the navigation post.\n *\n * @type {string}\n */\nexport const WIDGET_AREA_ENTITY_TYPE = 'sidebar';\n\n/**\n * \"post type\" of the widget area post.\n *\n * @type {string}\n */\nexport const POST_TYPE = 'postType';\n\n/**\n * Builds an ID for a new widget area post.\n *\n * @param {number} widgetAreaId Widget area id.\n * @return {string} An ID.\n */\nexport const buildWidgetAreaPostId = ( widgetAreaId ) =>\n\t`widget-area-${ widgetAreaId }`;\n\n/**\n * Builds an ID for a global widget areas post.\n *\n * @return {string} An ID.\n */\nexport const buildWidgetAreasPostId = () => `widget-areas`;\n\n/**\n * Builds a query to resolve sidebars.\n *\n * @return {Object} Query.\n */\nexport function buildWidgetAreasQuery() {\n\treturn {\n\t\tper_page: -1,\n\t};\n}\n\n/**\n * Builds a query to resolve widgets.\n *\n * @return {Object} Query.\n */\nexport function buildWidgetsQuery() {\n\treturn {\n\t\tper_page: -1,\n\t\t_embed: 'about',\n\t};\n}\n\n/**\n * Creates a stub post with given id and set of blocks. Used as a governing entity records\n * for all widget areas.\n *\n * @param {string} id Post ID.\n * @param {Array} blocks The list of blocks.\n * @return {Object} A stub post object formatted in compliance with the data layer.\n */\nexport const createStubPost = ( id, blocks ) => ( {\n\tid,\n\tslug: id,\n\tstatus: 'draft',\n\ttype: 'page',\n\tblocks,\n\tmeta: {\n\t\twidgetAreaId: id,\n\t},\n} );\n"]}
|
|
@@ -16,14 +16,15 @@ import { store as editWidgetsStore } from '../../../store';
|
|
|
16
16
|
import useIsDraggingWithin from './use-is-dragging-within';
|
|
17
17
|
/** @typedef {import('@wordpress/element').RefObject} RefObject */
|
|
18
18
|
|
|
19
|
-
export default function WidgetAreaEdit({
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
19
|
+
export default function WidgetAreaEdit(_ref) {
|
|
20
|
+
let {
|
|
21
|
+
clientId,
|
|
22
|
+
className,
|
|
23
|
+
attributes: {
|
|
24
|
+
id,
|
|
25
|
+
name
|
|
26
|
+
}
|
|
27
|
+
} = _ref;
|
|
27
28
|
const isOpen = useSelect(select => select(editWidgetsStore).getIsWidgetAreaOpen(clientId), [clientId]);
|
|
28
29
|
const {
|
|
29
30
|
setIsWidgetAreaOpen
|
|
@@ -56,22 +57,26 @@ export default function WidgetAreaEdit({
|
|
|
56
57
|
setIsWidgetAreaOpen(clientId, !isOpen);
|
|
57
58
|
},
|
|
58
59
|
scrollAfterOpen: !isDragging
|
|
59
|
-
},
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
60
|
+
}, _ref2 => {
|
|
61
|
+
let {
|
|
62
|
+
opened
|
|
63
|
+
} = _ref2;
|
|
64
|
+
return (// This is required to ensure LegacyWidget blocks are not
|
|
65
|
+
// unmounted when the panel is collapsed. Unmounting legacy
|
|
66
|
+
// widgets may have unintended consequences (e.g. TinyMCE
|
|
67
|
+
// not being properly reinitialized)
|
|
68
|
+
createElement(DisclosureContent, {
|
|
69
|
+
className: "wp-block-widget-area__panel-body-content",
|
|
70
|
+
visible: opened
|
|
71
|
+
}, createElement(EntityProvider, {
|
|
72
|
+
kind: "root",
|
|
73
|
+
type: "postType",
|
|
74
|
+
id: `widget-area-${id}`
|
|
75
|
+
}, createElement(WidgetAreaInnerBlocks, {
|
|
76
|
+
id: id
|
|
77
|
+
})))
|
|
78
|
+
);
|
|
79
|
+
}));
|
|
75
80
|
}
|
|
76
81
|
/**
|
|
77
82
|
* A React hook to determine if dragging is active.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/blocks/widget-area/edit/index.js"],"names":["useEffect","useState","useCallback","useRef","useSelect","useDispatch","EntityProvider","__unstableDisclosureContent","DisclosureContent","Panel","PanelBody","WidgetAreaInnerBlocks","store","editWidgetsStore","useIsDraggingWithin","WidgetAreaEdit","clientId","className","attributes","id","name","isOpen","select","getIsWidgetAreaOpen","setIsWidgetAreaOpen","wrapper","setOpen","openState","isDragging","useIsDragging","isDraggingWithin","openedWhileDragging","setOpenedWhileDragging","opened","elementRef","setIsDragging","ownerDocument","current","handleDragStart","handleDragEnd","addEventListener","removeEventListener"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,QAApB,EAA8BC,WAA9B,EAA2CC,MAA3C,QAAyD,oBAAzD;AACA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SAASC,cAAT,QAA+B,sBAA/B;AACA,SACCC,2BAA2B,IAAIC,iBADhC,EAECC,KAFD,EAGCC,SAHD,QAIO,uBAJP;AAMA;AACA;AACA;;AACA,OAAOC,qBAAP,MAAkC,gBAAlC;AACA,SAASC,KAAK,IAAIC,gBAAlB,QAA0C,gBAA1C;AACA,OAAOC,mBAAP,MAAgC,0BAAhC;AAEA;;AAEA,eAAe,SAASC,cAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/blocks/widget-area/edit/index.js"],"names":["useEffect","useState","useCallback","useRef","useSelect","useDispatch","EntityProvider","__unstableDisclosureContent","DisclosureContent","Panel","PanelBody","WidgetAreaInnerBlocks","store","editWidgetsStore","useIsDraggingWithin","WidgetAreaEdit","clientId","className","attributes","id","name","isOpen","select","getIsWidgetAreaOpen","setIsWidgetAreaOpen","wrapper","setOpen","openState","isDragging","useIsDragging","isDraggingWithin","openedWhileDragging","setOpenedWhileDragging","opened","elementRef","setIsDragging","ownerDocument","current","handleDragStart","handleDragEnd","addEventListener","removeEventListener"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect, useState, useCallback, useRef } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { EntityProvider } from '@wordpress/core-data';\nimport {\n\t__unstableDisclosureContent as DisclosureContent,\n\tPanel,\n\tPanelBody,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport WidgetAreaInnerBlocks from './inner-blocks';\nimport { store as editWidgetsStore } from '../../../store';\nimport useIsDraggingWithin from './use-is-dragging-within';\n\n/** @typedef {import('@wordpress/element').RefObject} RefObject */\n\nexport default function WidgetAreaEdit( {\n\tclientId,\n\tclassName,\n\tattributes: { id, name },\n} ) {\n\tconst isOpen = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editWidgetsStore ).getIsWidgetAreaOpen( clientId ),\n\t\t[ clientId ]\n\t);\n\tconst { setIsWidgetAreaOpen } = useDispatch( editWidgetsStore );\n\n\tconst wrapper = useRef();\n\tconst setOpen = useCallback(\n\t\t( openState ) => setIsWidgetAreaOpen( clientId, openState ),\n\t\t[ clientId ]\n\t);\n\tconst isDragging = useIsDragging( wrapper );\n\tconst isDraggingWithin = useIsDraggingWithin( wrapper );\n\n\tconst [ openedWhileDragging, setOpenedWhileDragging ] = useState( false );\n\tuseEffect( () => {\n\t\tif ( ! isDragging ) {\n\t\t\tsetOpenedWhileDragging( false );\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isDraggingWithin && ! isOpen ) {\n\t\t\tsetOpen( true );\n\t\t\tsetOpenedWhileDragging( true );\n\t\t} else if ( ! isDraggingWithin && isOpen && openedWhileDragging ) {\n\t\t\tsetOpen( false );\n\t\t}\n\t}, [ isOpen, isDragging, isDraggingWithin, openedWhileDragging ] );\n\n\treturn (\n\t\t<Panel className={ className } ref={ wrapper }>\n\t\t\t<PanelBody\n\t\t\t\ttitle={ name }\n\t\t\t\topened={ isOpen }\n\t\t\t\tonToggle={ () => {\n\t\t\t\t\tsetIsWidgetAreaOpen( clientId, ! isOpen );\n\t\t\t\t} }\n\t\t\t\tscrollAfterOpen={ ! isDragging }\n\t\t\t>\n\t\t\t\t{ ( { opened } ) => (\n\t\t\t\t\t// This is required to ensure LegacyWidget blocks are not\n\t\t\t\t\t// unmounted when the panel is collapsed. Unmounting legacy\n\t\t\t\t\t// widgets may have unintended consequences (e.g. TinyMCE\n\t\t\t\t\t// not being properly reinitialized)\n\t\t\t\t\t<DisclosureContent\n\t\t\t\t\t\tclassName=\"wp-block-widget-area__panel-body-content\"\n\t\t\t\t\t\tvisible={ opened }\n\t\t\t\t\t>\n\t\t\t\t\t\t<EntityProvider\n\t\t\t\t\t\t\tkind=\"root\"\n\t\t\t\t\t\t\ttype=\"postType\"\n\t\t\t\t\t\t\tid={ `widget-area-${ id }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<WidgetAreaInnerBlocks id={ id } />\n\t\t\t\t\t\t</EntityProvider>\n\t\t\t\t\t</DisclosureContent>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</Panel>\n\t);\n}\n\n/**\n * A React hook to determine if dragging is active.\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the entire document.\n */\nconst useIsDragging = ( elementRef ) => {\n\tconst [ isDragging, setIsDragging ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart() {\n\t\t\tsetIsDragging( true );\n\t\t}\n\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDragging( false );\n\t\t}\n\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t};\n\t}, [] );\n\n\treturn isDragging;\n};\n"]}
|
|
@@ -16,9 +16,10 @@ import { useRef } from '@wordpress/element';
|
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
18
|
import useIsDraggingWithin from './use-is-dragging-within';
|
|
19
|
-
export default function WidgetAreaInnerBlocks({
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
export default function WidgetAreaInnerBlocks(_ref) {
|
|
20
|
+
let {
|
|
21
|
+
id
|
|
22
|
+
} = _ref;
|
|
22
23
|
const [blocks, onInput, onChange] = useEntityBlockEditor('root', 'postType');
|
|
23
24
|
const innerBlocksRef = useRef();
|
|
24
25
|
const isDraggingWithinInnerBlocks = useIsDraggingWithin(innerBlocksRef);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/blocks/widget-area/edit/inner-blocks.js"],"names":["classnames","useEntityBlockEditor","InnerBlocks","useInnerBlocksProps","useRef","useIsDraggingWithin","WidgetAreaInnerBlocks","id","blocks","onInput","onChange","innerBlocksRef","isDraggingWithinInnerBlocks","shouldHighlightDropZone","innerBlocksProps","ref","value","templateLock","renderAppender","ButtonBlockAppender"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,oBAAT,QAAqC,sBAArC;AACA,SAASC,WAAT,EAAsBC,mBAAtB,QAAiD,yBAAjD;AACA,SAASC,MAAT,QAAuB,oBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,mBAAP,MAAgC,0BAAhC;AAEA,eAAe,SAASC,qBAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/blocks/widget-area/edit/inner-blocks.js"],"names":["classnames","useEntityBlockEditor","InnerBlocks","useInnerBlocksProps","useRef","useIsDraggingWithin","WidgetAreaInnerBlocks","id","blocks","onInput","onChange","innerBlocksRef","isDraggingWithinInnerBlocks","shouldHighlightDropZone","innerBlocksProps","ref","value","templateLock","renderAppender","ButtonBlockAppender"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,oBAAT,QAAqC,sBAArC;AACA,SAASC,WAAT,EAAsBC,mBAAtB,QAAiD,yBAAjD;AACA,SAASC,MAAT,QAAuB,oBAAvB;AAEA;AACA;AACA;;AACA,OAAOC,mBAAP,MAAgC,0BAAhC;AAEA,eAAe,SAASC,qBAAT,OAAyC;AAAA,MAAT;AAAEC,IAAAA;AAAF,GAAS;AACvD,QAAM,CAAEC,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgCT,oBAAoB,CACzD,MADyD,EAEzD,UAFyD,CAA1D;AAIA,QAAMU,cAAc,GAAGP,MAAM,EAA7B;AACA,QAAMQ,2BAA2B,GAAGP,mBAAmB,CAAEM,cAAF,CAAvD;AACA,QAAME,uBAAuB,GAAGD,2BAAhC,CAPuD,CAQvD;;AACA,QAAME,gBAAgB,GAAGX,mBAAmB,CAC3C;AAAEY,IAAAA,GAAG,EAAEJ;AAAP,GAD2C,EAE3C;AACCK,IAAAA,KAAK,EAAER,MADR;AAECC,IAAAA,OAFD;AAGCC,IAAAA,QAHD;AAICO,IAAAA,YAAY,EAAE,KAJf;AAKCC,IAAAA,cAAc,EAAEhB,WAAW,CAACiB;AAL7B,GAF2C,CAA5C;AAWA,SACC;AACC,2BAAsBZ,EADvB;AAEC,IAAA,SAAS,EAAGP,UAAU,CACrB,oFADqB,EAErB;AACC,mDAA6Ca;AAD9C,KAFqB;AAFvB,KASC,qBAAUC,gBAAV,CATD,CADD;AAaA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport { InnerBlocks, useInnerBlocksProps } from '@wordpress/block-editor';\nimport { useRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useIsDraggingWithin from './use-is-dragging-within';\n\nexport default function WidgetAreaInnerBlocks( { id } ) {\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'root',\n\t\t'postType'\n\t);\n\tconst innerBlocksRef = useRef();\n\tconst isDraggingWithinInnerBlocks = useIsDraggingWithin( innerBlocksRef );\n\tconst shouldHighlightDropZone = isDraggingWithinInnerBlocks;\n\t// Using the experimental hook so that we can control the className of the element.\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ ref: innerBlocksRef },\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\ttemplateLock: false,\n\t\t\trenderAppender: InnerBlocks.ButtonBlockAppender,\n\t\t}\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tdata-widget-area-id={ id }\n\t\t\tclassName={ classnames(\n\t\t\t\t'wp-block-widget-area__inner-blocks block-editor-inner-blocks editor-styles-wrapper',\n\t\t\t\t{\n\t\t\t\t\t'wp-block-widget-area__highlight-drop-zone': shouldHighlightDropZone,\n\t\t\t\t}\n\t\t\t) }\n\t\t>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -36,9 +36,12 @@ export { metadata, name };
|
|
|
36
36
|
export const settings = {
|
|
37
37
|
title: __('Widget Area'),
|
|
38
38
|
description: __('A widget area container.'),
|
|
39
|
-
__experimentalLabel:
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
__experimentalLabel: _ref => {
|
|
40
|
+
let {
|
|
41
|
+
name: label
|
|
42
|
+
} = _ref;
|
|
43
|
+
return label;
|
|
44
|
+
},
|
|
42
45
|
edit
|
|
43
46
|
};
|
|
44
47
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/blocks/widget-area/index.js"],"names":["__","edit","name","metadata","settings","title","description","__experimentalLabel","label"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBC,EAAAA,KAAK,EAAEL,EAAE,CAAE,aAAF,CADc;AAEvBM,EAAAA,WAAW,EAAEN,EAAE,CAAE,0BAAF,CAFQ;AAGvBO,EAAAA,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/blocks/widget-area/index.js"],"names":["__","edit","name","metadata","settings","title","description","__experimentalLabel","label"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBC,EAAAA,KAAK,EAAEL,EAAE,CAAE,aAAF,CADc;AAEvBM,EAAAA,WAAW,EAAEN,EAAE,CAAE,0BAAF,CAFQ;AAGvBO,EAAAA,mBAAmB,EAAE;AAAA,QAAE;AAAEL,MAAAA,IAAI,EAAEM;AAAR,KAAF;AAAA,WAAuBA,KAAvB;AAAA,GAHE;AAIvBP,EAAAA;AAJuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ttitle: __( 'Widget Area' ),\n\tdescription: __( 'A widget area container.' ),\n\t__experimentalLabel: ( { name: label } ) => label,\n\tedit,\n};\n"]}
|
|
@@ -9,10 +9,11 @@ import { Button } from '@wordpress/components';
|
|
|
9
9
|
import { Warning } from '@wordpress/block-editor';
|
|
10
10
|
import { useCopyToClipboard } from '@wordpress/compose';
|
|
11
11
|
|
|
12
|
-
function CopyButton({
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
function CopyButton(_ref) {
|
|
13
|
+
let {
|
|
14
|
+
text,
|
|
15
|
+
children
|
|
16
|
+
} = _ref;
|
|
16
17
|
const ref = useCopyToClipboard(text);
|
|
17
18
|
return createElement(Button, {
|
|
18
19
|
variant: "secondary",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/edit-widgets/src/components/error-boundary/index.js"],"names":["Component","__","Button","Warning","useCopyToClipboard","CopyButton","text","children","ref","ErrorBoundary","constructor","arguments","reboot","bind","state","error","componentDidCatch","setState","props","onError","render","stack"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,oBAA1B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,MAAT,QAAuB,uBAAvB;AACA,SAASC,OAAT,QAAwB,yBAAxB;AACA,SAASC,kBAAT,QAAmC,oBAAnC;;AAEA,SAASC,UAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/edit-widgets/src/components/error-boundary/index.js"],"names":["Component","__","Button","Warning","useCopyToClipboard","CopyButton","text","children","ref","ErrorBoundary","constructor","arguments","reboot","bind","state","error","componentDidCatch","setState","props","onError","render","stack"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,QAA0B,oBAA1B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,MAAT,QAAuB,uBAAvB;AACA,SAASC,OAAT,QAAwB,yBAAxB;AACA,SAASC,kBAAT,QAAmC,oBAAnC;;AAEA,SAASC,UAAT,OAA0C;AAAA,MAArB;AAAEC,IAAAA,IAAF;AAAQC,IAAAA;AAAR,GAAqB;AACzC,QAAMC,GAAG,GAAGJ,kBAAkB,CAAEE,IAAF,CAA9B;AACA,SACC,cAAC,MAAD;AAAQ,IAAA,OAAO,EAAC,WAAhB;AAA4B,IAAA,GAAG,EAAGE;AAAlC,KACGD,QADH,CADD;AAKA;;AAED,eAAe,MAAME,aAAN,SAA4BT,SAA5B,CAAsC;AACpDU,EAAAA,WAAW,GAAG;AACb,UAAO,GAAGC,SAAV;AAEA,SAAKC,MAAL,GAAc,KAAKA,MAAL,CAAYC,IAAZ,CAAkB,IAAlB,CAAd;AAEA,SAAKC,KAAL,GAAa;AACZC,MAAAA,KAAK,EAAE;AADK,KAAb;AAGA;;AAEDC,EAAAA,iBAAiB,CAAED,KAAF,EAAU;AAC1B,SAAKE,QAAL,CAAe;AAAEF,MAAAA;AAAF,KAAf;AACA;;AAEDH,EAAAA,MAAM,GAAG;AACR,SAAKM,KAAL,CAAWC,OAAX;AACA;;AAEDC,EAAAA,MAAM,GAAG;AACR,UAAM;AAAEL,MAAAA;AAAF,QAAY,KAAKD,KAAvB;;AACA,QAAK,CAAEC,KAAP,EAAe;AACd,aAAO,KAAKG,KAAL,CAAWX,QAAlB;AACA;;AAED,WACC,cAAC,OAAD;AACC,MAAA,SAAS,EAAC,6BADX;AAEC,MAAA,OAAO,EAAG,CACT,cAAC,MAAD;AACC,QAAA,GAAG,EAAC,UADL;AAEC,QAAA,OAAO,EAAG,KAAKK,MAFhB;AAGC,QAAA,OAAO,EAAC;AAHT,SAKGX,EAAE,CAAE,kBAAF,CALL,CADS,EAQT,cAAC,UAAD;AAAY,QAAA,GAAG,EAAC,YAAhB;AAA6B,QAAA,IAAI,EAAGc,KAAK,CAACM;AAA1C,SACGpB,EAAE,CAAE,YAAF,CADL,CARS;AAFX,OAeGA,EAAE,CAAE,iDAAF,CAfL,CADD;AAmBA;;AA5CmD","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Component } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\nimport { Warning } from '@wordpress/block-editor';\nimport { useCopyToClipboard } from '@wordpress/compose';\n\nfunction CopyButton( { text, children } ) {\n\tconst ref = useCopyToClipboard( text );\n\treturn (\n\t\t<Button variant=\"secondary\" ref={ ref }>\n\t\t\t{ children }\n\t\t</Button>\n\t);\n}\n\nexport default class ErrorBoundary extends Component {\n\tconstructor() {\n\t\tsuper( ...arguments );\n\n\t\tthis.reboot = this.reboot.bind( this );\n\n\t\tthis.state = {\n\t\t\terror: null,\n\t\t};\n\t}\n\n\tcomponentDidCatch( error ) {\n\t\tthis.setState( { error } );\n\t}\n\n\treboot() {\n\t\tthis.props.onError();\n\t}\n\n\trender() {\n\t\tconst { error } = this.state;\n\t\tif ( ! error ) {\n\t\t\treturn this.props.children;\n\t\t}\n\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tclassName=\"edit-widgets-error-boundary\"\n\t\t\t\tactions={ [\n\t\t\t\t\t<Button\n\t\t\t\t\t\tkey=\"recovery\"\n\t\t\t\t\t\tonClick={ this.reboot }\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Attempt Recovery' ) }\n\t\t\t\t\t</Button>,\n\t\t\t\t\t<CopyButton key=\"copy-error\" text={ error.stack }>\n\t\t\t\t\t\t{ __( 'Copy Error' ) }\n\t\t\t\t\t</CopyButton>,\n\t\t\t\t] }\n\t\t\t>\n\t\t\t\t{ __( 'The editor has encountered an unexpected error.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n}\n"]}
|
|
@@ -11,9 +11,10 @@ import { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';
|
|
|
11
11
|
|
|
12
12
|
import Shortcut from './shortcut';
|
|
13
13
|
|
|
14
|
-
function DynamicShortcut({
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
function DynamicShortcut(_ref) {
|
|
15
|
+
let {
|
|
16
|
+
name
|
|
17
|
+
} = _ref;
|
|
17
18
|
const {
|
|
18
19
|
keyCombination,
|
|
19
20
|
description,
|