@base44-preview/vite-plugin 0.2.26-pr.42.7e00d38 → 0.2.26-pr.42.e4df6d7
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/capabilities/inline-edit/controller.d.ts +3 -0
- package/dist/capabilities/inline-edit/controller.d.ts.map +1 -0
- package/dist/capabilities/inline-edit/controller.js +190 -0
- package/dist/capabilities/inline-edit/controller.js.map +1 -0
- package/dist/capabilities/inline-edit/dom-utils.d.ts +6 -0
- package/dist/capabilities/inline-edit/dom-utils.d.ts.map +1 -0
- package/dist/capabilities/inline-edit/dom-utils.js +49 -0
- package/dist/capabilities/inline-edit/dom-utils.js.map +1 -0
- package/dist/capabilities/inline-edit/index.d.ts +3 -0
- package/dist/capabilities/inline-edit/index.d.ts.map +1 -0
- package/dist/capabilities/inline-edit/index.js +2 -0
- package/dist/capabilities/inline-edit/index.js.map +1 -0
- package/dist/capabilities/inline-edit/types.d.ts +25 -0
- package/dist/capabilities/inline-edit/types.d.ts.map +1 -0
- package/dist/capabilities/inline-edit/types.js +2 -0
- package/dist/capabilities/inline-edit/types.js.map +1 -0
- package/dist/injections/visual-edit-agent.d.ts.map +1 -1
- package/dist/injections/visual-edit-agent.js +41 -274
- package/dist/injections/visual-edit-agent.js.map +1 -1
- package/dist/statics/index.mjs +5 -5
- package/dist/statics/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/capabilities/inline-edit/controller.ts +241 -0
- package/src/capabilities/inline-edit/dom-utils.ts +48 -0
- package/src/capabilities/inline-edit/index.ts +2 -0
- package/src/capabilities/inline-edit/types.ts +30 -0
- package/src/injections/visual-edit-agent.ts +41 -327
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { findElementsById, updateElementClasses, updateElementAttribute, collectAllowedAttributes, ALLOWED_ATTRIBUTES, getElementSelectorId } from "./utils.js";
|
|
2
2
|
import { createLayerController } from "./layer-dropdown/controller.js";
|
|
3
3
|
import { LAYER_DROPDOWN_ATTR } from "./layer-dropdown/consts.js";
|
|
4
|
+
import { createInlineEditController } from "../capabilities/inline-edit/index.js";
|
|
4
5
|
export function setupVisualEditAgent() {
|
|
5
6
|
// State variables (replacing React useState/useRef)
|
|
6
7
|
let isVisualEditMode = false;
|
|
@@ -10,13 +11,7 @@ export function setupVisualEditAgent() {
|
|
|
10
11
|
let selectedOverlays = [];
|
|
11
12
|
let currentHighlightedElements = [];
|
|
12
13
|
let selectedElementId = null;
|
|
13
|
-
let currentEditingElement = null;
|
|
14
|
-
let debouncedSendTimeout = null;
|
|
15
|
-
let isInlineEditExperimentEnabled = false;
|
|
16
|
-
const INLINE_EDIT_DEBOUNCE_MS = 500;
|
|
17
14
|
const REPOSITION_DELAY_MS = 50;
|
|
18
|
-
// WeakMap to track AbortControllers for each element's input listener
|
|
19
|
-
const listenerAbortControllers = new WeakMap();
|
|
20
15
|
// Create overlay element
|
|
21
16
|
const createOverlay = (isSelected = false) => {
|
|
22
17
|
const overlay = document.createElement("div");
|
|
@@ -64,203 +59,30 @@ export function setupVisualEditAgent() {
|
|
|
64
59
|
overlay.appendChild(label);
|
|
65
60
|
}
|
|
66
61
|
};
|
|
67
|
-
// --- Inline
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
document.head.appendChild(style);
|
|
80
|
-
};
|
|
81
|
-
const removeFocusOutlineCSS = () => {
|
|
82
|
-
const style = document.getElementById("visual-edit-focus-styles");
|
|
83
|
-
if (style) {
|
|
84
|
-
style.remove();
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
const selectText = (element) => {
|
|
88
|
-
const range = document.createRange();
|
|
89
|
-
range.selectNodeContents(element);
|
|
90
|
-
const selection = window.getSelection();
|
|
91
|
-
selection?.removeAllRanges();
|
|
92
|
-
selection?.addRange(range);
|
|
93
|
-
};
|
|
94
|
-
const isEditableTextElement = (element) => {
|
|
95
|
-
if (!(element instanceof HTMLElement)) {
|
|
96
|
-
return false;
|
|
97
|
-
}
|
|
98
|
-
const allowedTags = [
|
|
99
|
-
"div", "p", "h1", "h2", "h3", "h4", "h5", "h6",
|
|
100
|
-
"span", "li", "td", "a", "button", "label",
|
|
101
|
-
];
|
|
102
|
-
if (!allowedTags.includes(element.tagName.toLowerCase())) {
|
|
103
|
-
return false;
|
|
104
|
-
}
|
|
105
|
-
const textContent = element.textContent?.trim() || "";
|
|
106
|
-
if (textContent.length === 0) {
|
|
107
|
-
return false;
|
|
108
|
-
}
|
|
109
|
-
if (element.querySelector("img, video, canvas, svg") !== null) {
|
|
110
|
-
return false;
|
|
111
|
-
}
|
|
112
|
-
if (element.children.length > 0) {
|
|
113
|
-
return false;
|
|
114
|
-
}
|
|
115
|
-
if (element.dataset.dynamicContent === "true") {
|
|
116
|
-
return false;
|
|
117
|
-
}
|
|
118
|
-
return true;
|
|
119
|
-
};
|
|
120
|
-
const shouldEnterInlineEditingMode = (element) => {
|
|
121
|
-
if (!(element instanceof HTMLElement) || element.dataset.selected !== "true") {
|
|
122
|
-
return false;
|
|
123
|
-
}
|
|
124
|
-
return isEditableTextElement(element);
|
|
125
|
-
};
|
|
126
|
-
const handleInputEvent = function () {
|
|
127
|
-
onTextInputChange(this);
|
|
128
|
-
};
|
|
129
|
-
const enterInlineEditingMode = (element) => {
|
|
130
|
-
injectFocusOutlineCSS();
|
|
131
|
-
element.dataset.originalTextContent = element.textContent || "";
|
|
132
|
-
element.dataset.originalCursor = element.style.cursor;
|
|
133
|
-
element.contentEditable = "true";
|
|
134
|
-
const abortController = new AbortController();
|
|
135
|
-
listenerAbortControllers.set(element, abortController);
|
|
136
|
-
element.addEventListener("input", handleInputEvent, { signal: abortController.signal });
|
|
137
|
-
element.style.cursor = "text";
|
|
138
|
-
selectText(element);
|
|
139
|
-
setTimeout(() => {
|
|
140
|
-
element.focus();
|
|
141
|
-
}, 0);
|
|
142
|
-
};
|
|
143
|
-
const clearInlineEditingMode = (element) => {
|
|
144
|
-
const abortController = listenerAbortControllers.get(element);
|
|
145
|
-
if (abortController) {
|
|
146
|
-
abortController.abort();
|
|
147
|
-
listenerAbortControllers.delete(element);
|
|
148
|
-
}
|
|
149
|
-
if (!element.isConnected) {
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
removeFocusOutlineCSS();
|
|
153
|
-
element.contentEditable = "false";
|
|
154
|
-
delete element.dataset.originalTextContent;
|
|
155
|
-
if (element.dataset.originalCursor !== undefined) {
|
|
156
|
-
element.style.cursor = element.dataset.originalCursor;
|
|
157
|
-
delete element.dataset.originalCursor;
|
|
158
|
-
}
|
|
159
|
-
};
|
|
160
|
-
const repositionSelectedOverlays = () => {
|
|
161
|
-
if (selectedElementId) {
|
|
162
|
-
const elements = findElementsById(selectedElementId);
|
|
163
|
-
selectedOverlays.forEach((overlay, index) => {
|
|
164
|
-
if (index < elements.length) {
|
|
165
|
-
positionOverlay(overlay, elements[index]);
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
};
|
|
170
|
-
const handleEnterInlineEditingMode = (element) => {
|
|
171
|
-
currentEditingElement = element;
|
|
172
|
-
selectedOverlays.forEach((overlay) => {
|
|
173
|
-
overlay.style.display = "none";
|
|
174
|
-
});
|
|
175
|
-
enterInlineEditingMode(element);
|
|
176
|
-
window.parent.postMessage({
|
|
177
|
-
type: "content-editing-started",
|
|
178
|
-
visualSelectorId: selectedElementId,
|
|
179
|
-
}, "*");
|
|
180
|
-
};
|
|
181
|
-
const handleClearInlineEditingMode = () => {
|
|
182
|
-
if (!currentEditingElement)
|
|
183
|
-
return;
|
|
184
|
-
if (debouncedSendTimeout) {
|
|
185
|
-
clearTimeout(debouncedSendTimeout);
|
|
186
|
-
debouncedSendTimeout = null;
|
|
187
|
-
}
|
|
188
|
-
const element = currentEditingElement;
|
|
189
|
-
clearInlineEditingMode(element);
|
|
190
|
-
selectedOverlays.forEach((overlay) => {
|
|
191
|
-
overlay.style.display = "";
|
|
192
|
-
});
|
|
193
|
-
repositionSelectedOverlays();
|
|
194
|
-
window.parent.postMessage({
|
|
195
|
-
type: "content-editing-ended",
|
|
196
|
-
visualSelectorId: selectedElementId,
|
|
197
|
-
}, "*");
|
|
198
|
-
currentEditingElement = null;
|
|
199
|
-
};
|
|
200
|
-
const reportInlineEdit = (element) => {
|
|
201
|
-
const originalContent = element.dataset.originalTextContent;
|
|
202
|
-
const newContent = element.textContent;
|
|
203
|
-
const svgElement = element;
|
|
204
|
-
const elementInfo = {
|
|
205
|
-
tagName: element.tagName,
|
|
206
|
-
classes: svgElement.className?.baseVal ||
|
|
207
|
-
element.className ||
|
|
208
|
-
"",
|
|
209
|
-
visualSelectorId: selectedElementId,
|
|
210
|
-
content: newContent,
|
|
211
|
-
dataSourceLocation: element.dataset.sourceLocation,
|
|
212
|
-
isDynamicContent: element.dataset.dynamicContent === "true",
|
|
213
|
-
linenumber: element.dataset.linenumber,
|
|
214
|
-
filename: element.dataset.filename,
|
|
215
|
-
position: (() => {
|
|
216
|
-
const rect = element.getBoundingClientRect();
|
|
217
|
-
return {
|
|
218
|
-
top: rect.top,
|
|
219
|
-
left: rect.left,
|
|
220
|
-
right: rect.right,
|
|
221
|
-
bottom: rect.bottom,
|
|
222
|
-
width: rect.width,
|
|
223
|
-
height: rect.height,
|
|
224
|
-
centerX: rect.left + rect.width / 2,
|
|
225
|
-
centerY: rect.top + rect.height / 2,
|
|
226
|
-
};
|
|
227
|
-
})(),
|
|
228
|
-
};
|
|
229
|
-
window.parent.postMessage({
|
|
230
|
-
type: "inline-edit",
|
|
231
|
-
elementInfo,
|
|
232
|
-
originalContent,
|
|
233
|
-
newContent,
|
|
234
|
-
}, "*");
|
|
235
|
-
element.dataset.originalTextContent = newContent || "";
|
|
236
|
-
};
|
|
237
|
-
const debouncedSendInlineEditMessage = (element) => {
|
|
238
|
-
if (debouncedSendTimeout) {
|
|
239
|
-
clearTimeout(debouncedSendTimeout);
|
|
240
|
-
}
|
|
241
|
-
debouncedSendTimeout = setTimeout(() => {
|
|
242
|
-
reportInlineEdit(element);
|
|
243
|
-
}, INLINE_EDIT_DEBOUNCE_MS);
|
|
244
|
-
};
|
|
245
|
-
const onTextInputChange = (element) => {
|
|
246
|
-
repositionSelectedOverlays();
|
|
247
|
-
debouncedSendInlineEditMessage(element);
|
|
248
|
-
};
|
|
249
|
-
const clearSelection = () => {
|
|
250
|
-
if (selectedElementId) {
|
|
251
|
-
const elements = findElementsById(selectedElementId);
|
|
62
|
+
// --- Inline edit controller ---
|
|
63
|
+
const inlineEdit = createInlineEditController({
|
|
64
|
+
findElementsById,
|
|
65
|
+
getSelectedElementId: () => selectedElementId,
|
|
66
|
+
getSelectedOverlays: () => selectedOverlays,
|
|
67
|
+
positionOverlay,
|
|
68
|
+
clearSelection: () => {
|
|
69
|
+
inlineEdit.clearSelectedMarks(selectedElementId);
|
|
70
|
+
clearSelectedOverlays();
|
|
71
|
+
selectedElementId = null;
|
|
72
|
+
},
|
|
73
|
+
createSelectionOverlays: (elements, elementId) => {
|
|
252
74
|
elements.forEach((el) => {
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
75
|
+
const overlay = createOverlay(true);
|
|
76
|
+
document.body.appendChild(overlay);
|
|
77
|
+
selectedOverlays.push(overlay);
|
|
78
|
+
positionOverlay(overlay, el, true);
|
|
256
79
|
});
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
selectedOverlays = [];
|
|
80
|
+
selectedElementId = elementId;
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
const clearSelection = () => {
|
|
84
|
+
inlineEdit.clearSelectedMarks(selectedElementId);
|
|
85
|
+
clearSelectedOverlays();
|
|
264
86
|
selectedElementId = null;
|
|
265
87
|
};
|
|
266
88
|
// Clear hover overlays
|
|
@@ -335,10 +157,7 @@ export function setupVisualEditAgent() {
|
|
|
335
157
|
};
|
|
336
158
|
// Handle mouse over event
|
|
337
159
|
const handleMouseOver = (e) => {
|
|
338
|
-
if (!isVisualEditMode || isPopoverDragging)
|
|
339
|
-
return;
|
|
340
|
-
// Skip hover effects when inline editing
|
|
341
|
-
if (currentEditingElement)
|
|
160
|
+
if (!isVisualEditMode || isPopoverDragging || inlineEdit.isEditing())
|
|
342
161
|
return;
|
|
343
162
|
const target = e.target;
|
|
344
163
|
// Prevent hover effects when a dropdown is open
|
|
@@ -393,16 +212,17 @@ export function setupVisualEditAgent() {
|
|
|
393
212
|
// Let layer dropdown clicks pass through without interference
|
|
394
213
|
if (target.closest(`[${LAYER_DROPDOWN_ATTR}]`))
|
|
395
214
|
return;
|
|
396
|
-
//
|
|
397
|
-
|
|
215
|
+
// Let clicks inside the editable element pass through to the browser
|
|
216
|
+
// so the user can reposition the cursor and select text naturally.
|
|
217
|
+
if (inlineEdit.enabled && target instanceof HTMLElement && target.contentEditable === "true") {
|
|
398
218
|
return;
|
|
399
219
|
}
|
|
400
|
-
//
|
|
401
|
-
if (
|
|
220
|
+
// Clicking outside the editable element exits inline editing mode.
|
|
221
|
+
if (inlineEdit.isEditing()) {
|
|
402
222
|
e.preventDefault();
|
|
403
223
|
e.stopPropagation();
|
|
404
224
|
e.stopImmediatePropagation();
|
|
405
|
-
|
|
225
|
+
inlineEdit.stopEditing();
|
|
406
226
|
return;
|
|
407
227
|
}
|
|
408
228
|
// Close dropdowns when clicking anywhere in iframe if a dropdown is open
|
|
@@ -428,35 +248,21 @@ export function setupVisualEditAgent() {
|
|
|
428
248
|
}
|
|
429
249
|
const htmlElement = element;
|
|
430
250
|
const visualSelectorId = getElementSelectorId(element);
|
|
431
|
-
// Check if this element is already selected (second click scenario)
|
|
432
251
|
const isAlreadySelected = selectedElementId === visualSelectorId &&
|
|
433
252
|
htmlElement.dataset.selected === "true";
|
|
434
|
-
if (isAlreadySelected) {
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
return;
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
// Select the element, mark for inline editing, and attach layer dropdown
|
|
441
|
-
if (currentEditingElement) {
|
|
442
|
-
handleClearInlineEditingMode();
|
|
253
|
+
if (isAlreadySelected && inlineEdit.enabled && inlineEdit.canEdit(htmlElement)) {
|
|
254
|
+
inlineEdit.startEditing(htmlElement);
|
|
255
|
+
return;
|
|
443
256
|
}
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
if (el instanceof HTMLElement) {
|
|
448
|
-
el.dataset.selected = "true";
|
|
449
|
-
}
|
|
450
|
-
});
|
|
257
|
+
inlineEdit.stopEditing();
|
|
258
|
+
if (inlineEdit.enabled) {
|
|
259
|
+
inlineEdit.markElementsSelected(findElementsById(visualSelectorId));
|
|
451
260
|
}
|
|
452
261
|
const selectedOverlay = selectElement(element);
|
|
453
262
|
layerController.attachToOverlay(selectedOverlay, element);
|
|
454
263
|
};
|
|
455
|
-
// Unselect the current element
|
|
456
264
|
const unselectElement = () => {
|
|
457
|
-
|
|
458
|
-
handleClearInlineEditingMode();
|
|
459
|
-
}
|
|
265
|
+
inlineEdit.stopEditing();
|
|
460
266
|
clearSelection();
|
|
461
267
|
};
|
|
462
268
|
const updateElementClassesAndReposition = (visualSelectorId, classes) => {
|
|
@@ -541,13 +347,10 @@ export function setupVisualEditAgent() {
|
|
|
541
347
|
const toggleVisualEditMode = (isEnabled) => {
|
|
542
348
|
isVisualEditMode = isEnabled;
|
|
543
349
|
if (!isEnabled) {
|
|
544
|
-
|
|
545
|
-
handleClearInlineEditingMode();
|
|
546
|
-
}
|
|
350
|
+
inlineEdit.stopEditing();
|
|
547
351
|
clearSelection();
|
|
548
352
|
layerController.cleanup();
|
|
549
353
|
clearHoverOverlays();
|
|
550
|
-
clearSelectedOverlays();
|
|
551
354
|
currentHighlightedElements = [];
|
|
552
355
|
document.body.style.cursor = "default";
|
|
553
356
|
document.removeEventListener("mouseover", handleMouseOver);
|
|
@@ -600,7 +403,7 @@ export function setupVisualEditAgent() {
|
|
|
600
403
|
case "toggle-visual-edit-mode":
|
|
601
404
|
toggleVisualEditMode(message.data.enabled);
|
|
602
405
|
if (message.data.specs?.newInlineEditEnabled !== undefined) {
|
|
603
|
-
|
|
406
|
+
inlineEdit.enabled = message.data.specs.newInlineEditEnabled;
|
|
604
407
|
}
|
|
605
408
|
break;
|
|
606
409
|
case "update-classes":
|
|
@@ -684,44 +487,8 @@ export function setupVisualEditAgent() {
|
|
|
684
487
|
}
|
|
685
488
|
break;
|
|
686
489
|
case "toggle-inline-edit-mode":
|
|
687
|
-
if (
|
|
688
|
-
|
|
689
|
-
if (!message.data || !message.data.dataSourceLocation)
|
|
690
|
-
break;
|
|
691
|
-
{
|
|
692
|
-
const elements = findElementsById(message.data.dataSourceLocation);
|
|
693
|
-
if (elements.length === 0 || !(elements[0] instanceof HTMLElement))
|
|
694
|
-
break;
|
|
695
|
-
const element = elements[0];
|
|
696
|
-
if (message.data.inlineEditingMode) {
|
|
697
|
-
if (shouldEnterInlineEditingMode(element)) {
|
|
698
|
-
// Select the element first if not already selected
|
|
699
|
-
if (selectedElementId !== message.data.dataSourceLocation) {
|
|
700
|
-
if (currentEditingElement) {
|
|
701
|
-
handleClearInlineEditingMode();
|
|
702
|
-
}
|
|
703
|
-
clearSelection();
|
|
704
|
-
elements.forEach((el) => {
|
|
705
|
-
if (el instanceof HTMLElement) {
|
|
706
|
-
el.dataset.selected = "true";
|
|
707
|
-
}
|
|
708
|
-
});
|
|
709
|
-
elements.forEach((el) => {
|
|
710
|
-
const overlay = createOverlay(true);
|
|
711
|
-
document.body.appendChild(overlay);
|
|
712
|
-
selectedOverlays.push(overlay);
|
|
713
|
-
positionOverlay(overlay, el, true);
|
|
714
|
-
});
|
|
715
|
-
selectedElementId = message.data.dataSourceLocation;
|
|
716
|
-
}
|
|
717
|
-
handleEnterInlineEditingMode(element);
|
|
718
|
-
}
|
|
719
|
-
}
|
|
720
|
-
else {
|
|
721
|
-
if (currentEditingElement === element) {
|
|
722
|
-
handleClearInlineEditingMode();
|
|
723
|
-
}
|
|
724
|
-
}
|
|
490
|
+
if (message.data) {
|
|
491
|
+
inlineEdit.handleToggleMessage(message.data);
|
|
725
492
|
}
|
|
726
493
|
break;
|
|
727
494
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visual-edit-agent.js","sourceRoot":"","sources":["../../src/injections/visual-edit-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"visual-edit-agent.js","sourceRoot":"","sources":["../../src/injections/visual-edit-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/statics/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
function
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
`,document.head.appendChild(t)},M=()=>{let e=document.getElementById("visual-edit-focus-styles");e&&e.remove()},Ie=e=>{let t=document.createRange();t.selectNodeContents(e);let n=window.getSelection();n?.removeAllRanges(),n?.addRange(t)},Te=e=>!(!(e instanceof HTMLElement)||!["div","p","h1","h2","h3","h4","h5","h6","span","li","td","a","button","label"].includes(e.tagName.toLowerCase())||(e.textContent?.trim()||"").length===0||e.querySelector("img, video, canvas, svg")!==null||e.children.length>0||e.dataset.dynamicContent==="true"),z=e=>!(e instanceof HTMLElement)||e.dataset.selected!=="true"?!1:Te(e),be=function(){xe(this)},Ce=e=>{H(),e.dataset.originalTextContent=e.textContent||"",e.dataset.originalCursor=e.style.cursor,e.contentEditable="true";let t=new AbortController;w.set(e,t),e.addEventListener("input",be,{signal:t.signal}),e.style.cursor="text",Ie(e),setTimeout(()=>{e.focus()},0)},De=e=>{let t=w.get(e);t&&(t.abort(),w.delete(e)),e.isConnected&&(M(),e.contentEditable="false",delete e.dataset.originalTextContent,e.dataset.originalCursor!==void 0&&(e.style.cursor=e.dataset.originalCursor,delete e.dataset.originalCursor))},K=()=>{if(d){let e=L(d);a.forEach((t,n)=>{n<e.length&&h(t,e[n])})}},U=e=>{u=e,a.forEach(t=>{t.style.display="none"}),Ce(e),window.parent.postMessage({type:"content-editing-started",visualSelectorId:d},"*")},S=()=>{if(!u)return;E&&(clearTimeout(E),E=null),De(u),a.forEach(t=>{t.style.display=""}),K(),window.parent.postMessage({type:"content-editing-ended",visualSelectorId:d},"*"),u=null},Me=e=>{let t=e.dataset.originalTextContent,n=e.textContent,p=e,l={tagName:e.tagName,classes:p.className?.baseVal||e.className||"",visualSelectorId:d,content:n,dataSourceLocation:e.dataset.sourceLocation,isDynamicContent:e.dataset.dynamicContent==="true",linenumber:e.dataset.linenumber,filename:e.dataset.filename,position:(()=>{let c=e.getBoundingClientRect();return{top:c.top,left:c.left,right:c.right,bottom:c.bottom,width:c.width,height:c.height,centerX:c.left+c.width/2,centerY:c.top+c.height/2}})()};window.parent.postMessage({type:"inline-edit",elementInfo:l,originalContent:t,newContent:n},"*"),e.dataset.originalTextContent=n||""},Se=e=>{E&&clearTimeout(E),E=setTimeout(()=>{Me(e)},C)},xe=e=>{K(),Se(e)},B=()=>{d&&L(d).forEach(t=>{t instanceof HTMLElement&&delete t.dataset.selected}),a.forEach(e=>{e&&e.parentNode&&e.remove()}),a=[],d=null},T=()=>{i.forEach(e=>{e&&e.parentNode&&e.remove()}),i=[],f=[]},j=()=>{a.forEach(e=>{e&&e.parentNode&&e.remove()}),a=[]},Oe=["p","h1","h2","h3","h4","h5","h6","span","a","label"],He=e=>{let t=e,n=e.getBoundingClientRect(),p=e,l=Oe.includes(e.tagName?.toLowerCase());window.parent.postMessage({type:"element-selected",tagName:e.tagName,classes:p.className?.baseVal||e.className||"",visualSelectorId:I(e),content:l?t.innerText:void 0,dataSourceLocation:t.dataset.sourceLocation,isDynamicContent:t.dataset.dynamicContent==="true",linenumber:t.dataset.linenumber,filename:t.dataset.filename,position:{top:n.top,left:n.left,right:n.right,bottom:n.bottom,width:n.width,height:n.height,centerX:n.left+n.width/2,centerY:n.top+n.height/2},attributes:se(e,$),isTextElement:l},"*")},Z=e=>{let t=I(e);return j(),L(t||null).forEach(p=>{let l=y(!0);document.body.appendChild(l),a.push(l),h(l,p,!0)}),d=t||null,T(),He(e),a[0]},Ne=()=>{d=null,window.parent.postMessage({type:"unselect-element"},"*")},J=e=>{if(!o||r||u)return;let t=e.target;if(s){T();return}if(t.tagName.toLowerCase()==="path"){T();return}let n=t.closest("[data-source-location], [data-visual-selector-id]");if(!n){T();return}let p=n,l=p.dataset.sourceLocation||p.dataset.visualSelectorId;if(d===l){T();return}let c=L(l||null);T(),c.forEach(v=>{let b=y(!1);document.body.appendChild(b),i.push(b),h(b,v)}),f=c},Q=()=>{r||T()},ee=e=>{if(!o)return;let t=e.target;if(t.closest(`[${A}]`)||m&&t instanceof HTMLElement&&t.contentEditable==="true")return;if(u){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),S();return}if(s){e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation(),window.parent.postMessage({type:"close-dropdowns"},"*");return}if(t.tagName.toLowerCase()==="path")return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation();let n=t.closest("[data-source-location], [data-visual-selector-id]");if(!n)return;let p=n,l=I(n);if(d===l&&p.dataset.selected==="true"&&m&&z(p)){U(p);return}u&&S(),m&&L(l).forEach(k=>{k instanceof HTMLElement&&(k.dataset.selected="true")});let v=Z(n);te.attachToOverlay(v,n)},Ae=()=>{u&&S(),B()},_e=(e,t)=>{let n=L(e);n.length!==0&&(oe(n,t),setTimeout(()=>{d===e&&a.forEach((p,l)=>{l<n.length&&h(p,n[l])}),f.length>0&&f[0]?.dataset?.visualSelectorId===e&&i.forEach((c,v)=>{v<f.length&&h(c,f[v])})},g))},Pe=(e,t,n)=>{let p=L(e);p.length!==0&&(re(p,t,n),setTimeout(()=>{d===e&&a.forEach((l,c)=>{c<p.length&&h(l,p[c])})},g))},Re=(e,t)=>{let n=L(e);n.length!==0&&(n.forEach(p=>{p.innerText=t}),setTimeout(()=>{d===e&&a.forEach((p,l)=>{l<n.length&&h(p,n[l])})},g))},te=we({createPreviewOverlay:e=>{let t=y(!1);return t.style.zIndex="9998",document.body.appendChild(t),h(t,e),t},getSelectedElementId:()=>d,selectElement:Z,onDeselect:Ne}),ke=e=>{o=e,e?(document.body.style.cursor="crosshair",document.addEventListener("mouseover",J),document.addEventListener("mouseout",Q),document.addEventListener("click",ee,!0)):(u&&S(),B(),te.cleanup(),T(),j(),f=[],document.body.style.cursor="default",document.removeEventListener("mouseover",J),document.removeEventListener("mouseout",Q),document.removeEventListener("click",ee,!0))},ne=()=>{if(d){let e=L(d);if(e.length>0){let n=e[0].getBoundingClientRect(),p=window.innerHeight,l=window.innerWidth,c=n.top<p&&n.bottom>0&&n.left<l&&n.right>0,v={top:n.top,left:n.left,right:n.right,bottom:n.bottom,width:n.width,height:n.height,centerX:n.left+n.width/2,centerY:n.top+n.height/2};window.parent.postMessage({type:"element-position-update",position:v,isInViewport:c,visualSelectorId:d},"*")}}},We=e=>{let t=e.data;switch(t.type){case"toggle-visual-edit-mode":ke(t.data.enabled),t.data.specs?.newInlineEditEnabled!==void 0&&(m=t.data.specs.newInlineEditEnabled);break;case"update-classes":t.data&&t.data.classes!==void 0?_e(t.data.visualSelectorId,t.data.classes):console.warn("[VisualEditAgent] Invalid update-classes message:",t);break;case"update-attribute":t.data&&t.data.visualSelectorId&&t.data.attribute!==void 0&&t.data.value!==void 0?Pe(t.data.visualSelectorId,t.data.attribute,t.data.value):console.warn("[VisualEditAgent] Invalid update-attribute message:",t);break;case"unselect-element":Ae();break;case"refresh-page":window.location.reload();break;case"update-content":t.data&&t.data.content!==void 0?Re(t.data.visualSelectorId,t.data.content):console.warn("[VisualEditAgent] Invalid update-content message:",t);break;case"request-element-position":if(d){let n=L(d);if(n.length>0){let l=n[0].getBoundingClientRect(),c=window.innerHeight,v=window.innerWidth,b=l.top<c&&l.bottom>0&&l.left<v&&l.right>0,k={top:l.top,left:l.left,right:l.right,bottom:l.bottom,width:l.width,height:l.height,centerX:l.left+l.width/2,centerY:l.top+l.height/2};window.parent.postMessage({type:"element-position-update",position:k,isInViewport:b,visualSelectorId:d},"*")}}break;case"popover-drag-state":t.data&&t.data.isDragging!==void 0&&(r=t.data.isDragging,t.data.isDragging&&T());break;case"dropdown-state":t.data&&t.data.isOpen!==void 0&&(s=t.data.isOpen,t.data.isOpen&&T());break;case"toggle-inline-edit-mode":if(!m||!t.data||!t.data.dataSourceLocation)break;{let n=L(t.data.dataSourceLocation);if(n.length===0||!(n[0]instanceof HTMLElement))break;let p=n[0];t.data.inlineEditingMode?z(p)&&(d!==t.data.dataSourceLocation&&(u&&S(),B(),n.forEach(l=>{l instanceof HTMLElement&&(l.dataset.selected="true")}),n.forEach(l=>{let c=y(!0);document.body.appendChild(c),a.push(c),h(c,l,!0)}),d=t.data.dataSourceLocation),U(p)):u===p&&S()}break;default:break}},X=()=>{if(d){let e=L(d);a.forEach((t,n)=>{n<e.length&&h(t,e[n])})}f.length>0&&i.forEach((e,t)=>{t<f.length&&h(e,f[t])})};document.querySelectorAll("[data-linenumber]:not([data-visual-selector-id])").forEach((e,t)=>{let n=e,p=`visual-id-${n.dataset.filename}-${n.dataset.linenumber}-${t}`;n.dataset.visualSelectorId=p});let Ve=new MutationObserver(e=>{e.some(n=>{let p=c=>{if(c.nodeType===Node.ELEMENT_NODE){let v=c;if(v.dataset&&v.dataset.visualSelectorId)return!0;for(let b=0;b<v.children.length;b++)if(p(v.children[b]))return!0}return!1};return n.type==="attributes"&&(n.attributeName==="style"||n.attributeName==="class"||n.attributeName==="width"||n.attributeName==="height")&&p(n.target)})&&setTimeout(X,g)});window.addEventListener("message",We),window.addEventListener("scroll",ne,!0),document.addEventListener("scroll",ne,!0),window.addEventListener("resize",X),window.addEventListener("scroll",X),Ve.observe(document.body,{attributes:!0,childList:!0,subtree:!0,attributeFilter:["style","class","width","height"]}),window.parent.postMessage({type:"visual-edit-agent-ready"},"*")}export{Ue as setupVisualEditAgent};
|
|
1
|
+
function W(e){let n=e;return!!(n.dataset?.sourceLocation||n.dataset?.visualSelectorId)}function b(e){let n=e;return n.dataset?.sourceLocation||n.dataset?.visualSelectorId||null}var V=["src"];function T(e){if(!e)return[];let n=Array.from(document.querySelectorAll(`[data-source-location="${e}"]`));return n.length>0?n:Array.from(document.querySelectorAll(`[data-visual-selector-id="${e}"]`))}function Z(e,n){e.forEach(o=>{o.setAttribute("class",n)})}function J(e,n,o){V.includes(n)&&e.forEach(l=>{l.setAttribute(n,o)})}function Q(e,n){let o={};for(let l of n){let a=e.getAttribute(l);a!==null&&(o[l]=a)}return o}var ee={position:"absolute",backgroundColor:"#ffffff",border:"1px solid #e2e8f0",borderRadius:"6px",boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",fontSize:"12px",minWidth:"120px",maxHeight:"200px",overflowY:"auto",zIndex:"10001",padding:"4px 0",pointerEvents:"auto"},te={padding:"4px 12px",cursor:"pointer",color:"#334155",backgroundColor:"transparent",whiteSpace:"nowrap",lineHeight:"1.5",fontWeight:"400"},P="#526cff",ne="#DBEAFE",oe="600",B="#f1f5f9",re=10,M=" \u25BE",O=" \u25B4",se=12,H="data-layer-dropdown",ie=2,le=2;function X(e,n){for(let o of Object.keys(n))e.style.setProperty(o.replace(/[A-Z]/g,l=>`-${l.toLowerCase()}`),n[o])}function ae(e){return e.tagName}function Y(e,n){let o={element:e,tagName:e.tagName.toLowerCase(),selectorId:b(e)};return n!==void 0&&(o.depth=n),o}function de(e,n,o){let l=[];function a(c,d){if(!(d>n))for(let f=0;f<c.children.length;f++){let y=c.children[f];if(W(y)){let E={element:y,tagName:y.tagName.toLowerCase(),selectorId:b(y)};o!==void 0&&(E.depth=o+d-1),l.push(E),a(y,d+1)}else a(y,d)}}return a(e,1),l}function Me(e){let n=[],o=e.parentElement;for(;o&&o!==document.documentElement&&o!==document.body&&n.length<ie;)W(o)&&n.push(Y(o)),o=o.parentElement;return n.reverse(),n}function xe(e,n){return n.forEach((o,l)=>{e.push({...o,depth:l})}),n.length}function ce(e,n,o){e.push(Y(n,o));let l=de(n,le,o+1);e.push(...l)}function Oe(e){return e.at(-1)?.element??null}function He(e,n){let o=de(e,1);return o.some(l=>l.element===n)||o.push(Y(n)),o}function Ae(e,n,o,l){let a=b(o),c=new Set;for(let d of n)if(d.element===o)ce(e,o,l),a&&c.add(a);else{let f=d.selectorId;if(f!=null){if(f===a||c.has(f))continue;c.add(f)}e.push({...d,depth:l})}}function ue(e){let n=Me(e),o=[],l=xe(o,n),a=Oe(n);if(a){let c=He(a,e);Ae(o,c,e,l)}else ce(o,e,l);return o}var x=null,A=null,N=null,R=null,_=null;function Ne(e,n,{onSelect:o,onHover:l,onHoverEnd:a}){let c=document.createElement("div");c.textContent=ae(e),X(c,te);let d=e.depth??0;return d>0&&(c.style.paddingLeft=`${se+d*re}px`),n&&(c.style.color=P,c.style.backgroundColor=ne,c.style.fontWeight=oe),c.addEventListener("mouseenter",()=>{n||(c.style.backgroundColor=B),l&&l(e)}),c.addEventListener("mouseleave",()=>{n||(c.style.backgroundColor="transparent"),a&&a()}),c.addEventListener("click",f=>{f.stopPropagation(),f.preventDefault(),o(e)}),c}function _e(e,n,o){let l=document.createElement("div");return l.setAttribute(H,"true"),X(l,ee),e.forEach(a=>{let c=a.element===n;l.appendChild(Ne(a,c,o))}),l}function fe(e){let n=e.textContent??"";n.endsWith(M)||n.endsWith(O)||(e.textContent=n+M,e.style.cursor="pointer",e.style.userSelect="none",e.style.whiteSpace="nowrap",e.style.pointerEvents="auto",e.setAttribute(H,"true"))}function Pe(e,n,o,{onSelect:l,onHover:a,onHoverEnd:c}){let d=Array.from(e.children),f=n.findIndex(E=>E.element===o),y=E=>{if(f>=0&&f<d.length){let h=d[f];h.style.color!==P&&(h.style.backgroundColor="transparent")}if(f=E,f>=0&&f<d.length){let h=d[f];h.style.color!==P&&(h.style.backgroundColor=B),h.scrollIntoView({block:"nearest"}),a&&f>=0&&f<n.length&&a(n[f])}};_=E=>{E.key==="ArrowDown"?(E.preventDefault(),E.stopPropagation(),y(f<d.length-1?f+1:0)):E.key==="ArrowUp"?(E.preventDefault(),E.stopPropagation(),y(f>0?f-1:d.length-1)):E.key==="Enter"&&f>=0&&f<n.length&&(E.preventDefault(),E.stopPropagation(),c&&c(),l(n[f]),D())},document.addEventListener("keydown",_,!0)}function Re(e,n){let o=!0;N=l=>{if(o){o=!1;return}let a=l.target;!e.contains(a)&&a!==n&&D()},document.addEventListener("mousedown",N,!0)}function pe(e,n,o,l){D();let a=_e(n,o,{...l,onSelect:d=>{l.onHoverEnd&&l.onHoverEnd(),l.onSelect(d),D()}}),c=e.parentElement;c&&(a.style.top=`${e.offsetTop+e.offsetHeight+2}px`,a.style.left=`${e.offsetLeft}px`,c.appendChild(a),x=a,A=e,e.textContent?.endsWith(M.trim())&&(e.textContent=e.textContent.slice(0,-M.length)+O),R=l.onHoverEnd??null,Pe(a,n,o,l),Re(a,e))}function D(){A?.textContent?.includes(O)&&(A.textContent=A.textContent.replace(O,M)),A=null,R&&(R(),R=null),x&&x.parentNode&&x.remove(),x=null,N&&(document.removeEventListener("mousedown",N,!0),N=null),_&&(document.removeEventListener("keydown",_,!0),_=null)}function me(){return x!==null}function Ee(e){let n=null,o=null,l=null,a=()=>{n&&n.parentNode&&n.remove(),n=null},c=L=>{a(),b(L.element)!==e.getSelectedElementId()&&(n=e.createPreviewOverlay(L.element))},d=L=>{a(),D(),o&&(document.removeEventListener("keydown",o,!0),o=null),l=null;let r=e.selectElement(L.element);E(r,L.element)},f=()=>{o&&(document.removeEventListener("keydown",o,!0),o=null),l&&(d(l),l=null)},y=(L,r,p,I,C)=>{L.stopPropagation(),L.preventDefault(),me()?(D(),f()):(l={element:p,tagName:p.tagName.toLowerCase(),selectorId:C},e.onDeselect(),o=v=>{v.key==="Escape"&&(v.stopPropagation(),D(),f())},document.addEventListener("keydown",o,!0),pe(r,I,p,{onSelect:d,onHover:c,onHoverEnd:a}))},E=(L,r)=>{if(!L)return;let p=L.querySelector("div");if(!p)return;let I=ue(r);if(I.length<=1)return;let C=b(r);fe(p),p.addEventListener("click",v=>{y(v,p,r,I,C)})};return{attachToOverlay:E,cleanup:()=>{a(),D()}}}var G="visual-edit-focus-styles",ke=["div","p","h1","h2","h3","h4","h5","h6","span","li","td","a","button","label"],ge=()=>{if(document.getElementById(G))return;let e=document.createElement("style");e.id=G,e.textContent=`
|
|
2
|
+
[data-selected="true"][contenteditable="true"]:focus {
|
|
3
|
+
outline: none !important;
|
|
4
|
+
}
|
|
5
|
+
`,document.head.appendChild(e)},he=()=>{document.getElementById(G)?.remove()},ve=e=>{let n=document.createRange();n.selectNodeContents(e);let o=window.getSelection();o?.removeAllRanges(),o?.addRange(n)},We=e=>!(!(e instanceof HTMLElement)||!ke.includes(e.tagName.toLowerCase())||!e.textContent?.trim()||e.querySelector("img, video, canvas, svg")||e.children.length>0||e.dataset.dynamicContent==="true"),$=e=>!(e instanceof HTMLElement)||e.dataset.selected!=="true"?!1:We(e);var Ve=500;function F(e){let n=null,o=null,l=!1,a=new WeakMap,c=()=>{let r=e.getSelectedElementId();if(!r)return;let p=e.findElementsById(r);e.getSelectedOverlays().forEach((C,v)=>{v<p.length&&e.positionOverlay(C,p[v])})},d=r=>{let p=r.dataset.originalTextContent,I=r.textContent,C=r,v=r.getBoundingClientRect();window.parent.postMessage({type:"inline-edit",elementInfo:{tagName:r.tagName,classes:C.className?.baseVal||r.className||"",visualSelectorId:e.getSelectedElementId(),content:I,dataSourceLocation:r.dataset.sourceLocation,isDynamicContent:r.dataset.dynamicContent==="true",linenumber:r.dataset.linenumber,filename:r.dataset.filename,position:{top:v.top,left:v.left,right:v.right,bottom:v.bottom,width:v.width,height:v.height,centerX:v.left+v.width/2,centerY:v.top+v.height/2}},originalContent:p,newContent:I},"*"),r.dataset.originalTextContent=I||""},f=r=>{o&&clearTimeout(o),o=setTimeout(()=>d(r),Ve)},y=r=>{c(),f(r)},E=function(){y(this)},h=r=>{ge(),r.dataset.originalTextContent=r.textContent||"",r.dataset.originalCursor=r.style.cursor,r.contentEditable="true";let p=new AbortController;a.set(r,p),r.addEventListener("input",E,{signal:p.signal}),r.style.cursor="text",ve(r),setTimeout(()=>r.focus(),0)},L=r=>{let p=a.get(r);p&&(p.abort(),a.delete(r)),r.isConnected&&(he(),r.contentEditable="false",delete r.dataset.originalTextContent,r.dataset.originalCursor!==void 0&&(r.style.cursor=r.dataset.originalCursor,delete r.dataset.originalCursor))};return{get enabled(){return l},set enabled(r){l=r},isEditing(){return n!==null},getCurrentElement(){return n},canEdit(r){return $(r)},startEditing(r){n=r,e.getSelectedOverlays().forEach(p=>{p.style.display="none"}),h(r),window.parent.postMessage({type:"content-editing-started",visualSelectorId:e.getSelectedElementId()},"*")},stopEditing(){if(!n)return;o&&(clearTimeout(o),o=null),L(n),e.getSelectedOverlays().forEach(p=>{p.style.display=""}),c(),window.parent.postMessage({type:"content-editing-ended",visualSelectorId:e.getSelectedElementId()},"*"),n=null},markElementsSelected(r){r.forEach(p=>{p instanceof HTMLElement&&(p.dataset.selected="true")})},clearSelectedMarks(r){r&&e.findElementsById(r).forEach(p=>{p instanceof HTMLElement&&delete p.dataset.selected})},handleToggleMessage(r){if(!l)return;let p=e.findElementsById(r.dataSourceLocation);if(p.length===0||!(p[0]instanceof HTMLElement))return;let I=p[0];if(r.inlineEditingMode){if(!$(I))return;e.getSelectedElementId()!==r.dataSourceLocation&&(this.stopEditing(),e.clearSelection(),this.markElementsSelected(p),e.createSelectionOverlays(p,r.dataSourceLocation)),this.startEditing(I)}else n===I&&this.stopEditing()},cleanup(){this.stopEditing()}}}function Be(){let e=!1,n=!1,o=!1,l=[],a=[],c=[],d=null,f=50,y=(s=!1)=>{let t=document.createElement("div");return t.style.position="absolute",t.style.pointerEvents="none",t.style.transition="all 0.1s ease-in-out",t.style.zIndex="9999",s?t.style.border="2px solid #2563EB":(t.style.border="2px solid #95a5fc",t.style.backgroundColor="rgba(99, 102, 241, 0.05)"),t},E=(s,t,i=!1)=>{if(!t||!e)return;t.offsetWidth;let u=t.getBoundingClientRect();s.style.top=`${u.top+window.scrollY}px`,s.style.left=`${u.left+window.scrollX}px`,s.style.width=`${u.width}px`,s.style.height=`${u.height}px`;let g=s.querySelector("div");g||(g=document.createElement("div"),g.textContent=t.tagName.toLowerCase(),g.style.position="absolute",g.style.top="-27px",g.style.left="-2px",g.style.padding="2px 8px",g.style.fontSize="11px",g.style.fontWeight=i?"500":"400",g.style.color=i?"#ffffff":"#526cff",g.style.backgroundColor=i?"#526cff":"#DBEAFE",g.style.borderRadius="3px",g.style.minWidth="24px",g.style.textAlign="center",s.appendChild(g))},h=F({findElementsById:T,getSelectedElementId:()=>d,getSelectedOverlays:()=>a,positionOverlay:E,clearSelection:()=>{h.clearSelectedMarks(d),p(),d=null},createSelectionOverlays:(s,t)=>{s.forEach(i=>{let m=y(!0);document.body.appendChild(m),a.push(m),E(m,i,!0)}),d=t}}),L=()=>{h.clearSelectedMarks(d),p(),d=null},r=()=>{l.forEach(s=>{s&&s.parentNode&&s.remove()}),l=[],c=[]},p=()=>{a.forEach(s=>{s&&s.parentNode&&s.remove()}),a=[]},I=["p","h1","h2","h3","h4","h5","h6","span","a","label"],C=s=>{let t=s,i=s.getBoundingClientRect(),m=s,u=I.includes(s.tagName?.toLowerCase());window.parent.postMessage({type:"element-selected",tagName:s.tagName,classes:m.className?.baseVal||s.className||"",visualSelectorId:b(s),content:u?t.innerText:void 0,dataSourceLocation:t.dataset.sourceLocation,isDynamicContent:t.dataset.dynamicContent==="true",linenumber:t.dataset.linenumber,filename:t.dataset.filename,position:{top:i.top,left:i.left,right:i.right,bottom:i.bottom,width:i.width,height:i.height,centerX:i.left+i.width/2,centerY:i.top+i.height/2},attributes:Q(s,V),isTextElement:u},"*")},v=s=>{let t=b(s);return p(),T(t||null).forEach(m=>{let u=y(!0);document.body.appendChild(u),a.push(u),E(u,m,!0)}),d=t||null,r(),C(s),a[0]},ye=()=>{d=null,window.parent.postMessage({type:"unselect-element"},"*")},j=s=>{if(!e||n||h.isEditing())return;let t=s.target;if(o){r();return}if(t.tagName.toLowerCase()==="path"){r();return}let i=t.closest("[data-source-location], [data-visual-selector-id]");if(!i){r();return}let m=i,u=m.dataset.sourceLocation||m.dataset.visualSelectorId;if(d===u){r();return}let g=T(u||null);r(),g.forEach(w=>{let S=y(!1);document.body.appendChild(S),l.push(S),E(S,w)}),c=g},q=()=>{n||r()},z=s=>{if(!e)return;let t=s.target;if(t.closest(`[${H}]`)||h.enabled&&t instanceof HTMLElement&&t.contentEditable==="true")return;if(h.isEditing()){s.preventDefault(),s.stopPropagation(),s.stopImmediatePropagation(),h.stopEditing();return}if(o){s.preventDefault(),s.stopPropagation(),s.stopImmediatePropagation(),window.parent.postMessage({type:"close-dropdowns"},"*");return}if(t.tagName.toLowerCase()==="path")return;s.preventDefault(),s.stopPropagation(),s.stopImmediatePropagation();let i=t.closest("[data-source-location], [data-visual-selector-id]");if(!i)return;let m=i,u=b(i);if(d===u&&m.dataset.selected==="true"&&h.enabled&&h.canEdit(m)){h.startEditing(m);return}h.stopEditing(),h.enabled&&h.markElementsSelected(T(u));let w=v(i);U.attachToOverlay(w,i)},Le=()=>{h.stopEditing(),L()},Ie=(s,t)=>{let i=T(s);i.length!==0&&(Z(i,t),setTimeout(()=>{d===s&&a.forEach((m,u)=>{u<i.length&&E(m,i[u])}),c.length>0&&c[0]?.dataset?.visualSelectorId===s&&l.forEach((g,w)=>{w<c.length&&E(g,c[w])})},f))},we=(s,t,i)=>{let m=T(s);m.length!==0&&(J(m,t,i),setTimeout(()=>{d===s&&a.forEach((u,g)=>{g<m.length&&E(u,m[g])})},f))},be=(s,t)=>{let i=T(s);i.length!==0&&(i.forEach(m=>{m.innerText=t}),setTimeout(()=>{d===s&&a.forEach((m,u)=>{u<i.length&&E(m,i[u])})},f))},U=Ee({createPreviewOverlay:s=>{let t=y(!1);return t.style.zIndex="9998",document.body.appendChild(t),E(t,s),t},getSelectedElementId:()=>d,selectElement:v,onDeselect:ye}),Te=s=>{e=s,s?(document.body.style.cursor="crosshair",document.addEventListener("mouseover",j),document.addEventListener("mouseout",q),document.addEventListener("click",z,!0)):(h.stopEditing(),L(),U.cleanup(),r(),c=[],document.body.style.cursor="default",document.removeEventListener("mouseover",j),document.removeEventListener("mouseout",q),document.removeEventListener("click",z,!0))},K=()=>{if(d){let s=T(d);if(s.length>0){let i=s[0].getBoundingClientRect(),m=window.innerHeight,u=window.innerWidth,g=i.top<m&&i.bottom>0&&i.left<u&&i.right>0,w={top:i.top,left:i.left,right:i.right,bottom:i.bottom,width:i.width,height:i.height,centerX:i.left+i.width/2,centerY:i.top+i.height/2};window.parent.postMessage({type:"element-position-update",position:w,isInViewport:g,visualSelectorId:d},"*")}}},Ce=s=>{let t=s.data;switch(t.type){case"toggle-visual-edit-mode":Te(t.data.enabled),t.data.specs?.newInlineEditEnabled!==void 0&&(h.enabled=t.data.specs.newInlineEditEnabled);break;case"update-classes":t.data&&t.data.classes!==void 0?Ie(t.data.visualSelectorId,t.data.classes):console.warn("[VisualEditAgent] Invalid update-classes message:",t);break;case"update-attribute":t.data&&t.data.visualSelectorId&&t.data.attribute!==void 0&&t.data.value!==void 0?we(t.data.visualSelectorId,t.data.attribute,t.data.value):console.warn("[VisualEditAgent] Invalid update-attribute message:",t);break;case"unselect-element":Le();break;case"refresh-page":window.location.reload();break;case"update-content":t.data&&t.data.content!==void 0?be(t.data.visualSelectorId,t.data.content):console.warn("[VisualEditAgent] Invalid update-content message:",t);break;case"request-element-position":if(d){let i=T(d);if(i.length>0){let u=i[0].getBoundingClientRect(),g=window.innerHeight,w=window.innerWidth,S=u.top<g&&u.bottom>0&&u.left<w&&u.right>0,De={top:u.top,left:u.left,right:u.right,bottom:u.bottom,width:u.width,height:u.height,centerX:u.left+u.width/2,centerY:u.top+u.height/2};window.parent.postMessage({type:"element-position-update",position:De,isInViewport:S,visualSelectorId:d},"*")}}break;case"popover-drag-state":t.data&&t.data.isDragging!==void 0&&(n=t.data.isDragging,t.data.isDragging&&r());break;case"dropdown-state":t.data&&t.data.isOpen!==void 0&&(o=t.data.isOpen,t.data.isOpen&&r());break;case"toggle-inline-edit-mode":t.data&&h.handleToggleMessage(t.data);break;default:break}},k=()=>{if(d){let s=T(d);a.forEach((t,i)=>{i<s.length&&E(t,s[i])})}c.length>0&&l.forEach((s,t)=>{t<c.length&&E(s,c[t])})};document.querySelectorAll("[data-linenumber]:not([data-visual-selector-id])").forEach((s,t)=>{let i=s,m=`visual-id-${i.dataset.filename}-${i.dataset.linenumber}-${t}`;i.dataset.visualSelectorId=m});let Se=new MutationObserver(s=>{s.some(i=>{let m=g=>{if(g.nodeType===Node.ELEMENT_NODE){let w=g;if(w.dataset&&w.dataset.visualSelectorId)return!0;for(let S=0;S<w.children.length;S++)if(m(w.children[S]))return!0}return!1};return i.type==="attributes"&&(i.attributeName==="style"||i.attributeName==="class"||i.attributeName==="width"||i.attributeName==="height")&&m(i.target)})&&setTimeout(k,f)});window.addEventListener("message",Ce),window.addEventListener("scroll",K,!0),document.addEventListener("scroll",K,!0),window.addEventListener("resize",k),window.addEventListener("scroll",k),Se.observe(document.body,{attributes:!0,childList:!0,subtree:!0,attributeFilter:["style","class","width","height"]}),window.parent.postMessage({type:"visual-edit-agent-ready"},"*")}export{Be as setupVisualEditAgent};
|
|
6
6
|
//# sourceMappingURL=index.mjs.map
|