PluginProbe
Elementor Website Builder – more than just a page builder / 3.28.0-dev2
Elementor Website Builder – more than just a page builder v3.28.0-dev2
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 4.1.0-beta2 4.1.0-dev2 All 455 releases
← All changes | assets/js/packages/session/session.js +2 -237 4.2.0-beta1 → 3.28.0-dev2 View file →
@@ -1,237 +1,2 @@
1 -/******/ (function() { // webpackBootstrap
2 -/******/ "use strict";
3 -/******/ var __webpack_modules__ = ({
4 -
5 -/***/ "./packages/packages/libs/session/src/session-storage-context.tsx":
6 -/*!************************************************************************!*\
7 - !*** ./packages/packages/libs/session/src/session-storage-context.tsx ***!
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 */ Context: function() { return /* binding */ Context; },
14 -/* harmony export */ SessionStorageProvider: function() { return /* binding */ SessionStorageProvider; }
15 -/* harmony export */ });
16 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
17 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
18 -
19 -
20 -const Context = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);
21 -function SessionStorageProvider({
22 - children,
23 - prefix
24 -}) {
25 - const contextPrefix = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(Context)?.prefix ?? '';
26 - const chainedPrefix = contextPrefix ? `${contextPrefix}/${prefix}` : prefix;
27 - return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Context.Provider, {
28 - value: {
29 - prefix: chainedPrefix
30 - }
31 - }, children);
32 -}
33 -
34 -/***/ }),
35 -
36 -/***/ "./packages/packages/libs/session/src/session-storage.ts":
37 -/*!***************************************************************!*\
38 - !*** ./packages/packages/libs/session/src/session-storage.ts ***!
39 - \***************************************************************/
40 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
41 -
42 -__webpack_require__.r(__webpack_exports__);
43 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
44 -/* harmony export */ getSessionStorageItem: function() { return /* binding */ getSessionStorageItem; },
45 -/* harmony export */ removeSessionStorageItem: function() { return /* binding */ removeSessionStorageItem; },
46 -/* harmony export */ setSessionStorageItem: function() { return /* binding */ setSessionStorageItem; }
47 -/* harmony export */ });
48 -const getSessionStorageItem = key => {
49 - return JSON.parse(sessionStorage.getItem(key) || '{}')?.item;
50 -};
51 -const setSessionStorageItem = (key, item) => {
52 - sessionStorage.setItem(key, JSON.stringify({
53 - item
54 - }));
55 -
56 - // The browser doesn't dispatch the `storage` event for the current tab,
57 - // so we need to dispatch it manually.
58 - //
59 - // https://developer.mozilla.org/en-US/docs/Web/API/Window/storage_event
60 - window.dispatchEvent(new StorageEvent('storage', {
61 - key,
62 - storageArea: sessionStorage
63 - }));
64 -};
65 -const removeSessionStorageItem = key => {
66 - sessionStorage.removeItem(key);
67 -
68 - // The browser doesn't dispatch the `storage` event for the current tab,
69 - // so we need to dispatch it manually.
70 - //
71 - // https://developer.mozilla.org/en-US/docs/Web/API/Window/storage_event
72 - window.dispatchEvent(new StorageEvent('storage', {
73 - key,
74 - storageArea: sessionStorage
75 - }));
76 -};
77 -
78 -/***/ }),
79 -
80 -/***/ "./packages/packages/libs/session/src/use-session-storage.ts":
81 -/*!*******************************************************************!*\
82 - !*** ./packages/packages/libs/session/src/use-session-storage.ts ***!
83 - \*******************************************************************/
84 -/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
85 -
86 -__webpack_require__.r(__webpack_exports__);
87 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
88 -/* harmony export */ useSessionStorage: function() { return /* binding */ useSessionStorage; }
89 -/* harmony export */ });
90 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
91 -/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
92 -/* harmony import */ var _session_storage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./session-storage */ "./packages/packages/libs/session/src/session-storage.ts");
93 -/* harmony import */ var _session_storage_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./session-storage-context */ "./packages/packages/libs/session/src/session-storage-context.tsx");
94 -
95 -
96 -
97 -const useSessionStorage = (key, customPrefix) => {
98 - const contextPrefix = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_session_storage_context__WEBPACK_IMPORTED_MODULE_2__.Context)?.prefix ?? '';
99 - const prefix = customPrefix ? customPrefix : contextPrefix;
100 - const prefixedKey = `${prefix}/${key}`;
101 - const [value, setValue] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)();
102 - (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
103 - return subscribeToSessionStorage(prefixedKey, newValue => {
104 - setValue(newValue ?? null);
105 - });
106 - }, [prefixedKey]);
107 - const saveValue = newValue => {
108 - (0,_session_storage__WEBPACK_IMPORTED_MODULE_1__.setSessionStorageItem)(prefixedKey, newValue);
109 - };
110 - const removeValue = () => {
111 - (0,_session_storage__WEBPACK_IMPORTED_MODULE_1__.removeSessionStorageItem)(prefixedKey);
112 - };
113 - return [value, saveValue, removeValue];
114 -};
115 -const subscribeToSessionStorage = (key, subscriber) => {
116 - subscriber((0,_session_storage__WEBPACK_IMPORTED_MODULE_1__.getSessionStorageItem)(key));
117 - const abortController = new AbortController();
118 - window.addEventListener('storage', e => {
119 - if (e.key !== key || e.storageArea !== sessionStorage) {
120 - return;
121 - }
122 - subscriber((0,_session_storage__WEBPACK_IMPORTED_MODULE_1__.getSessionStorageItem)(key));
123 - }, {
124 - signal: abortController.signal
125 - });
126 - return () => {
127 - abortController.abort();
128 - };
129 -};
130 -
131 -/***/ }),
132 -
133 -/***/ "react":
134 -/*!**************************!*\
135 - !*** external ["React"] ***!
136 - \**************************/
137 -/***/ (function(module) {
138 -
139 -module.exports = window["React"];
140 -
141 -/***/ })
142 -
143 -/******/ });
144 -/************************************************************************/
145 -/******/ // The module cache
146 -/******/ var __webpack_module_cache__ = {};
147 -/******/
148 -/******/ // The require function
149 -/******/ function __webpack_require__(moduleId) {
150 -/******/ // Check if module is in cache
151 -/******/ var cachedModule = __webpack_module_cache__[moduleId];
152 -/******/ if (cachedModule !== undefined) {
153 -/******/ return cachedModule.exports;
154 -/******/ }
155 -/******/ // Create a new module (and put it into the cache)
156 -/******/ var module = __webpack_module_cache__[moduleId] = {
157 -/******/ // no module.id needed
158 -/******/ // no module.loaded needed
159 -/******/ exports: {}
160 -/******/ };
161 -/******/
162 -/******/ // Execute the module function
163 -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
164 -/******/
165 -/******/ // Return the exports of the module
166 -/******/ return module.exports;
167 -/******/ }
168 -/******/
169 -/************************************************************************/
170 -/******/ /* webpack/runtime/compat get default export */
171 -/******/ !function() {
172 -/******/ // getDefaultExport function for compatibility with non-harmony modules
173 -/******/ __webpack_require__.n = function(module) {
174 -/******/ var getter = module && module.__esModule ?
175 -/******/ function() { return module['default']; } :
176 -/******/ function() { return module; };
177 -/******/ __webpack_require__.d(getter, { a: getter });
178 -/******/ return getter;
179 -/******/ };
180 -/******/ }();
181 -/******/
182 -/******/ /* webpack/runtime/define property getters */
183 -/******/ !function() {
184 -/******/ // define getter functions for harmony exports
185 -/******/ __webpack_require__.d = function(exports, definition) {
186 -/******/ for(var key in definition) {
187 -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
188 -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
189 -/******/ }
190 -/******/ }
191 -/******/ };
192 -/******/ }();
193 -/******/
194 -/******/ /* webpack/runtime/hasOwnProperty shorthand */
195 -/******/ !function() {
196 -/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
197 -/******/ }();
198 -/******/
199 -/******/ /* webpack/runtime/make namespace object */
200 -/******/ !function() {
201 -/******/ // define __esModule on exports
202 -/******/ __webpack_require__.r = function(exports) {
203 -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
204 -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
205 -/******/ }
206 -/******/ Object.defineProperty(exports, '__esModule', { value: true });
207 -/******/ };
208 -/******/ }();
209 -/******/
210 -/************************************************************************/
211 -var __webpack_exports__ = {};
212 -// This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk.
213 -!function() {
214 -/*!*****************************************************!*\
215 - !*** ./packages/packages/libs/session/src/index.ts ***!
216 - \*****************************************************/
217 -__webpack_require__.r(__webpack_exports__);
218 -/* harmony export */ __webpack_require__.d(__webpack_exports__, {
219 -/* harmony export */ Context: function() { return /* reexport safe */ _session_storage_context__WEBPACK_IMPORTED_MODULE_2__.Context; },
220 -/* harmony export */ SessionStorageProvider: function() { return /* reexport safe */ _session_storage_context__WEBPACK_IMPORTED_MODULE_2__.SessionStorageProvider; },
221 -/* harmony export */ getSessionStorageItem: function() { return /* reexport safe */ _session_storage__WEBPACK_IMPORTED_MODULE_0__.getSessionStorageItem; },
222 -/* harmony export */ removeSessionStorageItem: function() { return /* reexport safe */ _session_storage__WEBPACK_IMPORTED_MODULE_0__.removeSessionStorageItem; },
223 -/* harmony export */ setSessionStorageItem: function() { return /* reexport safe */ _session_storage__WEBPACK_IMPORTED_MODULE_0__.setSessionStorageItem; },
224 -/* harmony export */ useSessionStorage: function() { return /* reexport safe */ _use_session_storage__WEBPACK_IMPORTED_MODULE_1__.useSessionStorage; }
225 -/* harmony export */ });
226 -/* harmony import */ var _session_storage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./session-storage */ "./packages/packages/libs/session/src/session-storage.ts");
227 -/* harmony import */ var _use_session_storage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-session-storage */ "./packages/packages/libs/session/src/use-session-storage.ts");
228 -/* harmony import */ var _session_storage_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./session-storage-context */ "./packages/packages/libs/session/src/session-storage-context.tsx");
229 -
230 -
231 -
232 -}();
233 -(window.elementorV2 = window.elementorV2 || {}).session = __webpack_exports__;
234 -/******/ })()
235 -;
236 -window.elementorV2.session?.init?.();
237 -//# sourceMappingURL=session.js.map
1 +/*! For license information please see session.js.LICENSE.txt */
2 +!function(){"use strict";var e={react:function(e){e.exports=window.React}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.d=function(e,t){for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};!function(){r.r(n),r.d(n,{Context:function(){return i},SessionStorageProvider:function(){return a},getSessionStorageItem:function(){return t},removeSessionStorageItem:function(){return s},setSessionStorageItem:function(){return o},useSessionStorage:function(){return u}});var e=r("react"),t=e=>JSON.parse(sessionStorage.getItem(e)||"{}")?.item,o=(e,t)=>{sessionStorage.setItem(e,JSON.stringify({item:t})),window.dispatchEvent(new StorageEvent("storage",{key:e,storageArea:sessionStorage}))},s=e=>{sessionStorage.removeItem(e),window.dispatchEvent(new StorageEvent("storage",{key:e,storageArea:sessionStorage}))},i=(0,e.createContext)(null);function a({children:t,prefix:r}){const n=(0,e.useContext)(i)?.prefix??"",o=n?`${n}/${r}`:r;return e.createElement(i.Provider,{value:{prefix:o}},t)}var u=t=>{const r=`${(0,e.useContext)(i)?.prefix??""}/${t}`,[n,a]=(0,e.useState)();return(0,e.useEffect)((()=>c(r,(e=>{a(e??null)}))),[r]),[n,e=>{o(r,e)},()=>{s(r)}]},c=(e,r)=>{r(t(e));const n=new AbortController;return window.addEventListener("storage",(n=>{n.key===e&&n.storageArea===sessionStorage&&r(t(e))}),{signal:n.signal}),()=>{n.abort()}}}(),(window.elementorV2=window.elementorV2||{}).session=n}();