haori 0.2.0 → 0.4.0

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.
Files changed (55) hide show
  1. package/README.ja.md +3 -1
  2. package/README.md +3 -1
  3. package/dist/haori.cjs.js +11 -11
  4. package/dist/haori.cjs.js.map +1 -1
  5. package/dist/haori.es.js +1134 -898
  6. package/dist/haori.es.js.map +1 -1
  7. package/dist/haori.iife.js +11 -11
  8. package/dist/haori.iife.js.map +1 -1
  9. package/dist/index.d.ts +38 -6
  10. package/dist/package.json +1 -1
  11. package/dist/src/core.d.ts.map +1 -1
  12. package/dist/src/core.js +1 -1
  13. package/dist/src/core.js.map +1 -1
  14. package/dist/src/env.d.ts +18 -0
  15. package/dist/src/env.d.ts.map +1 -1
  16. package/dist/src/env.js +44 -0
  17. package/dist/src/env.js.map +1 -1
  18. package/dist/src/event.d.ts +16 -1
  19. package/dist/src/event.d.ts.map +1 -1
  20. package/dist/src/event.js +4 -4
  21. package/dist/src/event.js.map +1 -1
  22. package/dist/src/haori.d.ts +13 -0
  23. package/dist/src/haori.d.ts.map +1 -1
  24. package/dist/src/haori.js +18 -0
  25. package/dist/src/haori.js.map +1 -1
  26. package/dist/src/index.d.ts +2 -1
  27. package/dist/src/index.d.ts.map +1 -1
  28. package/dist/src/index.js +1 -1
  29. package/dist/src/index.js.map +1 -1
  30. package/dist/src/intersect.d.ts +21 -0
  31. package/dist/src/intersect.d.ts.map +1 -0
  32. package/dist/src/intersect.js +188 -0
  33. package/dist/src/intersect.js.map +1 -0
  34. package/dist/src/observer.d.ts.map +1 -1
  35. package/dist/src/observer.js +5 -0
  36. package/dist/src/observer.js.map +1 -1
  37. package/dist/src/procedure.d.ts +18 -0
  38. package/dist/src/procedure.d.ts.map +1 -1
  39. package/dist/src/procedure.js +272 -172
  40. package/dist/src/procedure.js.map +1 -1
  41. package/dist/tests/env.test.js +28 -0
  42. package/dist/tests/env.test.js.map +1 -1
  43. package/dist/tests/event.test.js +13 -1
  44. package/dist/tests/event.test.js.map +1 -1
  45. package/dist/tests/intersect.test.d.ts +2 -0
  46. package/dist/tests/intersect.test.d.ts.map +1 -0
  47. package/dist/tests/intersect.test.js +173 -0
  48. package/dist/tests/intersect.test.js.map +1 -0
  49. package/dist/tests/procedure-bind-append.test.d.ts +2 -0
  50. package/dist/tests/procedure-bind-append.test.d.ts.map +1 -0
  51. package/dist/tests/procedure-bind-append.test.js +80 -0
  52. package/dist/tests/procedure-bind-append.test.js.map +1 -0
  53. package/dist/tests/procedure-fetch-options.test.js +58 -0
  54. package/dist/tests/procedure-fetch-options.test.js.map +1 -1
  55. package/package.json +1 -1
