haori 0.1.0 → 0.1.2

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 (52) hide show
  1. package/README.ja.md +26 -15
  2. package/README.md +26 -15
  3. package/dist/haori.cjs.js +10 -9
  4. package/dist/haori.cjs.js.map +1 -1
  5. package/dist/haori.es.js +1194 -751
  6. package/dist/haori.es.js.map +1 -1
  7. package/dist/haori.iife.js +9 -8
  8. package/dist/haori.iife.js.map +1 -1
  9. package/dist/index.d.ts +10 -2
  10. package/dist/package.json +70 -0
  11. package/dist/src/core.d.ts.map +1 -1
  12. package/dist/src/core.js +31 -26
  13. package/dist/src/core.js.map +1 -1
  14. package/dist/src/expression.d.ts +92 -0
  15. package/dist/src/expression.d.ts.map +1 -1
  16. package/dist/src/expression.js +475 -2
  17. package/dist/src/expression.js.map +1 -1
  18. package/dist/src/fragment.d.ts +9 -1
  19. package/dist/src/fragment.d.ts.map +1 -1
  20. package/dist/src/fragment.js +50 -6
  21. package/dist/src/fragment.js.map +1 -1
  22. package/dist/src/index.d.ts +1 -1
  23. package/dist/src/index.js +1 -1
  24. package/dist/src/observer.d.ts +1 -0
  25. package/dist/src/observer.d.ts.map +1 -1
  26. package/dist/src/observer.js +5 -0
  27. package/dist/src/observer.js.map +1 -1
  28. package/dist/tests/data-each-table.test.js +5 -20
  29. package/dist/tests/data-each-table.test.js.map +1 -1
  30. package/dist/tests/data-fetch-tbody-dom.test.d.ts +2 -0
  31. package/dist/tests/data-fetch-tbody-dom.test.d.ts.map +1 -0
  32. package/dist/tests/data-fetch-tbody-dom.test.js +99 -0
  33. package/dist/tests/data-fetch-tbody-dom.test.js.map +1 -0
  34. package/dist/tests/event.test.js +3 -2
  35. package/dist/tests/event.test.js.map +1 -1
  36. package/dist/tests/expression.test.js +92 -0
  37. package/dist/tests/expression.test.js.map +1 -1
  38. package/dist/tests/form.test.js +35 -34
  39. package/dist/tests/form.test.js.map +1 -1
  40. package/dist/tests/fragment.test.js +51 -1
  41. package/dist/tests/fragment.test.js.map +1 -1
  42. package/dist/tests/helpers/async.d.ts +19 -0
  43. package/dist/tests/helpers/async.d.ts.map +1 -0
  44. package/dist/tests/helpers/async.js +31 -0
  45. package/dist/tests/helpers/async.js.map +1 -0
  46. package/dist/tests/procedure-action-operations.test.js +15 -12
  47. package/dist/tests/procedure-action-operations.test.js.map +1 -1
  48. package/dist/tests/row-move.test.js +36 -13
  49. package/dist/tests/row-move.test.js.map +1 -1
  50. package/dist/tests/row-operations.test.js +21 -20
  51. package/dist/tests/row-operations.test.js.map +1 -1
  52. package/package.json +70 -68
@@ -28,6 +28,39 @@ describe('Expression', () => {
28
28
  const result = Expression.evaluate('items[0]', { items: ['a', 'b', 'c'] });
29
29
  expect(result).toBe('a');
30
30
  });
