@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("handleScrollDirectives", () => {
|
|
|
9
9
|
afterEach(() => {
|
|
10
10
|
jest.restoreAllMocks();
|
|
11
11
|
});
|
|
12
|
-
it("scrolls element to bottom when lvt-scroll='bottom'", () => {
|
|
12
|
+
it("scrolls element to bottom when lvt-fx:scroll='bottom'", () => {
|
|
13
13
|
document.body.innerHTML = `
|
|
14
|
-
<div id="container" lvt-scroll="bottom" style="height: 100px; overflow: auto;">
|
|
14
|
+
<div id="container" lvt-fx:scroll="bottom" style="height: 100px; overflow: auto;">
|
|
15
15
|
<div style="height: 500px;">Content</div>
|
|
16
16
|
</div>
|
|
17
17
|
`;
|
|
@@ -25,8 +25,8 @@ describe("handleScrollDirectives", () => {
|
|
|
25
25
|
behavior: "auto",
|
|
26
26
|
});
|
|
27
27
|
});
|
|
28
|
-
it("scrolls to top when lvt-scroll='top'", () => {
|
|
29
|
-
document.body.innerHTML = `<div id="container" lvt-scroll="top"></div>`;
|
|
28
|
+
it("scrolls to top when lvt-fx:scroll='top'", () => {
|
|
29
|
+
document.body.innerHTML = `<div id="container" lvt-fx:scroll="top"></div>`;
|
|
30
30
|
const container = document.getElementById("container");
|
|
31
31
|
const scrollToSpy = jest.fn();
|
|
32
32
|
container.scrollTo = scrollToSpy;
|
|
@@ -36,8 +36,8 @@ describe("handleScrollDirectives", () => {
|
|
|
36
36
|
behavior: "auto",
|
|
37
37
|
});
|
|
38
38
|
});
|
|
39
|
-
it("respects lvt-scroll-behavior
|
|
40
|
-
document.body.innerHTML = `<div id="container" lvt-scroll="top" lvt-scroll-behavior
|
|
39
|
+
it("respects --lvt-scroll-behavior custom property", () => {
|
|
40
|
+
document.body.innerHTML = `<div id="container" lvt-fx:scroll="top" style="--lvt-scroll-behavior: smooth;"></div>`;
|
|
41
41
|
const container = document.getElementById("container");
|
|
42
42
|
const scrollToSpy = jest.fn();
|
|
43
43
|
container.scrollTo = scrollToSpy;
|
|
@@ -48,7 +48,7 @@ describe("handleScrollDirectives", () => {
|
|
|
48
48
|
});
|
|
49
49
|
});
|
|
50
50
|
it("sticky bottom only scrolls when near bottom", () => {
|
|
51
|
-
document.body.innerHTML = `<div id="container" lvt-scroll="bottom-sticky" lvt-scroll-threshold
|
|
51
|
+
document.body.innerHTML = `<div id="container" lvt-fx:scroll="bottom-sticky" style="--lvt-scroll-threshold: 50;"></div>`;
|
|
52
52
|
const container = document.getElementById("container");
|
|
53
53
|
Object.defineProperty(container, "scrollHeight", { value: 500, configurable: true });
|
|
54
54
|
Object.defineProperty(container, "scrollTop", { value: 400, configurable: true });
|
|
@@ -60,7 +60,7 @@ describe("handleScrollDirectives", () => {
|
|
|
60
60
|
expect(scrollToSpy).toHaveBeenCalled();
|
|
61
61
|
});
|
|
62
62
|
it("sticky bottom does not scroll when far from bottom", () => {
|
|
63
|
-
document.body.innerHTML = `<div id="container" lvt-scroll="bottom-sticky" lvt-scroll-threshold
|
|
63
|
+
document.body.innerHTML = `<div id="container" lvt-fx:scroll="bottom-sticky" style="--lvt-scroll-threshold: 50;"></div>`;
|
|
64
64
|
const container = document.getElementById("container");
|
|
65
65
|
Object.defineProperty(container, "scrollHeight", { value: 500, configurable: true });
|
|
66
66
|
Object.defineProperty(container, "scrollTop", { value: 0, configurable: true });
|
|
@@ -71,8 +71,8 @@ describe("handleScrollDirectives", () => {
|
|
|
71
71
|
// scrollHeight (500) - scrollTop (0) - clientHeight (100) = 400, which is > threshold (50)
|
|
72
72
|
expect(scrollToSpy).not.toHaveBeenCalled();
|
|
73
73
|
});
|
|
74
|
-
it("does nothing for lvt-scroll='preserve'", () => {
|
|
75
|
-
document.body.innerHTML = `<div id="container" lvt-scroll="preserve"></div>`;
|
|
74
|
+
it("does nothing for lvt-fx:scroll='preserve'", () => {
|
|
75
|
+
document.body.innerHTML = `<div id="container" lvt-fx:scroll="preserve"></div>`;
|
|
76
76
|
const container = document.getElementById("container");
|
|
77
77
|
const scrollToSpy = jest.fn();
|
|
78
78
|
container.scrollTo = scrollToSpy;
|
|
@@ -80,12 +80,12 @@ describe("handleScrollDirectives", () => {
|
|
|
80
80
|
expect(scrollToSpy).not.toHaveBeenCalled();
|
|
81
81
|
});
|
|
82
82
|
it("warns on unknown scroll mode", () => {
|
|
83
|
-
document.body.innerHTML = `<div id="container" lvt-scroll="unknown-mode"></div>`;
|
|
83
|
+
document.body.innerHTML = `<div id="container" lvt-fx:scroll="unknown-mode"></div>`;
|
|
84
84
|
(0, directives_1.handleScrollDirectives)(document.body);
|
|
85
|
-
expect(console.warn).toHaveBeenCalledWith("Unknown lvt-scroll mode: unknown-mode");
|
|
85
|
+
expect(console.warn).toHaveBeenCalledWith("Unknown lvt-fx:scroll mode: unknown-mode");
|
|
86
86
|
});
|
|
87
|
-
it("handles empty lvt-scroll attribute", () => {
|
|
88
|
-
document.body.innerHTML = `<div id="container" lvt-scroll=""></div>`;
|
|
87
|
+
it("handles empty lvt-fx:scroll attribute", () => {
|
|
88
|
+
document.body.innerHTML = `<div id="container" lvt-fx:scroll=""></div>`;
|
|
89
89
|
const container = document.getElementById("container");
|
|
90
90
|
const scrollToSpy = jest.fn();
|
|
91
91
|
container.scrollTo = scrollToSpy;
|
|
@@ -102,26 +102,26 @@ describe("handleHighlightDirectives", () => {
|
|
|
102
102
|
jest.useRealTimers();
|
|
103
103
|
});
|
|
104
104
|
it("applies highlight color temporarily", () => {
|
|
105
|
-
document.body.innerHTML = `<div id="target" lvt-highlight="flash"></div>`;
|
|
105
|
+
document.body.innerHTML = `<div id="target" lvt-fx:highlight="flash"></div>`;
|
|
106
106
|
const target = document.getElementById("target");
|
|
107
107
|
(0, directives_1.handleHighlightDirectives)(document.body);
|
|
108
108
|
expect(target.style.backgroundColor).toBe("rgb(255, 193, 7)"); // #ffc107
|
|
109
109
|
expect(target.style.transition).toContain("background-color");
|
|
110
110
|
});
|
|
111
|
-
it("respects custom lvt-highlight-duration", () => {
|
|
112
|
-
document.body.innerHTML = `<div id="target" lvt-highlight="flash" lvt-highlight-duration
|
|
111
|
+
it("respects custom --lvt-highlight-duration", () => {
|
|
112
|
+
document.body.innerHTML = `<div id="target" lvt-fx:highlight="flash" style="--lvt-highlight-duration: 1000;"></div>`;
|
|
113
113
|
const target = document.getElementById("target");
|
|
114
114
|
(0, directives_1.handleHighlightDirectives)(document.body);
|
|
115
115
|
expect(target.style.transition).toContain("1000ms");
|
|
116
116
|
});
|
|
117
|
-
it("respects custom lvt-highlight-color", () => {
|
|
118
|
-
document.body.innerHTML = `<div id="target" lvt-highlight="flash" lvt-highlight-color
|
|
117
|
+
it("respects custom --lvt-highlight-color", () => {
|
|
118
|
+
document.body.innerHTML = `<div id="target" lvt-fx:highlight="flash" style="--lvt-highlight-color: #ff0000;"></div>`;
|
|
119
119
|
const target = document.getElementById("target");
|
|
120
120
|
(0, directives_1.handleHighlightDirectives)(document.body);
|
|
121
121
|
expect(target.style.backgroundColor).toBe("rgb(255, 0, 0)");
|
|
122
122
|
});
|
|
123
123
|
it("restores original background after highlight", () => {
|
|
124
|
-
document.body.innerHTML = `<div id="target" lvt-highlight="flash"
|
|
124
|
+
document.body.innerHTML = `<div id="target" lvt-fx:highlight="flash" style="background-color: blue;"></div>`;
|
|
125
125
|
const target = document.getElementById("target");
|
|
126
126
|
const originalBg = target.style.backgroundColor;
|
|
127
127
|
(0, directives_1.handleHighlightDirectives)(document.body);
|
|
@@ -131,8 +131,8 @@ describe("handleHighlightDirectives", () => {
|
|
|
131
131
|
// After duration, transition should be restored
|
|
132
132
|
jest.advanceTimersByTime(500);
|
|
133
133
|
});
|
|
134
|
-
it("handles empty lvt-highlight attribute", () => {
|
|
135
|
-
document.body.innerHTML = `<div id="target" lvt-highlight=""></div>`;
|
|
134
|
+
it("handles empty lvt-fx:highlight attribute", () => {
|
|
135
|
+
document.body.innerHTML = `<div id="target" lvt-fx:highlight=""></div>`;
|
|
136
136
|
const target = document.getElementById("target");
|
|
137
137
|
const originalBg = target.style.backgroundColor;
|
|
138
138
|
(0, directives_1.handleHighlightDirectives)(document.body);
|
|
@@ -152,31 +152,31 @@ describe("handleAnimateDirectives", () => {
|
|
|
152
152
|
jest.restoreAllMocks();
|
|
153
153
|
});
|
|
154
154
|
it("applies fade animation", () => {
|
|
155
|
-
document.body.innerHTML = `<div id="target" lvt-animate="fade"></div>`;
|
|
155
|
+
document.body.innerHTML = `<div id="target" lvt-fx:animate="fade"></div>`;
|
|
156
156
|
const target = document.getElementById("target");
|
|
157
157
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
158
158
|
expect(target.style.animation).toContain("lvt-fade-in");
|
|
159
159
|
});
|
|
160
160
|
it("applies slide animation", () => {
|
|
161
|
-
document.body.innerHTML = `<div id="target" lvt-animate="slide"></div>`;
|
|
161
|
+
document.body.innerHTML = `<div id="target" lvt-fx:animate="slide"></div>`;
|
|
162
162
|
const target = document.getElementById("target");
|
|
163
163
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
164
164
|
expect(target.style.animation).toContain("lvt-slide-in");
|
|
165
165
|
});
|
|
166
166
|
it("applies scale animation", () => {
|
|
167
|
-
document.body.innerHTML = `<div id="target" lvt-animate="scale"></div>`;
|
|
167
|
+
document.body.innerHTML = `<div id="target" lvt-fx:animate="scale"></div>`;
|
|
168
168
|
const target = document.getElementById("target");
|
|
169
169
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
170
170
|
expect(target.style.animation).toContain("lvt-scale-in");
|
|
171
171
|
});
|
|
172
|
-
it("respects custom animation duration", () => {
|
|
173
|
-
document.body.innerHTML = `<div id="target" lvt-animate="fade" lvt-animate-duration
|
|
172
|
+
it("respects custom animation duration via CSS custom property", () => {
|
|
173
|
+
document.body.innerHTML = `<div id="target" lvt-fx:animate="fade" style="--lvt-animate-duration: 1000;"></div>`;
|
|
174
174
|
const target = document.getElementById("target");
|
|
175
175
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
176
176
|
expect(target.style.getPropertyValue("--lvt-animate-duration")).toBe("1000ms");
|
|
177
177
|
});
|
|
178
178
|
it("clears animation on animationend", () => {
|
|
179
|
-
document.body.innerHTML = `<div id="target" lvt-animate="fade"></div>`;
|
|
179
|
+
document.body.innerHTML = `<div id="target" lvt-fx:animate="fade"></div>`;
|
|
180
180
|
const target = document.getElementById("target");
|
|
181
181
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
182
182
|
expect(target.style.animation).toContain("lvt-fade-in");
|
|
@@ -185,8 +185,8 @@ describe("handleAnimateDirectives", () => {
|
|
|
185
185
|
});
|
|
186
186
|
it("injects CSS keyframes only once", () => {
|
|
187
187
|
document.body.innerHTML = `
|
|
188
|
-
<div lvt-animate="fade"></div>
|
|
189
|
-
<div lvt-animate="slide"></div>
|
|
188
|
+
<div lvt-fx:animate="fade"></div>
|
|
189
|
+
<div lvt-fx:animate="slide"></div>
|
|
190
190
|
`;
|
|
191
191
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
192
192
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
@@ -194,12 +194,12 @@ describe("handleAnimateDirectives", () => {
|
|
|
194
194
|
expect(styleElements.length).toBe(1);
|
|
195
195
|
});
|
|
196
196
|
it("warns on unknown animation mode", () => {
|
|
197
|
-
document.body.innerHTML = `<div id="target" lvt-animate="unknown"></div>`;
|
|
197
|
+
document.body.innerHTML = `<div id="target" lvt-fx:animate="unknown"></div>`;
|
|
198
198
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
199
|
-
expect(console.warn).toHaveBeenCalledWith("Unknown lvt-animate mode: unknown");
|
|
199
|
+
expect(console.warn).toHaveBeenCalledWith("Unknown lvt-fx:animate mode: unknown");
|
|
200
200
|
});
|
|
201
201
|
it("handles empty lvt-animate attribute", () => {
|
|
202
|
-
document.body.innerHTML = `<div id="target" lvt-animate=""></div>`;
|
|
202
|
+
document.body.innerHTML = `<div id="target" lvt-fx:animate=""></div>`;
|
|
203
203
|
const target = document.getElementById("target");
|
|
204
204
|
(0, directives_1.handleAnimateDirectives)(document.body);
|
|
205
205
|
expect(target.style.animation).toBe("");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directives.test.js","sourceRoot":"","sources":["../../tests/directives.test.ts"],"names":[],"mappings":";;AAAA,kDAI2B;AAE3B,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,UAAU,CAAC,GAAG,EAAE;QACd,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"directives.test.js","sourceRoot":"","sources":["../../tests/directives.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,8 +21,6 @@ describe("EventDelegator", () => {
|
|
|
21
21
|
parseValue: (value) => value,
|
|
22
22
|
send: jest.fn(),
|
|
23
23
|
setActiveSubmission: jest.fn(),
|
|
24
|
-
openModal: jest.fn(),
|
|
25
|
-
closeModal: jest.fn(),
|
|
26
24
|
getWebSocketReadyState: () => 1,
|
|
27
25
|
triggerPendingUploads: jest.fn(),
|
|
28
26
|
};
|
|
@@ -32,7 +30,7 @@ describe("EventDelegator", () => {
|
|
|
32
30
|
const wrapper = document.createElement("div");
|
|
33
31
|
wrapper.setAttribute("data-lvt-id", "wrapper-1");
|
|
34
32
|
wrapper.innerHTML = `
|
|
35
|
-
<button id="save" lvt-click="save"
|
|
33
|
+
<button id="save" lvt-on:click="save" data-id="42"></button>
|
|
36
34
|
`;
|
|
37
35
|
document.body.appendChild(wrapper);
|
|
38
36
|
const context = createContext(wrapper);
|
|
@@ -51,7 +49,7 @@ describe("EventDelegator", () => {
|
|
|
51
49
|
const wrapper = document.createElement("div");
|
|
52
50
|
wrapper.setAttribute("data-lvt-id", "wrapper-2");
|
|
53
51
|
wrapper.innerHTML = `
|
|
54
|
-
<button id="ping" lvt-click="ping" lvt-throttle="200"></button>
|
|
52
|
+
<button id="ping" lvt-on:click="ping" lvt-mod:throttle="200"></button>
|
|
55
53
|
`;
|
|
56
54
|
document.body.appendChild(wrapper);
|
|
57
55
|
const context = createContext(wrapper);
|
|
@@ -69,7 +67,7 @@ describe("EventDelegator", () => {
|
|
|
69
67
|
const wrapper = document.createElement("div");
|
|
70
68
|
wrapper.setAttribute("data-lvt-id", "wrapper-password");
|
|
71
69
|
wrapper.innerHTML = `
|
|
72
|
-
<form id="login-form" lvt-submit="login">
|
|
70
|
+
<form id="login-form" lvt-on:submit="login">
|
|
73
71
|
<input type="text" name="username" value="testuser" />
|
|
74
72
|
<input type="password" name="password" value="12345" />
|
|
75
73
|
<button type="submit" id="submit">Login</button>
|
|
@@ -109,10 +107,10 @@ describe("EventDelegator", () => {
|
|
|
109
107
|
const wrapper = document.createElement("div");
|
|
110
108
|
wrapper.setAttribute("data-lvt-id", "wrapper-3");
|
|
111
109
|
wrapper.innerHTML = `
|
|
112
|
-
<form id="add-form" lvt-submit="add">
|
|
110
|
+
<form id="add-form" lvt-on:submit="add">
|
|
113
111
|
<input type="text" name="title" value="Hello" />
|
|
114
112
|
<input type="checkbox" name="published" checked />
|
|
115
|
-
<button type="submit" id="submit" lvt-disable-with="Saving...">Save</button>
|
|
113
|
+
<button type="submit" id="submit" lvt-form:disable-with="Saving...">Save</button>
|
|
116
114
|
</form>
|
|
117
115
|
`;
|
|
118
116
|
document.body.appendChild(wrapper);
|
|
@@ -139,6 +137,65 @@ describe("EventDelegator", () => {
|
|
|
139
137
|
}),
|
|
140
138
|
}));
|
|
141
139
|
});
|
|
140
|
+
it("lvt-form:action attribute takes priority over button name", () => {
|
|
141
|
+
const wrapper = document.createElement("div");
|
|
142
|
+
wrapper.setAttribute("data-lvt-id", "wrapper-form-action");
|
|
143
|
+
wrapper.innerHTML = `
|
|
144
|
+
<form id="action-form" lvt-form:action="checkout">
|
|
145
|
+
<input type="text" name="item" value="widget" />
|
|
146
|
+
<button type="submit" id="submit" name="save">Save</button>
|
|
147
|
+
</form>
|
|
148
|
+
`;
|
|
149
|
+
document.body.appendChild(wrapper);
|
|
150
|
+
const form = document.getElementById("action-form");
|
|
151
|
+
const submitButton = document.getElementById("submit");
|
|
152
|
+
const context = createContext(wrapper);
|
|
153
|
+
const delegator = new event_delegation_1.EventDelegator(context, (0, logger_1.createLogger)({ scope: "EventDelegatorTest", level: "silent" }));
|
|
154
|
+
delegator.setupEventDelegation();
|
|
155
|
+
const submitEvent = new Event("submit", {
|
|
156
|
+
bubbles: true,
|
|
157
|
+
cancelable: true,
|
|
158
|
+
});
|
|
159
|
+
submitEvent.submitter = submitButton;
|
|
160
|
+
form.dispatchEvent(submitEvent);
|
|
161
|
+
expect(context.send).toHaveBeenCalledTimes(1);
|
|
162
|
+
// lvt-form:action="checkout" takes priority over button name="save"
|
|
163
|
+
expect(context.send).toHaveBeenCalledWith(expect.objectContaining({
|
|
164
|
+
action: "checkout",
|
|
165
|
+
data: expect.objectContaining({ item: "widget" }),
|
|
166
|
+
}));
|
|
167
|
+
});
|
|
168
|
+
it("action field in form data is preserved as normal data", () => {
|
|
169
|
+
const wrapper = document.createElement("div");
|
|
170
|
+
wrapper.setAttribute("data-lvt-id", "wrapper-action-data");
|
|
171
|
+
wrapper.innerHTML = `
|
|
172
|
+
<form id="workflow-form" lvt-form:action="processStep">
|
|
173
|
+
<input type="hidden" name="action" value="approve" />
|
|
174
|
+
<input type="text" name="reason" value="looks good" />
|
|
175
|
+
<button type="submit" id="submit">Submit</button>
|
|
176
|
+
</form>
|
|
177
|
+
`;
|
|
178
|
+
document.body.appendChild(wrapper);
|
|
179
|
+
const form = document.getElementById("workflow-form");
|
|
180
|
+
const submitButton = document.getElementById("submit");
|
|
181
|
+
const context = createContext(wrapper);
|
|
182
|
+
const delegator = new event_delegation_1.EventDelegator(context, (0, logger_1.createLogger)({ scope: "EventDelegatorTest", level: "silent" }));
|
|
183
|
+
delegator.setupEventDelegation();
|
|
184
|
+
const submitEvent = new Event("submit", {
|
|
185
|
+
bubbles: true,
|
|
186
|
+
cancelable: true,
|
|
187
|
+
});
|
|
188
|
+
submitEvent.submitter = submitButton;
|
|
189
|
+
form.dispatchEvent(submitEvent);
|
|
190
|
+
expect(context.send).toHaveBeenCalledTimes(1);
|
|
191
|
+
expect(context.send).toHaveBeenCalledWith(expect.objectContaining({
|
|
192
|
+
action: "processStep",
|
|
193
|
+
data: expect.objectContaining({
|
|
194
|
+
action: "approve", // "action" is NOT reserved — it flows through as data
|
|
195
|
+
reason: "looks good",
|
|
196
|
+
}),
|
|
197
|
+
}));
|
|
198
|
+
});
|
|
142
199
|
describe("focus trap", () => {
|
|
143
200
|
it("sets up keydown listener for focus trap", () => {
|
|
144
201
|
const wrapper = document.createElement("div");
|
|
@@ -424,10 +481,10 @@ describe("EventDelegator", () => {
|
|
|
424
481
|
data: {},
|
|
425
482
|
});
|
|
426
483
|
});
|
|
427
|
-
it("lvt-click takes priority over orphan button name", () => {
|
|
484
|
+
it("lvt-on:click takes priority over orphan button name", () => {
|
|
428
485
|
const wrapper = document.createElement("div");
|
|
429
486
|
wrapper.setAttribute("data-lvt-id", "wrapper-orphan-10");
|
|
430
|
-
wrapper.innerHTML = `<button id="btn" lvt-click="tier2action" name="tier1action">Button</button>`;
|
|
487
|
+
wrapper.innerHTML = `<button id="btn" lvt-on:click="tier2action" name="tier1action">Button</button>`;
|
|
431
488
|
document.body.appendChild(wrapper);
|
|
432
489
|
const context = createContext(wrapper);
|
|
433
490
|
const delegator = new event_delegation_1.EventDelegator(context, (0, logger_1.createLogger)({ scope: "EventDelegatorTest", level: "silent" }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-delegation.test.js","sourceRoot":"","sources":["../../tests/event-delegation.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-delegation.test.js","sourceRoot":"","sources":["../../tests/event-delegation.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,37 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const form_lifecycle_manager_1 = require("../state/form-lifecycle-manager");
|
|
4
|
-
const modal_manager_1 = require("../dom/modal-manager");
|
|
5
|
-
const logger_1 = require("../utils/logger");
|
|
6
4
|
describe("FormLifecycleManager", () => {
|
|
7
|
-
let modalCloseSpy;
|
|
8
|
-
let modalManager;
|
|
9
5
|
beforeEach(() => {
|
|
10
|
-
modalManager = new modal_manager_1.ModalManager((0, logger_1.createLogger)({ scope: "ModalManagerTest", level: "silent" }));
|
|
11
|
-
modalCloseSpy = jest
|
|
12
|
-
.spyOn(modalManager, "close")
|
|
13
|
-
.mockImplementation(() => { });
|
|
14
6
|
document.body.innerHTML = "";
|
|
15
7
|
});
|
|
16
8
|
afterEach(() => {
|
|
17
|
-
modalCloseSpy.mockRestore();
|
|
18
9
|
document.body.innerHTML = "";
|
|
19
10
|
});
|
|
20
11
|
const createForm = () => {
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
12
|
+
const dialog = document.createElement("dialog");
|
|
13
|
+
dialog.id = "dialog-1";
|
|
14
|
+
// JSDOM doesn't implement dialog.showModal() — polyfill
|
|
15
|
+
if (!dialog.showModal) {
|
|
16
|
+
dialog.showModal = function () { this.setAttribute("open", ""); };
|
|
17
|
+
}
|
|
18
|
+
if (!dialog.close) {
|
|
19
|
+
dialog.close = function () { this.removeAttribute("open"); };
|
|
20
|
+
}
|
|
24
21
|
const form = document.createElement("form");
|
|
25
|
-
|
|
22
|
+
dialog.appendChild(form);
|
|
26
23
|
const button = document.createElement("button");
|
|
27
24
|
button.textContent = "Submit";
|
|
28
25
|
form.appendChild(button);
|
|
29
|
-
document.body.appendChild(
|
|
30
|
-
|
|
26
|
+
document.body.appendChild(dialog);
|
|
27
|
+
dialog.showModal();
|
|
28
|
+
return { form, button, dialog };
|
|
31
29
|
};
|
|
32
|
-
it("dispatches success events, resets the form, and closes the
|
|
33
|
-
const { form, button,
|
|
34
|
-
const manager = new form_lifecycle_manager_1.FormLifecycleManager(
|
|
30
|
+
it("dispatches success events, resets the form, and closes the dialog on success", () => {
|
|
31
|
+
const { form, button, dialog } = createForm();
|
|
32
|
+
const manager = new form_lifecycle_manager_1.FormLifecycleManager();
|
|
35
33
|
const doneListener = jest.fn();
|
|
36
34
|
const successListener = jest.fn();
|
|
37
35
|
form.addEventListener("lvt:done", doneListener);
|
|
@@ -41,26 +39,26 @@ describe("FormLifecycleManager", () => {
|
|
|
41
39
|
manager.handleResponse(metadata);
|
|
42
40
|
expect(doneListener).toHaveBeenCalledWith(expect.any(CustomEvent));
|
|
43
41
|
expect(successListener).toHaveBeenCalledWith(expect.any(CustomEvent));
|
|
44
|
-
expect(
|
|
42
|
+
expect(dialog.open).toBe(false);
|
|
45
43
|
expect(form.elements.length).toBeGreaterThan(0);
|
|
46
44
|
expect(button.disabled).toBe(false);
|
|
47
45
|
expect(button.textContent).toBe("Submit");
|
|
48
46
|
});
|
|
49
|
-
it("respects lvt-preserve and keeps the fields intact", () => {
|
|
47
|
+
it("respects lvt-form:preserve and keeps the fields intact", () => {
|
|
50
48
|
const { form, button } = createForm();
|
|
51
|
-
form.setAttribute("lvt-preserve", "");
|
|
49
|
+
form.setAttribute("lvt-form:preserve", "");
|
|
52
50
|
const input = document.createElement("input");
|
|
53
51
|
input.value = "Keep me";
|
|
54
52
|
form.appendChild(input);
|
|
55
|
-
const manager = new form_lifecycle_manager_1.FormLifecycleManager(
|
|
53
|
+
const manager = new form_lifecycle_manager_1.FormLifecycleManager();
|
|
56
54
|
manager.setActiveSubmission(form, button, "Submit");
|
|
57
55
|
const metadata = { success: true, errors: {} };
|
|
58
56
|
manager.handleResponse(metadata);
|
|
59
57
|
expect(input.value).toBe("Keep me");
|
|
60
58
|
});
|
|
61
59
|
it("dispatches error events and keeps the form when the response fails", () => {
|
|
62
|
-
const { form, button } = createForm();
|
|
63
|
-
const manager = new form_lifecycle_manager_1.FormLifecycleManager(
|
|
60
|
+
const { form, button, dialog } = createForm();
|
|
61
|
+
const manager = new form_lifecycle_manager_1.FormLifecycleManager();
|
|
64
62
|
const doneListener = jest.fn();
|
|
65
63
|
const errorListener = jest.fn();
|
|
66
64
|
form.addEventListener("lvt:done", doneListener);
|
|
@@ -73,18 +71,19 @@ describe("FormLifecycleManager", () => {
|
|
|
73
71
|
manager.handleResponse(metadata);
|
|
74
72
|
expect(doneListener).toHaveBeenCalledWith(expect.any(CustomEvent));
|
|
75
73
|
expect(errorListener).toHaveBeenCalledWith(expect.any(CustomEvent));
|
|
76
|
-
expect(
|
|
74
|
+
expect(dialog.open).toBe(true);
|
|
77
75
|
expect(button.disabled).toBe(false);
|
|
78
76
|
expect(button.textContent).toBe("Submit");
|
|
79
77
|
});
|
|
80
78
|
it("reset simply clears active submission state", () => {
|
|
81
|
-
const { form, button } = createForm();
|
|
82
|
-
const manager = new form_lifecycle_manager_1.FormLifecycleManager(
|
|
79
|
+
const { form, button, dialog } = createForm();
|
|
80
|
+
const manager = new form_lifecycle_manager_1.FormLifecycleManager();
|
|
83
81
|
manager.setActiveSubmission(form, button, "Submit");
|
|
84
82
|
manager.reset();
|
|
85
83
|
const metadata = { success: true, errors: {} };
|
|
86
84
|
manager.handleResponse(metadata);
|
|
87
|
-
|
|
85
|
+
// Dialog should still be open since reset was called before handleResponse
|
|
86
|
+
expect(dialog.open).toBe(true);
|
|
88
87
|
});
|
|
89
88
|
});
|
|
90
89
|
//# sourceMappingURL=form-lifecycle-manager.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-lifecycle-manager.test.js","sourceRoot":"","sources":["../../tests/form-lifecycle-manager.test.ts"],"names":[],"mappings":";;AAAA,4EAAuE;
|
|
1
|
+
{"version":3,"file":"form-lifecycle-manager.test.js","sourceRoot":"","sources":["../../tests/form-lifecycle-manager.test.ts"],"names":[],"mappings":"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"}
|