@@ -0,0 +1,188 @@
1
+ /**
2
+ * @fileoverview IntersectionObserver based trigger dispatcher.
3
+ */
4
+ import Env from './env';
5
+ import Fragment from './fragment';
6
+ import Log from './log';
7
+ import Procedure from './procedure';
8
+ /**
9
+ * `data-intersect-*` 属性を監視し、交差時に Procedure を実行します。
10
+ */
11
+ class IntersectObserver {
12
+ static syncTree(root) {
13
+ if (!(root instanceof Element || root instanceof DocumentFragment)) {
14
+ return;
15
+ }
16
+ if (root instanceof HTMLElement) {
17
+ IntersectObserver.syncElement(root);
18
+ }
19
+ root.querySelectorAll('*').forEach(element => {
20
+ IntersectObserver.syncElement(element);
21
+ });
22
+ }
23
+ static syncElement(element) {
24
+ const registration = IntersectObserver.registrations.get(element);
25
+ const fragment = Fragment.get(element);
26
+ if (!fragment || !IntersectObserver.shouldObserve(fragment)) {
27
+ if (registration) {
28
+ registration.observer.disconnect();
29
+ IntersectObserver.registrations.delete(element);
30
+ }
31
+ return;
32
+ }
33
+ if (typeof IntersectionObserver === 'undefined') {
34
+ return;
35
+ }
36
+ const nextRoot = IntersectObserver.resolveRoot(fragment);
37
+ const nextRootMargin = IntersectObserver.resolveRootMargin(fragment);
38
+ const nextThreshold = IntersectObserver.resolveThreshold(fragment);
39
+ const nextOnce = fragment.hasAttribute(`${Env.prefix}intersect-once`);
40
+ if (registration &&
41
+ registration.observer.root === nextRoot &&
42
+ registration.observer.rootMargin === nextRootMargin &&
43
+ IntersectObserver.sameThreshold(registration.observer.thresholds, nextThreshold) &&
44
+ registration.once === nextOnce) {
45
+ registration.fragment = fragment;
46
+ return;
47
+ }
48
+ if (registration) {
49
+ registration.observer.disconnect();
50
+ IntersectObserver.registrations.delete(element);
51
+ }
52
+ const observer = new IntersectionObserver(entries => {
53
+ const current = IntersectObserver.registrations.get(element);
54
+ if (!current) {
55
+ return;
56
+ }
57
+ entries.forEach(entry => {
58
+ if (!entry.isIntersecting || current.running) {
59
+ return;
60
+ }
61
+ if (IntersectObserver.isDisabled(current.fragment)) {
62
+ return;
63
+ }
64
+ current.running = true;
65
+ void new Procedure(current.fragment, 'intersect')
66
+ .runWithResult()
67
+ .then(success => {
68
+ if (success && current.once) {
69
+ current.observer.disconnect();
70
+ IntersectObserver.registrations.delete(element);
71
+ }
72
+ })
73
+ .catch(error => {
74
+ Log.error('[Haori]', 'Intersect procedure execution error:', error);
75
+ })
76
+ .finally(() => {
77
+ const latest = IntersectObserver.registrations.get(element);
78
+ if (latest) {
79
+ latest.running = false;
80
+ }
81
+ });
82
+ });
83
+ }, {
84
+ root: nextRoot,
85
+ rootMargin: nextRootMargin,
86
+ threshold: nextThreshold,
87
+ });
88
+ observer.observe(element);
89
+ IntersectObserver.registrations.set(element, {
90
+ fragment,
91
+ observer,
92
+ once: nextOnce,
93
+ running: false,
94
+ });
95
+ }
96
+ static cleanupTree(root) {
97
+ if (root instanceof HTMLElement) {
98
+ const registration = IntersectObserver.registrations.get(root);
99
+ if (registration) {
100
+ registration.observer.disconnect();
101
+ IntersectObserver.registrations.delete(root);
102
+ }
103
+ }
104
+ if (!(root instanceof Element || root instanceof DocumentFragment)) {
105
+ return;
106
+ }
107
+ root.querySelectorAll('*').forEach(element => {
108
+ const registration = IntersectObserver.registrations.get(element);
109
+ if (registration) {
110
+ registration.observer.disconnect();
111
+ IntersectObserver.registrations.delete(element);
112
+ }
113
+ });
114
+ }
115
+ static disconnectAll() {
116
+ IntersectObserver.registrations.forEach(registration => {
117
+ registration.observer.disconnect();
118
+ });
119
+ IntersectObserver.registrations.clear();
120
+ }
121
+ static shouldObserve(fragment) {
122
+ return fragment.getAttributeNames().some(name => {
123
+ if (!name.startsWith(`${Env.prefix}intersect-`)) {
124
+ return false;
125
+ }
126
+ const key = name.slice(`${Env.prefix}intersect-`.length);
127
+ return !IntersectObserver.CONFIG_KEYS.has(key);
128
+ });
129
+ }
130
+ static resolveRoot(fragment) {
131
+ const attrName = `${Env.prefix}intersect-root`;
132
+ if (!fragment.hasAttribute(attrName)) {
133
+ return null;
134
+ }
135
+ const selector = fragment.getAttribute(attrName);
136
+ if (typeof selector !== 'string' || selector.trim() === '') {
137
+ return null;
138
+ }
139
+ const root = document.querySelector(selector);
140
+ if (root instanceof HTMLElement) {
141
+ return root;
142
+ }
143
+ Log.error('[Haori]', `Intersect root element not found: ${selector}`);
144
+ return null;
145
+ }
146
+ static resolveRootMargin(fragment) {
147
+ const attrName = `${Env.prefix}intersect-root-margin`;
148
+ const value = fragment.getAttribute(attrName);
149
+ if (value === null || value === false || value === '') {
150
+ return '0px';
151
+ }
152
+ return String(value);
153
+ }
154
+ static resolveThreshold(fragment) {
155
+ const attrName = `${Env.prefix}intersect-threshold`;
156
+ const value = fragment.getAttribute(attrName);
157
+ const threshold = typeof value === 'number' ? value : Number.parseFloat(String(value ?? 0));
158
+ if (Number.isNaN(threshold)) {
159
+ return 0;
160
+ }
161
+ return Math.min(1, Math.max(0, threshold));
162
+ }
163
+ static isDisabled(fragment) {
164
+ const attrName = `${Env.prefix}intersect-disabled`;
165
+ const value = fragment.getAttribute(attrName);
166
+ if (value === null || value === false) {
167
+ return false;
168
+ }
169
+ if (typeof value === 'boolean') {
170
+ return value;
171
+ }
172
+ const stringValue = String(value).trim().toLowerCase();
173
+ return stringValue !== '' && stringValue !== 'false' && stringValue !== '0';
174
+ }
175
+ static sameThreshold(thresholds, threshold) {
176
+ return thresholds.length === 1 && thresholds[0] === threshold;
177
+ }
178
+ }
179
+ IntersectObserver.CONFIG_KEYS = new Set([
180
+ 'root',
181
+ 'root-margin',
182
+ 'threshold',
183
+ 'disabled',
184
+ 'once',
185
+ ]);
186
+ IntersectObserver.registrations = new Map();
187
+ export default IntersectObserver;
188
+ //# sourceMappingURL=intersect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intersect.js","sourceRoot":"","sources":["../../src/intersect.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/observer.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAC,YAAY,CAAS;IACpC;;;OAGG;WACiB,IAAI;IAqBxB;;;;OAIG;WACW,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,QAAQ;CAgFnD"}
1
+ {"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/observer.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAC,YAAY,CAAS;IACpC;;;OAGG;WACiB,IAAI;IAsBxB;;;;OAIG;WACW,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,QAAQ;CAmFnD"}
@@ -6,6 +6,7 @@
6
6
  */
