foldkit 0.90.0 → 0.91.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 (103) hide show
  1. package/README.md +21 -10
  2. package/dist/canvas/index.d.ts +5 -0
  3. package/dist/canvas/index.d.ts.map +1 -0
  4. package/dist/canvas/index.js +2 -0
  5. package/dist/canvas/paint.d.ts +14 -0
  6. package/dist/canvas/paint.d.ts.map +1 -0
  7. package/dist/canvas/paint.js +144 -0
  8. package/dist/canvas/public.d.ts +3 -0
  9. package/dist/canvas/public.d.ts.map +1 -0
  10. package/dist/canvas/public.js +1 -0
  11. package/dist/canvas/shape.d.ts +188 -0
  12. package/dist/canvas/shape.d.ts.map +1 -0
  13. package/dist/canvas/shape.js +103 -0
  14. package/dist/canvas/view.d.ts +38 -0
  15. package/dist/canvas/view.d.ts.map +1 -0
  16. package/dist/canvas/view.js +97 -0
  17. package/dist/devTools/overlay.d.ts.map +1 -1
  18. package/dist/devTools/overlay.js +148 -148
  19. package/dist/devTools/store.d.ts +1 -1
  20. package/dist/devTools/store.d.ts.map +1 -1
  21. package/dist/devTools/store.js +1 -2
  22. package/dist/html/index.d.ts +3 -3
  23. package/dist/html/index.d.ts.map +1 -1
  24. package/dist/index.d.ts +1 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +1 -0
  27. package/dist/runtime/crashUI.js +30 -30
  28. package/dist/runtime/runtime.d.ts.map +1 -1
  29. package/dist/runtime/runtime.js +15 -10
  30. package/dist/subscription/animationFrame.d.ts +53 -0
  31. package/dist/subscription/animationFrame.d.ts.map +1 -0
  32. package/dist/subscription/animationFrame.js +47 -0
  33. package/dist/subscription/public.d.ts +2 -0
  34. package/dist/subscription/public.d.ts.map +1 -1
  35. package/dist/subscription/public.js +1 -0
  36. package/dist/test/apps/bubbling.js +4 -4
  37. package/dist/test/apps/disabledButton.js +10 -10
  38. package/dist/test/apps/fileUpload.d.ts.map +1 -1
  39. package/dist/test/apps/fileUpload.js +13 -13
  40. package/dist/test/apps/interactions.d.ts.map +1 -1
  41. package/dist/test/apps/interactions.js +15 -15
  42. package/dist/test/apps/keypress.js +8 -8
  43. package/dist/test/apps/login.d.ts.map +1 -1
  44. package/dist/test/apps/login.js +32 -24
  45. package/dist/test/apps/logoutButton.d.ts.map +1 -1
  46. package/dist/test/apps/logoutButton.js +2 -2
  47. package/dist/test/apps/mountPanel.js +10 -10
  48. package/dist/test/apps/multiRole.js +3 -3
  49. package/dist/test/apps/pointer.d.ts.map +1 -1
  50. package/dist/test/apps/pointer.js +11 -11
  51. package/dist/test/apps/resumeUpload.d.ts.map +1 -1
  52. package/dist/test/apps/resumeUpload.js +8 -8
  53. package/dist/ui/animation/index.js +24 -24
  54. package/dist/ui/button/index.d.ts.map +1 -1
  55. package/dist/ui/button/index.js +6 -6
  56. package/dist/ui/calendar/index.d.ts.map +1 -1
  57. package/dist/ui/calendar/index.js +101 -99
  58. package/dist/ui/checkbox/index.d.ts.map +1 -1
  59. package/dist/ui/checkbox/index.js +15 -15
  60. package/dist/ui/combobox/shared.d.ts.map +1 -1
  61. package/dist/ui/combobox/shared.js +102 -90
  62. package/dist/ui/datePicker/index.js +4 -4
  63. package/dist/ui/dialog/index.d.ts.map +1 -1
  64. package/dist/ui/dialog/index.js +27 -27
  65. package/dist/ui/disclosure/index.d.ts.map +1 -1
  66. package/dist/ui/disclosure/index.js +24 -22
  67. package/dist/ui/dragAndDrop/index.d.ts +1 -1
  68. package/dist/ui/dragAndDrop/index.d.ts.map +1 -1
  69. package/dist/ui/dragAndDrop/index.js +15 -15
  70. package/dist/ui/fieldset/index.js +6 -6
  71. package/dist/ui/fileDrop/index.d.ts +2 -2
  72. package/dist/ui/fileDrop/index.d.ts.map +1 -1
  73. package/dist/ui/fileDrop/index.js +16 -16
  74. package/dist/ui/input/index.d.ts.map +1 -1
  75. package/dist/ui/input/index.js +15 -13
  76. package/dist/ui/listbox/multi.d.ts +1 -1
  77. package/dist/ui/listbox/shared.d.ts +1 -1
  78. package/dist/ui/listbox/shared.d.ts.map +1 -1
  79. package/dist/ui/listbox/shared.js +85 -79
  80. package/dist/ui/listbox/single.d.ts +1 -1
  81. package/dist/ui/menu/index.d.ts.map +1 -1
  82. package/dist/ui/menu/index.js +69 -67
  83. package/dist/ui/popover/index.d.ts.map +1 -1
  84. package/dist/ui/popover/index.js +41 -39
  85. package/dist/ui/radioGroup/index.d.ts.map +1 -1
  86. package/dist/ui/radioGroup/index.js +20 -20
  87. package/dist/ui/select/index.d.ts.map +1 -1
  88. package/dist/ui/select/index.js +13 -11
  89. package/dist/ui/slider/index.d.ts.map +1 -1
  90. package/dist/ui/slider/index.js +26 -26
  91. package/dist/ui/switch/index.d.ts.map +1 -1
  92. package/dist/ui/switch/index.js +14 -14
  93. package/dist/ui/tabs/index.d.ts.map +1 -1
  94. package/dist/ui/tabs/index.js +40 -36
  95. package/dist/ui/textarea/index.d.ts.map +1 -1
  96. package/dist/ui/textarea/index.js +15 -13
  97. package/dist/ui/toast/index.d.ts.map +1 -1
  98. package/dist/ui/toast/index.js +27 -27
  99. package/dist/ui/tooltip/index.d.ts.map +1 -1
  100. package/dist/ui/tooltip/index.js +23 -23
  101. package/dist/ui/virtualList/index.d.ts.map +1 -1
  102. package/dist/ui/virtualList/index.js +18 -15
  103. package/package.json +5 -1
