@livetemplate/client 0.8.12 → 0.8.14
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/dom/directives.d.ts +7 -5
- package/dist/dom/directives.d.ts.map +1 -1
- package/dist/dom/directives.js +31 -17
- package/dist/dom/directives.js.map +1 -1
- package/dist/dom/event-delegation.d.ts +5 -3
- package/dist/dom/event-delegation.d.ts.map +1 -1
- package/dist/dom/event-delegation.js +92 -189
- package/dist/dom/event-delegation.js.map +1 -1
- package/dist/dom/link-interceptor.d.ts +1 -1
- package/dist/dom/link-interceptor.js +3 -3
- package/dist/dom/link-interceptor.js.map +1 -1
- package/dist/dom/reactive-attributes.d.ts +15 -20
- package/dist/dom/reactive-attributes.d.ts.map +1 -1
- package/dist/dom/reactive-attributes.js +78 -81
- package/dist/dom/reactive-attributes.js.map +1 -1
- package/dist/livetemplate-client.browser.js +4 -4
- package/dist/livetemplate-client.browser.js.map +4 -4
- package/dist/livetemplate-client.d.ts +0 -2
- package/dist/livetemplate-client.d.ts.map +1 -1
- package/dist/livetemplate-client.js +3 -12
- package/dist/livetemplate-client.js.map +1 -1
- package/dist/state/change-auto-wirer.js +2 -2
- package/dist/state/change-auto-wirer.js.map +1 -1
- package/dist/state/form-lifecycle-manager.d.ts +1 -3
- package/dist/state/form-lifecycle-manager.d.ts.map +1 -1
- package/dist/state/form-lifecycle-manager.js +6 -6
- package/dist/state/form-lifecycle-manager.js.map +1 -1
- package/dist/tests/change-auto-wirer.test.js +4 -4
- package/dist/tests/change-auto-wirer.test.js.map +1 -1
- package/dist/tests/directives.test.js +33 -33
- package/dist/tests/directives.test.js.map +1 -1
- package/dist/tests/event-delegation.test.js +66 -9
- package/dist/tests/event-delegation.test.js.map +1 -1
- package/dist/tests/form-lifecycle-manager.test.js +27 -28
- package/dist/tests/form-lifecycle-manager.test.js.map +1 -1
- package/dist/tests/reactive-attributes.test.js +60 -84
- package/dist/tests/reactive-attributes.test.js.map +1 -1
- package/dist/utils/lvt-selector.d.ts +3 -0
- package/dist/utils/lvt-selector.d.ts.map +1 -0
- package/dist/utils/lvt-selector.js +13 -0
- package/dist/utils/lvt-selector.js.map +1 -0
- package/package.json +1 -1
- package/dist/dom/modal-manager.d.ts +0 -11
- package/dist/dom/modal-manager.d.ts.map +0 -1
- package/dist/dom/modal-manager.js +0 -62
- package/dist/dom/modal-manager.js.map +0 -1
- package/dist/tests/modal-manager.test.d.ts +0 -2
- package/dist/tests/modal-manager.test.d.ts.map +0 -1
- package/dist/tests/modal-manager.test.js +0 -80
- package/dist/tests/modal-manager.test.js.map +0 -1
- package/dist/utils/confirm.d.ts +0 -12
- package/dist/utils/confirm.d.ts.map +0 -1
- package/dist/utils/confirm.js +0 -35
- package/dist/utils/confirm.js.map +0 -1
|
@@ -9,9 +9,9 @@ describe("Reactive Attributes", () => {
|
|
|
9
9
|
document.body.innerHTML = "";
|
|
10
10
|
});
|
|
11
11
|
describe("parseReactiveAttribute", () => {
|
|
12
|
-
describe("valid attribute parsing", () => {
|
|
12
|
+
describe("valid attribute parsing (new lvt-el: pattern)", () => {
|
|
13
13
|
it("parses global lifecycle event", () => {
|
|
14
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-reset
|
|
14
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:reset:on:success", "");
|
|
15
15
|
expect(result).toEqual({
|
|
16
16
|
action: "reset",
|
|
17
17
|
lifecycle: "success",
|
|
@@ -20,7 +20,7 @@ describe("Reactive Attributes", () => {
|
|
|
20
20
|
});
|
|
21
21
|
});
|
|
22
22
|
it("parses action-specific lifecycle event", () => {
|
|
23
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-reset
|
|
23
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:reset:on:create-todo:success", "");
|
|
24
24
|
expect(result).toEqual({
|
|
25
25
|
action: "reset",
|
|
26
26
|
lifecycle: "success",
|
|
@@ -29,7 +29,7 @@ describe("Reactive Attributes", () => {
|
|
|
29
29
|
});
|
|
30
30
|
});
|
|
31
31
|
it("parses parameterized action with value", () => {
|
|
32
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-
|
|
32
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:addclass:on:pending", "loading opacity-50");
|
|
33
33
|
expect(result).toEqual({
|
|
34
34
|
action: "addClass",
|
|
35
35
|
lifecycle: "pending",
|
|
@@ -38,7 +38,7 @@ describe("Reactive Attributes", () => {
|
|
|
38
38
|
});
|
|
39
39
|
});
|
|
40
40
|
it("parses action-specific parameterized action", () => {
|
|
41
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-
|
|
41
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:addclass:on:save:pending", "loading");
|
|
42
42
|
expect(result).toEqual({
|
|
43
43
|
action: "addClass",
|
|
44
44
|
lifecycle: "pending",
|
|
@@ -49,28 +49,26 @@ describe("Reactive Attributes", () => {
|
|
|
49
49
|
it("parses all lifecycle events", () => {
|
|
50
50
|
const lifecycles = ["pending", "success", "error", "done"];
|
|
51
51
|
lifecycles.forEach((lifecycle) => {
|
|
52
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)(`lvt-reset
|
|
52
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)(`lvt-el:reset:on:${lifecycle}`, "");
|
|
53
53
|
expect(result?.lifecycle).toBe(lifecycle);
|
|
54
54
|
});
|
|
55
55
|
});
|
|
56
|
-
it("parses all
|
|
57
|
-
const
|
|
58
|
-
"reset",
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"setAttr",
|
|
65
|
-
"toggleAttr",
|
|
56
|
+
it("parses all method types", () => {
|
|
57
|
+
const methods = [
|
|
58
|
+
["reset", "reset"],
|
|
59
|
+
["addclass", "addClass"],
|
|
60
|
+
["removeclass", "removeClass"],
|
|
61
|
+
["toggleclass", "toggleClass"],
|
|
62
|
+
["setattr", "setAttr"],
|
|
63
|
+
["toggleattr", "toggleAttr"],
|
|
66
64
|
];
|
|
67
|
-
|
|
68
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)(`lvt
|
|
69
|
-
expect(result?.action).toBe(
|
|
65
|
+
methods.forEach(([input, expected]) => {
|
|
66
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)(`lvt-el:${input}:on:success`, "value");
|
|
67
|
+
expect(result?.action).toBe(expected);
|
|
70
68
|
});
|
|
71
69
|
});
|
|
72
70
|
it("handles action names with hyphens", () => {
|
|
73
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-reset
|
|
71
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:reset:on:create-new-todo:success", "");
|
|
74
72
|
expect(result).toEqual({
|
|
75
73
|
action: "reset",
|
|
76
74
|
lifecycle: "success",
|
|
@@ -79,7 +77,7 @@ describe("Reactive Attributes", () => {
|
|
|
79
77
|
});
|
|
80
78
|
});
|
|
81
79
|
it("handles action names with colons", () => {
|
|
82
|
-
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-reset
|
|
80
|
+
const result = (0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:reset:on:todos:create:success", "");
|
|
83
81
|
expect(result).toEqual({
|
|
84
82
|
action: "reset",
|
|
85
83
|
lifecycle: "success",
|
|
@@ -88,19 +86,28 @@ describe("Reactive Attributes", () => {
|
|
|
88
86
|
});
|
|
89
87
|
});
|
|
90
88
|
});
|
|
89
|
+
describe("click-away interaction keyword", () => {
|
|
90
|
+
it("returns null for click-away (handled by click-away delegation)", () => {
|
|
91
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:removeclass:on:click-away", "open")).toBeNull();
|
|
92
|
+
});
|
|
93
|
+
});
|
|
91
94
|
describe("invalid attribute parsing", () => {
|
|
92
95
|
it("returns null for non-reactive attributes", () => {
|
|
93
|
-
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-click", "action")).toBeNull();
|
|
94
|
-
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-submit", "save")).toBeNull();
|
|
96
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-on:click", "action")).toBeNull();
|
|
97
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-on:submit", "save")).toBeNull();
|
|
95
98
|
expect((0, reactive_attributes_1.parseReactiveAttribute)("class", "foo")).toBeNull();
|
|
96
99
|
});
|
|
97
|
-
it("returns null for unknown
|
|
98
|
-
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-foo
|
|
99
|
-
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-hide
|
|
100
|
+
it("returns null for unknown methods", () => {
|
|
101
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:foo:on:success", "")).toBeNull();
|
|
102
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:hide:on:pending", "")).toBeNull();
|
|
100
103
|
});
|
|
101
104
|
it("returns null for unknown lifecycle events", () => {
|
|
102
|
-
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-reset
|
|
103
|
-
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-reset
|
|
105
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:reset:on:loading", "")).toBeNull();
|
|
106
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:reset:on:complete", "")).toBeNull();
|
|
107
|
+
});
|
|
108
|
+
it("returns null for removed actions (disable/enable)", () => {
|
|
109
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:disable:on:pending", "")).toBeNull();
|
|
110
|
+
expect((0, reactive_attributes_1.parseReactiveAttribute)("lvt-el:enable:on:done", "")).toBeNull();
|
|
104
111
|
});
|
|
105
112
|
});
|
|
106
113
|
});
|
|
@@ -119,38 +126,9 @@ describe("Reactive Attributes", () => {
|
|
|
119
126
|
it("does nothing for non-form elements", () => {
|
|
120
127
|
const div = document.createElement("div");
|
|
121
128
|
document.body.appendChild(div);
|
|
122
|
-
// Should not throw
|
|
123
129
|
(0, reactive_attributes_1.executeAction)(div, "reset");
|
|
124
130
|
});
|
|
125
131
|
});
|
|
126
|
-
describe("disable/enable", () => {
|
|
127
|
-
it("disables a button", () => {
|
|
128
|
-
const button = document.createElement("button");
|
|
129
|
-
document.body.appendChild(button);
|
|
130
|
-
(0, reactive_attributes_1.executeAction)(button, "disable");
|
|
131
|
-
expect(button.disabled).toBe(true);
|
|
132
|
-
});
|
|
133
|
-
it("enables a button", () => {
|
|
134
|
-
const button = document.createElement("button");
|
|
135
|
-
button.disabled = true;
|
|
136
|
-
document.body.appendChild(button);
|
|
137
|
-
(0, reactive_attributes_1.executeAction)(button, "enable");
|
|
138
|
-
expect(button.disabled).toBe(false);
|
|
139
|
-
});
|
|
140
|
-
it("disables an input", () => {
|
|
141
|
-
const input = document.createElement("input");
|
|
142
|
-
document.body.appendChild(input);
|
|
143
|
-
(0, reactive_attributes_1.executeAction)(input, "disable");
|
|
144
|
-
expect(input.disabled).toBe(true);
|
|
145
|
-
});
|
|
146
|
-
it("enables an input", () => {
|
|
147
|
-
const input = document.createElement("input");
|
|
148
|
-
input.disabled = true;
|
|
149
|
-
document.body.appendChild(input);
|
|
150
|
-
(0, reactive_attributes_1.executeAction)(input, "enable");
|
|
151
|
-
expect(input.disabled).toBe(false);
|
|
152
|
-
});
|
|
153
|
-
});
|
|
154
132
|
describe("addClass", () => {
|
|
155
133
|
it("adds a single class", () => {
|
|
156
134
|
const div = document.createElement("div");
|
|
@@ -299,7 +277,7 @@ describe("Reactive Attributes", () => {
|
|
|
299
277
|
describe("processReactiveAttributes", () => {
|
|
300
278
|
it("processes global success bindings", () => {
|
|
301
279
|
const form = document.createElement("form");
|
|
302
|
-
form.setAttribute("lvt-reset
|
|
280
|
+
form.setAttribute("lvt-el:reset:on:success", "");
|
|
303
281
|
const input = document.createElement("input");
|
|
304
282
|
input.name = "title";
|
|
305
283
|
input.value = "test";
|
|
@@ -310,7 +288,7 @@ describe("Reactive Attributes", () => {
|
|
|
310
288
|
});
|
|
311
289
|
it("processes action-specific bindings", () => {
|
|
312
290
|
const form = document.createElement("form");
|
|
313
|
-
form.setAttribute("lvt-reset
|
|
291
|
+
form.setAttribute("lvt-el:reset:on:create-todo:success", "");
|
|
314
292
|
const input = document.createElement("input");
|
|
315
293
|
input.name = "title";
|
|
316
294
|
input.value = "test";
|
|
@@ -324,68 +302,66 @@ describe("Reactive Attributes", () => {
|
|
|
324
302
|
expect(input.value).toBe("");
|
|
325
303
|
});
|
|
326
304
|
it("processes multiple bindings on same element", () => {
|
|
327
|
-
const
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
document.body.appendChild(
|
|
305
|
+
const div = document.createElement("div");
|
|
306
|
+
div.setAttribute("lvt-el:addclass:on:pending", "loading");
|
|
307
|
+
div.setAttribute("lvt-el:setattr:on:pending", "aria-busy:true");
|
|
308
|
+
document.body.appendChild(div);
|
|
331
309
|
(0, reactive_attributes_1.processReactiveAttributes)("pending", "save");
|
|
332
|
-
expect(
|
|
333
|
-
expect(
|
|
310
|
+
expect(div.classList.contains("loading")).toBe(true);
|
|
311
|
+
expect(div.getAttribute("aria-busy")).toBe("true");
|
|
334
312
|
});
|
|
335
313
|
it("processes bindings on multiple elements", () => {
|
|
336
314
|
const form = document.createElement("form");
|
|
337
|
-
form.setAttribute("lvt-reset
|
|
315
|
+
form.setAttribute("lvt-el:reset:on:success", "");
|
|
338
316
|
const input = document.createElement("input");
|
|
339
317
|
input.value = "test";
|
|
340
318
|
form.appendChild(input);
|
|
341
|
-
const
|
|
342
|
-
|
|
343
|
-
|
|
319
|
+
const div = document.createElement("div");
|
|
320
|
+
div.setAttribute("lvt-el:removeclass:on:success", "loading");
|
|
321
|
+
div.className = "loading";
|
|
344
322
|
document.body.appendChild(form);
|
|
345
|
-
document.body.appendChild(
|
|
323
|
+
document.body.appendChild(div);
|
|
346
324
|
(0, reactive_attributes_1.processReactiveAttributes)("success", "save");
|
|
347
325
|
expect(input.value).toBe("");
|
|
348
|
-
expect(
|
|
326
|
+
expect(div.classList.contains("loading")).toBe(false);
|
|
349
327
|
});
|
|
350
328
|
it("ignores bindings for different lifecycles", () => {
|
|
351
|
-
const
|
|
352
|
-
|
|
353
|
-
document.body.appendChild(
|
|
329
|
+
const div = document.createElement("div");
|
|
330
|
+
div.setAttribute("lvt-el:addclass:on:pending", "loading");
|
|
331
|
+
document.body.appendChild(div);
|
|
354
332
|
(0, reactive_attributes_1.processReactiveAttributes)("success", "save");
|
|
355
|
-
expect(
|
|
333
|
+
expect(div.classList.contains("loading")).toBe(false);
|
|
356
334
|
});
|
|
357
335
|
});
|
|
358
336
|
describe("setupReactiveAttributeListeners", () => {
|
|
359
337
|
it("sets up listeners for all lifecycle events", () => {
|
|
360
338
|
(0, reactive_attributes_1.setupReactiveAttributeListeners)();
|
|
361
|
-
const
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
document.body.appendChild(
|
|
339
|
+
const div = document.createElement("div");
|
|
340
|
+
div.setAttribute("lvt-el:addclass:on:pending", "loading");
|
|
341
|
+
div.setAttribute("lvt-el:removeclass:on:done", "loading");
|
|
342
|
+
document.body.appendChild(div);
|
|
365
343
|
// Simulate pending event
|
|
366
344
|
document.dispatchEvent(new CustomEvent("lvt:pending", {
|
|
367
345
|
detail: { action: "save" },
|
|
368
346
|
bubbles: true,
|
|
369
347
|
}));
|
|
370
|
-
expect(
|
|
348
|
+
expect(div.classList.contains("loading")).toBe(true);
|
|
371
349
|
// Simulate done event
|
|
372
350
|
document.dispatchEvent(new CustomEvent("lvt:done", {
|
|
373
351
|
detail: { action: "save" },
|
|
374
352
|
bubbles: true,
|
|
375
353
|
}));
|
|
376
|
-
expect(
|
|
354
|
+
expect(div.classList.contains("loading")).toBe(false);
|
|
377
355
|
});
|
|
378
356
|
it("handles events without action name", () => {
|
|
379
357
|
(0, reactive_attributes_1.setupReactiveAttributeListeners)();
|
|
380
358
|
const div = document.createElement("div");
|
|
381
|
-
div.setAttribute("lvt-
|
|
359
|
+
div.setAttribute("lvt-el:addclass:on:success", "success-state");
|
|
382
360
|
document.body.appendChild(div);
|
|
383
|
-
// Event without action in detail
|
|
384
361
|
document.dispatchEvent(new CustomEvent("lvt:success", {
|
|
385
362
|
detail: {},
|
|
386
363
|
bubbles: true,
|
|
387
364
|
}));
|
|
388
|
-
// Global binding should still work
|
|
389
365
|
expect(div.classList.contains("success-state")).toBe(true);
|
|
390
366
|
});
|
|
391
367
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactive-attributes.test.js","sourceRoot":"","sources":["../../tests/reactive-attributes.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reactive-attributes.test.js","sourceRoot":"","sources":["../../tests/reactive-attributes.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lvt-selector.d.ts","sourceRoot":"","sources":["../../utils/lvt-selector.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAMhE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.lvtSelector = lvtSelector;
|
|
4
|
+
/** Escapes colons in attribute names for use in CSS attribute selectors. */
|
|
5
|
+
function lvtSelector(attr, value) {
|
|
6
|
+
const escaped = attr.replace(/:/g, "\\:");
|
|
7
|
+
if (value === undefined)
|
|
8
|
+
return `[${escaped}]`;
|
|
9
|
+
// Escape backslashes and double-quotes in the value to prevent CSS selector injection
|
|
10
|
+
const safeValue = value.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
11
|
+
return `[${escaped}="${safeValue}"]`;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=lvt-selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lvt-selector.js","sourceRoot":"","sources":["../../utils/lvt-selector.ts"],"names":[],"mappings":";;AACA,kCAMC;AAPD,4EAA4E;AAC5E,SAAgB,WAAW,CAAC,IAAY,EAAE,KAAc;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,OAAO,GAAG,CAAC;IAC/C,sFAAsF;IACtF,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpE,OAAO,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC;AACvC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Logger } from "../utils/logger";
|
|
2
|
-
/**
|
|
3
|
-
* Manages client-side modal interactions for LiveTemplate.
|
|
4
|
-
*/
|
|
5
|
-
export declare class ModalManager {
|
|
6
|
-
private readonly logger;
|
|
7
|
-
constructor(logger: Logger);
|
|
8
|
-
open(modalId: string): void;
|
|
9
|
-
close(modalId: string): void;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=modal-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"modal-manager.d.ts","sourceRoot":"","sources":["../../dom/modal-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AACH,qBAAa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAE3C,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAiD3B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;CAc7B"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ModalManager = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Manages client-side modal interactions for LiveTemplate.
|
|
6
|
-
*/
|
|
7
|
-
class ModalManager {
|
|
8
|
-
constructor(logger) {
|
|
9
|
-
this.logger = logger;
|
|
10
|
-
}
|
|
11
|
-
open(modalId) {
|
|
12
|
-
const modal = document.getElementById(modalId);
|
|
13
|
-
if (!modal) {
|
|
14
|
-
this.logger.warn(`Modal with id="${modalId}" not found`);
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
modal.removeAttribute("hidden");
|
|
18
|
-
modal.style.display = "flex";
|
|
19
|
-
modal.setAttribute("aria-hidden", "false");
|
|
20
|
-
modal.dispatchEvent(new CustomEvent("lvt:modal-opened", { bubbles: true }));
|
|
21
|
-
this.logger.info(`Opened modal: ${modalId}`);
|
|
22
|
-
const firstInput = modal.querySelector("input, textarea, select");
|
|
23
|
-
if (firstInput) {
|
|
24
|
-
setTimeout(() => {
|
|
25
|
-
const activeElement = document.activeElement;
|
|
26
|
-
const isVisible = (element) => {
|
|
27
|
-
if (!element) {
|
|
28
|
-
return false;
|
|
29
|
-
}
|
|
30
|
-
if (element === document.body) {
|
|
31
|
-
return true;
|
|
32
|
-
}
|
|
33
|
-
// Use offsetParent and bounding rects to determine visibility without hitting layout too hard.
|
|
34
|
-
if (element.offsetParent !== null) {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
return element.getClientRects().length > 0;
|
|
38
|
-
};
|
|
39
|
-
const shouldMoveFocus = !activeElement ||
|
|
40
|
-
!modal.contains(activeElement) ||
|
|
41
|
-
!isVisible(activeElement);
|
|
42
|
-
if (shouldMoveFocus) {
|
|
43
|
-
firstInput.focus();
|
|
44
|
-
}
|
|
45
|
-
}, 100);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
close(modalId) {
|
|
49
|
-
const modal = document.getElementById(modalId);
|
|
50
|
-
if (!modal) {
|
|
51
|
-
this.logger.warn(`Modal with id="${modalId}" not found`);
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
modal.setAttribute("hidden", "");
|
|
55
|
-
modal.style.display = "none";
|
|
56
|
-
modal.setAttribute("aria-hidden", "true");
|
|
57
|
-
modal.dispatchEvent(new CustomEvent("lvt:modal-closed", { bubbles: true }));
|
|
58
|
-
this.logger.info(`Closed modal: ${modalId}`);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
exports.ModalManager = ModalManager;
|
|
62
|
-
//# sourceMappingURL=modal-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"modal-manager.js","sourceRoot":"","sources":["../../dom/modal-manager.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACH,MAAa,YAAY;IACvB,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C,IAAI,CAAC,OAAe;QAClB,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,OAAO,aAAa,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC7B,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC3C,KAAK,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;QAE7C,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,CACpC,yBAAyB,CACJ,CAAC;QACxB,IAAI,UAAU,EAAE,CAAC;YACf,UAAU,CAAC,GAAG,EAAE;gBACd,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAmC,CAAC;gBACnE,MAAM,SAAS,GAAG,CAAC,OAA2B,EAAW,EAAE;oBACzD,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,KAAK,CAAC;oBACf,CAAC;oBAED,IAAI,OAAO,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;wBAC9B,OAAO,IAAI,CAAC;oBACd,CAAC;oBAED,+FAA+F;oBAC/F,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;wBAClC,OAAO,IAAI,CAAC;oBACd,CAAC;oBAED,OAAO,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC7C,CAAC,CAAC;gBAEF,MAAM,eAAe,GACnB,CAAC,aAAa;oBACd,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC;oBAC9B,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBAE5B,IAAI,eAAe,EAAE,CAAC;oBACpB,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,OAAO,aAAa,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACjC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC7B,KAAK,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC1C,KAAK,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAE5E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;IAC/C,CAAC;CACF;AAlED,oCAkEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"modal-manager.test.d.ts","sourceRoot":"","sources":["../../tests/modal-manager.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const modal_manager_1 = require("../dom/modal-manager");
|
|
4
|
-
const logger_1 = require("../utils/logger");
|
|
5
|
-
describe("ModalManager", () => {
|
|
6
|
-
let consoleLogSpy;
|
|
7
|
-
let consoleWarnSpy;
|
|
8
|
-
beforeEach(() => {
|
|
9
|
-
consoleLogSpy = jest.spyOn(console, "log").mockImplementation(() => { });
|
|
10
|
-
consoleWarnSpy = jest.spyOn(console, "warn").mockImplementation(() => { });
|
|
11
|
-
document.body.innerHTML = "";
|
|
12
|
-
});
|
|
13
|
-
afterEach(() => {
|
|
14
|
-
consoleLogSpy.mockRestore();
|
|
15
|
-
consoleWarnSpy.mockRestore();
|
|
16
|
-
jest.useRealTimers();
|
|
17
|
-
document.body.innerHTML = "";
|
|
18
|
-
});
|
|
19
|
-
it("opens a modal and focuses the first input when no element is active", () => {
|
|
20
|
-
jest.useFakeTimers();
|
|
21
|
-
const modal = document.createElement("div");
|
|
22
|
-
modal.id = "test-modal";
|
|
23
|
-
modal.setAttribute("hidden", "");
|
|
24
|
-
modal.style.display = "none";
|
|
25
|
-
modal.setAttribute("aria-hidden", "true");
|
|
26
|
-
const input = document.createElement("input");
|
|
27
|
-
input.type = "text";
|
|
28
|
-
modal.appendChild(input);
|
|
29
|
-
document.body.appendChild(modal);
|
|
30
|
-
const manager = new modal_manager_1.ModalManager((0, logger_1.createLogger)({ scope: "ModalManagerTest", level: "silent" }));
|
|
31
|
-
const openedListener = jest.fn();
|
|
32
|
-
modal.addEventListener("lvt:modal-opened", openedListener);
|
|
33
|
-
manager.open("test-modal");
|
|
34
|
-
expect(modal.hasAttribute("hidden")).toBe(false);
|
|
35
|
-
expect(modal.style.display).toBe("flex");
|
|
36
|
-
expect(modal.getAttribute("aria-hidden")).toBe("false");
|
|
37
|
-
expect(openedListener).toHaveBeenCalled();
|
|
38
|
-
jest.runAllTimers();
|
|
39
|
-
expect(document.activeElement).toBe(input);
|
|
40
|
-
});
|
|
41
|
-
it("respects the current focus when a visible element inside the modal is already active", () => {
|
|
42
|
-
jest.useFakeTimers();
|
|
43
|
-
const modal = document.createElement("div");
|
|
44
|
-
modal.id = "test-modal-visible";
|
|
45
|
-
modal.setAttribute("hidden", "");
|
|
46
|
-
modal.style.display = "none";
|
|
47
|
-
modal.setAttribute("aria-hidden", "true");
|
|
48
|
-
const firstInput = document.createElement("input");
|
|
49
|
-
firstInput.type = "text";
|
|
50
|
-
const secondInput = document.createElement("input");
|
|
51
|
-
secondInput.type = "text";
|
|
52
|
-
// Emulate layout visibility checks performed in ModalManager.
|
|
53
|
-
Object.defineProperty(secondInput, "offsetParent", {
|
|
54
|
-
get: () => modal,
|
|
55
|
-
});
|
|
56
|
-
secondInput.getClientRects = () => [{ width: 10, height: 10 }];
|
|
57
|
-
modal.appendChild(firstInput);
|
|
58
|
-
modal.appendChild(secondInput);
|
|
59
|
-
document.body.appendChild(modal);
|
|
60
|
-
const manager = new modal_manager_1.ModalManager((0, logger_1.createLogger)({ scope: "ModalManagerTest", level: "silent" }));
|
|
61
|
-
manager.open("test-modal-visible");
|
|
62
|
-
secondInput.focus();
|
|
63
|
-
jest.runAllTimers();
|
|
64
|
-
expect(document.activeElement).toBe(secondInput);
|
|
65
|
-
});
|
|
66
|
-
it("closes a modal and emits the closed event", () => {
|
|
67
|
-
const modal = document.createElement("div");
|
|
68
|
-
modal.id = "test-modal-close";
|
|
69
|
-
document.body.appendChild(modal);
|
|
70
|
-
const manager = new modal_manager_1.ModalManager((0, logger_1.createLogger)({ scope: "ModalManagerTest", level: "silent" }));
|
|
71
|
-
const closedListener = jest.fn();
|
|
72
|
-
modal.addEventListener("lvt:modal-closed", closedListener);
|
|
73
|
-
manager.close("test-modal-close");
|
|
74
|
-
expect(modal.hasAttribute("hidden")).toBe(true);
|
|
75
|
-
expect(modal.style.display).toBe("none");
|
|
76
|
-
expect(modal.getAttribute("aria-hidden")).toBe("true");
|
|
77
|
-
expect(closedListener).toHaveBeenCalled();
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
//# sourceMappingURL=modal-manager.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"modal-manager.test.js","sourceRoot":"","sources":["../../tests/modal-manager.test.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/confirm.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Check if an element has lvt-confirm attribute and prompt user if needed.
|
|
3
|
-
* Returns true if action should proceed, false if cancelled.
|
|
4
|
-
*/
|
|
5
|
-
export declare function checkLvtConfirm(element: HTMLElement): boolean;
|
|
6
|
-
/**
|
|
7
|
-
* Extract lvt-data-* attributes from an element.
|
|
8
|
-
* lvt-data-id="123" becomes { id: "123" }
|
|
9
|
-
* lvt-data-user-name="john" becomes { "user-name": "john" }
|
|
10
|
-
*/
|
|
11
|
-
export declare function extractLvtData(element: HTMLElement): Record<string, string>;
|
|
12
|
-
//# sourceMappingURL=confirm.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"confirm.d.ts","sourceRoot":"","sources":["../../utils/confirm.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAQ7D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa3E"}
|
package/dist/utils/confirm.js
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.checkLvtConfirm = checkLvtConfirm;
|
|
4
|
-
exports.extractLvtData = extractLvtData;
|
|
5
|
-
/**
|
|
6
|
-
* Check if an element has lvt-confirm attribute and prompt user if needed.
|
|
7
|
-
* Returns true if action should proceed, false if cancelled.
|
|
8
|
-
*/
|
|
9
|
-
function checkLvtConfirm(element) {
|
|
10
|
-
if (element.hasAttribute("lvt-confirm")) {
|
|
11
|
-
const confirmMessage = element.getAttribute("lvt-confirm");
|
|
12
|
-
if (confirmMessage && !confirm(confirmMessage)) {
|
|
13
|
-
return false; // User cancelled
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
return true; // Proceed
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Extract lvt-data-* attributes from an element.
|
|
20
|
-
* lvt-data-id="123" becomes { id: "123" }
|
|
21
|
-
* lvt-data-user-name="john" becomes { "user-name": "john" }
|
|
22
|
-
*/
|
|
23
|
-
function extractLvtData(element) {
|
|
24
|
-
const data = {};
|
|
25
|
-
const attributes = element.attributes;
|
|
26
|
-
for (let i = 0; i < attributes.length; i++) {
|
|
27
|
-
const attr = attributes[i];
|
|
28
|
-
if (attr.name.startsWith("lvt-data-")) {
|
|
29
|
-
const key = attr.name.substring(9); // Remove "lvt-data-" prefix
|
|
30
|
-
data[key] = attr.value;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return data;
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=confirm.js.map
|