7
7
  import Core from './core';
8
8
  import EventDispatcher from './event_dispatcher';
9
+ import IntersectObserver from './intersect';
9
10
  import Log from './log';
10
11
  /**
11
12
  * 監視対象の要素を管理するためのクラスです。
@@ -34,6 +35,7 @@ export class Observer {
34
35
  Observer.observe(document.head);
35
36
  Observer.observe(document.body);
36
37
  new EventDispatcher().start();
38
+ IntersectObserver.syncTree(document.body);
37
39
  }
38
40
  /**
39
41
  * 指定された要素を監視します。
@@ -50,12 +52,14 @@ export class Observer {
50
52
  Log.info('[Haori]', 'Attribute changed:', mutation.target, mutation.attributeName);
51
53
  const element = mutation.target;
52
54
  Core.setAttribute(element, mutation.attributeName, element.getAttribute(mutation.attributeName));
55
+ IntersectObserver.syncElement(element);
53
56
  break;
54
57
  }
55
58
  case 'childList': {
56
59
  // ノードの追加・削除
57
60
  Log.info('[Haori]', 'Child list changed:', Array.from(mutation.removedNodes).map(node => node.nodeName), Array.from(mutation.addedNodes).map(node => node.nodeName));
58
61
  Array.from(mutation.removedNodes).forEach(node => {
62
+ IntersectObserver.cleanupTree(node);
59
63
  Core.removeNode(node);
60
64
  });
61
65
  Array.from(mutation.addedNodes).forEach(node => {
@@ -63,6 +67,7 @@ export class Observer {
63
67
  return;
64
68
  }
65
69
  Core.addNode(node.parentElement, node);
70
+ IntersectObserver.syncTree(node);
66
71
  });
67
72
  break;
68
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/observer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/observer.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,8 @@ export interface ProcedureOptions {
48
48
  bindFragments?: ElementFragment[] | null;
49
49
  /** レスポンスデータから抽出するパラメータ名のリスト */
50
50
  bindParams?: string[] | null;
51
+ /** レスポンスデータのうち既存配列へ追記するパラメータ名のリスト */
52
+ bindAppendParams?: string[] | null;
51
53
  /** レスポンスデータをバインドする際のキー名 */
52
54
  bindArg?: string | null;
53
55
  /** フェッチ後実行スクリプト */
@@ -185,6 +187,18 @@ export default class Procedure {
185
187
  * @returns 実行結果のPromise
186
188
  */
187
189
  run(): Promise<void>;
190
+ /**
191
+ * 一連の処理を実行し、成功したかどうかを返します。
192
+ *
193
+ * @returns 成功した場合は true、途中停止や失敗時は false
194
+ */
195
+ runWithResult(): Promise<boolean>;
196
+ /**
197
+ * 一連の処理を実行します。成功結果を内部で扱うための実体です。
198
+ *
199
+ * @returns 実行成功時は true、停止や失敗時は false
200
+ */
201
+ private execute;
188
202
  /**
189
203
  * フェッチ後の処理を実行します。
190
204
  */
@@ -229,6 +243,10 @@ export default class Procedure {
229
243
  * @param response フェッチのレスポンスオブジェクト
230
244
  */
231
245
  private bindResult;
246
+ /**
247
+ * bind-append 指定があるキーについて、既存配列と結合したデータを返します。
248
+ */
249
+ private mergeAppendBindingData;
232
250
  /**
233
251
  * 値の増減を行います。
234
252
  */
@@ -1 +1 @@
1
- {"version":3,"file":"procedure.d.ts","sourceRoot":"","sources":["../../src/procedure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"procedure.d.ts","sourceRoot":"","sources":["../../src/procedure.ts"],"names":[],"mappings":"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"}