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/menus/menus.js +2 -172 4.3.2 → 3.28.0-dev2 View file →
@@ -1,172 +1,2 @@
1 -(function(_elementor_locations, _elementor_utils, react, _elementor_editor_ui, _elementor_ui) {
2 -
3 -//#region \0rolldown/runtime.js
4 - var __create = Object.create;
5 - var __defProp = Object.defineProperty;
6 - var __name = (target, value) => __defProp(target, "name", {
7 - value,
8 - configurable: true
9 - });
10 - var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11 - var __getOwnPropNames = Object.getOwnPropertyNames;
12 - var __getProtoOf = Object.getPrototypeOf;
13 - var __hasOwnProp = Object.prototype.hasOwnProperty;
14 - var __exportAll = (all, no_symbols) => {
15 - let target = {};
16 - for (var name in all) {
17 - __defProp(target, name, {
18 - get: all[name],
19 - enumerable: true
20 - });
21 - }
22 - if (!no_symbols) {
23 - __defProp(target, Symbol.toStringTag, { value: "Module" });
24 - }
25 - return target;
26 - };
27 - var __copyProps = (to, from, except, desc) => {
28 - if (from && typeof from === "object" || typeof from === "function") {
29 - for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
30 - key = keys[i];
31 - if (!__hasOwnProp.call(to, key) && key !== except) {
32 - __defProp(to, key, {
33 - get: ((k) => from[k]).bind(null, key),
34 - enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
35 - });
36 - }
37 - }
38 - }
39 - return to;
40 - };
41 - var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
42 - value: mod,
43 - enumerable: true
44 - }) : target, mod));
45 -
46 -//#endregion
47 -react = __toESM(react);
48 -
49 -//#region packages/packages/libs/menus/src/create-register-item.tsx
50 - function createRegisterItem(locations, component, notify) {
51 - return ({ id, group = "default", priority = 10, overwrite = false, props: _props, useProps: _useProps }) => {
52 - if (!(group in locations)) return;
53 - const Component = component;
54 - const useProps = _useProps || (() => _props);
55 - const InjectedComponent = (props) => {
56 - const componentProps = useProps();
57 - return /* @__PURE__ */ react.createElement(Component, {
58 - ...props,
59 - ...componentProps
60 - });
61 - };
62 - locations[group].inject({
63 - id,
64 - component: InjectedComponent,
65 - options: {
66 - priority,
67 - overwrite
68 - }
69 - });
70 - notify();
71 - };
72 - }
73 -
74 -//#endregion
75 -//#region packages/packages/libs/menus/src/create-use-menu-items.ts
76 - function createUseMenuItems(locations, subscribe) {
77 - let snapshot = null;
78 - subscribe(() => {
79 - snapshot = null;
80 - });
81 - const getMenuItems = () => {
82 - if (snapshot) return snapshot;
83 - snapshot = Object.entries(locations).reduce((carry, [groupName, location]) => {
84 - const items = location.getInjections().map((injection) => ({
85 - id: injection.id,
86 - MenuItem: injection.component
87 - }));
88 - return {
89 - ...carry,
90 - [groupName]: items
91 - };
92 - }, {});
93 - return snapshot;
94 - };
95 - return () => (0, react.useSyncExternalStore)(subscribe, getMenuItems);
96 - }
97 -
98 -//#endregion
99 -//#region packages/packages/libs/menus/src/create-menu.ts
100 - function createSubscription() {
101 - const listeners = /* @__PURE__ */ new Set();
102 - return {
103 - subscribe: (listener) => {
104 - listeners.add(listener);
105 - return () => listeners.delete(listener);
106 - },
107 - notify: () => listeners.forEach((listener) => listener())
108 - };
109 - }
110 - function createMenu({ groups = [], components }) {
111 - const locations = createLocations([...groups, "default"]);
112 - const { subscribe, notify } = createSubscription();
113 - const registerFns = createRegisterFns(locations, components, notify);
114 - return {
115 - useMenuItems: createUseMenuItems(locations, subscribe),
116 - ...registerFns
117 - };
118 - }
119 - function createLocations(groups) {
120 - return groups.reduce((acc, group) => {
121 - acc[group] = (0, _elementor_locations.createLocation)();
122 - return acc;
123 - }, {});
124 - }
125 - function createRegisterFns(locations, components, notify) {
126 - return Object.entries(components).reduce((acc, [key, component]) => {
127 - const name = `register${(0, _elementor_utils.capitalize)(key)}`;
128 - return {
129 - ...acc,
130 - [name]: createRegisterItem(locations, component, notify)
131 - };
132 - }, {});
133 - }
134 -
135 -//#endregion
136 -//#region packages/packages/libs/menus/src/action.tsx
137 - var SIZE = "tiny";
138 - function Action({ title, visible = true, icon: Icon, onClick }) {
139 - if (!visible) return null;
140 - return /* @__PURE__ */ react.createElement(_elementor_ui.Tooltip, {
141 - placement: "top",
142 - title,
143 - arrow: true
144 - }, /* @__PURE__ */ react.createElement(_elementor_ui.IconButton, {
145 - "aria-label": title,
146 - size: SIZE,
147 - onClick
148 - }, /* @__PURE__ */ react.createElement(Icon, { fontSize: SIZE })));
149 - }
150 -
151 -//#endregion
152 -//#region packages/packages/libs/menus/src/controls-actions.ts
153 - var controlActionsMenu = createMenu({ components: {
154 - Action,
155 - PopoverAction: _elementor_editor_ui.PopoverAction
156 - } });
157 -
158 -//#endregion
159 -//#region packages/packages/libs/menus/src/index.ts
160 - var src_exports = /* @__PURE__ */ __exportAll({
161 - controlActionsMenu: () => controlActionsMenu,
162 - createMenu: () => createMenu
163 - });
164 -
165 -//#endregion
166 -//#region \0elementor-package-library-entry
167 - (window.elementorV2 = window.elementorV2 || {}).menus = src_exports;
168 -
169 -//#endregion
170 -})(elementorV2.locations, elementorV2.utils, React, elementorV2.editorUi, elementorV2.ui);
171 -window.elementorV2.menus?.init?.();
172 -//# sourceMappingURL=menus.js.map
1 +/*! For license information please see menus.js.LICENSE.txt */
2 +!function(){"use strict";var e={react:function(e){e.exports=window.React},"@elementor/locations":function(e){e.exports=window.elementorV2.locations}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};!function(){n.r(r),n.d(r,{createMenu:function(){return i}});var e=n("@elementor/locations"),t=n("react");function o(e,n){return({id:r,group:o="default",priority:i=10,overwrite:u=!1,props:c,useProps:s})=>{if(!(o in e))return;const a=n,p=s||(()=>c);e[o].inject({id:r,component:e=>{const n=p();return t.createElement(a,{...e,...n})},options:{priority:i,overwrite:u}})}}function i({groups:n=[],components:r}){const i=function(t){return t.reduce(((t,n)=>(t[n]=(0,e.createLocation)(),t)),{})}([...n,"default"]),u=function(e,t){return Object.entries(t).reduce(((t,[n,r])=>{const i=`register${u=n,u.charAt(0).toUpperCase()+u.slice(1)}`;var u;return{...t,[i]:o(e,r)}}),{})}(i,r),c=function(e){return()=>(0,t.useMemo)((()=>Object.entries(e).reduce(((e,[t,n])=>{const r=n.getInjections().map((e=>({id:e.id,MenuItem:e.component})));return{...e,[t]:r}}),{})),[])}(i);return{useMenuItems:c,...u}}}(),(window.elementorV2=window.elementorV2||{}).menus=r}();