PluginProbe
Elementor Website Builder – more than just a page builder / 4.1.0-beta2
Elementor Website Builder – more than just a page builder v4.1.0-beta2
4.3.4 4.3.3 4.3.2 4.3.1 4.3.0 4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 All 457 releases
← All changes | assets/js/packages/wp-media/wp-media.js +2 -456 4.2.0-dev2 → 4.1.0-beta2 View file →
@@ -1,457 +1,3 @@
1 -/******/ (function() { // webpackBootstrap
2 -/******/ "use strict";
3 -/******/ var __webpack_modules__ = ({
4 -
5 -/***/ "./packages/packages/libs/wp-media/src/errors.ts":
6 -/*!*******************************************************!*\
7 - !*** ./packages/packages/libs/wp-media/src/errors.ts ***!
8 - \*******************************************************/
9 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
10 -
11 -__webpack_require__.r(__webpack_exports__);
12 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
13 -/* harmony export */ WpMediaNotAvailableError: function() { return /* binding */ WpMediaNotAvailableError; },
14 -/* harmony export */ WpPluploadSettingsNotAvailableError: function() { return /* binding */ WpPluploadSettingsNotAvailableError; }
15 -/* harmony export */ });
16 -/* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/utils */ "@elementor/utils");
17 -/* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_utils__WEBPACK_IMPORTED_MODULE_0__);
18 -
19 -const WpMediaNotAvailableError = (0,_elementor_utils__WEBPACK_IMPORTED_MODULE_0__.createError)({
20 - code: 'wp_media_not_available',
21 - message: '`wp.media` is not available, make sure the `media-models` handle is set in the dependencies array'
22 -});
23 -const WpPluploadSettingsNotAvailableError = (0,_elementor_utils__WEBPACK_IMPORTED_MODULE_0__.createError)({
24 - code: 'wp_plupload_settings_not_available',
25 - message: '`_wpPluploadSettings` is not available, make sure a wp media uploader is open'
26 -});
27 -
28 -/***/ }),
29 -
30 -/***/ "./packages/packages/libs/wp-media/src/get-media-attachment.ts":
31 -/*!*********************************************************************!*\
32 - !*** ./packages/packages/libs/wp-media/src/get-media-attachment.ts ***!
33 - \*********************************************************************/
34 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
35 -
36 -__webpack_require__.r(__webpack_exports__);
37 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
38 -/* harmony export */ fetchAttachmentFromWP: function() { return /* binding */ fetchAttachmentFromWP; },
39 -/* harmony export */ getMediaAttachment: function() { return /* binding */ getMediaAttachment; }
40 -/* harmony export */ });
41 -/* harmony import */ var _elementor_query__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/query */ "@elementor/query");
42 -/* harmony import */ var _elementor_query__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_query__WEBPACK_IMPORTED_MODULE_0__);
43 -/* harmony import */ var _media__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./media */ "./packages/packages/libs/wp-media/src/media.ts");
44 -/* harmony import */ var _normalize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./normalize */ "./packages/packages/libs/wp-media/src/normalize.ts");
45 -
46 -
47 -
48 -async function fetchAttachmentFromWP(id) {
49 - const model = (0,_media__WEBPACK_IMPORTED_MODULE_1__["default"])().attachment(id);
50 - const wpAttachment = model.toJSON();
51 - const isFetched = 'url' in wpAttachment;
52 - if (isFetched) {
53 - return (0,_normalize__WEBPACK_IMPORTED_MODULE_2__["default"])(wpAttachment);
54 - }
55 - try {
56 - return (0,_normalize__WEBPACK_IMPORTED_MODULE_2__["default"])(await model.fetch());
57 - } catch {
58 - return null;
59 - }
60 -}
61 -async function getMediaAttachment({
62 - id
63 -}) {
64 - if (!id) {
65 - return null;
66 - }
67 - const queryClient = (0,_elementor_query__WEBPACK_IMPORTED_MODULE_0__.getQueryClient)();
68 - return queryClient.ensureQueryData({
69 - queryKey: ['wp-attachment', id],
70 - queryFn: () => fetchAttachmentFromWP(id)
71 - });
72 -}
73 -
74 -/***/ }),
75 -
76 -/***/ "./packages/packages/libs/wp-media/src/hooks/use-wp-media-attachment.ts":
77 -/*!******************************************************************************!*\
78 - !*** ./packages/packages/libs/wp-media/src/hooks/use-wp-media-attachment.ts ***!
79 - \******************************************************************************/
80 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
81 -
82 -__webpack_require__.r(__webpack_exports__);
83 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
84 -/* harmony export */ "default": function() { return /* binding */ useWpMediaAttachment; }
85 -/* harmony export */ });
86 -/* harmony import */ var _elementor_query__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/query */ "@elementor/query");
87 -/* harmony import */ var _elementor_query__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_query__WEBPACK_IMPORTED_MODULE_0__);
88 -/* harmony import */ var _get_media_attachment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../get-media-attachment */ "./packages/packages/libs/wp-media/src/get-media-attachment.ts");
89 -
90 -
91 -function useWpMediaAttachment(id) {
92 - return (0,_elementor_query__WEBPACK_IMPORTED_MODULE_0__.useQuery)({
93 - queryKey: ['wp-attachment', id],
94 - queryFn: () => (0,_get_media_attachment__WEBPACK_IMPORTED_MODULE_1__.fetchAttachmentFromWP)(id),
95 - enabled: !!id
96 - });
97 -}
98 -
99 -/***/ }),
100 -
101 -/***/ "./packages/packages/libs/wp-media/src/hooks/use-wp-media-frame.ts":
102 -/*!*************************************************************************!*\
103 - !*** ./packages/packages/libs/wp-media/src/hooks/use-wp-media-frame.ts ***!
104 - \*************************************************************************/
105 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
106 -
107 -__webpack_require__.r(__webpack_exports__);
108 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
109 -/* harmony export */ "default": function() { return /* binding */ useWpMediaFrame; }
110 -/* harmony export */ });
111 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
112 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
113 -/* harmony import */ var _media__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../media */ "./packages/packages/libs/wp-media/src/media.ts");
114 -/* harmony import */ var _normalize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../normalize */ "./packages/packages/libs/wp-media/src/normalize.ts");
115 -/* harmony import */ var _wp_plupload_settings__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../wp-plupload-settings */ "./packages/packages/libs/wp-media/src/wp-plupload-settings.ts");
116 -
117 -
118 -
119 -
120 -function useWpMediaFrame(options) {
121 - const frame = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
122 - const open = (openOptions = {}) => {
123 - cleanupFrame(frame.current);
124 - frame.current = createFrame({
125 - ...options,
126 - ...openOptions
127 - });
128 - frame.current?.open();
129 - };
130 - (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
131 - return () => {
132 - cleanupFrame(frame.current);
133 - };
134 - }, []);
135 - return {
136 - open
137 - };
138 -}
139 -function createFrame({
140 - onSelect,
141 - onSelectUrl,
142 - allowUrlImport,
143 - multiple,
144 - mediaTypes,
145 - selected,
146 - title,
147 - mode = 'browse',
148 - currentUrl,
149 - currentAlt
150 -}) {
151 - const frame = (0,_media__WEBPACK_IMPORTED_MODULE_1__["default"])()({
152 - title,
153 - multiple,
154 - library: {
155 - type: getMimeTypes(mediaTypes)
156 - },
157 - ...(allowUrlImport ? {
158 - frame: 'post'
159 - } : {})
160 - }).on('open', () => {
161 - setTypeCaller(frame);
162 - applyMode(frame, mode, currentUrl, currentAlt);
163 - if (mode !== 'url') {
164 - applySelection(frame, selected);
165 - }
166 - }).on('insert select', () => select(frame, multiple, onSelect, onSelectUrl));
167 - if (allowUrlImport) {
168 - frame.on('ready open', () => restrictFrameMenu(frame));
169 - }
170 - handleExtensions(frame, mediaTypes);
171 - return frame;
172 -}
173 -function cleanupFrame(frame) {
174 - frame?.detach();
175 - frame?.remove();
176 -}
177 -function applyMode(frame, mode = 'browse', currentUrl, currentAlt) {
178 - if (mode === 'url') {
179 - frame.setState('embed');
180 - if (currentUrl || currentAlt) {
181 - // Defer so the toolbar region is initialized before change:url triggers its refresh callback.
182 - setTimeout(() => {
183 - if (currentUrl) {
184 - frame.state()?.props?.set('url', currentUrl);
185 - }
186 - if (currentAlt) {
187 - frame.state()?.props?.set('alt', currentAlt);
188 - }
189 - }, 0);
190 - }
191 - } else {
192 - frame.content.mode(mode);
193 - }
194 -}
195 -function applySelection(frame, selected) {
196 - const selectedAttachments = (typeof selected === 'number' ? [selected] : selected)?.filter(id => !!id).map(id => (0,_media__WEBPACK_IMPORTED_MODULE_1__["default"])().attachment(id));
197 - frame.state().get('selection').set(selectedAttachments || []);
198 -}
199 -function select(frame, multiple, onSelect, onSelectUrl) {
200 - const state = frame.state();
201 - if (state.get('id') === 'embed') {
202 - if (onSelectUrl) {
203 - const url = state.props?.get('url');
204 - const alt = state.props?.get('alt');
205 - if (url) {
206 - onSelectUrl(url, alt);
207 - }
208 - }
209 - return;
210 - }
211 - const attachments = state.get('selection').toJSON().map(_normalize__WEBPACK_IMPORTED_MODULE_2__["default"]);
212 - const onSelectFn = onSelect;
213 - onSelectFn(multiple ? attachments : attachments[0]);
214 -}
215 -const FRAME_MENU_ITEMS_TO_REMOVE = ['#menu-item-gallery', '#menu-item-featured-image', '#menu-item-playlist', '#menu-item-video-playlist'].join(',');
216 -function restrictFrameMenu(frame) {
217 - frame.$el?.find(FRAME_MENU_ITEMS_TO_REMOVE)?.remove();
218 -}
219 -function setTypeCaller(frame) {
220 - frame.uploader.uploader.param('uploadTypeCaller', 'elementor-wp-media-upload');
221 -}
222 -function handleExtensions(frame, mediaTypes) {
223 - const defaultExtensions = (0,_wp_plupload_settings__WEBPACK_IMPORTED_MODULE_3__["default"])().defaults.filters.mime_types?.[0]?.extensions;
224 -
225 - // Set extensions by media types
226 - frame.on('ready', () => {
227 - (0,_wp_plupload_settings__WEBPACK_IMPORTED_MODULE_3__["default"])().defaults.filters.mime_types = [{
228 - extensions: getExtensions(mediaTypes)
229 - }];
230 - });
231 -
232 - // Restore default upload extensions
233 - frame.on('close', () => {
234 - (0,_wp_plupload_settings__WEBPACK_IMPORTED_MODULE_3__["default"])().defaults.filters.mime_types = defaultExtensions ? [{
235 - extensions: defaultExtensions
236 - }] : [];
237 - });
238 -}
239 -const imageExtensions = ['avif', 'bmp', 'gif', 'ico', 'jpe', 'jpeg', 'jpg', 'png', 'webp'];
240 -const videoExtensions = ['mp4', 'webm', 'ogg', 'mov', 'm4v', 'avi', 'wmv', 'mpg', 'mpeg', '3gp', '3g2'];
241 -function getMimeTypes(mediaTypes) {
242 - const mimeTypesPerType = {
243 - image: imageExtensions.map(extension => `image/${extension}`),
244 - svg: ['image/svg+xml'],
245 - video: ['video/mp4', 'video/webm', 'video/ogg', 'video/quicktime', 'video/x-m4v', 'video/avi', 'video/x-ms-wmv', 'video/mpeg', 'video/3gpp', 'video/3gpp2']
246 - };
247 - return mediaTypes.reduce((prev, currentType) => {
248 - return prev.concat(mimeTypesPerType[currentType]);
249 - }, []);
250 -}
251 -function getExtensions(mediaTypes) {
252 - const extensionsPerType = {
253 - image: imageExtensions,
254 - svg: ['svg'],
255 - video: videoExtensions
256 - };
257 - const extensions = mediaTypes.reduce((prev, currentType) => {
258 - return prev.concat(extensionsPerType[currentType]);
259 - }, []);
260 - return extensions.join(',');
261 -}
262 -
263 -/***/ }),
264 -
265 -/***/ "./packages/packages/libs/wp-media/src/media.ts":
266 -/*!******************************************************!*\
267 - !*** ./packages/packages/libs/wp-media/src/media.ts ***!
268 - \******************************************************/
269 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
270 -
271 -__webpack_require__.r(__webpack_exports__);
272 -/* harmony import */ var _errors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./errors */ "./packages/packages/libs/wp-media/src/errors.ts");
273 -
274 -const wpMediaWindow = window;
275 -/* harmony default export */ __webpack_exports__["default"] = (() => {
276 - if (!wpMediaWindow.wp?.media) {
277 - throw new _errors__WEBPACK_IMPORTED_MODULE_0__.WpMediaNotAvailableError();
278 - }
279 - return wpMediaWindow.wp.media;
280 -});
281 -
282 -/***/ }),
283 -
284 -/***/ "./packages/packages/libs/wp-media/src/normalize.ts":
285 -/*!**********************************************************!*\
286 - !*** ./packages/packages/libs/wp-media/src/normalize.ts ***!
287 - \**********************************************************/
288 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
289 -
290 -__webpack_require__.r(__webpack_exports__);
291 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
292 -/* harmony export */ "default": function() { return /* binding */ normalize; }
293 -/* harmony export */ });
294 -function normalize(attachment) {
295 - const {
296 - filesizeInBytes,
297 - filesizeHumanReadable,
298 - author,
299 - authorName,
300 - ...rest
301 - } = attachment;
302 - return {
303 - ...rest,
304 - filesize: {
305 - inBytes: filesizeInBytes,
306 - humanReadable: filesizeHumanReadable
307 - },
308 - author: {
309 - id: parseInt(author),
310 - name: authorName
311 - }
312 - };
313 -}
314 -
315 -/***/ }),
316 -
317 -/***/ "./packages/packages/libs/wp-media/src/wp-plupload-settings.ts":
318 -/*!*********************************************************************!*\
319 - !*** ./packages/packages/libs/wp-media/src/wp-plupload-settings.ts ***!
320 - \*********************************************************************/
321 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
322 -
323 -__webpack_require__.r(__webpack_exports__);
324 -/* harmony import */ var _errors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./errors */ "./packages/packages/libs/wp-media/src/errors.ts");
325 -
326 -const wpPluploadSettingsWindow = window;
327 -/* harmony default export */ __webpack_exports__["default"] = (() => {
328 - if (!wpPluploadSettingsWindow._wpPluploadSettings) {
329 - throw new _errors__WEBPACK_IMPORTED_MODULE_0__.WpPluploadSettingsNotAvailableError();
330 - }
331 - return wpPluploadSettingsWindow._wpPluploadSettings;
332 -});
333 -
334 -/***/ }),
335 -
336 -/***/ "@elementor/query":
337 -/*!****************************************!*\
338 - !*** external ["elementorV2","query"] ***!
339 - \****************************************/
340 -/***/ (function(module) {
341 -
342 -module.exports = window["elementorV2"]["query"];
343 -
344 -/***/ }),
345 -
346 -/***/ "@elementor/utils":
347 -/*!****************************************!*\
348 - !*** external ["elementorV2","utils"] ***!
349 - \****************************************/
350 -/***/ (function(module) {
351 -
352 -module.exports = window["elementorV2"]["utils"];
353 -
354 -/***/ }),
355 -
356 -/***/ "react":
357 -/*!**************************!*\
358 - !*** external ["React"] ***!
359 - \**************************/
360 -/***/ (function(module) {
361 -
362 -module.exports = window["React"];
363 -
364 -/***/ })
365 -
366 -/******/ });
367 -/************************************************************************/
368 -/******/ // The module cache
369 -/******/ var __webpack_module_cache__ = {};
370 -/******/
371 -/******/ // The require function
372 -/******/ function __webpack_require__(moduleId) {
373 -/******/ // Check if module is in cache
374 -/******/ var cachedModule = __webpack_module_cache__[moduleId];
375 -/******/ if (cachedModule !== undefined) {
376 -/******/ return cachedModule.exports;
377 -/******/ }
378 -/******/ // Create a new module (and put it into the cache)
379 -/******/ var module = __webpack_module_cache__[moduleId] = {
380 -/******/ // no module.id needed
381 -/******/ // no module.loaded needed
382 -/******/ exports: {}
383 -/******/ };
384 -/******/
385 -/******/ // Execute the module function
386 -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
387 -/******/
388 -/******/ // Return the exports of the module
389 -/******/ return module.exports;
390 -/******/ }
391 -/******/
392 -/************************************************************************/
393 -/******/ /* webpack/runtime/compat get default export */
394 -/******/ !function() {
395 -/******/ // getDefaultExport function for compatibility with non-harmony modules
396 -/******/ __webpack_require__.n = function(module) {
397 -/******/ var getter = module && module.__esModule ?
398 -/******/ function() { return module['default']; } :
399 -/******/ function() { return module; };
400 -/******/ __webpack_require__.d(getter, { a: getter });
401 -/******/ return getter;
402 -/******/ };
403 -/******/ }();
404 -/******/
405 -/******/ /* webpack/runtime/define property getters */
406 -/******/ !function() {
407 -/******/ // define getter functions for harmony exports
408 -/******/ __webpack_require__.d = function(exports, definition) {
409 -/******/ for(var key in definition) {
410 -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
411 -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
412 -/******/ }
413 -/******/ }
414 -/******/ };
415 -/******/ }();
416 -/******/
417 -/******/ /* webpack/runtime/hasOwnProperty shorthand */
418 -/******/ !function() {
419 -/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
420 -/******/ }();
421 -/******/
422 -/******/ /* webpack/runtime/make namespace object */
423 -/******/ !function() {
424 -/******/ // define __esModule on exports
425 -/******/ __webpack_require__.r = function(exports) {
426 -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
427 -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
428 -/******/ }
429 -/******/ Object.defineProperty(exports, '__esModule', { value: true });
430 -/******/ };
431 -/******/ }();
432 -/******/
433 -/************************************************************************/
434 -var __webpack_exports__ = {};
435 -// This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk.
436 -!function() {
437 -/*!******************************************************!*\
438 - !*** ./packages/packages/libs/wp-media/src/index.ts ***!
439 - \******************************************************/
440 -__webpack_require__.r(__webpack_exports__);
441 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
442 -/* harmony export */ getMediaAttachment: function() { return /* reexport safe */ _get_media_attachment__WEBPACK_IMPORTED_MODULE_2__.getMediaAttachment; },
443 -/* harmony export */ useWpMediaAttachment: function() { return /* reexport safe */ _hooks_use_wp_media_attachment__WEBPACK_IMPORTED_MODULE_0__["default"]; },
444 -/* harmony export */ useWpMediaFrame: function() { return /* reexport safe */ _hooks_use_wp_media_frame__WEBPACK_IMPORTED_MODULE_1__["default"]; }
445 -/* harmony export */ });
446 -/* harmony import */ var _hooks_use_wp_media_attachment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./hooks/use-wp-media-attachment */ "./packages/packages/libs/wp-media/src/hooks/use-wp-media-attachment.ts");
447 -/* harmony import */ var _hooks_use_wp_media_frame__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./hooks/use-wp-media-frame */ "./packages/packages/libs/wp-media/src/hooks/use-wp-media-frame.ts");
448 -/* harmony import */ var _get_media_attachment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./get-media-attachment */ "./packages/packages/libs/wp-media/src/get-media-attachment.ts");
449 -
450 -
451 -
452 -}();
453 -(window.elementorV2 = window.elementorV2 || {}).wpMedia = __webpack_exports__;
454 -/******/ })()
455 -;
456 -window.elementorV2.wpMedia?.init?.();
1 +/*! For license information please see wp-media.js.LICENSE.txt */
2 +!function(){"use strict";var e={"./packages/packages/libs/wp-media/src/errors.ts":function(e,t,a){a.r(t),a.d(t,{WpMediaNotAvailableError:function(){return n},WpPluploadSettingsNotAvailableError:function(){return i}});var r=a("@elementor/utils");const n=(0,r.createError)({code:"wp_media_not_available",message:"`wp.media` is not available, make sure the `media-models` handle is set in the dependencies array"}),i=(0,r.createError)({code:"wp_plupload_settings_not_available",message:"`_wpPluploadSettings` is not available, make sure a wp media uploader is open"})},"./packages/packages/libs/wp-media/src/get-media-attachment.ts":function(e,t,a){a.r(t),a.d(t,{getMediaAttachment:function(){return getMediaAttachment}});var r=a("./packages/packages/libs/wp-media/src/media.ts"),n=a("./packages/packages/libs/wp-media/src/normalize.ts");async function getMediaAttachment({id:e}){if(!e)return null;const t=(0,r.default)().attachment(e),a=t.toJSON();if("url"in a)return(0,n.default)(a);try{return(0,n.default)(await t.fetch())}catch{return null}}},"./packages/packages/libs/wp-media/src/hooks/use-wp-media-attachment.ts":function(e,t,a){a.r(t),a.d(t,{default:function(){return useWpMediaAttachment}});var r=a("@elementor/query"),n=a("./packages/packages/libs/wp-media/src/get-media-attachment.ts");function useWpMediaAttachment(e){return(0,r.useQuery)({queryKey:["wp-attachment",e],queryFn:()=>(0,n.getMediaAttachment)({id:e}),enabled:!!e})}},"./packages/packages/libs/wp-media/src/hooks/use-wp-media-frame.ts":function(e,t,a){a.r(t),a.d(t,{default:function(){return useWpMediaFrame}});var r=a("react"),n=a("./packages/packages/libs/wp-media/src/media.ts"),i=a("./packages/packages/libs/wp-media/src/normalize.ts"),s=a("./packages/packages/libs/wp-media/src/wp-plupload-settings.ts");function useWpMediaFrame(e){const t=(0,r.useRef)();return(0,r.useEffect)(()=>()=>{cleanupFrame(t.current)},[]),{open:(a={})=>{cleanupFrame(t.current),t.current=function createFrame({onSelect:e,onSelectUrl:t,allowUrlImport:a,multiple:r,mediaTypes:c,selected:p,title:u,mode:l="browse",currentUrl:d,currentAlt:m}){const f=(0,n.default)()({title:u,multiple:r,library:{type:getMimeTypes(c)},...a?{frame:"post"}:{}}).on("open",()=>{!function setTypeCaller(e){e.uploader.uploader.param("uploadTypeCaller","elementor-wp-media-upload")}(f),function applyMode(e,t="browse",a,r){"url"===t?(e.setState("embed"),(a||r)&&setTimeout(()=>{a&&e.state()?.props?.set("url",a),r&&e.state()?.props?.set("alt",r)},0)):e.content.mode(t)}(f,l,d,m),"url"!==l&&function applySelection(e,t){const a=("number"==typeof t?[t]:t)?.filter(e=>!!e).map(e=>(0,n.default)().attachment(e));e.state().get("selection").set(a||[])}(f,p)}).on("insert select",()=>function select(e,t,a,r){const n=e.state();if("embed"===n.get("id")){if(r){const e=n.props?.get("url"),t=n.props?.get("alt");e&&r(e,t)}return}const s=n.get("selection").toJSON().map(i.default),o=a;o(t?s:s[0])}(f,r,e,t));a&&f.on("ready open",()=>function restrictFrameMenu(e){e.$el?.find(o)?.remove()}(f));return function handleExtensions(e,t){const a=(0,s.default)().defaults.filters.mime_types?.[0]?.extensions;e.on("ready",()=>{(0,s.default)().defaults.filters.mime_types=[{extensions:getExtensions(t)}]}),e.on("close",()=>{(0,s.default)().defaults.filters.mime_types=a?[{extensions:a}]:[]})}(f,c),f}({...e,...a}),t.current?.open()}}}function cleanupFrame(e){e?.detach(),e?.remove()}const o=["#menu-item-gallery","#menu-item-featured-image","#menu-item-playlist","#menu-item-video-playlist"].join(",");const c=["avif","bmp","gif","ico","jpe","jpeg","jpg","png","webp"],p=["mp4","webm","ogg","mov","m4v","avi","wmv","mpg","mpeg","3gp","3g2"];function getMimeTypes(e){const t={image:c.map(e=>`image/${e}`),svg:["image/svg+xml"],video:["video/mp4","video/webm","video/ogg","video/quicktime","video/x-m4v","video/avi","video/x-ms-wmv","video/mpeg","video/3gpp","video/3gpp2"]};return e.reduce((e,a)=>e.concat(t[a]),[])}function getExtensions(e){const t={image:c,svg:["svg"],video:p};return e.reduce((e,a)=>e.concat(t[a]),[]).join(",")}},"./packages/packages/libs/wp-media/src/media.ts":function(e,t,a){a.r(t);var r=a("./packages/packages/libs/wp-media/src/errors.ts");const n=window;t.default=()=>{if(!n.wp?.media)throw new r.WpMediaNotAvailableError;return n.wp.media}},"./packages/packages/libs/wp-media/src/normalize.ts":function(e,t,a){function normalize(e){const{filesizeInBytes:t,filesizeHumanReadable:a,author:r,authorName:n,...i}=e;return{...i,filesize:{inBytes:t,humanReadable:a},author:{id:parseInt(r),name:n}}}a.r(t),a.d(t,{default:function(){return normalize}})},"./packages/packages/libs/wp-media/src/wp-plupload-settings.ts":function(e,t,a){a.r(t);var r=a("./packages/packages/libs/wp-media/src/errors.ts");const n=window;t.default=()=>{if(!n._wpPluploadSettings)throw new r.WpPluploadSettingsNotAvailableError;return n._wpPluploadSettings}},"@elementor/query":function(e){e.exports=window.elementorV2.query},"@elementor/utils":function(e){e.exports=window.elementorV2.utils},react:function(e){e.exports=window.React}},t={};function __webpack_require__(a){var r=t[a];if(void 0!==r)return r.exports;var n=t[a]={exports:{}};return e[a](n,n.exports,__webpack_require__),n.exports}__webpack_require__.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=function(e,t){for(var a in t)__webpack_require__.o(t,a)&&!__webpack_require__.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:t[a]})},__webpack_require__.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var a={};!function(){__webpack_require__.r(a),__webpack_require__.d(a,{getMediaAttachment:function(){return r.getMediaAttachment},useWpMediaAttachment:function(){return e.default},useWpMediaFrame:function(){return t.default}});var e=__webpack_require__("./packages/packages/libs/wp-media/src/hooks/use-wp-media-attachment.ts"),t=__webpack_require__("./packages/packages/libs/wp-media/src/hooks/use-wp-media-frame.ts"),r=__webpack_require__("./packages/packages/libs/wp-media/src/get-media-attachment.ts")}(),(window.elementorV2=window.elementorV2||{}).wpMedia=a}(),window.elementorV2.wpMedia?.init?.();
457 3 //# sourceMappingURL=wp-media.js.map