31
+ it('文字列キーのブラケットアクセスを評価できる', () => {
32
+ const result = Expression.evaluate('user["name"]', {
33
+ user: { name: '田中' },
34
+ });
35
+ expect(result).toBe('田中');
36
+ });
37
+ it('動的インデックスのブラケットアクセスを評価できる', () => {
38
+ const result = Expression.evaluate('items[index]', {
39
+ items: ['a', 'b', 'c'],
40
+ index: 1,
41
+ });
42
+ expect(result).toBe('b');
43
+ });
44
+ it('式を含む動的インデックスを評価できる', () => {
45
+ const result = Expression.evaluate('items[index + 1]', {
46
+ items: ['a', 'b', 'c'],
47
+ index: 0,
48
+ });
49
+ expect(result).toBe('b');
50
+ });
51
+ it('optional chaining を評価できる', () => {
52
+ const result = Expression.evaluate('user?.name', {
53
+ user: { name: '田中' },
54
+ });
55
+ expect(result).toBe('田中');
56
+ });
57
+ it('optional chaining と動的キーを組み合わせて評価できる', () => {
58
+ const result = Expression.evaluate('user?.[key]', {
59
+ user: { name: '田中' },
60
+ key: 'name',
61
+ });
62
+ expect(result).toBe('田中');
63
+ });
31
64
  it('メソッド呼び出しを評価できる', () => {
32
65
  const result = Expression.evaluate('name.toUpperCase()', {
33
66
  name: 'hello',
@@ -264,6 +297,17 @@ describe('Expression', () => {
264
297
  });
265
298
  expect(result).toBe(3);
266
299
  });
300
+ it('Date インスタンスのメソッド呼び出しを評価できる', () => {
301
+ const when = new Date('2024-01-02T03:04:05.000Z');
302
+ const result = Expression.evaluate('when.getTime()', { when });
303
+ expect(result).toBe(when.getTime());
304
+ });
305
+ it('Map インスタンスのメソッド呼び出しを評価できる', () => {
306
+ const result = Expression.evaluate('mapping.get("name")', {
307
+ mapping: new Map([['name', '田中']]),
308
+ });
309
+ expect(result).toBe('田中');
310
+ });
267
311
  it('配列のmapメソッドを使用できる', () => {
268
312
  const result = Expression.evaluate('items.map(x => x * 2)', {
269
313
  items: [1, 2, 3],
@@ -276,6 +320,54 @@ describe('Expression', () => {
276
320
  });
277
321
  expect(result).toEqual([2, 3]);
278
322
  });
323
+ it('スプレッド構文を含むメソッド呼び出しを評価できる', () => {
324
+ const result = Expression.evaluate('Math.max(...scores)', {
325
+ scores: [10, 3, 7],
326
+ });
327
+ expect(result).toBe(10);
328
+ });
329
+ it('配列メソッド内のアロー関数とプロパティアクセスを評価できる', () => {
330
+ const result = Expression.evaluate('items.filter(item => item.active).length', {
331
+ items: [
332
+ { active: true },
333
+ { active: false },
334
+ { active: true },
335
+ ],
336
+ });
337
+ expect(result).toBe(2);
338
+ });
339
+ });
340
+ describe('セキュリティ: constructor 経由の脱出防止', () => {
341
+ it('ドット記法の constructor 呼び出しをブロックする', () => {
342
+ const result = Expression.evaluate('[].filter.constructor(\'return this\')()', {});
343
+ expect(result).toBeNull();
344
+ });
345
+ it('ブラケット記法の constructor 呼び出しをブロックする', () => {
346
+ const result = Expression.evaluate('[]["filter"]["constructor"]("return this")()', {});
347
+ expect(result).toBeNull();
348
+ });
349
+ it('危険なプロトタイプアクセスをブロックする', () => {
350
+ expect(Expression.evaluate('user.constructor', { user: { name: '田中' } })).toBeNull();
351
+ expect(Expression.evaluate('user["__proto__"]', { user: { name: '田中' } })).toBeNull();
352
+ });
353
+ it('変数経由の computed constructor アクセスをブロックする', () => {
354
+ const result = Expression.evaluate('items.filter[key]("return this")()', {
355
+ items: [1, 2, 3],
356
+ key: 'constructor',
357
+ });
358
+ expect(result).toBeNull();
359
+ });
360
+ it('Reflect 経由の constructor 取得をブロックする', () => {
361
+ const result = Expression.evaluate('Reflect.get(Reflect.get([], "filter"), "constructor")("return 7")()', {});
362
+ expect(result).toBeNull();
363
+ });
364
+ it('関数戻り値経由の computed constructor アクセスをブロックする', () => {
365
+ const result = Expression.evaluate('fn()[key]("return 7")()', {
366
+ fn: () => ({ constructor: Function }),
367
+ key: 'constructor',
368
+ });
369
+ expect(result).toBeNull();
370
+ });
279
371
  });
280
372
  });