@@ -33,19 +33,19 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
33
33
  },
34
34
  }));
35
35
  // VIEW
36
- const { div, button, Class, Disabled, OnClick } = html();
37
- const submitButton = (isEnabled) => button([
38
- Class('submit'),
39
- ...(isEnabled ? [OnClick(ClickedSubmit())] : [Disabled(true)]),
36
+ const h = html();
37
+ const submitButton = (isEnabled) => h.button([
38
+ h.Class('submit'),
39
+ ...(isEnabled ? [h.OnClick(ClickedSubmit())] : [h.Disabled(true)]),
40
40
  ], ['Submit']);
41
41
  /** Plain view — no dialog wrapper. */
42
- export const view = (model) => div([], [
43
- button([OnClick(ClickedToggle())], ['Toggle']),
42
+ export const view = (model) => h.div([], [
43
+ h.button([h.OnClick(ClickedToggle())], ['Toggle']),
44
44
  submitButton(model.isEnabled),
45
45
  ]);
46
46
  /** View with submit button inside a dialog's panelContent. */
47
- export const viewWithDialog = (model) => div([], [
48
- button([OnClick(ClickedToggle())], ['Toggle']),
47
+ export const viewWithDialog = (model) => h.div([], [
48
+ h.button([h.OnClick(ClickedToggle())], ['Toggle']),
49
49
  Dialog.view({
50
50
  model: model.dialog,
51
51
  toParentMessage: (dialogMessage) => GotDialogMessage({ message: dialogMessage }),
@@ -54,7 +54,7 @@ export const viewWithDialog = (model) => div([], [
54
54
  ]);
55
55
  /** View using Dialog.lazy with panelContent passed dynamically. */
56
56
  const lazyDialogView = Dialog.lazy({});
57
- export const viewWithLazyDialog = (model) => div([], [
58
- button([OnClick(ClickedToggle())], ['Toggle']),
57
+ export const viewWithLazyDialog = (model) => h.div([], [
58
+ h.button([h.OnClick(ClickedToggle())], ['Toggle']),
59
59
  lazyDialogView(model.dialog, (dialogMessage) => GotDialogMessage({ message: dialogMessage }), submitButton(model.isEnabled)),
60
60
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"fileUpload.d.ts","sourceRoot":"","sources":["../../../src/test/apps/fileUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC,IAAI,CAAC,CAAA;CACnC,CAAC,CAAA;AAEF,eAAO,MAAM,YAAY,EAAE,KAA6B,CAAA;AAIxD,eAAO,MAAM,aAAa;;EAA+C,CAAA;AAEzE,eAAO,MAAM,OAAO;;IAA2B,CAAA;AAC/C,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAMrC,CAAA;AAOH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IA2BjC,CAAA"}
1
+ {"version":3,"file":"fileUpload.d.ts","sourceRoot":"","sources":["../../../src/test/apps/fileUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,MAAM,MAAM,KAAK,GAAG,QAAQ,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC,IAAI,CAAC,CAAA;CACnC,CAAC,CAAA;AAEF,eAAO,MAAM,YAAY,EAAE,KAA6B,CAAA;AAIxD,eAAO,MAAM,aAAa;;EAA+C,CAAA;AAEzE,eAAO,MAAM,OAAO;;IAA2B,CAAA;AAC/C,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAMrC,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IA2BjC,CAAA"}
@@ -11,19 +11,19 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
11
11
  ReceivedFiles: ({ files }) => [{ ...model, receivedFiles: files }, []],
12
12
  }));
13
13
  // VIEW
14
- const { div, input, AriaLabel, Key, Type, OnFileChange, OnDropFiles } = html();
15
- export const view = (model) => div([], [
16
- input([
17
- Key('file-input'),
18
- AriaLabel('resume'),
19
- Type('file'),
20
- OnFileChange(files => ReceivedFiles({ files })),
14
+ const h = html();
15
+ export const view = (model) => h.div([], [
16
+ h.input([
17
+ h.Key('file-input'),
18
+ h.AriaLabel('resume'),
19
+ h.Type('file'),
20
+ h.OnFileChange(files => ReceivedFiles({ files })),
21
21
  ]),
22
- div([
23
- Key('drop-zone'),
24
- AriaLabel('attachments'),
25
- OnDropFiles(files => ReceivedFiles({ files })),
22
+ h.div([
23
+ h.Key('drop-zone'),
24
+ h.AriaLabel('attachments'),
25
+ h.OnDropFiles(files => ReceivedFiles({ files })),
26
26
  ], ['Drop files here']),
27
- div([Key('received-count')], [`count=${String(model.receivedFiles.length)}`]),
28
- div([Key('received-names')], [`names=${model.receivedFiles.map(file => file.name).join(',')}`]),
27
+ h.div([h.Key('received-count')], [`count=${String(model.receivedFiles.length)}`]),
28
+ h.div([h.Key('received-names')], [`names=${model.receivedFiles.map(file => file.name).join(',')}`]),
29
29
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"interactions.d.ts","sourceRoot":"","sources":["../../../src/test/apps/interactions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,eAAO,MAAM,KAAK;;;;;;EAMhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAC/C,eAAO,MAAM,mBAAmB,iFAA2B,CAAA;AAC3D,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAC/C,eAAO,MAAM,YAAY,0EAAoB,CAAA;AAC7C,eAAO,MAAM,YAAY,0EAAoB,CAAA;AAC7C,eAAO,MAAM,aAAa;;EAA0C,CAAA;AAEpE,eAAO,MAAM,OAAO;;IAOlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAcrC,CAAA;AAqBH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IA2BjC,CAAA"}
1
+ {"version":3,"file":"interactions.d.ts","sourceRoot":"","sources":["../../../src/test/apps/interactions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEhD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,eAAO,MAAM,KAAK;;;;;;EAMhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAC/C,eAAO,MAAM,mBAAmB,iFAA2B,CAAA;AAC3D,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAC/C,eAAO,MAAM,YAAY,0EAAoB,CAAA;AAC7C,eAAO,MAAM,YAAY,0EAAoB,CAAA;AAC7C,eAAO,MAAM,aAAa;;EAA0C,CAAA;AAEpE,eAAO,MAAM,OAAO;;IAOlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAcrC,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IA2BjC,CAAA"}
@@ -45,22 +45,22 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
45
45
  ChangedSelect: ({ value }) => [{ ...model, changed: value }, []],
46
46
  }));
47
47
  // VIEW
48
- const { div, button, input, select, option, OnClick, OnDoubleClick, OnMouseEnter, OnFocus, OnBlur, OnChange, Role, AriaLabel, Value, } = html();
49
- export const view = (model) => div([], [
50
- button([
51
- OnClick(ClickedButton()),
52
- OnDoubleClick(DoubleClickedButton()),
53
- OnMouseEnter(HoveredTarget()),
54
- AriaLabel('action'),
48
+ const h = html();
49
+ export const view = (model) => h.div([], [
50
+ h.button([
51
+ h.OnClick(ClickedButton()),
52
+ h.OnDoubleClick(DoubleClickedButton()),
53
+ h.OnMouseEnter(HoveredTarget()),
54
+ h.AriaLabel('action'),
55
55
  ], [`clicks=${model.clicks} dbl=${model.doubleClicks}`]),
56
- input([
57
- Role('textbox'),
58
- AriaLabel('name'),
59
- OnFocus(FocusedInput()),
60
- OnBlur(BlurredInput()),
56
+ h.input([
57
+ h.Role('textbox'),
58
+ h.AriaLabel('name'),
59
+ h.OnFocus(FocusedInput()),
60
+ h.OnBlur(BlurredInput()),
61
61
  ]),
62
- select([AriaLabel('fruit'), OnChange(value => ChangedSelect({ value }))], [
63
- option([Value('apple')], ['Apple']),
64
- option([Value('banana')], ['Banana']),
62
+ h.select([h.AriaLabel('fruit'), h.OnChange(value => ChangedSelect({ value }))], [
63
+ h.option([h.Value('apple')], ['Apple']),
64
+ h.option([h.Value('banana')], ['Banana']),
65
65
  ]),
66
66
  ]);
@@ -27,13 +27,13 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
27
27
  ],
28
28
  }));
29
29
  // VIEW
30
- const { div, span, Id, Class, AriaLabel, Role, OnKeyDown } = html();
31
- export const view = (model) => div([
32
- Id('key-app'),
33
- Role('application'),
34
- AriaLabel('Key press area'),
35
- OnKeyDown((key, modifiers) => modifiers.shiftKey ? PressedShiftKey({ key }) : PressedKey({ key })),
30
+ const h = html();
31
+ export const view = (model) => h.div([
32
+ h.Id('key-app'),
33
+ h.Role('application'),
34
+ h.AriaLabel('Key press area'),
35
+ h.OnKeyDown((key, modifiers) => modifiers.shiftKey ? PressedShiftKey({ key }) : PressedKey({ key })),
36
36
  ], [
37
- span([Class('last-key'), AriaLabel('Last key')], [model.lastKey]),
38
- span([Class('shifted'), AriaLabel('Shift pressed')], [model.isShifted ? 'true' : 'false']),
37
+ h.span([h.Class('last-key'), h.AriaLabel('Last key')], [model.lastKey]),
38
+ h.span([h.Class('shifted'), h.AriaLabel('Shift pressed')], [model.isShifted ? 'true' : 'false']),
39
39
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/test/apps/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,eAAO,MAAM,KAAK;;;;;;EAMhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,YAAY;;EAAyC,CAAA;AAClE,eAAO,MAAM,eAAe;;EAA4C,CAAA;AACxE,eAAO,MAAM,cAAc,4EAAsB,CAAA;AACjD,eAAO,MAAM,qBAAqB;;EAEhC,CAAA;AACF,eAAO,MAAM,kBAAkB;;EAA+C,CAAA;AAC9E,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAE/C,eAAO,MAAM,OAAO;;;;;;;;+EAOlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,YAAY;;;iBAIyC,CAAA;AAIlE,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAyBxD,CAAA;AA2BH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IAkEjC,CAAA"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/test/apps/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAc,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,eAAO,MAAM,KAAK;;;;;;EAMhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,YAAY;;EAAyC,CAAA;AAClE,eAAO,MAAM,eAAe;;EAA4C,CAAA;AACxE,eAAO,MAAM,cAAc,4EAAsB,CAAA;AACjD,eAAO,MAAM,qBAAqB;;EAEhC,CAAA;AACF,eAAO,MAAM,kBAAkB;;EAA+C,CAAA;AAC9E,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAE/C,eAAO,MAAM,OAAO;;;;;;;;+EAOlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,YAAY;;;iBAIyC,CAAA;AAIlE,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAyBxD,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IA6EjC,CAAA"}
@@ -59,31 +59,39 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
59
59
  ],
60
60
  }));
61
61
  // VIEW
62
- const { div, form, input, button, span, label, p, OnInput, OnSubmit, OnClick, Id, For, Class, Type, Value, Placeholder, Role, AriaExpanded, AriaLabel, Disabled, } = html();
63
- export const view = (model) => div([Id('app')], [
64
- M.value(model.status).pipe(M.withReturnType(), M.when('Submitting', () => form([Class('login-form'), Disabled(true)], [button([Type('submit'), Disabled(true)], ['Signing in...'])])), M.when('LoggedIn', () => div([Class('logged-in'), Role('region'), AriaLabel('User session')], [
65
- span([Class('greeting'), Role('status')], [`Welcome, ${model.username}!`]),
66
- button([OnClick(ClickedLogout()), Role('button'), AriaExpanded(false)], ['Log out']),
67
- ])), M.when('Error', () => div([], [
68
- p([Class('error'), Role('alert')], [model.error]),
69
- button([OnClick(SubmittedLogin()), Class('retry')], ['Retry']),
70
- ])), M.when('Idle', () => form([OnSubmit(SubmittedLogin()), Class('login-form')], [
71
- label([For('email'), Class('sr-only')], ['Email']),
72
- input([
73
- Id('email'),
74
- Type('email'),
75
- Placeholder('Email'),
76
- Value(model.email),
77
- OnInput(value => UpdatedEmail({ value })),
62
+ const h = html();
63
+ export const view = (model) => h.div([h.Id('app')], [
64
+ M.value(model.status).pipe(M.withReturnType(), M.when('Submitting', () => h.form([h.Class('login-form'), h.Disabled(true)], [h.button([h.Type('submit'), h.Disabled(true)], ['Signing in...'])])), M.when('LoggedIn', () => h.div([
65
+ h.Class('logged-in'),
66
+ h.Role('region'),
67
+ h.AriaLabel('User session'),
68
+ ], [
69
+ h.span([h.Class('greeting'), h.Role('status')], [`Welcome, ${model.username}!`]),
70
+ h.button([
71
+ h.OnClick(ClickedLogout()),
72
+ h.Role('button'),
73
+ h.AriaExpanded(false),
74
+ ], ['Log out']),
75
+ ])), M.when('Error', () => h.div([], [
76
+ h.p([h.Class('error'), h.Role('alert')], [model.error]),
77
+ h.button([h.OnClick(SubmittedLogin()), h.Class('retry')], ['Retry']),
78
+ ])), M.when('Idle', () => h.form([h.OnSubmit(SubmittedLogin()), h.Class('login-form')], [
79
+ h.label([h.For('email'), h.Class('sr-only')], ['Email']),
80
+ h.input([
81
+ h.Id('email'),
82
+ h.Type('email'),
83
+ h.Placeholder('Email'),
84
+ h.Value(model.email),
85
+ h.OnInput(value => UpdatedEmail({ value })),
78
86
  ]),
79
- label([For('password'), Class('sr-only')], ['Password']),
80
- input([
81
- Id('password'),
82
- Type('password'),
83
- Placeholder('Password'),
84
- Value(model.password),
85
- OnInput(value => UpdatedPassword({ value })),
87
+ h.label([h.For('password'), h.Class('sr-only')], ['Password']),
88
+ h.input([
89
+ h.Id('password'),
90
+ h.Type('password'),
91
+ h.Placeholder('Password'),
92
+ h.Value(model.password),
93
+ h.OnInput(value => UpdatedPassword({ value })),
86
94
  ]),
87
- button([Type('submit'), Class('primary'), Disabled(false)], ['Sign in']),
95
+ h.button([h.Type('submit'), h.Class('primary'), h.Disabled(false)], ['Sign in']),
88
96
  ])), M.exhaustive),
89
97
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"logoutButton.d.ts","sourceRoot":"","sources":["../../../src/test/apps/logoutButton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAM/C,eAAO,MAAM,KAAK;;EAAgC,CAAA;AAClD,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAC/C,eAAO,MAAM,eAAe,6EAAuB,CAAA;AAEnD,eAAO,MAAM,OAAO,4KAA4C,CAAA;AAChE,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,eAAe,6EAAuB,CAAA;AAEnD,eAAO,MAAM,UAAU,iGAA6B,CAAA;AACpD,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAI/C,eAAO,MAAM,YAAY,EAAE,KAA4B,CAAA;AAIvD,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAShE,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IAC0C,CAAA"}
1
+ {"version":3,"file":"logoutButton.d.ts","sourceRoot":"","sources":["../../../src/test/apps/logoutButton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAM/C,eAAO,MAAM,KAAK;;EAAgC,CAAA;AAClD,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,aAAa,2EAAqB,CAAA;AAC/C,eAAO,MAAM,eAAe,6EAAuB,CAAA;AAEnD,eAAO,MAAM,OAAO,4KAA4C,CAAA;AAChE,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,eAAe,6EAAuB,CAAA;AAEnD,eAAO,MAAM,UAAU,iGAA6B,CAAA;AACpD,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC,IAAI,CAAA;AAI/C,eAAO,MAAM,YAAY,EAAE,KAA4B,CAAA;AAIvD,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAShE,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IAIjC,CAAA"}
@@ -18,5 +18,5 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
18
18
  CompletedAction: () => [model, [], Option.none()],
19
19
  }));
20
20
  // VIEW
21
- const { div, button, OnClick, Role } = html();
22
- export const view = (model) => div([], [button([OnClick(ClickedLogout()), Role('button')], [model.label])]);
21
+ const h = html();
22
+ export const view = (model) => h.div([], [h.button([h.OnClick(ClickedLogout()), h.Role('button')], [model.label])]);
@@ -66,13 +66,13 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
66
66
  ScrolledTo: () => [model, []],
67
67
  }));
68
68
  // VIEW
69
- const { div, button, span, OnMount, OnClick, Class, Key } = html();
70
- export const view = (model) => div([Class('panel-test')], [
71
- button([Key('toggle'), OnClick(ClickedToggle()), OnMount(FocusButton())], [model.isOpen ? 'Close' : 'Open']),
69
+ const h = html();
70
+ export const view = (model) => h.div([h.Class('panel-test')], [
71
+ h.button([h.Key('toggle'), h.OnClick(ClickedToggle()), h.OnMount(FocusButton())], [model.isOpen ? 'Close' : 'Open']),
72
72
  ...(model.isOpen
73
73
  ? [
74
- div([Key('panel'), OnMount(MeasurePanel())], [
75
- span([], [
74
+ h.div([h.Key('panel'), h.OnMount(MeasurePanel())], [
75
+ h.span([], [
76
76
  Option.match(model.measuredWidth, {
77
77
  onNone: () => 'unmeasured',
78
78
  onSome: width => `width: ${width}`,
@@ -85,13 +85,13 @@ export const view = (model) => div([Class('panel-test')], [
85
85
  /** A view that always renders both the toggle button and the panel, exposing
86
86
  * two MeasurePanel mounts simultaneously so we can exercise the (name,
87
87
  * occurrence) tracking. */
88
- export const twoPanelView = (model) => div([Class('two-panels')], [
89
- div([Key('panel-a'), OnMount(MeasurePanel())], [span([], ['A'])]),
90
- div([Key('panel-b'), OnMount(MeasurePanel())], [span([], ['B'])]),
91
- button([Key('inc'), OnClick(ClickedIncrement())], [`count: ${model.count}`]),
88
+ export const twoPanelView = (model) => h.div([h.Class('two-panels')], [
89
+ h.div([h.Key('panel-a'), h.OnMount(MeasurePanel())], [h.span([], ['A'])]),
90
+ h.div([h.Key('panel-b'), h.OnMount(MeasurePanel())], [h.span([], ['B'])]),
91
+ h.button([h.Key('inc'), h.OnClick(ClickedIncrement())], [`count: ${model.count}`]),
92
92
  ]);
93
93
  /** A view that renders an arg-bearing Mount so Scene tests can exercise
94
94
  * Instance-based mount matching (matcher's args structurally equal the
95
95
  * pending Mount's args). The chosen `offset` flows through `ScrollList`'s
96
96
  * args and is observable on the rendered Mount marker. */
97
- export const scrollListView = (offset) => div([Class('scroll-list')], [div([Key('list'), OnMount(ScrollList({ offset }))], [])]);
97
+ export const scrollListView = (offset) => h.div([h.Class('scroll-list')], [h.div([h.Key('list'), h.OnMount(ScrollList({ offset }))], [])]);
@@ -13,7 +13,7 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
13
13
  ClickedFallback: () => [{ ...model, clicks: model.clicks + 1 }, []],
14
14
  }));
15
15
  // VIEW
16
- const { div, OnClick, Role } = html();
17
- export const view = (model) => div([], [
18
- div([Role('doc-subtitle heading'), OnClick(ClickedFallback())], [`Fallback element clicks=${model.clicks}`]),
16
+ const h = html();
17
+ export const view = (model) => h.div([], [
18
+ h.div([h.Role('doc-subtitle heading'), h.OnClick(ClickedFallback())], [`Fallback element clicks=${model.clicks}`]),
19
19
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"pointer.d.ts","sourceRoot":"","sources":["../../../src/test/apps/pointer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,eAAO,MAAM,KAAK;;;;EAIhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAOrC,QAAA,MAAM,OAAO;;;;IAAmD,CAAA;AAChE,KAAK,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIlC,eAAO,MAAM,YAAY,EAAE,KAI1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAqBrC,CAAA;AAOH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IA2BjC,CAAA"}
1
+ {"version":3,"file":"pointer.d.ts","sourceRoot":"","sources":["../../../src/test/apps/pointer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAKrD,eAAO,MAAM,KAAK;;;;EAIhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAOrC,QAAA,MAAM,OAAO;;;;IAAmD,CAAA;AAChE,KAAK,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIlC,eAAO,MAAM,YAAY,EAAE,KAI1B,CAAA;AAID,eAAO,MAAM,MAAM,GACjB,OAAO,KAAK,EACZ,SAAS,OAAO,KACf,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAqBrC,CAAA;AAMH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IA2BjC,CAAA"}
@@ -37,16 +37,16 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
37
37
  ],
38
38
  }));
39
39
  // VIEW
40
- const { div, span, button, OnPointerDown, OnPointerUp, AriaLabel } = html();
41
- export const view = (model) => div([], [
42
- button([
43
- AriaLabel('pointer target'),
44
- OnPointerDown(pointerType => Option.some(PressedPointerDown({ pointerType }))),
45
- OnPointerUp((_screenX, _screenY, pointerType, _timeStamp) => Option.some(ReleasedPointerUp({ pointerType }))),
40
+ const h = html();
41
+ export const view = (model) => h.div([], [
42
+ h.button([
43
+ h.AriaLabel('pointer target'),
44
+ h.OnPointerDown(pointerType => Option.some(PressedPointerDown({ pointerType }))),
45
+ h.OnPointerUp((_screenX, _screenY, pointerType, _timeStamp) => Option.some(ReleasedPointerUp({ pointerType }))),
46
46
  ], [`down=${model.pointerDownCount} up=${model.pointerUpCount}`]),
47
- div([
48
- AriaLabel('nested target'),
49
- OnPointerDown(pointerType => Option.some(PressedPointerDown({ pointerType }))),
50
- ], [span([], [`type=${model.lastPointerType}`])]),
51
- span([AriaLabel('no handler')], ['orphan']),
47
+ h.div([
48
+ h.AriaLabel('nested target'),
49
+ h.OnPointerDown(pointerType => Option.some(PressedPointerDown({ pointerType }))),
50
+ ], [h.span([], [`type=${model.lastPointerType}`])]),
51
+ h.span([h.AriaLabel('no handler')], ['orphan']),
52
52
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"resumeUpload.d.ts","sourceRoot":"","sources":["../../../src/test/apps/resumeUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAsB,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEvE,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AAEjD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAMrD,eAAO,MAAM,KAAK;;;;EAIhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,mBAAmB,iFAA2B,CAAA;AAC3D,eAAO,MAAM,cAAc;;EAEzB,CAAA;AACF,eAAO,MAAM,qBAAqB,mFAA6B,CAAA;AAC/D,eAAO,MAAM,oBAAoB;;EAE/B,CAAA;AACF,eAAO,MAAM,iBAAiB,+EAAyB,CAAA;AACvD,eAAO,MAAM,mBAAmB,iFAA2B,CAAA;AAE3D,eAAO,MAAM,OAAO;;;;oKAOlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,YAAY;;;;;iBAaxB,CAAA;AAED,eAAO,MAAM,iBAAiB;;;;;;;iBAU7B,CAAA;AAID,eAAO,MAAM,YAAY,EAAE,KAI1B,CAAA;AAID,KAAK,YAAY,GAAG,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAE7E,eAAO,MAAM,MAAM,GAAI,OAAO,KAAK,EAAE,SAAS,OAAO,KAAG,YAmCrD,CAAA;AAqCH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IAkBjC,CAAA"}
1
+ {"version":3,"file":"resumeUpload.d.ts","sourceRoot":"","sources":["../../../src/test/apps/resumeUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAsB,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAEvE,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AAEjD,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,qBAAqB,CAAA;AAMrD,eAAO,MAAM,KAAK;;;;EAIhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,eAAO,MAAM,mBAAmB,iFAA2B,CAAA;AAC3D,eAAO,MAAM,cAAc;;EAEzB,CAAA;AACF,eAAO,MAAM,qBAAqB,mFAA6B,CAAA;AAC/D,eAAO,MAAM,oBAAoB;;EAE/B,CAAA;AACF,eAAO,MAAM,iBAAiB,+EAAyB,CAAA;AACvD,eAAO,MAAM,mBAAmB,iFAA2B,CAAA;AAE3D,eAAO,MAAM,OAAO;;;;oKAOlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAIzC,eAAO,MAAM,YAAY;;;;;iBAaxB,CAAA;AAED,eAAO,MAAM,iBAAiB;;;;;;;iBAU7B,CAAA;AAID,eAAO,MAAM,YAAY,EAAE,KAI1B,CAAA;AAID,KAAK,YAAY,GAAG,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAE7E,eAAO,MAAM,MAAM,GAAI,OAAO,KAAK,EAAE,SAAS,OAAO,KAAG,YAmCrD,CAAA;AAuBH,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,IAkBjC,CAAA"}
@@ -73,18 +73,18 @@ export const update = (model, message) => M.value(message).pipe(M.withReturnType
73
73
  ],
74
74
  }));
75
75
  // VIEW
76
- const { div, section, p, img, button, empty, keyed, Alt, AriaLabel, Class, OnClick, Role, Src, } = html();
76
+ const h = html();
77
77
  const previewView = (model) => Option.match(model.maybePreviewDataUrl, {
78
- onSome: dataUrl => img([Src(dataUrl), Alt('Resume preview')]),
79
- onNone: () => M.value(model.readStatus).pipe(M.withReturnType(), M.when('Reading', () => keyed('p')('reading', [Role('status')], ['Reading preview...'])), M.when('Failed', () => keyed('p')('failed', [Role('alert')], ['Could not read preview'])), M.when('Idle', () => empty), M.exhaustive),
78
+ onSome: dataUrl => h.img([h.Src(dataUrl), h.Alt('Resume preview')]),
79
+ onNone: () => M.value(model.readStatus).pipe(M.withReturnType(), M.when('Reading', () => h.keyed('p')('reading', [h.Role('status')], ['Reading preview...'])), M.when('Failed', () => h.keyed('p')('failed', [h.Role('alert')], ['Could not read preview'])), M.when('Idle', () => h.empty), M.exhaustive),
80
80
  });
81
- export const view = (model) => div([Class('resume-upload')], [
81
+ export const view = (model) => h.div([h.Class('resume-upload')], [
82
82
  Option.match(model.maybeResume, {
83
- onNone: () => button([OnClick(ClickedChooseResume())], ['Choose resume']),
84
- onSome: file => section([AriaLabel('Selected resume')], [
85
- p([Class('resume-name')], [File.name(file)]),
83
+ onNone: () => h.button([h.OnClick(ClickedChooseResume())], ['Choose resume']),
84
+ onSome: file => h.section([h.AriaLabel('Selected resume')], [
85
+ h.p([h.Class('resume-name')], [File.name(file)]),
86
86
  previewView(model),
87
- button([OnClick(ClickedRemoveResume())], ['Remove']),
87
+ h.button([h.OnClick(ClickedRemoveResume())], ['Remove']),
88
88
  ]),
89
89
  }),
90
90
  ]);
@@ -14,60 +14,60 @@ export { RequestFrame, WaitForAnimationSettled, defaultLeaveCommand, update };
14
14
  * - `data-transition` — any animation is active
15
15
  */
16
16
  export const view = (config) => {
17
- const { AriaHidden, Class, DataAttribute, Id, Style, div, empty, keyed } = html();
17
+ const h = html();
18
18
  const { model: { id, isShowing, transitionState }, content, className, attributes = [], element = 'div', animateSize = false, } = config;
19
19
  const isLeaving = transitionState === 'LeaveStart' || transitionState === 'LeaveAnimating';
20
20
  const isVisible = isShowing || isLeaving;
21
21
  const transitionAttributes = M.value(transitionState).pipe(M.when('EnterStart', () => [
22
- DataAttribute('closed', ''),
23
- DataAttribute('enter', ''),
24
- DataAttribute('transition', ''),
22
+ h.DataAttribute('closed', ''),
23
+ h.DataAttribute('enter', ''),
24
+ h.DataAttribute('transition', ''),
25
25
  ]), M.when('EnterAnimating', () => [
26
- DataAttribute('enter', ''),
27
- DataAttribute('transition', ''),
26
+ h.DataAttribute('enter', ''),
27
+ h.DataAttribute('transition', ''),
28
28
  ]), M.when('LeaveStart', () => [
29
- DataAttribute('leave', ''),
30
- DataAttribute('transition', ''),
29
+ h.DataAttribute('leave', ''),
30
+ h.DataAttribute('transition', ''),
31
31
  ]), M.when('LeaveAnimating', () => [
32
- DataAttribute('closed', ''),
33
- DataAttribute('leave', ''),
34
- DataAttribute('transition', ''),
32
+ h.DataAttribute('closed', ''),
33
+ h.DataAttribute('leave', ''),
34
+ h.DataAttribute('transition', ''),
35
35
  ]), M.orElse(() => []));
36
36
  if (animateSize) {
37
37
  const isClosed = transitionState === 'EnterStart' ||
38
38
  transitionState === 'LeaveAnimating' ||
39
39
  !isVisible;
40
- return div([
41
- Style({
40
+ return h.div([
41
+ h.Style({
42
42
  display: 'grid',
43
43
  gridTemplateRows: isClosed ? '0fr' : '1fr',
44
44
  transition: 'grid-template-rows 200ms ease-out',
45
45
  overflow: 'hidden',
46
46
  }),
47
47
  ], [
48
- div([
49
- Style({ minHeight: '0px', overflow: 'hidden' }),
50
- ...(!isVisible ? [AriaHidden(true)] : []),
48
+ h.div([
49
+ h.Style({ minHeight: '0px', overflow: 'hidden' }),
50
+ ...(!isVisible ? [h.AriaHidden(true)] : []),
51
51
  ], [
52
- keyed(element)(id, [
53
- Id(id),
52
+ h.keyed(element)(id, [
53
+ h.Id(id),
54
54
  ...(isClosed && transitionState === 'Idle'
55
- ? [DataAttribute('closed', '')]
55
+ ? [h.DataAttribute('closed', '')]
56
56
  : []),
57
57
  ...transitionAttributes,
58
- ...(className ? [Class(className)] : []),
58
+ ...(className ? [h.Class(className)] : []),
59
59
  ...attributes,
60
60
  ], [content]),
61
61
  ]),
62
62
  ]);
63
63
  }
64
64
  if (!isVisible) {
65
- return empty;
65
+ return h.empty;
66
66
  }
67
- return keyed(element)(id, [
68
- Id(id),
67
+ return h.keyed(element)(id, [
68
+ h.Id(id),
69
69
  ...transitionAttributes,
70
- ...(className ? [Class(className)] : []),
70
+ ...(className ? [h.Class(className)] : []),
71
71
  ...attributes,
72
72
  ], [content]);
73
73
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/button/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAI/C,0FAA0F;AAC1F,MAAM,MAAM,gBAAgB,CAAC,aAAa,IAAI,QAAQ,CAAC;IACrD,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;CAChD,CAAC,CAAA;AAEF,wDAAwD;AACxD,MAAM,MAAM,UAAU,CAAC,aAAa,IAAI,QAAQ,CAAC;IAC/C,MAAM,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAA;IAC7D,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;IACpC,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,CAAC,CAAA;AAEF,2HAA2H;AAC3H,eAAO,MAAM,IAAI,GAAI,aAAa,EAChC,QAAQ,UAAU,CAAC,aAAa,CAAC,KAChC,IAgCF,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/button/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAI/C,0FAA0F;AAC1F,MAAM,MAAM,gBAAgB,CAAC,aAAa,IAAI,QAAQ,CAAC;IACrD,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAA;CAChD,CAAC,CAAA;AAEF,wDAAwD;AACxD,MAAM,MAAM,UAAU,CAAC,aAAa,IAAI,QAAQ,CAAC;IAC/C,MAAM,EAAE,CAAC,UAAU,EAAE,gBAAgB,CAAC,aAAa,CAAC,KAAK,IAAI,CAAA;IAC7D,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;IACpC,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,CAAC,CAAA;AAEF,2HAA2H;AAC3H,eAAO,MAAM,IAAI,GAAI,aAAa,EAChC,QAAQ,UAAU,CAAC,aAAa,CAAC,KAChC,IA+BF,CAAA"}
@@ -2,16 +2,16 @@ import { Predicate } from 'effect';
2
2
  import { html } from '../../html/index.js';
3
3
  /** Renders an accessible button by building attribute groups and delegating layout to the consumer's `toView` callback. */
4
4
  export const view = (config) => {
5
- const { Autofocus, AriaDisabled, DataAttribute, OnClick, Tabindex, Type } = html();
5
+ const h = html();
6
6
  const { toView, onClick, isDisabled = false, type = 'button', isAutofocus = false, } = config;
7
7
  const disabledAttributes = isDisabled
8
- ? [AriaDisabled(true), DataAttribute('disabled', '')]
8
+ ? [h.AriaDisabled(true), h.DataAttribute('disabled', '')]
9
9
  : [];
10
- const clickAttributes = Predicate.isNotUndefined(onClick) && !isDisabled ? [OnClick(onClick)] : [];
11
- const autofocusAttributes = isAutofocus ? [Autofocus(true)] : [];
10
+ const clickAttributes = Predicate.isNotUndefined(onClick) && !isDisabled ? [h.OnClick(onClick)] : [];
11
+ const autofocusAttributes = isAutofocus ? [h.Autofocus(true)] : [];
12
12
  const buttonAttributes = [
13
- Type(type),
14
- Tabindex(0),
13
+ h.Type(type),
14
+ h.Tabindex(0),
15
15
  ...disabledAttributes,
16
16
  ...clickAttributes,
17
17
  ...autofocusAttributes,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/calendar/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ui/calendar/index.ts"],"names":[],"mappings":"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"}