@elementor/editor-elements 3.32.0-70 → 3.32.0-72
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +47 -4
- package/dist/index.d.ts +47 -4
- package/dist/index.js +167 -25
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +153 -14
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -5
- package/src/hooks/use-element-children.ts +11 -9
- package/src/index.ts +4 -1
- package/src/sync/create-element.ts +5 -8
- package/src/sync/create-elements.ts +101 -0
- package/src/sync/delete-element.ts +2 -1
- package/src/sync/generate-element-id.ts +10 -0
- package/src/sync/remove-elements.ts +101 -0
- package/src/sync/types.ts +10 -1
package/dist/index.d.mts
CHANGED
|
@@ -43,9 +43,13 @@ type V1Element = {
|
|
|
43
43
|
id: string;
|
|
44
44
|
model: V1Model<V1ElementModelProps>;
|
|
45
45
|
settings: V1Model<V1ElementSettingsProps>;
|
|
46
|
-
children?: V1Element[]
|
|
46
|
+
children?: V1Element[] & {
|
|
47
|
+
findRecursive?: (predicate: (child: V1Element) => boolean) => V1Element | undefined;
|
|
48
|
+
forEachRecursive?: (callback: (child: V1Element) => void) => V1Element[];
|
|
49
|
+
};
|
|
47
50
|
view?: {
|
|
48
51
|
el?: HTMLElement;
|
|
52
|
+
_index?: number;
|
|
49
53
|
getDomElement?: () => {
|
|
50
54
|
get?: (index: number) => HTMLElement | undefined;
|
|
51
55
|
};
|
|
@@ -102,23 +106,60 @@ declare function useElementChildren<T extends ElementChildren>(elementId: Elemen
|
|
|
102
106
|
|
|
103
107
|
type Options$1 = {
|
|
104
108
|
useHistory?: boolean;
|
|
109
|
+
at?: number;
|
|
105
110
|
};
|
|
106
|
-
|
|
111
|
+
type CreateElementParams = {
|
|
107
112
|
settings: V1ElementSettingsProps;
|
|
108
113
|
type: string;
|
|
109
114
|
containerId: string;
|
|
110
115
|
id?: string;
|
|
111
116
|
options?: Options$1;
|
|
112
|
-
}
|
|
117
|
+
};
|
|
118
|
+
declare function createElement({ containerId, settings, type, id, options }: CreateElementParams): V1Element;
|
|
119
|
+
|
|
120
|
+
type CreateNestedElementsParams = {
|
|
121
|
+
elements: CreateElementParams[];
|
|
122
|
+
title: string;
|
|
123
|
+
subtitle?: string;
|
|
124
|
+
};
|
|
125
|
+
type CreatedElement = {
|
|
126
|
+
elementId: string;
|
|
127
|
+
model: V1ElementModelProps;
|
|
128
|
+
createParams: CreateElementParams;
|
|
129
|
+
};
|
|
130
|
+
type CreatedElementsResult = {
|
|
131
|
+
createdElements: CreatedElement[];
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
declare const createElements: ({ elements, title, subtitle, }: CreateNestedElementsParams) => CreatedElementsResult;
|
|
113
135
|
|
|
114
136
|
type Options = {
|
|
115
137
|
useHistory?: boolean;
|
|
138
|
+
at?: number;
|
|
116
139
|
};
|
|
117
140
|
declare function deleteElement({ elementId, options }: {
|
|
118
141
|
elementId: string;
|
|
119
142
|
options?: Options;
|
|
120
143
|
}): void;
|
|
121
144
|
|
|
145
|
+
type RemoveNestedElementsParams = {
|
|
146
|
+
elementIds: string[];
|
|
147
|
+
title: string;
|
|
148
|
+
subtitle?: string;
|
|
149
|
+
};
|
|
150
|
+
type RemovedElement = {
|
|
151
|
+
elementId: string;
|
|
152
|
+
model: V1ElementModelProps;
|
|
153
|
+
parent: V1Element | null;
|
|
154
|
+
at: number;
|
|
155
|
+
};
|
|
156
|
+
type RemovedElementsResult = {
|
|
157
|
+
elementIds: string[];
|
|
158
|
+
removedElements: RemovedElement[];
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
declare const removeElements: ({ elementIds, title, subtitle, }: RemoveNestedElementsParams) => RemovedElementsResult;
|
|
162
|
+
|
|
122
163
|
declare function getContainer(id: string): V1Element | null;
|
|
123
164
|
declare const selectElement: (elementId: string) => void;
|
|
124
165
|
|
|
@@ -144,6 +185,8 @@ type UpdateElementSettingsArgs = {
|
|
|
144
185
|
};
|
|
145
186
|
declare const updateElementSettings: ({ id, props, withHistory }: UpdateElementSettingsArgs) => void;
|
|
146
187
|
|
|
188
|
+
declare const generateElementId: () => string;
|
|
189
|
+
|
|
147
190
|
declare const ELEMENT_STYLE_CHANGE_EVENT = "elementor/editor-v2/editor-elements/style";
|
|
148
191
|
declare const styleRerenderEvents: (_elementor_editor_v1_adapters.CommandEventDescriptor | _elementor_editor_v1_adapters.WindowEventDescriptor)[];
|
|
149
192
|
|
|
@@ -188,4 +231,4 @@ declare function getAnchoredDescendantId(elementId: string): string | null;
|
|
|
188
231
|
declare function getAnchoredAncestorId(elementId: string): string | null;
|
|
189
232
|
declare function isElementAnchored(elementId: string): boolean;
|
|
190
233
|
|
|
191
|
-
export { type Control, type ControlItem, type ControlLayout, type ControlsSection, type CreateElementStyleArgs, ELEMENT_STYLE_CHANGE_EVENT, type Element, type ElementChildren, type ElementID, type ElementType, type LinkInLinkRestriction, type UpdateElementSettingsArgs, type UpdateElementStyleArgs, type V1Element, type V1ElementConfig, type V1ElementModelProps, type V1ElementSettingsProps, createElement, createElementStyle, deleteElement, deleteElementStyle, getAnchoredAncestorId, getAnchoredDescendantId, getContainer, getCurrentDocumentId, getElementLabel, getElementSetting, getElementSettings, getElementStyles, getElements, getLinkInLinkRestriction, getSelectedElements, getWidgetsCache, isElementAnchored, selectElement, shouldCreateNewLocalStyle, styleRerenderEvents, updateElementSettings, updateElementStyle, useElementChildren, useElementSetting, useElementSettings, useElementType, useParentElement, useSelectedElement };
|
|
234
|
+
export { type Control, type ControlItem, type ControlLayout, type ControlsSection, type CreateElementParams, type CreateElementStyleArgs, ELEMENT_STYLE_CHANGE_EVENT, type Element, type ElementChildren, type ElementID, type ElementType, type LinkInLinkRestriction, type UpdateElementSettingsArgs, type UpdateElementStyleArgs, type V1Element, type V1ElementConfig, type V1ElementModelProps, type V1ElementSettingsProps, createElement, createElementStyle, createElements, deleteElement, deleteElementStyle, generateElementId, getAnchoredAncestorId, getAnchoredDescendantId, getContainer, getCurrentDocumentId, getElementLabel, getElementSetting, getElementSettings, getElementStyles, getElements, getLinkInLinkRestriction, getSelectedElements, getWidgetsCache, isElementAnchored, removeElements, selectElement, shouldCreateNewLocalStyle, styleRerenderEvents, updateElementSettings, updateElementStyle, useElementChildren, useElementSetting, useElementSettings, useElementType, useParentElement, useSelectedElement };
|
package/dist/index.d.ts
CHANGED
|
@@ -43,9 +43,13 @@ type V1Element = {
|
|
|
43
43
|
id: string;
|
|
44
44
|
model: V1Model<V1ElementModelProps>;
|
|
45
45
|
settings: V1Model<V1ElementSettingsProps>;
|
|
46
|
-
children?: V1Element[]
|
|
46
|
+
children?: V1Element[] & {
|
|
47
|
+
findRecursive?: (predicate: (child: V1Element) => boolean) => V1Element | undefined;
|
|
48
|
+
forEachRecursive?: (callback: (child: V1Element) => void) => V1Element[];
|
|
49
|
+
};
|
|
47
50
|
view?: {
|
|
48
51
|
el?: HTMLElement;
|
|
52
|
+
_index?: number;
|
|
49
53
|
getDomElement?: () => {
|
|
50
54
|
get?: (index: number) => HTMLElement | undefined;
|
|
51
55
|
};
|
|
@@ -102,23 +106,60 @@ declare function useElementChildren<T extends ElementChildren>(elementId: Elemen
|
|
|
102
106
|
|
|
103
107
|
type Options$1 = {
|
|
104
108
|
useHistory?: boolean;
|
|
109
|
+
at?: number;
|
|
105
110
|
};
|
|
106
|
-
|
|
111
|
+
type CreateElementParams = {
|
|
107
112
|
settings: V1ElementSettingsProps;
|
|
108
113
|
type: string;
|
|
109
114
|
containerId: string;
|
|
110
115
|
id?: string;
|
|
111
116
|
options?: Options$1;
|
|
112
|
-
}
|
|
117
|
+
};
|
|
118
|
+
declare function createElement({ containerId, settings, type, id, options }: CreateElementParams): V1Element;
|
|
119
|
+
|
|
120
|
+
type CreateNestedElementsParams = {
|
|
121
|
+
elements: CreateElementParams[];
|
|
122
|
+
title: string;
|
|
123
|
+
subtitle?: string;
|
|
124
|
+
};
|
|
125
|
+
type CreatedElement = {
|
|
126
|
+
elementId: string;
|
|
127
|
+
model: V1ElementModelProps;
|
|
128
|
+
createParams: CreateElementParams;
|
|
129
|
+
};
|
|
130
|
+
type CreatedElementsResult = {
|
|
131
|
+
createdElements: CreatedElement[];
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
declare const createElements: ({ elements, title, subtitle, }: CreateNestedElementsParams) => CreatedElementsResult;
|
|
113
135
|
|
|
114
136
|
type Options = {
|
|
115
137
|
useHistory?: boolean;
|
|
138
|
+
at?: number;
|
|
116
139
|
};
|
|
117
140
|
declare function deleteElement({ elementId, options }: {
|
|
118
141
|
elementId: string;
|
|
119
142
|
options?: Options;
|
|
120
143
|
}): void;
|
|
121
144
|
|
|
145
|
+
type RemoveNestedElementsParams = {
|
|
146
|
+
elementIds: string[];
|
|
147
|
+
title: string;
|
|
148
|
+
subtitle?: string;
|
|
149
|
+
};
|
|
150
|
+
type RemovedElement = {
|
|
151
|
+
elementId: string;
|
|
152
|
+
model: V1ElementModelProps;
|
|
153
|
+
parent: V1Element | null;
|
|
154
|
+
at: number;
|
|
155
|
+
};
|
|
156
|
+
type RemovedElementsResult = {
|
|
157
|
+
elementIds: string[];
|
|
158
|
+
removedElements: RemovedElement[];
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
declare const removeElements: ({ elementIds, title, subtitle, }: RemoveNestedElementsParams) => RemovedElementsResult;
|
|
162
|
+
|
|
122
163
|
declare function getContainer(id: string): V1Element | null;
|
|
123
164
|
declare const selectElement: (elementId: string) => void;
|
|
124
165
|
|
|
@@ -144,6 +185,8 @@ type UpdateElementSettingsArgs = {
|
|
|
144
185
|
};
|
|
145
186
|
declare const updateElementSettings: ({ id, props, withHistory }: UpdateElementSettingsArgs) => void;
|
|
146
187
|
|
|
188
|
+
declare const generateElementId: () => string;
|
|
189
|
+
|
|
147
190
|
declare const ELEMENT_STYLE_CHANGE_EVENT = "elementor/editor-v2/editor-elements/style";
|
|
148
191
|
declare const styleRerenderEvents: (_elementor_editor_v1_adapters.CommandEventDescriptor | _elementor_editor_v1_adapters.WindowEventDescriptor)[];
|
|
149
192
|
|
|
@@ -188,4 +231,4 @@ declare function getAnchoredDescendantId(elementId: string): string | null;
|
|
|
188
231
|
declare function getAnchoredAncestorId(elementId: string): string | null;
|
|
189
232
|
declare function isElementAnchored(elementId: string): boolean;
|
|
190
233
|
|
|
191
|
-
export { type Control, type ControlItem, type ControlLayout, type ControlsSection, type CreateElementStyleArgs, ELEMENT_STYLE_CHANGE_EVENT, type Element, type ElementChildren, type ElementID, type ElementType, type LinkInLinkRestriction, type UpdateElementSettingsArgs, type UpdateElementStyleArgs, type V1Element, type V1ElementConfig, type V1ElementModelProps, type V1ElementSettingsProps, createElement, createElementStyle, deleteElement, deleteElementStyle, getAnchoredAncestorId, getAnchoredDescendantId, getContainer, getCurrentDocumentId, getElementLabel, getElementSetting, getElementSettings, getElementStyles, getElements, getLinkInLinkRestriction, getSelectedElements, getWidgetsCache, isElementAnchored, selectElement, shouldCreateNewLocalStyle, styleRerenderEvents, updateElementSettings, updateElementStyle, useElementChildren, useElementSetting, useElementSettings, useElementType, useParentElement, useSelectedElement };
|
|
234
|
+
export { type Control, type ControlItem, type ControlLayout, type ControlsSection, type CreateElementParams, type CreateElementStyleArgs, ELEMENT_STYLE_CHANGE_EVENT, type Element, type ElementChildren, type ElementID, type ElementType, type LinkInLinkRestriction, type UpdateElementSettingsArgs, type UpdateElementStyleArgs, type V1Element, type V1ElementConfig, type V1ElementModelProps, type V1ElementSettingsProps, createElement, createElementStyle, createElements, deleteElement, deleteElementStyle, generateElementId, getAnchoredAncestorId, getAnchoredDescendantId, getContainer, getCurrentDocumentId, getElementLabel, getElementSetting, getElementSettings, getElementStyles, getElements, getLinkInLinkRestriction, getSelectedElements, getWidgetsCache, isElementAnchored, removeElements, selectElement, shouldCreateNewLocalStyle, styleRerenderEvents, updateElementSettings, updateElementStyle, useElementChildren, useElementSetting, useElementSettings, useElementType, useParentElement, useSelectedElement };
|
package/dist/index.js
CHANGED
|
@@ -23,8 +23,10 @@ __export(index_exports, {
|
|
|
23
23
|
ELEMENT_STYLE_CHANGE_EVENT: () => ELEMENT_STYLE_CHANGE_EVENT,
|
|
24
24
|
createElement: () => createElement,
|
|
25
25
|
createElementStyle: () => createElementStyle,
|
|
26
|
+
createElements: () => createElements,
|
|
26
27
|
deleteElement: () => deleteElement,
|
|
27
28
|
deleteElementStyle: () => deleteElementStyle,
|
|
29
|
+
generateElementId: () => generateElementId,
|
|
28
30
|
getAnchoredAncestorId: () => getAnchoredAncestorId,
|
|
29
31
|
getAnchoredDescendantId: () => getAnchoredDescendantId,
|
|
30
32
|
getContainer: () => getContainer,
|
|
@@ -38,6 +40,7 @@ __export(index_exports, {
|
|
|
38
40
|
getSelectedElements: () => getSelectedElements,
|
|
39
41
|
getWidgetsCache: () => getWidgetsCache,
|
|
40
42
|
isElementAnchored: () => isElementAnchored,
|
|
43
|
+
removeElements: () => removeElements,
|
|
41
44
|
selectElement: () => selectElement,
|
|
42
45
|
shouldCreateNewLocalStyle: () => shouldCreateNewLocalStyle,
|
|
43
46
|
styleRerenderEvents: () => styleRerenderEvents,
|
|
@@ -209,14 +212,17 @@ function useElementChildren(elementId, childrenTypes) {
|
|
|
209
212
|
],
|
|
210
213
|
() => {
|
|
211
214
|
const container = getContainer(elementId);
|
|
212
|
-
const
|
|
213
|
-
|
|
214
|
-
const childElements = children.filter((child) => child.model?.get("widgetType") === type).map((child) => ({ id: child.id }));
|
|
215
|
-
if (childElements) {
|
|
216
|
-
acc[type] = childElements;
|
|
217
|
-
}
|
|
215
|
+
const elementChildren = childrenTypes.reduce((acc, type) => {
|
|
216
|
+
acc[type] = [];
|
|
218
217
|
return acc;
|
|
219
218
|
}, {});
|
|
219
|
+
container?.children?.forEachRecursive?.(({ model, id }) => {
|
|
220
|
+
const widgetType = model.get("widgetType");
|
|
221
|
+
if (widgetType && widgetType in elementChildren) {
|
|
222
|
+
elementChildren[widgetType].push({ id });
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
return elementChildren;
|
|
220
226
|
},
|
|
221
227
|
[elementId]
|
|
222
228
|
);
|
|
@@ -224,13 +230,7 @@ function useElementChildren(elementId, childrenTypes) {
|
|
|
224
230
|
|
|
225
231
|
// src/sync/create-element.ts
|
|
226
232
|
var import_editor_v1_adapters7 = require("@elementor/editor-v1-adapters");
|
|
227
|
-
function createElement({
|
|
228
|
-
containerId,
|
|
229
|
-
settings,
|
|
230
|
-
type,
|
|
231
|
-
id,
|
|
232
|
-
options
|
|
233
|
-
}) {
|
|
233
|
+
function createElement({ containerId, settings, type, id, options }) {
|
|
234
234
|
const container = getContainer(containerId);
|
|
235
235
|
const model = createElementModel({ settings, type, id });
|
|
236
236
|
if (!container) {
|
|
@@ -253,9 +253,13 @@ function createElementModel({ settings, type, id }) {
|
|
|
253
253
|
};
|
|
254
254
|
}
|
|
255
255
|
|
|
256
|
+
// src/sync/create-elements.ts
|
|
257
|
+
var import_editor_v1_adapters9 = require("@elementor/editor-v1-adapters");
|
|
258
|
+
var import_i18n = require("@wordpress/i18n");
|
|
259
|
+
|
|
256
260
|
// src/sync/delete-element.ts
|
|
257
261
|
var import_editor_v1_adapters8 = require("@elementor/editor-v1-adapters");
|
|
258
|
-
function deleteElement({ elementId, options }) {
|
|
262
|
+
function deleteElement({ elementId, options = {} }) {
|
|
259
263
|
const container = getContainer(elementId);
|
|
260
264
|
if (!container) {
|
|
261
265
|
throw new Error(`Element with ID "${elementId}" not found`);
|
|
@@ -266,6 +270,135 @@ function deleteElement({ elementId, options }) {
|
|
|
266
270
|
});
|
|
267
271
|
}
|
|
268
272
|
|
|
273
|
+
// src/sync/create-elements.ts
|
|
274
|
+
var createElements = ({
|
|
275
|
+
elements,
|
|
276
|
+
title,
|
|
277
|
+
subtitle = (0, import_i18n.__)("Item added", "elementor")
|
|
278
|
+
}) => {
|
|
279
|
+
const undoableCreate = (0, import_editor_v1_adapters9.undoable)(
|
|
280
|
+
{
|
|
281
|
+
do: ({ elements: elementsParam }) => {
|
|
282
|
+
const createdElements = [];
|
|
283
|
+
elementsParam.forEach((createParams) => {
|
|
284
|
+
const { options, ...elementParams } = createParams;
|
|
285
|
+
const element = createElement({
|
|
286
|
+
...elementParams,
|
|
287
|
+
options: { ...options, useHistory: false }
|
|
288
|
+
});
|
|
289
|
+
const elementId = element.id;
|
|
290
|
+
createdElements.push({
|
|
291
|
+
elementId,
|
|
292
|
+
model: element.model?.toJSON() || {},
|
|
293
|
+
createParams: {
|
|
294
|
+
...createParams,
|
|
295
|
+
id: elementId
|
|
296
|
+
}
|
|
297
|
+
});
|
|
298
|
+
});
|
|
299
|
+
return { createdElements };
|
|
300
|
+
},
|
|
301
|
+
undo: (_, { createdElements }) => {
|
|
302
|
+
[...createdElements].reverse().forEach(({ elementId }) => {
|
|
303
|
+
deleteElement({
|
|
304
|
+
elementId,
|
|
305
|
+
options: { useHistory: false }
|
|
306
|
+
});
|
|
307
|
+
});
|
|
308
|
+
},
|
|
309
|
+
redo: (_, { createdElements }) => {
|
|
310
|
+
const newElements = [];
|
|
311
|
+
createdElements.forEach(({ createParams }) => {
|
|
312
|
+
const element = createElement({
|
|
313
|
+
...createParams,
|
|
314
|
+
options: { ...createParams.options, useHistory: false }
|
|
315
|
+
});
|
|
316
|
+
const elementId = element.id;
|
|
317
|
+
const container = getContainer(elementId);
|
|
318
|
+
if (container) {
|
|
319
|
+
newElements.push({
|
|
320
|
+
elementId,
|
|
321
|
+
model: container.model.toJSON(),
|
|
322
|
+
createParams
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
return { createdElements: newElements };
|
|
327
|
+
}
|
|
328
|
+
},
|
|
329
|
+
{
|
|
330
|
+
title,
|
|
331
|
+
subtitle
|
|
332
|
+
}
|
|
333
|
+
);
|
|
334
|
+
return undoableCreate({ elements });
|
|
335
|
+
};
|
|
336
|
+
|
|
337
|
+
// src/sync/remove-elements.ts
|
|
338
|
+
var import_editor_v1_adapters10 = require("@elementor/editor-v1-adapters");
|
|
339
|
+
var import_i18n2 = require("@wordpress/i18n");
|
|
340
|
+
var removeElements = ({
|
|
341
|
+
elementIds,
|
|
342
|
+
title,
|
|
343
|
+
subtitle = (0, import_i18n2.__)("Item removed", "elementor")
|
|
344
|
+
}) => {
|
|
345
|
+
const undoableRemove = (0, import_editor_v1_adapters10.undoable)(
|
|
346
|
+
{
|
|
347
|
+
do: ({ elementIds: elementIdsParam }) => {
|
|
348
|
+
const removedElements = [];
|
|
349
|
+
elementIdsParam.forEach((elementId) => {
|
|
350
|
+
const container = getContainer(elementId);
|
|
351
|
+
if (container) {
|
|
352
|
+
const model = container.model.toJSON();
|
|
353
|
+
const parent = container.parent;
|
|
354
|
+
const at = container.view?._index ?? 0;
|
|
355
|
+
removedElements.push({
|
|
356
|
+
elementId,
|
|
357
|
+
model,
|
|
358
|
+
parent: parent ?? null,
|
|
359
|
+
at
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
});
|
|
363
|
+
elementIdsParam.forEach((elementId) => {
|
|
364
|
+
deleteElement({
|
|
365
|
+
elementId,
|
|
366
|
+
options: { useHistory: false }
|
|
367
|
+
});
|
|
368
|
+
});
|
|
369
|
+
return { elementIds: elementIdsParam, removedElements };
|
|
370
|
+
},
|
|
371
|
+
undo: (_, { removedElements }) => {
|
|
372
|
+
[...removedElements].reverse().forEach(({ model, parent, at }) => {
|
|
373
|
+
if (parent && model) {
|
|
374
|
+
createElement({
|
|
375
|
+
containerId: parent.id,
|
|
376
|
+
settings: model.settings || {},
|
|
377
|
+
type: model.widgetType || model.elType,
|
|
378
|
+
id: model.id,
|
|
379
|
+
options: { useHistory: false, at }
|
|
380
|
+
});
|
|
381
|
+
}
|
|
382
|
+
});
|
|
383
|
+
},
|
|
384
|
+
redo: (_, { elementIds: originalElementIds, removedElements }) => {
|
|
385
|
+
originalElementIds.forEach((elementId) => {
|
|
386
|
+
deleteElement({
|
|
387
|
+
elementId,
|
|
388
|
+
options: { useHistory: false }
|
|
389
|
+
});
|
|
390
|
+
});
|
|
391
|
+
return { elementIds: originalElementIds, removedElements };
|
|
392
|
+
}
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
title,
|
|
396
|
+
subtitle
|
|
397
|
+
}
|
|
398
|
+
);
|
|
399
|
+
return undoableRemove({ elementIds });
|
|
400
|
+
};
|
|
401
|
+
|
|
269
402
|
// src/sync/get-element-styles.ts
|
|
270
403
|
var getElementStyles = (elementID) => {
|
|
271
404
|
const container = getContainer(elementID);
|
|
@@ -330,7 +463,7 @@ function getCurrentDocumentId() {
|
|
|
330
463
|
}
|
|
331
464
|
|
|
332
465
|
// src/sync/update-element-settings.ts
|
|
333
|
-
var
|
|
466
|
+
var import_editor_v1_adapters11 = require("@elementor/editor-v1-adapters");
|
|
334
467
|
var updateElementSettings = ({ id, props, withHistory = true }) => {
|
|
335
468
|
const container = getContainer(id);
|
|
336
469
|
const args = {
|
|
@@ -338,21 +471,27 @@ var updateElementSettings = ({ id, props, withHistory = true }) => {
|
|
|
338
471
|
settings: { ...props }
|
|
339
472
|
};
|
|
340
473
|
if (withHistory) {
|
|
341
|
-
(0,
|
|
474
|
+
(0, import_editor_v1_adapters11.__privateRunCommandSync)("document/elements/settings", args);
|
|
342
475
|
} else {
|
|
343
|
-
(0,
|
|
476
|
+
(0, import_editor_v1_adapters11.__privateRunCommandSync)("document/elements/set-settings", args, { internal: true });
|
|
344
477
|
}
|
|
345
478
|
};
|
|
346
479
|
|
|
480
|
+
// src/sync/generate-element-id.ts
|
|
481
|
+
var generateElementId = () => {
|
|
482
|
+
const extendedWindow = window;
|
|
483
|
+
return extendedWindow.elementorCommon?.helpers?.getUniqueId?.() ?? `el-${Date.now()}-${Math.random().toString(36).substring(2, 9)}`;
|
|
484
|
+
};
|
|
485
|
+
|
|
347
486
|
// src/styles/consts.ts
|
|
348
|
-
var
|
|
487
|
+
var import_editor_v1_adapters12 = require("@elementor/editor-v1-adapters");
|
|
349
488
|
var ELEMENT_STYLE_CHANGE_EVENT = "elementor/editor-v2/editor-elements/style";
|
|
350
489
|
var styleRerenderEvents = [
|
|
351
|
-
(0,
|
|
352
|
-
(0,
|
|
353
|
-
(0,
|
|
354
|
-
(0,
|
|
355
|
-
(0,
|
|
490
|
+
(0, import_editor_v1_adapters12.commandEndEvent)("document/elements/create"),
|
|
491
|
+
(0, import_editor_v1_adapters12.commandEndEvent)("document/elements/duplicate"),
|
|
492
|
+
(0, import_editor_v1_adapters12.commandEndEvent)("document/elements/import"),
|
|
493
|
+
(0, import_editor_v1_adapters12.commandEndEvent)("document/elements/paste"),
|
|
494
|
+
(0, import_editor_v1_adapters12.windowEvent)(ELEMENT_STYLE_CHANGE_EVENT)
|
|
356
495
|
];
|
|
357
496
|
|
|
358
497
|
// src/styles/create-element-style.ts
|
|
@@ -361,7 +500,7 @@ var import_editor_styles = require("@elementor/editor-styles");
|
|
|
361
500
|
|
|
362
501
|
// src/styles/mutate-element-styles.ts
|
|
363
502
|
var import_editor_props = require("@elementor/editor-props");
|
|
364
|
-
var
|
|
503
|
+
var import_editor_v1_adapters13 = require("@elementor/editor-v1-adapters");
|
|
365
504
|
function mutateElementStyles(elementId, mutator) {
|
|
366
505
|
const container = getContainer(elementId);
|
|
367
506
|
if (!container) {
|
|
@@ -417,7 +556,7 @@ function getClassesProps(container) {
|
|
|
417
556
|
}
|
|
418
557
|
function notifyChanges() {
|
|
419
558
|
dispatchChangeEvent();
|
|
420
|
-
(0,
|
|
559
|
+
(0, import_editor_v1_adapters13.__privateRunCommandSync)("document/save/set-is-modified", { status: true }, { internal: true });
|
|
421
560
|
}
|
|
422
561
|
function dispatchChangeEvent() {
|
|
423
562
|
window.dispatchEvent(new CustomEvent(ELEMENT_STYLE_CHANGE_EVENT));
|
|
@@ -586,8 +725,10 @@ function isElementorElement(element) {
|
|
|
586
725
|
ELEMENT_STYLE_CHANGE_EVENT,
|
|
587
726
|
createElement,
|
|
588
727
|
createElementStyle,
|
|
728
|
+
createElements,
|
|
589
729
|
deleteElement,
|
|
590
730
|
deleteElementStyle,
|
|
731
|
+
generateElementId,
|
|
591
732
|
getAnchoredAncestorId,
|
|
592
733
|
getAnchoredDescendantId,
|
|
593
734
|
getContainer,
|
|
@@ -601,6 +742,7 @@ function isElementorElement(element) {
|
|
|
601
742
|
getSelectedElements,
|
|
602
743
|
getWidgetsCache,
|
|
603
744
|
isElementAnchored,
|
|
745
|
+
removeElements,
|
|
604
746
|
selectElement,
|
|
605
747
|
shouldCreateNewLocalStyle,
|
|
606
748
|
styleRerenderEvents,
|