281
373
  //# sourceMappingURL=expression.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"expression.test.js","sourceRoot":"","sources":["../../tests/expression.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expression.test.js","sourceRoot":"","sources":["../../tests/expression.test.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B;;GAEG;AACH,OAAO,EAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAC,MAAM,QAAQ,CAAC;AAC5C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAE3C,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YACvB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,CAAC,EAAE,EAAE,EAAC,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YACpB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAC,CAAC,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;YACrB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACzB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE;gBAC9C,IAAI,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC;aACnB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;YACtB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAC,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAC,CAAC,CAAC;YACzE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;YAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE;gBACjD,IAAI,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC;aACnB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE;gBACjD,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;gBACtB,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,kBAAkB,EAAE;gBACrD,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;gBACtB,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAC/C,IAAI,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC;aACnB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,aAAa,EAAE;gBAChD,IAAI,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC;gBAClB,GAAG,EAAE,MAAM;aACZ,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YACxB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,oBAAoB,EAAE;gBACvD,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;YACrB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,2BAA2B,EAAE,EAAC,CAAC,EAAE,EAAE,EAAC,CAAC,CAAC;YACzE,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;YACrB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YACxB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;YAC3B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;YAC7D,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;YAC1D,+BAA+B;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YACrD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YACrD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACzC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAClD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAC,CAAC,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAC,CAAC,CAAC;YAC9D,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,EAAC,CAAC,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACtC,CAAC,EAAE,CAAC;gBACJ,MAAM,EAAE,EAAC,MAAM,EAAE,EAAE,EAAC;aACrB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACtC,CAAC,EAAE,CAAC;gBACJ,MAAM,EAAE;oBACN,MAAM,EAAE;wBACN,MAAM,EAAE;4BACN,QAAQ,EAAE,EAAE;yBACb;qBACF;iBACF;aACF,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;YAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE;gBAC9C,IAAI,EAAE,EAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAC;aAC5B,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;YAC3B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;YAClD,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;YAChC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAC,GAAG,EAAE,IAAI,EAAC,CAAC,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAC,GAAG,EAAE,SAAS,EAAC,CAAC,CAAC;YACjE,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;YAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAC,CAAC,CAAC;YAC7D,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;YACvD,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAC,CAAC,CAAC;YAC7D,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,8BAA8B;YAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACtC,CAAC,EAAE,CAAC;gBACJ,MAAM,EAAE,mBAAmB;aAC5B,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACpB,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC1B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,qBAAqB,EAAE;gBACxD,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;aACL,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACzB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,aAAa,EAAE;gBAChD,CAAC,EAAE,IAAI;gBACP,CAAC,EAAE,KAAK;gBACR,CAAC,EAAE,IAAI;aACR,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACzB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,iBAAiB,EAAE;gBACpD,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;gBACJ,CAAC,EAAE,CAAC;aACL,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,wBAAwB,EAAE;gBAC3D,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;YACtB,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE;gBACjD,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;aACjB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAC,IAAI,EAAC,CAAC,CAAC;YAC7D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,qBAAqB,EAAE;gBACxD,OAAO,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;aACnC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC1B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,uBAAuB,EAAE;gBAC1D,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;aACjB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;YAC7B,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,0BAA0B,EAAE;gBAC7D,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;aACjB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,qBAAqB,EAAE;gBACxD,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;aACnB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAChC,0CAA0C,EAC1C;gBACE,KAAK,EAAE;oBACL,EAAC,MAAM,EAAE,IAAI,EAAC;oBACd,EAAC,MAAM,EAAE,KAAK,EAAC;oBACf,EAAC,MAAM,EAAE,IAAI,EAAC;iBACf;aACF,CACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,0CAA0C,EAAE,EAAE,CAAC,CAAC;YACnF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAChC,8CAA8C,EAC9C,EAAE,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;YAC9B,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAC,IAAI,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACjF,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,EAAE,EAAC,IAAI,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACpF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAChC,oCAAoC,EACpC;gBACE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAChB,GAAG,EAAE,aAAa;aACnB,CACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAChC,qEAAqE,EACrE,EAAE,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACnD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAChC,yBAAyB,EACzB;gBACE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAC,WAAW,EAAE,QAAQ,EAAC,CAAC;gBACnC,GAAG,EAAE,aAAa;aACnB,CACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -6,6 +6,7 @@ import { describe, it, expect, beforeEach, afterEach } from 'vitest';
6
6
  import Core from '../src/core';
7
7
  import Form from '../src/form';
8
8
  import Fragment from '../src/fragment';
