PluginProbe
Elementor Website Builder – more than just a page builder / 4.1.0-beta1
Elementor Website Builder – more than just a page builder v4.1.0-beta1
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/editor-panels/editor-panels.js +2 -794 4.2.0-dev2 → 4.1.0-beta1 View file →
@@ -1,795 +1,3 @@
1 -/******/ (function() { // webpackBootstrap
2 -/******/ "use strict";
3 -/******/ var __webpack_modules__ = ({
4 -
5 -/***/ "./packages/packages/core/editor-panels/src/api.ts":
6 -/*!*********************************************************!*\
7 - !*** ./packages/packages/core/editor-panels/src/api.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 */ createPanel: function() { return /* binding */ createPanel; },
14 -/* harmony export */ registerPanel: function() { return /* binding */ registerPanel; }
15 -/* harmony export */ });
16 -/* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-v1-adapters */ "@elementor/editor-v1-adapters");
17 -/* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__);
18 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/store */ "@elementor/store");
19 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_1__);
20 -/* harmony import */ var _location__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./location */ "./packages/packages/core/editor-panels/src/location.ts");
21 -/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./store */ "./packages/packages/core/editor-panels/src/store/index.ts");
22 -/* harmony import */ var _sync__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./sync */ "./packages/packages/core/editor-panels/src/sync.ts");
23 -
24 -
25 -
26 -
27 -
28 -function createPanel({
29 - id,
30 - component,
31 - onOpen,
32 - onClose,
33 - allowedEditModes,
34 - blockOnKitRoutes,
35 - isOpenPreviousElement = false
36 -}) {
37 - const usePanelStatus = createUseStatus(id, {
38 - allowedEditModes,
39 - blockOnKitRoutes
40 - });
41 - const usePanelActions = createUseActions(id, usePanelStatus, {
42 - onOpen,
43 - onClose
44 - }, isOpenPreviousElement);
45 - return {
46 - panel: {
47 - id,
48 - component
49 - },
50 - usePanelStatus,
51 - usePanelActions
52 - };
53 -}
54 -function registerPanel({
55 - id,
56 - component
57 -}) {
58 - (0,_location__WEBPACK_IMPORTED_MODULE_2__.injectIntoPanels)({
59 - id,
60 - component
61 - });
62 -}
63 -function createUseStatus(id, options = {}) {
64 - return () => {
65 - const openPanelId = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__useSelector)(_store__WEBPACK_IMPORTED_MODULE_3__.selectOpenId);
66 - const v1PanelStatus = (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateUseRouteStatus)(_sync__WEBPACK_IMPORTED_MODULE_4__.V2_PANEL, options);
67 - return {
68 - isOpen: openPanelId === id && v1PanelStatus.isActive,
69 - isBlocked: v1PanelStatus.isBlocked
70 - };
71 - };
72 -}
73 -function createUseActions(id, useStatus, options = {}, isOpenPreviousElement) {
74 - let stateSnapshot = null;
75 - let previousSelectedElement = null;
76 - return () => {
77 - const dispatch = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__useDispatch)();
78 - const {
79 - isBlocked
80 - } = useStatus();
81 - return {
82 - open: async () => {
83 - if (isBlocked) {
84 - return;
85 - }
86 - if (isOpenPreviousElement) {
87 - previousSelectedElement = window.elementor?.selection?.getElements?.()[0]?.model.get('id') ?? null;
88 - }
89 - dispatch(_store__WEBPACK_IMPORTED_MODULE_3__.slice.actions.open(id));
90 - stateSnapshot = options.onOpen?.() ?? null;
91 - },
92 - close: async () => {
93 - if (isBlocked) {
94 - return;
95 - }
96 - dispatch(_store__WEBPACK_IMPORTED_MODULE_3__.slice.actions.close(id));
97 - await options.onClose?.(stateSnapshot);
98 - if (previousSelectedElement) {
99 - try {
100 - const container = window.elementor?.getContainer?.(previousSelectedElement);
101 - (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateRunCommand)('document/elements/select', {
102 - container
103 - });
104 - } catch {}
105 - previousSelectedElement = null;
106 - }
107 - }
108 - };
109 - };
110 -}
111 -
112 -/***/ }),
113 -
114 -/***/ "./packages/packages/core/editor-panels/src/components/external/index.ts":
115 -/*!*******************************************************************************!*\
116 - !*** ./packages/packages/core/editor-panels/src/components/external/index.ts ***!
117 - \*******************************************************************************/
118 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
119 -
120 -__webpack_require__.r(__webpack_exports__);
121 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
122 -/* harmony export */ Panel: function() { return /* reexport safe */ _panel__WEBPACK_IMPORTED_MODULE_0__["default"]; },
123 -/* harmony export */ PanelBody: function() { return /* reexport safe */ _panel_body__WEBPACK_IMPORTED_MODULE_3__["default"]; },
124 -/* harmony export */ PanelFooter: function() { return /* reexport safe */ _panel_footer__WEBPACK_IMPORTED_MODULE_4__["default"]; },
125 -/* harmony export */ PanelHeader: function() { return /* reexport safe */ _panel_header__WEBPACK_IMPORTED_MODULE_1__["default"]; },
126 -/* harmony export */ PanelHeaderTitle: function() { return /* reexport safe */ _panel_header_title__WEBPACK_IMPORTED_MODULE_2__["default"]; }
127 -/* harmony export */ });
128 -/* harmony import */ var _panel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./panel */ "./packages/packages/core/editor-panels/src/components/external/panel.tsx");
129 -/* harmony import */ var _panel_header__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./panel-header */ "./packages/packages/core/editor-panels/src/components/external/panel-header.tsx");
130 -/* harmony import */ var _panel_header_title__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./panel-header-title */ "./packages/packages/core/editor-panels/src/components/external/panel-header-title.tsx");
131 -/* harmony import */ var _panel_body__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./panel-body */ "./packages/packages/core/editor-panels/src/components/external/panel-body.tsx");
132 -/* harmony import */ var _panel_footer__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./panel-footer */ "./packages/packages/core/editor-panels/src/components/external/panel-footer.tsx");
133 -
134 -
135 -
136 -
137 -
138 -
139 -/***/ }),
140 -
141 -/***/ "./packages/packages/core/editor-panels/src/components/external/panel-body.tsx":
142 -/*!*************************************************************************************!*\
143 - !*** ./packages/packages/core/editor-panels/src/components/external/panel-body.tsx ***!
144 - \*************************************************************************************/
145 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
146 -
147 -__webpack_require__.r(__webpack_exports__);
148 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
149 -/* harmony export */ "default": function() { return /* binding */ PanelBody; }
150 -/* harmony export */ });
151 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
152 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
153 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
154 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__);
155 -function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
156 -
157 -
158 -function PanelBody({
159 - children,
160 - sx,
161 - ...props
162 -}) {
163 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.Box, _extends({
164 - component: "main",
165 - sx: {
166 - overflowY: 'auto',
167 - height: '100%',
168 - ...sx
169 - }
170 - }, props), children);
171 -}
172 -
173 -/***/ }),
174 -
175 -/***/ "./packages/packages/core/editor-panels/src/components/external/panel-footer.tsx":
176 -/*!***************************************************************************************!*\
177 - !*** ./packages/packages/core/editor-panels/src/components/external/panel-footer.tsx ***!
178 - \***************************************************************************************/
179 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
180 -
181 -__webpack_require__.r(__webpack_exports__);
182 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
183 -/* harmony export */ "default": function() { return /* binding */ PanelFooter; }
184 -/* harmony export */ });
185 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
186 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
187 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
188 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__);
189 -function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
190 -
191 -
192 -function PanelFooter({
193 - children,
194 - sx,
195 - ...props
196 -}) {
197 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.Divider, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.Box, _extends({
198 - component: "footer",
199 - sx: {
200 - display: 'flex',
201 - position: 'sticky',
202 - bottom: 0,
203 - px: 2,
204 - py: 1.5
205 - }
206 - }, props), children));
207 -}
208 -
209 -/***/ }),
210 -
211 -/***/ "./packages/packages/core/editor-panels/src/components/external/panel-header-title.tsx":
212 -/*!*********************************************************************************************!*\
213 - !*** ./packages/packages/core/editor-panels/src/components/external/panel-header-title.tsx ***!
214 - \*********************************************************************************************/
215 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
216 -
217 -__webpack_require__.r(__webpack_exports__);
218 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
219 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
220 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
221 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__);
222 -function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
223 -
224 -
225 -
226 -
227 -// This is to override Editor reset.scss that overrides eui styles
228 -const Typography = (0,_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.styled)(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.Typography)(({
229 - theme,
230 - variant = 'body1'
231 -}) => {
232 - if (variant === 'inherit') {
233 - return {};
234 - }
235 - return {
236 - '&.MuiTypography-root': {
237 - ...theme.typography[variant]
238 - }
239 - };
240 -});
241 -const PanelHeaderTitle = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(({
242 - children,
243 - ...props
244 -}, ref) => {
245 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Typography, _extends({
246 - ref: ref,
247 - component: "h2",
248 - variant: "subtitle1"
249 - }, props), children);
250 -});
251 -/* harmony default export */ __webpack_exports__["default"] = (PanelHeaderTitle);
252 -
253 -/***/ }),
254 -
255 -/***/ "./packages/packages/core/editor-panels/src/components/external/panel-header.tsx":
256 -/*!***************************************************************************************!*\
257 - !*** ./packages/packages/core/editor-panels/src/components/external/panel-header.tsx ***!
258 - \***************************************************************************************/
259 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
260 -
261 -__webpack_require__.r(__webpack_exports__);
262 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
263 -/* harmony export */ "default": function() { return /* binding */ PanelHeader; }
264 -/* harmony export */ });
265 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
266 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
267 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
268 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__);
269 -function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
270 -
271 -
272 -const Header = (0,_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.styled)(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.Box)(({
273 - theme
274 -}) => ({
275 - height: theme?.spacing(6) || '48px',
276 - display: 'flex',
277 - alignItems: 'center',
278 - justifyContent: 'center',
279 - gap: theme?.spacing(0.5) || '4px'
280 -}));
281 -function PanelHeader({
282 - children,
283 - ...props
284 -}) {
285 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Header, _extends({
286 - component: "header"
287 - }, props), children));
288 -}
289 -
290 -/***/ }),
291 -
292 -/***/ "./packages/packages/core/editor-panels/src/components/external/panel.tsx":
293 -/*!********************************************************************************!*\
294 - !*** ./packages/packages/core/editor-panels/src/components/external/panel.tsx ***!
295 - \********************************************************************************/
296 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
297 -
298 -__webpack_require__.r(__webpack_exports__);
299 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
300 -/* harmony export */ "default": function() { return /* binding */ Panel; }
301 -/* harmony export */ });
302 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
303 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
304 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
305 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__);
306 -function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
307 -
308 -
309 -function Panel({
310 - children,
311 - sx,
312 - ...props
313 -}) {
314 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.Drawer, _extends({
315 - open: true,
316 - variant: "persistent",
317 - anchor: "left",
318 - PaperProps: {
319 - sx: {
320 - position: 'relative',
321 - width: '100%',
322 - bgcolor: 'background.default',
323 - border: 'none'
324 - }
325 - },
326 - sx: {
327 - height: '100%',
328 - ...sx
329 - }
330 - }, props), children);
331 -}
332 -
333 -/***/ }),
334 -
335 -/***/ "./packages/packages/core/editor-panels/src/components/internal/panels.tsx":
336 -/*!*********************************************************************************!*\
337 - !*** ./packages/packages/core/editor-panels/src/components/internal/panels.tsx ***!
338 - \*********************************************************************************/
339 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
340 -
341 -__webpack_require__.r(__webpack_exports__);
342 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
343 -/* harmony export */ "default": function() { return /* binding */ Panels; }
344 -/* harmony export */ });
345 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
346 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
347 -/* harmony import */ var _hooks_use_open_panel_injection__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../hooks/use-open-panel-injection */ "./packages/packages/core/editor-panels/src/hooks/use-open-panel-injection.ts");
348 -/* harmony import */ var _portal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./portal */ "./packages/packages/core/editor-panels/src/components/internal/portal.tsx");
349 -
350 -
351 -
352 -function Panels() {
353 - const openPanel = (0,_hooks_use_open_panel_injection__WEBPACK_IMPORTED_MODULE_1__["default"])();
354 - const Component = openPanel?.component ?? null;
355 - if (!Component) {
356 - return null;
357 - }
358 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_portal__WEBPACK_IMPORTED_MODULE_2__["default"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, null));
359 -}
360 -
361 -/***/ }),
362 -
363 -/***/ "./packages/packages/core/editor-panels/src/components/internal/portal.tsx":
364 -/*!*********************************************************************************!*\
365 - !*** ./packages/packages/core/editor-panels/src/components/internal/portal.tsx ***!
366 - \*********************************************************************************/
367 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
368 -
369 -__webpack_require__.r(__webpack_exports__);
370 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
371 -/* harmony export */ "default": function() { return /* binding */ Portal; }
372 -/* harmony export */ });
373 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
374 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
375 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui");
376 -/* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__);
377 -/* harmony import */ var _sync__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../sync */ "./packages/packages/core/editor-panels/src/sync.ts");
378 -function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
379 -
380 -
381 -
382 -
383 -function Portal(props) {
384 - const containerRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(_sync__WEBPACK_IMPORTED_MODULE_2__.getPortalContainer);
385 - if (!containerRef.current) {
386 - return null;
387 - }
388 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_elementor_ui__WEBPACK_IMPORTED_MODULE_1__.Portal, _extends({
389 - container: containerRef.current
390 - }, props));
391 -}
392 -
393 -/***/ }),
394 -
395 -/***/ "./packages/packages/core/editor-panels/src/hooks/use-open-panel-injection.ts":
396 -/*!************************************************************************************!*\
397 - !*** ./packages/packages/core/editor-panels/src/hooks/use-open-panel-injection.ts ***!
398 - \************************************************************************************/
399 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
400 -
401 -__webpack_require__.r(__webpack_exports__);
402 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
403 -/* harmony export */ "default": function() { return /* binding */ useOpenPanelInjection; }
404 -/* harmony export */ });
405 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
406 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
407 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/store */ "@elementor/store");
408 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_1__);
409 -/* harmony import */ var _location__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../location */ "./packages/packages/core/editor-panels/src/location.ts");
410 -/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../store */ "./packages/packages/core/editor-panels/src/store/index.ts");
411 -
412 -
413 -
414 -
415 -function useOpenPanelInjection() {
416 - const injections = (0,_location__WEBPACK_IMPORTED_MODULE_2__.usePanelsInjections)();
417 - const openId = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__useSelector)(_store__WEBPACK_IMPORTED_MODULE_3__.selectOpenId);
418 - return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => injections.find(injection => openId === injection.id), [injections, openId]);
419 -}
420 -
421 -/***/ }),
422 -
423 -/***/ "./packages/packages/core/editor-panels/src/init.ts":
424 -/*!**********************************************************!*\
425 - !*** ./packages/packages/core/editor-panels/src/init.ts ***!
426 - \**********************************************************/
427 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
428 -
429 -__webpack_require__.r(__webpack_exports__);
430 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
431 -/* harmony export */ init: function() { return /* binding */ init; }
432 -/* harmony export */ });
433 -/* harmony import */ var _elementor_editor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor */ "@elementor/editor");
434 -/* harmony import */ var _elementor_editor__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor__WEBPACK_IMPORTED_MODULE_0__);
435 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/store */ "@elementor/store");
436 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_1__);
437 -/* harmony import */ var _components_internal_panels__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/internal/panels */ "./packages/packages/core/editor-panels/src/components/internal/panels.tsx");
438 -/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./store */ "./packages/packages/core/editor-panels/src/store/index.ts");
439 -/* harmony import */ var _sync__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./sync */ "./packages/packages/core/editor-panels/src/sync.ts");
440 -
441 -
442 -
443 -
444 -
445 -function init() {
446 - (0,_sync__WEBPACK_IMPORTED_MODULE_4__.sync)();
447 - (0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__registerSlice)(_store__WEBPACK_IMPORTED_MODULE_3__.slice);
448 - (0,_elementor_editor__WEBPACK_IMPORTED_MODULE_0__.injectIntoTop)({
449 - id: 'panels',
450 - component: _components_internal_panels__WEBPACK_IMPORTED_MODULE_2__["default"]
451 - });
452 -}
453 -
454 -/***/ }),
455 -
456 -/***/ "./packages/packages/core/editor-panels/src/location.ts":
457 -/*!**************************************************************!*\
458 - !*** ./packages/packages/core/editor-panels/src/location.ts ***!
459 - \**************************************************************/
460 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
461 -
462 -__webpack_require__.r(__webpack_exports__);
463 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
464 -/* harmony export */ injectIntoPanels: function() { return /* binding */ injectIntoPanels; },
465 -/* harmony export */ usePanelsInjections: function() { return /* binding */ usePanelsInjections; }
466 -/* harmony export */ });
467 -/* harmony import */ var _elementor_locations__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/locations */ "@elementor/locations");
468 -/* harmony import */ var _elementor_locations__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_locations__WEBPACK_IMPORTED_MODULE_0__);
469 -
470 -const {
471 - inject: injectIntoPanels,
472 - useInjections: usePanelsInjections
473 -} = (0,_elementor_locations__WEBPACK_IMPORTED_MODULE_0__.createLocation)();
474 -
475 -/***/ }),
476 -
477 -/***/ "./packages/packages/core/editor-panels/src/store/index.ts":
478 -/*!*****************************************************************!*\
479 - !*** ./packages/packages/core/editor-panels/src/store/index.ts ***!
480 - \*****************************************************************/
481 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
482 -
483 -__webpack_require__.r(__webpack_exports__);
484 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
485 -/* harmony export */ selectOpenId: function() { return /* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_0__.selectOpenId; },
486 -/* harmony export */ slice: function() { return /* reexport safe */ _slice__WEBPACK_IMPORTED_MODULE_1__["default"]; }
487 -/* harmony export */ });
488 -/* harmony import */ var _selectors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./selectors */ "./packages/packages/core/editor-panels/src/store/selectors.ts");
489 -/* harmony import */ var _slice__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./slice */ "./packages/packages/core/editor-panels/src/store/slice.ts");
490 -
491 -
492 -
493 -/***/ }),
494 -
495 -/***/ "./packages/packages/core/editor-panels/src/store/selectors.ts":
496 -/*!*********************************************************************!*\
497 - !*** ./packages/packages/core/editor-panels/src/store/selectors.ts ***!
498 - \*********************************************************************/
499 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
500 -
501 -__webpack_require__.r(__webpack_exports__);
502 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
503 -/* harmony export */ selectOpenId: function() { return /* binding */ selectOpenId; }
504 -/* harmony export */ });
505 -const selectOpenId = state => state.panels.openId;
506 -
507 -/***/ }),
508 -
509 -/***/ "./packages/packages/core/editor-panels/src/store/slice.ts":
510 -/*!*****************************************************************!*\
511 - !*** ./packages/packages/core/editor-panels/src/store/slice.ts ***!
512 - \*****************************************************************/
513 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
514 -
515 -__webpack_require__.r(__webpack_exports__);
516 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/store */ "@elementor/store");
517 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_0__);
518 -
519 -const initialState = {
520 - openId: null
521 -};
522 -/* harmony default export */ __webpack_exports__["default"] = ((0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__createSlice)({
523 - name: 'panels',
524 - initialState,
525 - reducers: {
526 - open(state, action) {
527 - state.openId = action.payload;
528 - },
529 - close(state, action) {
530 - if (!action.payload || state.openId === action.payload) {
531 - state.openId = null;
532 - }
533 - }
534 - }
535 -}));
536 -
537 -/***/ }),
538 -
539 -/***/ "./packages/packages/core/editor-panels/src/sync.ts":
540 -/*!**********************************************************!*\
541 - !*** ./packages/packages/core/editor-panels/src/sync.ts ***!
542 - \**********************************************************/
543 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
544 -
545 -__webpack_require__.r(__webpack_exports__);
546 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
547 -/* harmony export */ V2_PANEL: function() { return /* binding */ V2_PANEL; },
548 -/* harmony export */ getPortalContainer: function() { return /* binding */ getPortalContainer; },
549 -/* harmony export */ sync: function() { return /* binding */ sync; }
550 -/* harmony export */ });
551 -/* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/editor-v1-adapters */ "@elementor/editor-v1-adapters");
552 -/* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__);
553 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/store */ "@elementor/store");
554 -/* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_elementor_store__WEBPACK_IMPORTED_MODULE_1__);
555 -/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./store */ "./packages/packages/core/editor-panels/src/store/index.ts");
556 -
557 -
558 -
559 -const V2_PANEL = 'panel/v2';
560 -function getPortalContainer() {
561 - return document.querySelector('#elementor-panel-inner');
562 -}
563 -function sync() {
564 - // Register the V2 panel route on panel init.
565 - (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateListenTo)((0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.windowEvent)('elementor/panel/init'), () => (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateRegisterRoute)(V2_PANEL));
566 -
567 - // On empty route open, hide V1 panel elements.
568 - (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateListenTo)((0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.routeOpenEvent)(V2_PANEL), () => {
569 - getV1PanelElements().forEach(el => {
570 - el.setAttribute('hidden', 'hidden');
571 - el.setAttribute('inert', 'true');
572 - });
573 - });
574 -
575 - // On empty route close, close the V2 panel.
576 - (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateListenTo)((0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.routeCloseEvent)(V2_PANEL), () => (0,_store__WEBPACK_IMPORTED_MODULE_2__.selectOpenId)((0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__getState)()) && (0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__dispatch)(_store__WEBPACK_IMPORTED_MODULE_2__.slice.actions.close()));
577 -
578 - // On empty route close, show V1 panel elements.
579 - (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateListenTo)((0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.routeCloseEvent)(V2_PANEL), () => {
580 - getV1PanelElements().forEach(el => {
581 - el.removeAttribute('hidden');
582 - el.removeAttribute('inert');
583 - });
584 - });
585 -
586 - // On V2 panel open, open the V2 panel route.
587 - (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateListenTo)((0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.windowEvent)('elementor/panel/init'), () => subscribe({
588 - on: state => (0,_store__WEBPACK_IMPORTED_MODULE_2__.selectOpenId)(state),
589 - when: ({
590 - prev,
591 - current
592 - }) => !!(!prev && current),
593 - // is panel opened
594 - callback: () => (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateOpenRoute)(V2_PANEL)
595 - }));
596 -
597 - // On V2 panel close, close the V2 panel route.
598 - (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateListenTo)((0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.windowEvent)('elementor/panel/init'), () => subscribe({
599 - on: state => (0,_store__WEBPACK_IMPORTED_MODULE_2__.selectOpenId)(state),
600 - when: ({
601 - prev,
602 - current
603 - }) => !!(!current && prev),
604 - // is panel closed
605 - callback: () => (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateIsRouteActive)(V2_PANEL) && (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_0__.__privateOpenRoute)(getDefaultRoute())
606 - }));
607 -}
608 -function getV1PanelElements() {
609 - const v1ElementsSelector = ['#elementor-panel-header-wrapper', '#elementor-panel-content-wrapper', '#elementor-panel-state-loading', '#elementor-panel-footer'].join(', ');
610 - return document.querySelectorAll(v1ElementsSelector);
611 -}
612 -function getDefaultRoute() {
613 - const defaultRoute = window?.elementor?.documents?.getCurrent?.()?.config?.panel?.default_route;
614 - return defaultRoute || 'panel/elements/categories';
615 -}
616 -function subscribe({
617 - on,
618 - when,
619 - callback
620 -}) {
621 - let prev;
622 - (0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__subscribe)(() => {
623 - const current = on((0,_elementor_store__WEBPACK_IMPORTED_MODULE_1__.__getState)());
624 - if (when({
625 - prev,
626 - current
627 - })) {
628 - callback({
629 - prev,
630 - current
631 - });
632 - }
633 - prev = current;
634 - });
635 -}
636 -
637 -/***/ }),
638 -
639 -/***/ "@elementor/editor":
640 -/*!*****************************************!*\
641 - !*** external ["elementorV2","editor"] ***!
642 - \*****************************************/
643 -/***/ (function(module) {
644 -
645 -module.exports = window["elementorV2"]["editor"];
646 -
647 -/***/ }),
648 -
649 -/***/ "@elementor/editor-v1-adapters":
650 -/*!***************************************************!*\
651 - !*** external ["elementorV2","editorV1Adapters"] ***!
652 - \***************************************************/
653 -/***/ (function(module) {
654 -
655 -module.exports = window["elementorV2"]["editorV1Adapters"];
656 -
657 -/***/ }),
658 -
659 -/***/ "@elementor/locations":
660 -/*!********************************************!*\
661 - !*** external ["elementorV2","locations"] ***!
662 - \********************************************/
663 -/***/ (function(module) {
664 -
665 -module.exports = window["elementorV2"]["locations"];
666 -
667 -/***/ }),
668 -
669 -/***/ "@elementor/store":
670 -/*!****************************************!*\
671 - !*** external ["elementorV2","store"] ***!
672 - \****************************************/
673 -/***/ (function(module) {
674 -
675 -module.exports = window["elementorV2"]["store"];
676 -
677 -/***/ }),
678 -
679 -/***/ "@elementor/ui":
680 -/*!*************************************!*\
681 - !*** external ["elementorV2","ui"] ***!
682 - \*************************************/
683 -/***/ (function(module) {
684 -
685 -module.exports = window["elementorV2"]["ui"];
686 -
687 -/***/ }),
688 -
689 -/***/ "react":
690 -/*!**************************!*\
691 - !*** external ["React"] ***!
692 - \**************************/
693 -/***/ (function(module) {
694 -
695 -module.exports = window["React"];
696 -
697 -/***/ })
698 -
699 -/******/ });
700 -/************************************************************************/
701 -/******/ // The module cache
702 -/******/ var __webpack_module_cache__ = {};
703 -/******/
704 -/******/ // The require function
705 -/******/ function __webpack_require__(moduleId) {
706 -/******/ // Check if module is in cache
707 -/******/ var cachedModule = __webpack_module_cache__[moduleId];
708 -/******/ if (cachedModule !== undefined) {
709 -/******/ return cachedModule.exports;
710 -/******/ }
711 -/******/ // Create a new module (and put it into the cache)
712 -/******/ var module = __webpack_module_cache__[moduleId] = {
713 -/******/ // no module.id needed
714 -/******/ // no module.loaded needed
715 -/******/ exports: {}
716 -/******/ };
717 -/******/
718 -/******/ // Execute the module function
719 -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
720 -/******/
721 -/******/ // Return the exports of the module
722 -/******/ return module.exports;
723 -/******/ }
724 -/******/
725 -/************************************************************************/
726 -/******/ /* webpack/runtime/compat get default export */
727 -/******/ !function() {
728 -/******/ // getDefaultExport function for compatibility with non-harmony modules
729 -/******/ __webpack_require__.n = function(module) {
730 -/******/ var getter = module && module.__esModule ?
731 -/******/ function() { return module['default']; } :
732 -/******/ function() { return module; };
733 -/******/ __webpack_require__.d(getter, { a: getter });
734 -/******/ return getter;
735 -/******/ };
736 -/******/ }();
737 -/******/
738 -/******/ /* webpack/runtime/define property getters */
739 -/******/ !function() {
740 -/******/ // define getter functions for harmony exports
741 -/******/ __webpack_require__.d = function(exports, definition) {
742 -/******/ for(var key in definition) {
743 -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
744 -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
745 -/******/ }
746 -/******/ }
747 -/******/ };
748 -/******/ }();
749 -/******/
750 -/******/ /* webpack/runtime/hasOwnProperty shorthand */
751 -/******/ !function() {
752 -/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
753 -/******/ }();
754 -/******/
755 -/******/ /* webpack/runtime/make namespace object */
756 -/******/ !function() {
757 -/******/ // define __esModule on exports
758 -/******/ __webpack_require__.r = function(exports) {
759 -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
760 -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
761 -/******/ }
762 -/******/ Object.defineProperty(exports, '__esModule', { value: true });
763 -/******/ };
764 -/******/ }();
765 -/******/
766 -/************************************************************************/
767 -var __webpack_exports__ = {};
768 -// This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk.
769 -!function() {
770 -/*!***********************************************************!*\
771 - !*** ./packages/packages/core/editor-panels/src/index.ts ***!
772 - \***********************************************************/
773 -__webpack_require__.r(__webpack_exports__);
774 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
775 -/* harmony export */ Panel: function() { return /* reexport safe */ _components_external__WEBPACK_IMPORTED_MODULE_2__.Panel; },
776 -/* harmony export */ PanelBody: function() { return /* reexport safe */ _components_external__WEBPACK_IMPORTED_MODULE_2__.PanelBody; },
777 -/* harmony export */ PanelFooter: function() { return /* reexport safe */ _components_external__WEBPACK_IMPORTED_MODULE_2__.PanelFooter; },
778 -/* harmony export */ PanelHeader: function() { return /* reexport safe */ _components_external__WEBPACK_IMPORTED_MODULE_2__.PanelHeader; },
779 -/* harmony export */ PanelHeaderTitle: function() { return /* reexport safe */ _components_external__WEBPACK_IMPORTED_MODULE_2__.PanelHeaderTitle; },
780 -/* harmony export */ __createPanel: function() { return /* reexport safe */ _api__WEBPACK_IMPORTED_MODULE_1__.createPanel; },
781 -/* harmony export */ __registerPanel: function() { return /* reexport safe */ _api__WEBPACK_IMPORTED_MODULE_1__.registerPanel; },
782 -/* harmony export */ init: function() { return /* reexport safe */ _init__WEBPACK_IMPORTED_MODULE_0__.init; }
783 -/* harmony export */ });
784 -/* harmony import */ var _init__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./init */ "./packages/packages/core/editor-panels/src/init.ts");
785 -/* harmony import */ var _api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./api */ "./packages/packages/core/editor-panels/src/api.ts");
786 -/* harmony import */ var _components_external__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/external */ "./packages/packages/core/editor-panels/src/components/external/index.ts");
787 -
788 -
789 -
790 -}();
791 -(window.elementorV2 = window.elementorV2 || {}).editorPanels = __webpack_exports__;
792 -/******/ })()
793 -;
794 -window.elementorV2.editorPanels?.init?.();
1 +/*! For license information please see editor-panels.js.LICENSE.txt */
2 +!function(){"use strict";var e={"./packages/packages/core/editor-panels/src/api.ts":function(e,n,t){t.r(n),t.d(n,{createPanel:function(){return createPanel},registerPanel:function(){return registerPanel}});var r=t("@elementor/editor-v1-adapters"),a=t("@elementor/store"),o=t("./packages/packages/core/editor-panels/src/location.ts"),c=t("./packages/packages/core/editor-panels/src/store/index.ts"),s=t("./packages/packages/core/editor-panels/src/sync.ts");function createPanel({id:e,component:n,onOpen:t,onClose:o,allowedEditModes:i,blockOnKitRoutes:l,isOpenPreviousElement:p=!1}){const u=function createUseStatus(e,n={}){return()=>{const t=(0,a.__useSelector)(c.selectOpenId),o=(0,r.__privateUseRouteStatus)(s.V2_PANEL,n);return{isOpen:t===e&&o.isActive,isBlocked:o.isBlocked}}}(e,{allowedEditModes:i,blockOnKitRoutes:l}),d=function createUseActions(e,n,t={},o){let s=null,i=null;return()=>{const l=(0,a.__useDispatch)(),{isBlocked:p}=n();return{open:async()=>{p||(o&&(i=window.elementor?.selection?.getElements?.()[0]?.model.get("id")??null),l(c.slice.actions.open(e)),s=t.onOpen?.()??null)},close:async()=>{if(!p&&(l(c.slice.actions.close(e)),await(t.onClose?.(s)),i)){try{const e=window.elementor?.getContainer?.(i);(0,r.__privateRunCommand)("document/elements/select",{container:e})}catch{}i=null}}}}}(e,u,{onOpen:t,onClose:o},p);return{panel:{id:e,component:n},usePanelStatus:u,usePanelActions:d}}function registerPanel({id:e,component:n}){(0,o.injectIntoPanels)({id:e,component:n})}},"./packages/packages/core/editor-panels/src/components/external/index.ts":function(e,n,t){t.r(n),t.d(n,{Panel:function(){return r.default},PanelBody:function(){return c.default},PanelFooter:function(){return s.default},PanelHeader:function(){return a.default},PanelHeaderTitle:function(){return o.default}});var r=t("./packages/packages/core/editor-panels/src/components/external/panel.tsx"),a=t("./packages/packages/core/editor-panels/src/components/external/panel-header.tsx"),o=t("./packages/packages/core/editor-panels/src/components/external/panel-header-title.tsx"),c=t("./packages/packages/core/editor-panels/src/components/external/panel-body.tsx"),s=t("./packages/packages/core/editor-panels/src/components/external/panel-footer.tsx")},"./packages/packages/core/editor-panels/src/components/external/panel-body.tsx":function(e,n,t){t.r(n),t.d(n,{default:function(){return PanelBody}});var r=t("react"),a=t("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},_extends.apply(null,arguments)}function PanelBody({children:e,sx:n,...t}){return r.createElement(a.Box,_extends({component:"main",sx:{overflowY:"auto",height:"100%",...n}},t),e)}},"./packages/packages/core/editor-panels/src/components/external/panel-footer.tsx":function(e,n,t){t.r(n),t.d(n,{default:function(){return PanelFooter}});var r=t("react"),a=t("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},_extends.apply(null,arguments)}function PanelFooter({children:e,sx:n,...t}){return r.createElement(r.Fragment,null,r.createElement(a.Divider,null),r.createElement(a.Box,_extends({component:"footer",sx:{display:"flex",position:"sticky",bottom:0,px:2,py:1.5}},t),e))}},"./packages/packages/core/editor-panels/src/components/external/panel-header-title.tsx":function(e,n,t){t.r(n);var r=t("react"),a=t("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},_extends.apply(null,arguments)}const o=(0,a.styled)(a.Typography)(({theme:e,variant:n="body1"})=>"inherit"===n?{}:{"&.MuiTypography-root":{...e.typography[n]}}),c=(0,r.forwardRef)(({children:e,...n},t)=>r.createElement(o,_extends({ref:t,component:"h2",variant:"subtitle1"},n),e));n.default=c},"./packages/packages/core/editor-panels/src/components/external/panel-header.tsx":function(e,n,t){t.r(n),t.d(n,{default:function(){return PanelHeader}});var r=t("react"),a=t("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},_extends.apply(null,arguments)}const o=(0,a.styled)(a.Box)(({theme:e})=>({height:e?.spacing(6)||"48px",display:"flex",alignItems:"center",justifyContent:"center",gap:e?.spacing(.5)||"4px"}));function PanelHeader({children:e,...n}){return r.createElement(r.Fragment,null,r.createElement(o,_extends({component:"header"},n),e))}},"./packages/packages/core/editor-panels/src/components/external/panel.tsx":function(e,n,t){t.r(n),t.d(n,{default:function(){return Panel}});var r=t("react"),a=t("@elementor/ui");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},_extends.apply(null,arguments)}function Panel({children:e,sx:n,...t}){return r.createElement(a.Drawer,_extends({open:!0,variant:"persistent",anchor:"left",PaperProps:{sx:{position:"relative",width:"100%",bgcolor:"background.default",border:"none"}},sx:{height:"100%",...n}},t),e)}},"./packages/packages/core/editor-panels/src/components/internal/panels.tsx":function(e,n,t){t.r(n),t.d(n,{default:function(){return Panels}});var r=t("react"),a=t("./packages/packages/core/editor-panels/src/hooks/use-open-panel-injection.ts"),o=t("./packages/packages/core/editor-panels/src/components/internal/portal.tsx");function Panels(){const e=(0,a.default)(),n=e?.component??null;return n?r.createElement(o.default,null,r.createElement(n,null)):null}},"./packages/packages/core/editor-panels/src/components/internal/portal.tsx":function(e,n,t){t.r(n),t.d(n,{default:function(){return Portal}});var r=t("react"),a=t("@elementor/ui"),o=t("./packages/packages/core/editor-panels/src/sync.ts");function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)({}).hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},_extends.apply(null,arguments)}function Portal(e){const n=(0,r.useRef)(o.getPortalContainer);return n.current?r.createElement(a.Portal,_extends({container:n.current},e)):null}},"./packages/packages/core/editor-panels/src/hooks/use-open-panel-injection.ts":function(e,n,t){t.r(n),t.d(n,{default:function(){return useOpenPanelInjection}});var r=t("react"),a=t("@elementor/store"),o=t("./packages/packages/core/editor-panels/src/location.ts"),c=t("./packages/packages/core/editor-panels/src/store/index.ts");function useOpenPanelInjection(){const e=(0,o.usePanelsInjections)(),n=(0,a.__useSelector)(c.selectOpenId);return(0,r.useMemo)(()=>e.find(e=>n===e.id),[e,n])}},"./packages/packages/core/editor-panels/src/init.ts":function(e,n,t){t.r(n),t.d(n,{init:function(){return init}});var r=t("@elementor/editor"),a=t("@elementor/store"),o=t("./packages/packages/core/editor-panels/src/components/internal/panels.tsx"),c=t("./packages/packages/core/editor-panels/src/store/index.ts"),s=t("./packages/packages/core/editor-panels/src/sync.ts");function init(){(0,s.sync)(),(0,a.__registerSlice)(c.slice),(0,r.injectIntoTop)({id:"panels",component:o.default})}},"./packages/packages/core/editor-panels/src/location.ts":function(e,n,t){t.r(n),t.d(n,{injectIntoPanels:function(){return a},usePanelsInjections:function(){return o}});var r=t("@elementor/locations");const{inject:a,useInjections:o}=(0,r.createLocation)()},"./packages/packages/core/editor-panels/src/store/index.ts":function(e,n,t){t.r(n),t.d(n,{selectOpenId:function(){return r.selectOpenId},slice:function(){return a.default}});var r=t("./packages/packages/core/editor-panels/src/store/selectors.ts"),a=t("./packages/packages/core/editor-panels/src/store/slice.ts")},"./packages/packages/core/editor-panels/src/store/selectors.ts":function(e,n,t){t.r(n),t.d(n,{selectOpenId:function(){return selectOpenId}});const selectOpenId=e=>e.panels.openId},"./packages/packages/core/editor-panels/src/store/slice.ts":function(e,n,t){t.r(n);var r=t("@elementor/store");n.default=(0,r.__createSlice)({name:"panels",initialState:{openId:null},reducers:{open(e,n){e.openId=n.payload},close(e,n){n.payload&&e.openId!==n.payload||(e.openId=null)}}})},"./packages/packages/core/editor-panels/src/sync.ts":function(e,n,t){t.r(n),t.d(n,{V2_PANEL:function(){return c},getPortalContainer:function(){return getPortalContainer},sync:function(){return sync}});var r=t("@elementor/editor-v1-adapters"),a=t("@elementor/store"),o=t("./packages/packages/core/editor-panels/src/store/index.ts");const c="panel/v2";function getPortalContainer(){return document.querySelector("#elementor-panel-inner")}function sync(){(0,r.__privateListenTo)((0,r.windowEvent)("elementor/panel/init"),()=>(0,r.__privateRegisterRoute)(c)),(0,r.__privateListenTo)((0,r.routeOpenEvent)(c),()=>{getV1PanelElements().forEach(e=>{e.setAttribute("hidden","hidden"),e.setAttribute("inert","true")})}),(0,r.__privateListenTo)((0,r.routeCloseEvent)(c),()=>(0,o.selectOpenId)((0,a.__getState)())&&(0,a.__dispatch)(o.slice.actions.close())),(0,r.__privateListenTo)((0,r.routeCloseEvent)(c),()=>{getV1PanelElements().forEach(e=>{e.removeAttribute("hidden"),e.removeAttribute("inert")})}),(0,r.__privateListenTo)((0,r.windowEvent)("elementor/panel/init"),()=>subscribe({on:e=>(0,o.selectOpenId)(e),when:({prev:e,current:n})=>!(e||!n),callback:()=>(0,r.__privateOpenRoute)(c)})),(0,r.__privateListenTo)((0,r.windowEvent)("elementor/panel/init"),()=>subscribe({on:e=>(0,o.selectOpenId)(e),when:({prev:e,current:n})=>!(n||!e),callback:()=>(0,r.__privateIsRouteActive)(c)&&(0,r.__privateOpenRoute)(function getDefaultRoute(){const e=window?.elementor?.documents?.getCurrent?.()?.config?.panel?.default_route;return e||"panel/elements/categories"}())}))}function getV1PanelElements(){const e=["#elementor-panel-header-wrapper","#elementor-panel-content-wrapper","#elementor-panel-state-loading","#elementor-panel-footer"].join(", ");return document.querySelectorAll(e)}function subscribe({on:e,when:n,callback:t}){let r;(0,a.__subscribe)(()=>{const o=e((0,a.__getState)());n({prev:r,current:o})&&t({prev:r,current:o}),r=o})}},"@elementor/editor":function(e){e.exports=window.elementorV2.editor},"@elementor/editor-v1-adapters":function(e){e.exports=window.elementorV2.editorV1Adapters},"@elementor/locations":function(e){e.exports=window.elementorV2.locations},"@elementor/store":function(e){e.exports=window.elementorV2.store},"@elementor/ui":function(e){e.exports=window.elementorV2.ui},react:function(e){e.exports=window.React}},n={};function __webpack_require__(t){var r=n[t];if(void 0!==r)return r.exports;var a=n[t]={exports:{}};return e[t](a,a.exports,__webpack_require__),a.exports}__webpack_require__.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(n,{a:n}),n},__webpack_require__.d=function(e,n){for(var t in n)__webpack_require__.o(n,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},__webpack_require__.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var t={};!function(){__webpack_require__.r(t),__webpack_require__.d(t,{Panel:function(){return r.Panel},PanelBody:function(){return r.PanelBody},PanelFooter:function(){return r.PanelFooter},PanelHeader:function(){return r.PanelHeader},PanelHeaderTitle:function(){return r.PanelHeaderTitle},__createPanel:function(){return n.createPanel},__registerPanel:function(){return n.registerPanel},init:function(){return e.init}});var e=__webpack_require__("./packages/packages/core/editor-panels/src/init.ts"),n=__webpack_require__("./packages/packages/core/editor-panels/src/api.ts"),r=__webpack_require__("./packages/packages/core/editor-panels/src/components/external/index.ts")}(),(window.elementorV2=window.elementorV2||{}).editorPanels=t}(),window.elementorV2.editorPanels?.init?.();
795 3 //# sourceMappingURL=editor-panels.js.map