@livetemplate/client 0.8.8 → 0.8.10

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.
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const focus_manager_1 = require("../dom/focus-manager");
4
+ const constants_1 = require("../constants");
4
5
  const logger_1 = require("../utils/logger");
6
+ function createManager() {
7
+ return new focus_manager_1.FocusManager((0, logger_1.createLogger)({ scope: "FocusManagerTest", level: "silent" }));
8
+ }
5
9
  describe("FocusManager", () => {
6
10
  beforeEach(() => {
7
11
  document.body.innerHTML = "";
@@ -26,6 +30,53 @@ describe("FocusManager", () => {
26
30
  manager.restoreFocusedElement();
27
31
  expect(document.activeElement).toBe(input);
28
32
  });
33
+ it("does not reset cursor when element retained focus", () => {
34
+ const wrapper = document.createElement("div");
35
+ wrapper.setAttribute("data-lvt-id", "focus-wrapper-cursor");
36
+ const input = document.createElement("input");
37
+ input.type = "text";
38
+ wrapper.appendChild(input);
39
+ document.body.appendChild(wrapper);
40
+ const manager = createManager();
41
+ manager.attach(wrapper);
42
+ // Simulate: user focuses input (cursor at 0), then types "hello" (cursor at 5)
43
+ manager.lastFocusedElement = input;
44
+ manager.lastFocusedSelectionStart = 0;
45
+ manager.lastFocusedSelectionEnd = 0;
46
+ input.focus();
47
+ input.value = "hello";
48
+ input.setSelectionRange(5, 5);
49
+ // restoreFocusedElement should NOT clobber the current cursor position
50
+ manager.restoreFocusedElement();
51
+ expect(document.activeElement).toBe(input);
52
+ expect(input.selectionStart).toBe(5);
53
+ expect(input.selectionEnd).toBe(5);
54
+ });
55
+ it("restores cursor when element lost focus (morphdom replacement)", () => {
56
+ const wrapper = document.createElement("div");
57
+ wrapper.setAttribute("data-lvt-id", "focus-wrapper-replace");
58
+ const input1 = document.createElement("input");
59
+ input1.type = "text";
60
+ input1.setAttribute("name", "title");
61
+ wrapper.appendChild(input1);
62
+ document.body.appendChild(wrapper);
63
+ const manager = createManager();
64
+ manager.attach(wrapper);
65
+ manager.lastFocusedElement = input1;
66
+ manager.lastFocusedSelectionStart = 3;
67
+ manager.lastFocusedSelectionEnd = 3;
68
+ // Simulate morphdom replacing the element (new DOM node, focus lost)
69
+ wrapper.removeChild(input1);
70
+ const input2 = document.createElement("input");
71
+ input2.type = "text";
72
+ input2.setAttribute("name", "title");
73
+ input2.value = "hello";
74
+ wrapper.appendChild(input2);
75
+ manager.restoreFocusedElement();
76
+ expect(document.activeElement).toBe(input2);
77
+ expect(input2.selectionStart).toBe(3);
78
+ expect(input2.selectionEnd).toBe(3);
79
+ });
29
80
  it("fails gracefully when the tracked element no longer exists", () => {
30
81
  const wrapper = document.createElement("div");
31
82
  wrapper.setAttribute("data-lvt-id", "focus-wrapper-2");
@@ -41,5 +92,76 @@ describe("FocusManager", () => {
41
92
  expect(() => manager.restoreFocusedElement()).not.toThrow();
42
93
  expect(document.activeElement).not.toBe(input);
43
94
  });
95
+ describe("shouldSkipUpdate", () => {
96
+ let manager;
97
+ beforeEach(() => {
98
+ manager = createManager();
99
+ });
100
+ it("returns true for focused text input", () => {
101
+ const input = document.createElement("input");
102
+ input.type = "text";
103
+ document.body.appendChild(input);
104
+ input.focus();
105
+ expect(manager.shouldSkipUpdate(input)).toBe(true);
106
+ });
107
+ it("returns true for focused textarea", () => {
108
+ const textarea = document.createElement("textarea");
109
+ document.body.appendChild(textarea);
110
+ textarea.focus();
111
+ expect(manager.shouldSkipUpdate(textarea)).toBe(true);
112
+ });
113
+ it("returns true for focused select", () => {
114
+ const select = document.createElement("select");
115
+ document.body.appendChild(select);
116
+ select.focus();
117
+ expect(manager.shouldSkipUpdate(select)).toBe(true);
118
+ });
119
+ it("returns false for non-focused element", () => {
120
+ const input1 = document.createElement("input");
121
+ input1.type = "text";
122
+ const input2 = document.createElement("input");
123
+ input2.type = "text";
124
+ document.body.appendChild(input1);
125
+ document.body.appendChild(input2);
126
+ input1.focus();
127
+ expect(manager.shouldSkipUpdate(input2)).toBe(false);
128
+ });
129
+ it("returns false when no element is focused", () => {
130
+ const input = document.createElement("input");
131
+ input.type = "text";
132
+ document.body.appendChild(input);
133
+ expect(manager.shouldSkipUpdate(input)).toBe(false);
134
+ });
135
+ it("returns false for focused element with data-lvt-force-update", () => {
136
+ const input = document.createElement("input");
137
+ input.type = "text";
138
+ input.setAttribute("data-lvt-force-update", "");
139
+ document.body.appendChild(input);
140
+ input.focus();
141
+ expect(manager.shouldSkipUpdate(input)).toBe(false);
142
+ });
143
+ it("returns false for focused button", () => {
144
+ const button = document.createElement("button");
145
+ document.body.appendChild(button);
146
+ button.focus();
147
+ expect(manager.shouldSkipUpdate(button)).toBe(false);
148
+ });
149
+ it("returns false after element is blurred", () => {
150
+ const input = document.createElement("input");
151
+ input.type = "text";
152
+ document.body.appendChild(input);
153
+ input.focus();
154
+ expect(manager.shouldSkipUpdate(input)).toBe(true);
155
+ input.blur();
156
+ expect(manager.shouldSkipUpdate(input)).toBe(false);
157
+ });
158
+ it.each(constants_1.FOCUSABLE_INPUTS.filter((t) => t !== "textarea").map((type) => [type]))("returns true for focused input[type=%s]", (type) => {
159
+ const input = document.createElement("input");
160
+ input.type = type;
161
+ document.body.appendChild(input);
162
+ input.focus();
163
+ expect(manager.shouldSkipUpdate(input)).toBe(true);
164
+ });
165
+ });
44
166
  });
45
167
  //# sourceMappingURL=focus-manager.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"focus-manager.test.js","sourceRoot":"","sources":["../../tests/focus-manager.test.ts"],"names":[],"mappings":";;AAAA,wDAAoD;AACpD,4CAA+C;AAE/C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,UAAU,CAAC,GAAG,EAAE;QACd,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QAErD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;QACpB,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE3B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnC,MAAM,OAAO,GAAG,IAAI,4BAAY,CAC9B,IAAA,qBAAY,EAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAC7D,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,CAAC,uBAAuB,EAAE,CAAC;QAEjC,OAAe,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAC3C,OAAe,CAAC,cAAc,GAAG,OAAO,CAAC;QACzC,OAAe,CAAC,yBAAyB,GAAG,CAAC,CAAC;QAC9C,OAAe,CAAC,uBAAuB,GAAG,CAAC,CAAC;QAE7C,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAEhC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;QAEvD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnC,MAAM,OAAO,GAAG,IAAI,4BAAY,CAC9B,IAAA,qBAAY,EAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAC7D,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,CAAC,uBAAuB,EAAE,CAAC;QAEjC,OAAe,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAC3C,OAAe,CAAC,cAAc,GAAG,OAAO,CAAC;QAE1C,KAAK,CAAC,MAAM,EAAE,CAAC;QAEf,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAC5D,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"focus-manager.test.js","sourceRoot":"","sources":["../../tests/focus-manager.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livetemplate/client",
3
- "version": "0.8.8",
3
+ "version": "0.8.10",
4
4
  "description": "TypeScript client for LiveTemplate tree-based updates",
5
5
  "main": "dist/livetemplate-client.js",
6
6
  "browser": "dist/livetemplate-client.browser.js",