9
+ import { waitForDomSettled } from './helpers/async';
9
10
  describe('Form', () => {
10
11
  let container;
11
12
  beforeEach(() => {
@@ -25,7 +26,7 @@ describe('Form', () => {
25
26
  </form>
26
27
  `;
27
28
  await Core.scan(container);
28
- await new Promise(resolve => setTimeout(resolve, 50));
29
+ await waitForDomSettled();
29
30
  const form = container.querySelector('form');
30
31
  const fragment = Fragment.get(form);
31
32
  const values = Form.getValues(fragment);
@@ -45,7 +46,7 @@ describe('Form', () => {
45
46
  </form>
46
47
  `;
47
48
  await Core.scan(container);
48
- await new Promise(resolve => setTimeout(resolve, 50));
49
+ await waitForDomSettled();
49
50
  const form = container.querySelector('form');
50
51
  const fragment = Fragment.get(form);
51
52
  const values = Form.getValues(fragment);
@@ -70,7 +71,7 @@ describe('Form', () => {
70
71
  </form>
71
72
  `;
72
73
  await Core.scan(container);
73
- await new Promise(resolve => setTimeout(resolve, 50));
74
+ await waitForDomSettled();
74
75
  const form = container.querySelector('form');
75
76
  const fragment = Fragment.get(form);
76
77
  const values = Form.getValues(fragment);
@@ -96,7 +97,7 @@ describe('Form', () => {
96
97
  </form>
97
98
  `;
98
99
  await Core.scan(container);
99
- await new Promise(resolve => setTimeout(resolve, 50));
100
+ await waitForDomSettled();
100
101
  const form = container.querySelector('form');
101
102
  const fragment = Fragment.get(form);
102
103
  const values = Form.getValues(fragment);
@@ -126,7 +127,7 @@ describe('Form', () => {
126
127
  </form>
127
128
  `;
128
129
  await Core.scan(container);
129
- await new Promise(resolve => setTimeout(resolve, 50));
130
+ await waitForDomSettled();
130
131
  const form = container.querySelector('form');
131
132
  const fragment = Fragment.get(form);
132
133
  const values = Form.getValues(fragment);
@@ -161,7 +162,7 @@ describe('Form', () => {
161
162
  </form>
162
163
  `;
163
164
  await Core.scan(container);
164
- await new Promise(resolve => setTimeout(resolve, 50));
165
+ await waitForDomSettled();
165
166
  const form = container.querySelector('form');
166
167
  const fragment = Fragment.get(form);
167
168
  const values = Form.getValues(fragment);
@@ -210,7 +211,7 @@ describe('Form', () => {
210
211
  </form>
211
212
  `;
212
213
  await Core.scan(container);
213
- await new Promise(resolve => setTimeout(resolve, 50));
214
+ await waitForDomSettled();
214
215
  const form = container.querySelector('form');
215
216
  const fragment = Fragment.get(form);
216
217
  const values = Form.getValues(fragment);
@@ -240,7 +241,7 @@ describe('Form', () => {
240
241
  </form>
241
242
  `;
242
243
  await Core.scan(container);
243
- await new Promise(resolve => setTimeout(resolve, 50));
244
+ await waitForDomSettled();
244
245
  const form = container.querySelector('form');
245
246
  const fragment = Fragment.get(form);
246
247
  await Form.setValues(fragment, {
@@ -248,7 +249,7 @@ describe('Form', () => {
248
249
  age: 30,
249
250
  email: 'yamada@example.com',
250
251
  });
251
- await new Promise(resolve => setTimeout(resolve, 50));
252
+ await waitForDomSettled();
252
253
  const nameInput = container.querySelector('input[name="name"]');
253
254
  const ageInput = container.querySelector('input[name="age"]');
254
255
  const emailInput = container.querySelector('input[name="email"]');
@@ -267,7 +268,7 @@ describe('Form', () => {
267
268
  </form>
268
269
  `;
269
270
  await Core.scan(container);
270
- await new Promise(resolve => setTimeout(resolve, 50));
271
+ await waitForDomSettled();
271
272
  const form = container.querySelector('form');
272
273
  const fragment = Fragment.get(form);
273
274
  await Form.setValues(fragment, {
@@ -277,7 +278,7 @@ describe('Form', () => {
277
278
  street: '北区2-2-2',
278
279
  },
279
280
  });
280
- await new Promise(resolve => setTimeout(resolve, 50));
281
+ await waitForDomSettled();
281
282
  const nameInput = container.querySelector('input[name="name"]');
282
283
  const cityInput = container.querySelector('input[name="city"]');
283
284
  const streetInput = container.querySelector('input[name="street"]');
@@ -300,7 +301,7 @@ describe('Form', () => {
300
301
  </form>
301
302
  `;
302
303
  await Core.scan(container);
303
- await new Promise(resolve => setTimeout(resolve, 50));
304
+ await waitForDomSettled();
304
305
  const form = container.querySelector('form');
305
306
  const fragment = Fragment.get(form);
306
307
  await Form.setValues(fragment, {
@@ -314,7 +315,7 @@ describe('Form', () => {
314
315
  },
315
316
  },
316
317
  });
317
- await new Promise(resolve => setTimeout(resolve, 50));
318
+ await waitForDomSettled();
318
319
  const nameInput = container.querySelector('input[name="name"]');
319
320
  const countryInput = container.querySelector('input[name="country"]');
320
321
  const cityInput = container.querySelector('input[name="city"]');
@@ -338,7 +339,7 @@ describe('Form', () => {
338
339
  </form>
339
340
  `;
340
341
  await Core.scan(container);
341
- await new Promise(resolve => setTimeout(resolve, 50));
342
+ await waitForDomSettled();
342
343
  const form = container.querySelector('form');
343
344
  const fragment = Fragment.get(form);
344
345
  await Form.setValues(fragment, {
@@ -347,7 +348,7 @@ describe('Form', () => {
347
348
  { name: '新商品B', price: 600 },
348
349
  ],
349
350
  });
350
- await new Promise(resolve => setTimeout(resolve, 50));
351
+ await waitForDomSettled();
351
352
  const nameInputs = container.querySelectorAll('input[name="name"]');
352
353
  const priceInputs = container.querySelectorAll('input[name="price"]');
353
354
  expect(nameInputs[0].value).toBe('新商品A');
@@ -370,7 +371,7 @@ describe('Form', () => {
370
371
  </form>
371
372
  `;
372
373
  await Core.scan(container);
373
- await new Promise(resolve => setTimeout(resolve, 50));
374
+ await waitForDomSettled();
374
375
  const form = container.querySelector('form');
375
376
  const fragment = Fragment.get(form);
376
377
  await Form.setValues(fragment, {
@@ -384,7 +385,7 @@ describe('Form', () => {
384
385
  },
385
386
  ],
386
387
  });
387
- await new Promise(resolve => setTimeout(resolve, 50));
388
+ await waitForDomSettled();
388
389
  const orderIdInput = container.querySelector('input[name="orderId"]');
389
390
  const nameInput = container.querySelector('input[name="name"]');
390
391
  const phoneInput = container.querySelector('input[name="phone"]');
@@ -402,11 +403,11 @@ describe('Form', () => {
402
403
  </form>
403
404
  `;
404
405
  await Core.scan(container);
405
- await new Promise(resolve => setTimeout(resolve, 50));
406
+ await waitForDomSettled();
406
407
  const form = container.querySelector('form');
407
408
  const fragment = Fragment.get(form);
408
409
  await Form.addErrorMessage(fragment, 'name', '名前は必須です');
409
- await new Promise(resolve => setTimeout(resolve, 50));
410
+ await waitForDomSettled();
410
411
  const nameInput = container.querySelector('input[name="name"]');
411
412
  const parentElement = nameInput.parentElement;
412
413
  expect(parentElement.getAttribute('data-message')).toBe('名前は必須です');
@@ -421,11 +422,11 @@ describe('Form', () => {
421
422
  </form>
422
423
  `;
423
424
  await Core.scan(container);
424
- await new Promise(resolve => setTimeout(resolve, 50));
425
+ await waitForDomSettled();
425
426
  const form = container.querySelector('form');
426
427
  const fragment = Fragment.get(form);
427
428
  await Form.addErrorMessage(fragment, 'address.city', '市区町村は必須です');
428
- await new Promise(resolve => setTimeout(resolve, 50));
429
+ await waitForDomSettled();
429
430
  const cityInput = container.querySelector('input[name="city"]');
430
431
  const parentElement = cityInput.parentElement;
431
432
  expect(parentElement.getAttribute('data-message')).toBe('市区町村は必須です');
@@ -441,11 +442,11 @@ describe('Form', () => {
441
442
  </form>
442
443
  `;
443
444
  await Core.scan(container);
444
- await new Promise(resolve => setTimeout(resolve, 50));
445
+ await waitForDomSettled();
445
446
  const form = container.querySelector('form');
446
447
  const fragment = Fragment.get(form);
447
448
  await Form.addErrorMessage(fragment, 'company.location.country', '国名は必須です');
448
- await new Promise(resolve => setTimeout(resolve, 50));
449
+ await waitForDomSettled();
449
450
  const countryInput = container.querySelector('input[name="country"]');
450
451
  const parentElement = countryInput.parentElement;
451
452
  expect(parentElement.getAttribute('data-message')).toBe('国名は必須です');
@@ -467,12 +468,12 @@ describe('Form', () => {
467
468
  </form>
468
469
  `;
469
470
  await Core.scan(container);
470
- await new Promise(resolve => setTimeout(resolve, 50));
471
+ await waitForDomSettled();
471
472
  const form = container.querySelector('form');
472
473
  const fragment = Fragment.get(form);
473
474
  // 2番目の配列要素にエラーを追加
474
475
  await Form.addErrorMessage(fragment, 'items[1].name', '2番目の項目名は必須です');
475
- await new Promise(resolve => setTimeout(resolve, 50));
476
+ await waitForDomSettled();
476
477
  const rows = container.querySelectorAll('[data-row]');
477
478
  const secondRowInput = rows[1].querySelector('input[name="name"]');
478
479
  const parentElement = secondRowInput.parentElement;
@@ -496,11 +497,11 @@ describe('Form', () => {
496
497
  </form>
497
498
  `;
498
499
  await Core.scan(container);
499
- await new Promise(resolve => setTimeout(resolve, 50));
500
+ await waitForDomSettled();
500
501
  const form = container.querySelector('form');
501
502
  const fragment = Fragment.get(form);
502
503
  await Form.addErrorMessage(fragment, 'orders[1].customer.name', '顧客名は必須です');
503
- await new Promise(resolve => setTimeout(resolve, 50));
504
+ await waitForDomSettled();
504
505
  const rows = container.querySelectorAll('[data-row]');
505
506
  const secondRowInput = rows[1].querySelector('input[name="name"]');
506
507
  const parentElement = secondRowInput.parentElement;
@@ -513,11 +514,11 @@ describe('Form', () => {
513
514
  </form>
514
515
  `;
515
516
  await Core.scan(container);
516
- await new Promise(resolve => setTimeout(resolve, 50));
517
+ await waitForDomSettled();
517
518
  const form = container.querySelector('form');
518
519
  const fragment = Fragment.get(form);
519
520
  await Form.addErrorMessage(fragment, 'nonexistent', 'フォーム全体のエラー');
520
- await new Promise(resolve => setTimeout(resolve, 50));
521
+ await waitForDomSettled();
521
522
  expect(form.getAttribute('data-message')).toBe('フォーム全体のエラー');
522
523
  });
523
524
  it('should clear messages with Form.clearMessages', async () => {
@@ -530,16 +531,16 @@ describe('Form', () => {
530
531
  </form>
531
532
  `;
532
533
  await Core.scan(container);
533
- await new Promise(resolve => setTimeout(resolve, 50));
534
+ await waitForDomSettled();
534
535
  const form = container.querySelector('form');
535
536
  const fragment = Fragment.get(form);
536
537
  // エラーメッセージを追加
537
538
  await Form.addErrorMessage(fragment, 'name', 'エラー1');
538
539
  await Form.addErrorMessage(fragment, 'address.city', 'エラー2');
539
- await new Promise(resolve => setTimeout(resolve, 50));
540
+ await waitForDomSettled();
540
541
  // メッセージをクリア
541
542
  await Form.clearMessages(fragment);
542
- await new Promise(resolve => setTimeout(resolve, 50));
543
+ await waitForDomSettled();
543
544
  const messagesAfter = container.querySelectorAll('[data-message]');
544
545
  expect(messagesAfter.length).toBe(0);
545
546
  });
@@ -577,7 +578,7 @@ describe('Form', () => {
577
578
  </form>
578
579
  `;
579
580
  await Core.scan(container);
580
- await new Promise(resolve => setTimeout(resolve, 50));
581
+ await waitForDomSettled();
581
582
  const form = container.querySelector('form');
582
583
  const fragment = Fragment.get(form);
583
584
  const originalData = {
@@ -598,7 +599,7 @@ describe('Form', () => {
598
599
  ],
599
600
  };
600
601
  await Form.setValues(fragment, originalData);
601
- await new Promise(resolve => setTimeout(resolve, 50));
602
+ await waitForDomSettled();
602
603
  const retrievedData = Form.getValues(fragment);
603
604
  expect(retrievedData).toEqual(originalData);
604
605
  });
@@ -1 +1 @@
1
- {"version":3,"file":"form.test.js","sourceRoot":"","sources":["../../tests/form.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form.test.js","sourceRoot":"","sources":["../../tests/form.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /* @vitest-environment jsdom */
2
- import { describe, it, expect } from 'vitest';
2
+ import { describe, it, expect, vi } from 'vitest';
3
3
  import Fragment, { ElementFragment, TextFragment, CommentFragment, } from '../src/fragment';
4
+ import Log from '../src/log';
4
5
  // ヘルパー: DOM子要素のタグ名配列を取得
5
6
  const childTagNames = (el) => Array.from(el.children)
6
7
  .map(e => e.tagName.toLowerCase());
@@ -111,6 +112,55 @@ describe('ElementFragment の insertBefore/insertAfter', () => {
111
112
  const ids2 = Array.from(parent.children).map(e => e.id);
112
113
  expect(ids2).toEqual(['a', 'c', 'b', 'd']);
113
114
  });
115
+ it('children 配列と DOM が一時的にずれても参照位置を DOM から解決できる', async () => {
116
+ const parent = document.createElement('div');
117
+ const a = document.createElement('span');
118
+ a.id = 'a';
119
+ const b = document.createElement('span');
120
+ b.id = 'b';
121
+ parent.append(a, b);
122
+ const parentFragment = new ElementFragment(parent);
123
+ const referenceChild = parentFragment.getChildElementFragments()[1];
124
+ parentFragment.removeChild(referenceChild);
125
+ const warnSpy = vi.spyOn(Log, 'warn').mockImplementation(() => { });
126
+ const c = document.createElement('span');
127
+ c.id = 'c';
128
+ const childFragment = Fragment.get(c);
129
+ await parentFragment.insertBefore(childFragment, referenceChild);
130
+ const ids = Array.from(parent.children).map(element => element.id);
131
+ expect(ids).toEqual(['a', 'c', 'b']);
132
+ expect(warnSpy).not.toHaveBeenCalledWith('[Haori]', 'Reference child not found in children.', referenceChild);
133
+ });
134
+ it('insertAfter で未追跡ノードが連続しても DOM 順を維持する', async () => {
135
+ const parent = document.createElement('div');
136
+ const a = document.createElement('span');
137
+ a.id = 'a';
138
+ const b = document.createElement('span');
139
+ b.id = 'b';
140
+ const c = document.createElement('span');
141
+ c.id = 'c';
142
+ const d = document.createElement('span');
143
+ d.id = 'd';
144
+ parent.append(a, b, c, d);
145
+ const parentFragment = new ElementFragment(parent);
146
+ const [aFragment, bFragment, cFragment] = parentFragment.getChildElementFragments();
147
+ const dFragment = parentFragment.getChildElementFragments()[3];
148
+ parentFragment.removeChild(bFragment);
149
+ parentFragment.removeChild(cFragment);
150
+ const warnSpy = vi.spyOn(Log, 'warn').mockImplementation(() => { });
151
+ const inserted = document.createElement('span');
152
+ inserted.id = 'n';
153
+ const insertedFragment = Fragment.get(inserted);
154
+ await parentFragment.insertAfter(insertedFragment, bFragment);
155
+ const ids = Array.from(parent.children).map(element => element.id);
156
+ expect(ids).toEqual(['a', 'b', 'n', 'c', 'd']);
157
+ expect(parentFragment.getChildElementFragments().map(fragment => fragment.getTarget().id)).toEqual([
158
+ aFragment.getTarget().id,
159
+ insertedFragment.getTarget().id,
160
+ dFragment.getTarget().id,
161
+ ]);
162
+ expect(warnSpy).not.toHaveBeenCalledWith('[Haori]', 'Reference child not found in children.', bFragment);
163
+ });
114
164
  });
115
165
  describe('ElementFragment の setValue', () => {
116
166
  it('text input に値を設定して同期される', async () => {