19
|
1 |
/******/ (function() { // webpackBootstrap |
|
2 |
/******/ "use strict"; |
|
3 |
/******/ // The require scope |
|
4 |
/******/ var __webpack_require__ = {}; |
|
5 |
/******/ |
|
6 |
/************************************************************************/ |
|
7 |
/******/ /* webpack/runtime/define property getters */ |
|
8 |
/******/ !function() { |
|
9 |
/******/ // define getter functions for harmony exports |
|
10 |
/******/ __webpack_require__.d = function(exports, definition) { |
|
11 |
/******/ for(var key in definition) { |
|
12 |
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { |
|
13 |
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); |
|
14 |
/******/ } |
|
15 |
/******/ } |
|
16 |
/******/ }; |
|
17 |
/******/ }(); |
|
18 |
/******/ |
|
19 |
/******/ /* webpack/runtime/hasOwnProperty shorthand */ |
|
20 |
/******/ !function() { |
|
21 |
/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } |
|
22 |
/******/ }(); |
|
23 |
/******/ |
|
24 |
/******/ /* webpack/runtime/make namespace object */ |
|
25 |
/******/ !function() { |
|
26 |
/******/ // define __esModule on exports |
|
27 |
/******/ __webpack_require__.r = function(exports) { |
|
28 |
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { |
|
29 |
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); |
|
30 |
/******/ } |
|
31 |
/******/ Object.defineProperty(exports, '__esModule', { value: true }); |
|
32 |
/******/ }; |
|
33 |
/******/ }(); |
|
34 |
/******/ |
|
35 |
/************************************************************************/ |
|
36 |
var __webpack_exports__ = {}; |
|
37 |
// ESM COMPAT FLAG |
|
38 |
__webpack_require__.r(__webpack_exports__); |
|
39 |
|
|
40 |
// EXPORTS |
|
41 |
__webpack_require__.d(__webpack_exports__, { |
|
42 |
"PreferenceToggleMenuItem": function() { return /* reexport */ PreferenceToggleMenuItem; }, |
|
43 |
"store": function() { return /* reexport */ store; } |
|
44 |
}); |
|
45 |
|
|
46 |
// NAMESPACE OBJECT: ./node_modules/@wordpress/preferences/build-module/store/actions.js |
|
47 |
var actions_namespaceObject = {}; |
|
48 |
__webpack_require__.r(actions_namespaceObject); |
|
49 |
__webpack_require__.d(actions_namespaceObject, { |
|
50 |
"set": function() { return set; }, |
|
51 |
"setDefaults": function() { return setDefaults; }, |
|
52 |
"toggle": function() { return toggle; } |
|
53 |
}); |
|
54 |
|
|
55 |
// NAMESPACE OBJECT: ./node_modules/@wordpress/preferences/build-module/store/selectors.js |
|
56 |
var selectors_namespaceObject = {}; |
|
57 |
__webpack_require__.r(selectors_namespaceObject); |
|
58 |
__webpack_require__.d(selectors_namespaceObject, { |
|
59 |
"get": function() { return get; } |
|
60 |
}); |
|
61 |
|
|
62 |
;// CONCATENATED MODULE: external ["wp","element"] |
|
63 |
var external_wp_element_namespaceObject = window["wp"]["element"]; |
|
64 |
;// CONCATENATED MODULE: external ["wp","data"] |
|
65 |
var external_wp_data_namespaceObject = window["wp"]["data"]; |
|
66 |
;// CONCATENATED MODULE: external ["wp","components"] |
|
67 |
var external_wp_components_namespaceObject = window["wp"]["components"]; |
|
68 |
;// CONCATENATED MODULE: external ["wp","i18n"] |
|
69 |
var external_wp_i18n_namespaceObject = window["wp"]["i18n"]; |
|
70 |
;// CONCATENATED MODULE: external ["wp","primitives"] |
|
71 |
var external_wp_primitives_namespaceObject = window["wp"]["primitives"]; |
|
72 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/check.js |
|
73 |
|
|
74 |
|
|
75 |
/** |
|
76 |
* WordPress dependencies |
|
77 |
*/ |
|
78 |
|
|
79 |
const check = (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.SVG, { |
|
80 |
xmlns: "http://www.w3.org/2000/svg", |
|
81 |
viewBox: "0 0 24 24" |
|
82 |
}, (0,external_wp_element_namespaceObject.createElement)(external_wp_primitives_namespaceObject.Path, { |
|
83 |
d: "M16.7 7.1l-6.3 8.5-3.3-2.5-.9 1.2 4.5 3.4L17.9 8z" |
|
84 |
})); |
|
85 |
/* harmony default export */ var library_check = (check); |
|
86 |
|
|
87 |
;// CONCATENATED MODULE: external ["wp","a11y"] |
|
88 |
var external_wp_a11y_namespaceObject = window["wp"]["a11y"]; |
|
89 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/store/reducer.js |
|
90 |
/** |
|
91 |
* WordPress dependencies |
|
92 |
*/ |
|
93 |
|
|
94 |
/** |
|
95 |
* Reducer returning the defaults for user preferences. |
|
96 |
* |
|
97 |
* This is kept intentionally separate from the preferences |
|
98 |
* themselves so that defaults are not persisted. |
|
99 |
* |
|
100 |
* @param {Object} state Current state. |
|
101 |
* @param {Object} action Dispatched action. |
|
102 |
* |
|
103 |
* @return {Object} Updated state. |
|
104 |
*/ |
|
105 |
|
|
106 |
function defaults() { |
|
107 |
let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; |
|
108 |
let action = arguments.length > 1 ? arguments[1] : undefined; |
|
109 |
|
|
110 |
if (action.type === 'SET_PREFERENCE_DEFAULTS') { |
|
111 |
const { |
|
112 |
scope, |
|
113 |
defaults: values |
|
114 |
} = action; |
|
115 |
return { ...state, |
|
116 |
[scope]: { ...state[scope], |
|
117 |
...values |
|
118 |
} |
|
119 |
}; |
|
120 |
} |
|
121 |
|
|
122 |
return state; |
|
123 |
} |
|
124 |
/** |
|
125 |
* Reducer returning the user preferences. |
|
126 |
* |
|
127 |
* @param {Object} state Current state. |
|
128 |
* @param {Object} action Dispatched action. |
|
129 |
* |
|
130 |
* @return {Object} Updated state. |
|
131 |
*/ |
|
132 |
|
|
133 |
function preferences() { |
|
134 |
let state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; |
|
135 |
let action = arguments.length > 1 ? arguments[1] : undefined; |
|
136 |
|
|
137 |
if (action.type === 'SET_PREFERENCE_VALUE') { |
|
138 |
const { |
|
139 |
scope, |
|
140 |
name, |
|
141 |
value |
|
142 |
} = action; |
|
143 |
return { ...state, |
|
144 |
[scope]: { ...state[scope], |
|
145 |
[name]: value |
|
146 |
} |
|
147 |
}; |
|
148 |
} |
|
149 |
|
|
150 |
return state; |
|
151 |
} |
|
152 |
/* harmony default export */ var reducer = ((0,external_wp_data_namespaceObject.combineReducers)({ |
|
153 |
defaults, |
|
154 |
preferences |
|
155 |
})); |
|
156 |
|
|
157 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/store/actions.js |
|
158 |
/** |
|
159 |
* Returns an action object used in signalling that a preference should be |
|
160 |
* toggled. |
|
161 |
* |
|
162 |
* @param {string} scope The preference scope (e.g. core/edit-post). |
|
163 |
* @param {string} name The preference name. |
|
164 |
*/ |
|
165 |
function toggle(scope, name) { |
|
166 |
return function (_ref) { |
|
167 |
let { |
|
168 |
select, |
|
169 |
dispatch |
|
170 |
} = _ref; |
|
171 |
const currentValue = select.get(scope, name); |
|
172 |
dispatch.set(scope, name, !currentValue); |
|
173 |
}; |
|
174 |
} |
|
175 |
/** |
|
176 |
* Returns an action object used in signalling that a preference should be set |
|
177 |
* to a value |
|
178 |
* |
|
179 |
* @param {string} scope The preference scope (e.g. core/edit-post). |
|
180 |
* @param {string} name The preference name. |
|
181 |
* @param {*} value The value to set. |
|
182 |
* |
|
183 |
* @return {Object} Action object. |
|
184 |
*/ |
|
185 |
|
|
186 |
function set(scope, name, value) { |
|
187 |
return { |
|
188 |
type: 'SET_PREFERENCE_VALUE', |
|
189 |
scope, |
|
190 |
name, |
|
191 |
value |
|
192 |
}; |
|
193 |
} |
|
194 |
/** |
|
195 |
* Returns an action object used in signalling that preference defaults should |
|
196 |
* be set. |
|
197 |
* |
|
198 |
* @param {string} scope The preference scope (e.g. core/edit-post). |
|
199 |
* @param {Object<string, *>} defaults A key/value map of preference names to values. |
|
200 |
* |
|
201 |
* @return {Object} Action object. |
|
202 |
*/ |
|
203 |
|
|
204 |
function setDefaults(scope, defaults) { |
|
205 |
return { |
|
206 |
type: 'SET_PREFERENCE_DEFAULTS', |
|
207 |
scope, |
|
208 |
defaults |
|
209 |
}; |
|
210 |
} |
|
211 |
|
|
212 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/store/selectors.js |
|
213 |
/** |
|
214 |
* Returns a boolean indicating whether a prefer is active for a particular |
|
215 |
* scope. |
|
216 |
* |
|
217 |
* @param {Object} state The store state. |
|
218 |
* @param {string} scope The scope of the feature (e.g. core/edit-post). |
|
219 |
* @param {string} name The name of the feature. |
|
220 |
* |
|
221 |
* @return {*} Is the feature enabled? |
|
222 |
*/ |
|
223 |
function get(state, scope, name) { |
|
224 |
var _state$preferences$sc, _state$defaults$scope; |
|
225 |
|
|
226 |
const value = (_state$preferences$sc = state.preferences[scope]) === null || _state$preferences$sc === void 0 ? void 0 : _state$preferences$sc[name]; |
|
227 |
return value !== undefined ? value : (_state$defaults$scope = state.defaults[scope]) === null || _state$defaults$scope === void 0 ? void 0 : _state$defaults$scope[name]; |
|
228 |
} |
|
229 |
|
|
230 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/store/constants.js |
|
231 |
/** |
|
232 |
* The identifier for the data store. |
|
233 |
* |
|
234 |
* @type {string} |
|
235 |
*/ |
|
236 |
const STORE_NAME = 'core/preferences'; |
|
237 |
|
|
238 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/store/index.js |
|
239 |
/** |
|
240 |
* WordPress dependencies |
|
241 |
*/ |
|
242 |
|
|
243 |
/** |
|
244 |
* Internal dependencies |
|
245 |
*/ |
|
246 |
|
|
247 |
/** |
|
248 |
* Internal dependencies |
|
249 |
*/ |
|
250 |
|
|
251 |
|
|
252 |
|
|
253 |
|
|
254 |
|
|
255 |
/** |
|
256 |
* Store definition for the interface namespace. |
|
257 |
* |
|
258 |
* @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/data/README.md#createReduxStore |
|
259 |
* |
|
260 |
* @type {Object} |
|
261 |
*/ |
|
262 |
|
|
263 |
const store = (0,external_wp_data_namespaceObject.createReduxStore)(STORE_NAME, { |
|
264 |
reducer: reducer, |
|
265 |
actions: actions_namespaceObject, |
|
266 |
selectors: selectors_namespaceObject, |
|
267 |
persist: ['preferences'] |
|
268 |
}); // Once we build a more generic persistence plugin that works across types of stores |
|
269 |
// we'd be able to replace this with a register call. |
|
270 |
|
|
271 |
(0,external_wp_data_namespaceObject.registerStore)(STORE_NAME, { |
|
272 |
reducer: reducer, |
|
273 |
actions: actions_namespaceObject, |
|
274 |
selectors: selectors_namespaceObject, |
|
275 |
persist: ['preferences'] |
|
276 |
}); |
|
277 |
|
|
278 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/components/preference-toggle-menu-item/index.js |
|
279 |
|
|
280 |
|
|
281 |
/** |
|
282 |
* WordPress dependencies |
|
283 |
*/ |
|
284 |
|
|
285 |
|
|
286 |
|
|
287 |
|
|
288 |
|
|
289 |
/** |
|
290 |
* Internal dependencies |
|
291 |
*/ |
|
292 |
|
|
293 |
|
|
294 |
function PreferenceToggleMenuItem(_ref) { |
|
295 |
let { |
|
296 |
scope, |
|
297 |
name, |
|
298 |
label, |
|
299 |
info, |
|
300 |
messageActivated, |
|
301 |
messageDeactivated, |
|
302 |
shortcut |
|
303 |
} = _ref; |
|
304 |
const isActive = (0,external_wp_data_namespaceObject.useSelect)(select => !!select(store).get(scope, name), [name]); |
|
305 |
const { |
|
306 |
toggle |
|
307 |
} = (0,external_wp_data_namespaceObject.useDispatch)(store); |
|
308 |
|
|
309 |
const speakMessage = () => { |
|
310 |
if (isActive) { |
|
311 |
const message = messageDeactivated || (0,external_wp_i18n_namespaceObject.sprintf)( |
|
312 |
/* translators: %s: preference name, e.g. 'Fullscreen mode' */ |
|
313 |
(0,external_wp_i18n_namespaceObject.__)('Preference deactivated - %s'), label); |
|
314 |
(0,external_wp_a11y_namespaceObject.speak)(message); |
|
315 |
} else { |
|
316 |
const message = messageActivated || (0,external_wp_i18n_namespaceObject.sprintf)( |
|
317 |
/* translators: %s: preference name, e.g. 'Fullscreen mode' */ |
|
318 |
(0,external_wp_i18n_namespaceObject.__)('Preference activated - %s'), label); |
|
319 |
(0,external_wp_a11y_namespaceObject.speak)(message); |
|
320 |
} |
|
321 |
}; |
|
322 |
|
|
323 |
return (0,external_wp_element_namespaceObject.createElement)(external_wp_components_namespaceObject.MenuItem, { |
|
324 |
icon: isActive && library_check, |
|
325 |
isSelected: isActive, |
|
326 |
onClick: () => { |
|
327 |
toggle(scope, name); |
|
328 |
speakMessage(); |
|
329 |
}, |
|
330 |
role: "menuitemcheckbox", |
|
331 |
info: info, |
|
332 |
shortcut: shortcut |
|
333 |
}, label); |
|
334 |
} |
|
335 |
|
|
336 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/components/index.js |
|
337 |
|
|
338 |
|
|
339 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/preferences/build-module/index.js |
|
340 |
|
|
341 |
|
|
342 |
|
|
343 |
(window.wp = window.wp || {}).preferences = __webpack_exports__; |
|
344 |
/******/ })() |
|
345 |
; |