@sectile/dom 0.7.0 → 0.8.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 (290) hide show
  1. package/README.md +3 -1
  2. package/dist/accordion.d.ts +0 -1
  3. package/dist/accordion.js +4 -1
  4. package/dist/accordion.js.map +1 -1
  5. package/dist/alert-dialog.d.ts +0 -1
  6. package/dist/calendar.d.ts +0 -1
  7. package/dist/calendar.js +4 -1
  8. package/dist/calendar.js.map +1 -1
  9. package/dist/carousel.d.ts +0 -1
  10. package/dist/carousel.js +5 -1
  11. package/dist/carousel.js.map +1 -1
  12. package/dist/cascade-list.d.ts +51 -0
  13. package/dist/cascade-list.js +166 -0
  14. package/dist/cascade-list.js.map +1 -0
  15. package/dist/cascade-select.d.ts +1 -2
  16. package/dist/cascade-select.js +20 -47
  17. package/dist/cascade-select.js.map +1 -1
  18. package/dist/checkbox-group.d.ts +0 -1
  19. package/dist/checkbox.d.ts +0 -1
  20. package/dist/color-picker.d.ts +0 -1
  21. package/dist/combobox.d.ts +0 -1
  22. package/dist/combobox.js +32 -2
  23. package/dist/combobox.js.map +1 -1
  24. package/dist/data-grid.d.ts +66 -0
  25. package/dist/data-grid.js +50 -0
  26. package/dist/data-grid.js.map +1 -0
  27. package/dist/data-table.d.ts +100 -0
  28. package/dist/data-table.js +359 -0
  29. package/dist/data-table.js.map +1 -0
  30. package/dist/data-tree-grid.d.ts +73 -0
  31. package/dist/data-tree-grid.js +53 -0
  32. package/dist/data-tree-grid.js.map +1 -0
  33. package/dist/date-field.d.ts +1 -2
  34. package/dist/date-field.js +17 -5
  35. package/dist/date-field.js.map +1 -1
  36. package/dist/date-picker.d.ts +3 -2
  37. package/dist/date-picker.js +13 -4
  38. package/dist/date-picker.js.map +1 -1
  39. package/dist/date-range-field.d.ts +0 -1
  40. package/dist/date-range-field.js +7 -2
  41. package/dist/date-range-field.js.map +1 -1
  42. package/dist/date-range-picker.d.ts +2 -2
  43. package/dist/date-range-picker.js +10 -5
  44. package/dist/date-range-picker.js.map +1 -1
  45. package/dist/date-time-field.d.ts +1 -2
  46. package/dist/date-time-field.js +15 -4
  47. package/dist/date-time-field.js.map +1 -1
  48. package/dist/date-time-picker.d.ts +2 -2
  49. package/dist/date-time-picker.js +23 -10
  50. package/dist/date-time-picker.js.map +1 -1
  51. package/dist/date-time-range-picker.d.ts +2 -2
  52. package/dist/date-time-range-picker.js +26 -12
  53. package/dist/date-time-range-picker.js.map +1 -1
  54. package/dist/dialog.d.ts +0 -1
  55. package/dist/disclosure.d.ts +0 -1
  56. package/dist/drawer.d.ts +0 -1
  57. package/dist/editable.d.ts +0 -1
  58. package/dist/feed.d.ts +0 -1
  59. package/dist/feed.js +4 -0
  60. package/dist/feed.js.map +1 -1
  61. package/dist/form.d.ts +51 -11
  62. package/dist/form.js +608 -58
  63. package/dist/form.js.map +1 -1
  64. package/dist/grid.d.ts +3 -3
  65. package/dist/grid.js +8 -4
  66. package/dist/grid.js.map +1 -1
  67. package/dist/index.d.ts +8 -30
  68. package/dist/index.js +4 -17
  69. package/dist/index.js.map +1 -1
  70. package/dist/interact-outside.d.ts +0 -1
  71. package/dist/internal/cascade-choice-binding.d.ts +34 -0
  72. package/dist/internal/cascade-choice-binding.js +112 -0
  73. package/dist/internal/cascade-choice-binding.js.map +1 -0
  74. package/dist/internal/checked-control.d.ts +4 -5
  75. package/dist/internal/checked-control.js +14 -27
  76. package/dist/internal/checked-control.js.map +1 -1
  77. package/dist/internal/controlled-field-input.d.ts +9 -0
  78. package/dist/internal/controlled-field-input.js +25 -0
  79. package/dist/internal/controlled-field-input.js.map +1 -0
  80. package/dist/internal/date-picker-cell.d.ts +0 -1
  81. package/dist/internal/delegated-event.d.ts +0 -1
  82. package/dist/internal/direction.d.ts +0 -1
  83. package/dist/internal/disabled-items.d.ts +0 -1
  84. package/dist/internal/disabled-items.js +2 -12
  85. package/dist/internal/disabled-items.js.map +1 -1
  86. package/dist/internal/exact-percentage.d.ts +2 -0
  87. package/dist/internal/exact-percentage.js +5 -0
  88. package/dist/internal/exact-percentage.js.map +1 -0
  89. package/dist/internal/interaction.d.ts +0 -1
  90. package/dist/internal/layer-binding.d.ts +0 -1
  91. package/dist/internal/layer-manager.d.ts +0 -1
  92. package/dist/internal/menu-control.d.ts +0 -1
  93. package/dist/internal/menu-control.js +48 -97
  94. package/dist/internal/menu-control.js.map +1 -1
  95. package/dist/internal/modal-effects.d.ts +0 -1
  96. package/dist/internal/picker-position.d.ts +7 -0
  97. package/dist/internal/picker-position.js +19 -0
  98. package/dist/internal/picker-position.js.map +1 -0
  99. package/dist/internal/popup-control.d.ts +2 -3
  100. package/dist/internal/popup-control.js +8 -10
  101. package/dist/internal/popup-control.js.map +1 -1
  102. package/dist/internal/position-connection.d.ts +22 -0
  103. package/dist/internal/position-connection.js +57 -0
  104. package/dist/internal/position-connection.js.map +1 -0
  105. package/dist/internal/positioning/engine.d.ts +65 -0
  106. package/dist/internal/positioning/engine.js +488 -0
  107. package/dist/internal/positioning/engine.js.map +1 -0
  108. package/dist/internal/reference-date.d.ts +0 -1
  109. package/dist/internal/result.d.ts +0 -3
  110. package/dist/internal/result.js.map +1 -1
  111. package/dist/internal/tabular-dom.d.ts +109 -0
  112. package/dist/internal/tabular-dom.js +316 -0
  113. package/dist/internal/tabular-dom.js.map +1 -0
  114. package/dist/internal/tabular-grid-dom.d.ts +151 -0
  115. package/dist/internal/tabular-grid-dom.js +524 -0
  116. package/dist/internal/tabular-grid-dom.js.map +1 -0
  117. package/dist/internal/text-element.d.ts +0 -1
  118. package/dist/listbox.d.ts +0 -1
  119. package/dist/listbox.js +5 -0
  120. package/dist/listbox.js.map +1 -1
  121. package/dist/menu-button.d.ts +0 -1
  122. package/dist/menu.d.ts +0 -1
  123. package/dist/menubar.d.ts +0 -1
  124. package/dist/meter-group.d.ts +39 -0
  125. package/dist/meter-group.js +182 -0
  126. package/dist/meter-group.js.map +1 -0
  127. package/dist/meter.d.ts +35 -0
  128. package/dist/meter.js +111 -0
  129. package/dist/meter.js.map +1 -0
  130. package/dist/month-picker.d.ts +0 -1
  131. package/dist/month-range-picker.d.ts +0 -1
  132. package/dist/multi-thumb-slider.d.ts +0 -1
  133. package/dist/navigation-menu.d.ts +0 -1
  134. package/dist/number-field.d.ts +0 -1
  135. package/dist/number-field.js +8 -1
  136. package/dist/number-field.js.map +1 -1
  137. package/dist/pagination.d.ts +0 -1
  138. package/dist/pin-input.d.ts +0 -1
  139. package/dist/pin-input.js +5 -3
  140. package/dist/pin-input.js.map +1 -1
  141. package/dist/popover.d.ts +6 -22
  142. package/dist/popover.js +6 -9
  143. package/dist/popover.js.map +1 -1
  144. package/dist/position.d.ts +19 -0
  145. package/dist/position.js +2 -0
  146. package/dist/position.js.map +1 -0
  147. package/dist/progress.d.ts +35 -0
  148. package/dist/progress.js +105 -0
  149. package/dist/progress.js.map +1 -0
  150. package/dist/quantity-field.d.ts +0 -1
  151. package/dist/quantity-field.js +12 -1
  152. package/dist/quantity-field.js.map +1 -1
  153. package/dist/radio-group.d.ts +0 -1
  154. package/dist/radio-group.js +13 -1
  155. package/dist/radio-group.js.map +1 -1
  156. package/dist/range-calendar.d.ts +0 -1
  157. package/dist/rating.d.ts +1 -2
  158. package/dist/rating.js +191 -27
  159. package/dist/rating.js.map +1 -1
  160. package/dist/reorder.d.ts +0 -1
  161. package/dist/select.d.ts +2 -15
  162. package/dist/select.js +7 -5
  163. package/dist/select.js.map +1 -1
  164. package/dist/slider.d.ts +0 -1
  165. package/dist/spin-button.d.ts +0 -1
  166. package/dist/stepper.d.ts +0 -1
  167. package/dist/switch.d.ts +0 -1
  168. package/dist/tabs.d.ts +0 -1
  169. package/dist/tabs.js +11 -2
  170. package/dist/tabs.js.map +1 -1
  171. package/dist/tabular.d.ts +3 -0
  172. package/dist/tabular.js +4 -0
  173. package/dist/tabular.js.map +1 -0
  174. package/dist/tags-input.d.ts +0 -1
  175. package/dist/tags-input.js +8 -4
  176. package/dist/tags-input.js.map +1 -1
  177. package/dist/text.d.ts +0 -1
  178. package/dist/time-field.d.ts +1 -2
  179. package/dist/time-field.js +11 -5
  180. package/dist/time-field.js.map +1 -1
  181. package/dist/time-range-field.d.ts +0 -1
  182. package/dist/time-range-field.js +3 -1
  183. package/dist/time-range-field.js.map +1 -1
  184. package/dist/timer.d.ts +0 -1
  185. package/dist/toast.d.ts +0 -1
  186. package/dist/toast.js +32 -5
  187. package/dist/toast.js.map +1 -1
  188. package/dist/toggle-button.d.ts +0 -1
  189. package/dist/toggle-group.d.ts +0 -1
  190. package/dist/toolbar.d.ts +0 -1
  191. package/dist/toolbar.js +4 -0
  192. package/dist/toolbar.js.map +1 -1
  193. package/dist/tooltip.d.ts +5 -23
  194. package/dist/tooltip.js +3 -6
  195. package/dist/tooltip.js.map +1 -1
  196. package/dist/tree-grid.d.ts +0 -1
  197. package/dist/tree-grid.js +14 -1
  198. package/dist/tree-grid.js.map +1 -1
  199. package/dist/tree-view.d.ts +0 -1
  200. package/dist/tree-view.js +4 -0
  201. package/dist/tree-view.js.map +1 -1
  202. package/dist/virtual.d.ts +2 -3
  203. package/dist/virtual.js +70 -25
  204. package/dist/virtual.js.map +1 -1
  205. package/dist/window-splitter.d.ts +0 -1
  206. package/dist/year-picker.d.ts +0 -1
  207. package/dist/year-range-picker.d.ts +0 -1
  208. package/package.json +135 -85
  209. package/dist/accordion.d.ts.map +0 -1
  210. package/dist/alert-dialog.d.ts.map +0 -1
  211. package/dist/calendar.d.ts.map +0 -1
  212. package/dist/carousel.d.ts.map +0 -1
  213. package/dist/cascade-select.d.ts.map +0 -1
  214. package/dist/checkbox-group.d.ts.map +0 -1
  215. package/dist/checkbox.d.ts.map +0 -1
  216. package/dist/color-picker.d.ts.map +0 -1
  217. package/dist/combobox.d.ts.map +0 -1
  218. package/dist/date-field.d.ts.map +0 -1
  219. package/dist/date-picker.d.ts.map +0 -1
  220. package/dist/date-range-field.d.ts.map +0 -1
  221. package/dist/date-range-picker.d.ts.map +0 -1
  222. package/dist/date-time-field.d.ts.map +0 -1
  223. package/dist/date-time-picker.d.ts.map +0 -1
  224. package/dist/date-time-range-picker.d.ts.map +0 -1
  225. package/dist/dialog.d.ts.map +0 -1
  226. package/dist/disclosure.d.ts.map +0 -1
  227. package/dist/drawer.d.ts.map +0 -1
  228. package/dist/editable.d.ts.map +0 -1
  229. package/dist/feed.d.ts.map +0 -1
  230. package/dist/form.d.ts.map +0 -1
  231. package/dist/grid.d.ts.map +0 -1
  232. package/dist/index.d.ts.map +0 -1
  233. package/dist/interact-outside.d.ts.map +0 -1
  234. package/dist/internal/checked-control.d.ts.map +0 -1
  235. package/dist/internal/date-picker-cell.d.ts.map +0 -1
  236. package/dist/internal/delegated-event.d.ts.map +0 -1
  237. package/dist/internal/direction.d.ts.map +0 -1
  238. package/dist/internal/disabled-items.d.ts.map +0 -1
  239. package/dist/internal/floating-position.d.ts +0 -26
  240. package/dist/internal/floating-position.d.ts.map +0 -1
  241. package/dist/internal/floating-position.js +0 -107
  242. package/dist/internal/floating-position.js.map +0 -1
  243. package/dist/internal/interaction.d.ts.map +0 -1
  244. package/dist/internal/layer-binding.d.ts.map +0 -1
  245. package/dist/internal/layer-manager.d.ts.map +0 -1
  246. package/dist/internal/menu-control.d.ts.map +0 -1
  247. package/dist/internal/modal-effects.d.ts.map +0 -1
  248. package/dist/internal/popup-control.d.ts.map +0 -1
  249. package/dist/internal/reference-date.d.ts.map +0 -1
  250. package/dist/internal/result.d.ts.map +0 -1
  251. package/dist/internal/text-element.d.ts.map +0 -1
  252. package/dist/listbox.d.ts.map +0 -1
  253. package/dist/menu-button.d.ts.map +0 -1
  254. package/dist/menu.d.ts.map +0 -1
  255. package/dist/menubar.d.ts.map +0 -1
  256. package/dist/month-picker.d.ts.map +0 -1
  257. package/dist/month-range-picker.d.ts.map +0 -1
  258. package/dist/multi-thumb-slider.d.ts.map +0 -1
  259. package/dist/navigation-menu.d.ts.map +0 -1
  260. package/dist/number-field.d.ts.map +0 -1
  261. package/dist/pagination.d.ts.map +0 -1
  262. package/dist/pin-input.d.ts.map +0 -1
  263. package/dist/popover.d.ts.map +0 -1
  264. package/dist/quantity-field.d.ts.map +0 -1
  265. package/dist/radio-group.d.ts.map +0 -1
  266. package/dist/range-calendar.d.ts.map +0 -1
  267. package/dist/rating.d.ts.map +0 -1
  268. package/dist/reorder.d.ts.map +0 -1
  269. package/dist/select.d.ts.map +0 -1
  270. package/dist/slider.d.ts.map +0 -1
  271. package/dist/spin-button.d.ts.map +0 -1
  272. package/dist/stepper.d.ts.map +0 -1
  273. package/dist/switch.d.ts.map +0 -1
  274. package/dist/tabs.d.ts.map +0 -1
  275. package/dist/tags-input.d.ts.map +0 -1
  276. package/dist/text.d.ts.map +0 -1
  277. package/dist/time-field.d.ts.map +0 -1
  278. package/dist/time-range-field.d.ts.map +0 -1
  279. package/dist/timer.d.ts.map +0 -1
  280. package/dist/toast.d.ts.map +0 -1
  281. package/dist/toggle-button.d.ts.map +0 -1
  282. package/dist/toggle-group.d.ts.map +0 -1
  283. package/dist/toolbar.d.ts.map +0 -1
  284. package/dist/tooltip.d.ts.map +0 -1
  285. package/dist/tree-grid.d.ts.map +0 -1
  286. package/dist/tree-view.d.ts.map +0 -1
  287. package/dist/virtual.d.ts.map +0 -1
  288. package/dist/window-splitter.d.ts.map +0 -1
  289. package/dist/year-picker.d.ts.map +0 -1
  290. package/dist/year-range-picker.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"listbox.js","sourceRoot":"","sources":["../src/listbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listbox.js","sourceRoot":"","sources":["../src/listbox.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,3 @@ export type MenuButtonOptions<ID extends StableID = StableID> = Omit<MenuControl
7
7
  export type MenuButtonConnection<ID extends StableID = StableID> = MenuControl<ID>;
8
8
  export declare function createMenuButton<ID extends StableID>(options: MenuButtonOptions<ID>): FacadeConnection<MenuButtonConnection<ID>>;
9
9
  export declare function tryCreateMenuButton<ID extends StableID>(options: MenuButtonOptions<ID>): Result<FacadeConnection<MenuButtonConnection<ID>>>;
10
- //# sourceMappingURL=menu-button.d.ts.map
package/dist/menu.d.ts CHANGED
@@ -7,4 +7,3 @@ export declare function createMenu<ID extends StableID>(options: MenuOptions<ID>
7
7
  export type { MenuPolicies } from '@sectile/core/menu';
8
8
  export type { TreeNodeInput as MenuItemDefinition } from '@sectile/core/tree';
9
9
  export declare function tryCreateMenu<ID extends StableID>(options: MenuOptions<ID>): Result<FacadeConnection<MenuConnection<ID>>>;
10
- //# sourceMappingURL=menu.d.ts.map
package/dist/menubar.d.ts CHANGED
@@ -5,4 +5,3 @@ export type MenubarOptions<ID extends StableID = StableID> = Omit<MenuControlOpt
5
5
  export type MenubarConnection<ID extends StableID = StableID> = MenuControl<ID>;
6
6
  export declare function createMenubar<ID extends StableID>(options: MenubarOptions<ID>): FacadeConnection<MenubarConnection<ID>>;
7
7
  export declare function tryCreateMenubar<ID extends StableID>(options: MenubarOptions<ID>): Result<FacadeConnection<MenubarConnection<ID>>>;
8
- //# sourceMappingURL=menubar.d.ts.map
@@ -0,0 +1,39 @@
1
+ import type { Result, StableID } from '@sectile/core';
2
+ import { type MeterGroupInput, type MeterGroupState } from '@sectile/core/meter-group';
3
+ import { type RevisionSnapshot } from '@sectile/core/revision';
4
+ export type MeterGroupAttributeRecord = Readonly<Record<string, string | number | undefined>>;
5
+ export type MeterGroupValueFormatter<ID extends StableID = StableID> = (value: string, id: ID) => string;
6
+ export interface MeterGroupRootAttributesOptions {
7
+ readonly label?: string;
8
+ readonly labelledBy?: string;
9
+ readonly describedBy?: string;
10
+ readonly scope?: string;
11
+ readonly part?: string;
12
+ }
13
+ export interface MeterGroupSegmentAttributesOptions<ID extends StableID = StableID> {
14
+ readonly label?: string;
15
+ readonly labelledBy?: string;
16
+ readonly describedBy?: string;
17
+ readonly formatValue?: MeterGroupValueFormatter<ID>;
18
+ readonly scope?: string;
19
+ readonly part?: string;
20
+ }
21
+ export interface MeterGroupControlledValues<ID extends StableID = StableID> extends MeterGroupInput<ID> {
22
+ }
23
+ export interface MeterGroupOptions<ID extends StableID = StableID> extends MeterGroupControlledValues<ID>, MeterGroupRootAttributesOptions {
24
+ readonly root: HTMLElement;
25
+ readonly track?: HTMLElement;
26
+ readonly onUpdate?: () => void;
27
+ }
28
+ export interface MeterGroupConnection<ID extends StableID = StableID> {
29
+ getSnapshot(): RevisionSnapshot<MeterGroupState<ID>>;
30
+ syncControlledValues(values: MeterGroupControlledValues<ID>): Result<RevisionSnapshot<MeterGroupState<ID>>>;
31
+ registerSegment(id: ID, element: HTMLElement, options: MeterGroupSegmentAttributesOptions<ID>): Result<() => void>;
32
+ refreshAttributes(): void;
33
+ disconnect(): void;
34
+ }
35
+ export declare function getMeterGroupRootAttributes<ID extends StableID>(state: MeterGroupState<ID>, options?: MeterGroupRootAttributesOptions): MeterGroupAttributeRecord;
36
+ export declare function getMeterGroupTrackAttributes<ID extends StableID>(state: MeterGroupState<ID>): MeterGroupAttributeRecord;
37
+ export declare function getMeterGroupSegmentAttributes<ID extends StableID>(state: MeterGroupState<ID>, id: ID, options: MeterGroupSegmentAttributesOptions<ID>): Result<MeterGroupAttributeRecord>;
38
+ export declare function createMeterGroup<ID extends StableID>(options: MeterGroupOptions<ID>): MeterGroupConnection<ID>;
39
+ export declare function tryCreateMeterGroup<ID extends StableID>(options: MeterGroupOptions<ID>): Result<MeterGroupConnection<ID>>;
@@ -0,0 +1,182 @@
1
+ import { tryCreateMeterGroupState, } from '@sectile/core/meter-group';
2
+ import { createRevisionSnapshot } from '@sectile/core/revision';
3
+ import { unwrap } from '@sectile/core/result';
4
+ import { formatExactPercentage } from './internal/exact-percentage.js';
5
+ export function getMeterGroupRootAttributes(state, options = {}) {
6
+ const percentage = formatExactPercentage(state.ratio);
7
+ return Object.freeze({
8
+ role: 'group',
9
+ 'aria-label': options.label,
10
+ 'aria-labelledby': options.labelledBy,
11
+ 'aria-describedby': options.describedBy,
12
+ 'data-scope': options.scope ?? 'meter-group',
13
+ 'data-part': options.part ?? 'root',
14
+ 'data-zone': state.zone,
15
+ 'data-percentage': percentage,
16
+ style: `--sectile-meter-group-percentage: ${percentage}%`,
17
+ });
18
+ }
19
+ export function getMeterGroupTrackAttributes(state) {
20
+ return Object.freeze({
21
+ role: 'presentation',
22
+ 'data-scope': 'meter-group',
23
+ 'data-part': 'track',
24
+ 'data-zone': state.zone,
25
+ });
26
+ }
27
+ export function getMeterGroupSegmentAttributes(state, id, options) {
28
+ const segment = state.segments.find((candidate) => candidate.id === id);
29
+ if (segment === undefined)
30
+ return segmentUnavailable(id);
31
+ const percentage = formatExactPercentage(segment.valueRatio);
32
+ const startPercentage = formatExactPercentage(segment.startRatio);
33
+ const endPercentage = formatExactPercentage(segment.endRatio);
34
+ return {
35
+ ok: true,
36
+ value: Object.freeze({
37
+ role: 'meter',
38
+ 'aria-valuemin': '0',
39
+ 'aria-valuemax': state.max,
40
+ 'aria-valuenow': segment.value,
41
+ 'aria-valuetext': options.formatValue?.(segment.value, id) ?? segment.value,
42
+ 'aria-label': options.label,
43
+ 'aria-labelledby': options.labelledBy,
44
+ 'aria-describedby': options.describedBy,
45
+ 'data-scope': options.scope ?? 'meter-group',
46
+ 'data-part': options.part ?? 'segment',
47
+ 'data-id': id,
48
+ 'data-percentage': percentage,
49
+ 'data-start-percentage': startPercentage,
50
+ 'data-end-percentage': endPercentage,
51
+ style: [
52
+ `--sectile-meter-group-percentage: ${percentage}%`,
53
+ `--sectile-meter-group-start-percentage: ${startPercentage}%`,
54
+ `--sectile-meter-group-end-percentage: ${endPercentage}%`,
55
+ ].join('; '),
56
+ }),
57
+ };
58
+ }
59
+ export function createMeterGroup(options) {
60
+ return unwrap(tryCreateMeterGroup(options));
61
+ }
62
+ export function tryCreateMeterGroup(options) {
63
+ const initial = tryCreateMeterGroupState(options);
64
+ if (!initial.ok)
65
+ return initial;
66
+ return { ok: true, value: new DOMMeterGroup(options, createRevisionSnapshot(initial.value)) };
67
+ }
68
+ class DOMMeterGroup {
69
+ #options;
70
+ #segments = new Map();
71
+ #snapshot;
72
+ constructor(options, snapshot) {
73
+ this.#options = options;
74
+ this.#snapshot = snapshot;
75
+ this.refreshAttributes();
76
+ }
77
+ getSnapshot() {
78
+ return this.#snapshot;
79
+ }
80
+ syncControlledValues(values) {
81
+ const next = tryCreateMeterGroupState(values);
82
+ if (!next.ok)
83
+ return next;
84
+ if (this.#snapshot.revision === Number.MAX_SAFE_INTEGER)
85
+ return revisionCeiling();
86
+ this.#snapshot = createRevisionSnapshot(next.value, this.#snapshot.revision + 1);
87
+ this.refreshAttributes();
88
+ this.#options.onUpdate?.();
89
+ return { ok: true, value: this.#snapshot };
90
+ }
91
+ registerSegment(id, element, options) {
92
+ const attributes = getMeterGroupSegmentAttributes(this.#snapshot.state, id, options);
93
+ if (!attributes.ok)
94
+ return attributes;
95
+ const registration = Object.freeze({ element, options });
96
+ this.#segments.set(id, registration);
97
+ applyAttributes(element, attributes.value);
98
+ return {
99
+ ok: true,
100
+ value: () => {
101
+ if (this.#segments.get(id) === registration)
102
+ this.#segments.delete(id);
103
+ },
104
+ };
105
+ }
106
+ refreshAttributes() {
107
+ const state = this.#snapshot.state;
108
+ applyAttributes(this.#options.root, getMeterGroupRootAttributes(state, this.#options));
109
+ if (this.#options.track !== undefined) {
110
+ applyAttributes(this.#options.track, getMeterGroupTrackAttributes(state));
111
+ }
112
+ for (const [id, registration] of this.#segments) {
113
+ const attributes = getMeterGroupSegmentAttributes(state, id, registration.options);
114
+ if (attributes.ok)
115
+ applyAttributes(registration.element, attributes.value);
116
+ else
117
+ clearSegmentAttributes(registration.element);
118
+ }
119
+ }
120
+ disconnect() {
121
+ this.#segments.clear();
122
+ }
123
+ }
124
+ function applyAttributes(element, attributes) {
125
+ for (const [name, value] of Object.entries(attributes)) {
126
+ if (name === 'style') {
127
+ applyStyleProperties(element, value);
128
+ continue;
129
+ }
130
+ if (value === undefined)
131
+ element.removeAttribute(name);
132
+ else
133
+ element.setAttribute(name, String(value));
134
+ }
135
+ }
136
+ function applyStyleProperties(element, value) {
137
+ for (const name of [
138
+ '--sectile-meter-group-percentage',
139
+ '--sectile-meter-group-start-percentage',
140
+ '--sectile-meter-group-end-percentage',
141
+ ])
142
+ element.style.removeProperty(name);
143
+ if (typeof value !== 'string')
144
+ return;
145
+ for (const declaration of value.split(';')) {
146
+ const separator = declaration.indexOf(':');
147
+ if (separator < 0)
148
+ continue;
149
+ element.style.setProperty(declaration.slice(0, separator).trim(), declaration.slice(separator + 1).trim());
150
+ }
151
+ }
152
+ function clearSegmentAttributes(element) {
153
+ for (const name of [
154
+ 'role', 'aria-valuemin', 'aria-valuemax', 'aria-valuenow', 'aria-valuetext',
155
+ 'aria-label', 'aria-labelledby', 'aria-describedby', 'data-scope', 'data-part',
156
+ 'data-id', 'data-percentage', 'data-start-percentage', 'data-end-percentage',
157
+ ])
158
+ element.removeAttribute(name);
159
+ applyStyleProperties(element, undefined);
160
+ }
161
+ function segmentUnavailable(id) {
162
+ return {
163
+ ok: false,
164
+ error: {
165
+ class: 'construction',
166
+ code: 'selected-id-outside-domain',
167
+ message: 'MeterGroup segment id must belong to the current item domain.',
168
+ details: { id },
169
+ },
170
+ };
171
+ }
172
+ function revisionCeiling() {
173
+ return {
174
+ ok: false,
175
+ error: {
176
+ class: 'resource-rejection',
177
+ code: 'revision-ceiling-reached',
178
+ message: 'MeterGroup revision cannot advance beyond the safe-integer ceiling.',
179
+ },
180
+ };
181
+ }
182
+ //# sourceMappingURL=meter-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meter-group.js","sourceRoot":"","sources":["../src/meter-group.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import type { Result } from '@sectile/core';
2
+ import { type MeterInput, type MeterState } from '@sectile/core/meter';
3
+ import { type RevisionSnapshot } from '@sectile/core/revision';
4
+ export type MeterAttributeRecord = Readonly<Record<string, string | number | undefined>>;
5
+ export type MeterValueFormatter = (value: string) => string;
6
+ export interface MeterRootAttributesOptions {
7
+ readonly label?: string;
8
+ readonly labelledBy?: string;
9
+ readonly describedBy?: string;
10
+ readonly formatValue?: MeterValueFormatter;
11
+ readonly scope?: string;
12
+ readonly part?: string;
13
+ }
14
+ export interface MeterIndicatorAttributesOptions {
15
+ readonly scope?: string;
16
+ readonly part?: string;
17
+ }
18
+ export interface MeterControlledValues extends MeterInput {
19
+ }
20
+ export interface MeterOptions extends MeterControlledValues, MeterRootAttributesOptions {
21
+ readonly root: HTMLElement;
22
+ readonly indicator?: HTMLElement;
23
+ readonly onUpdate?: () => void;
24
+ }
25
+ export interface MeterConnection {
26
+ getSnapshot(): RevisionSnapshot<MeterState>;
27
+ syncControlledValues(values: MeterControlledValues): Result<RevisionSnapshot<MeterState>>;
28
+ refreshAttributes(): void;
29
+ disconnect(): void;
30
+ }
31
+ export declare function getMeterRootAttributes(state: MeterState, options?: MeterRootAttributesOptions): MeterAttributeRecord;
32
+ export declare function getMeterIndicatorAttributes(state: MeterState, options?: MeterIndicatorAttributesOptions): MeterAttributeRecord;
33
+ export declare function getMeterNativeAttributes(state: MeterState): MeterAttributeRecord;
34
+ export declare function createMeter(options: MeterOptions): MeterConnection;
35
+ export declare function tryCreateMeter(options: MeterOptions): Result<MeterConnection>;
package/dist/meter.js ADDED
@@ -0,0 +1,111 @@
1
+ import { tryCreateMeterState } from '@sectile/core/meter';
2
+ import { createRevisionSnapshot } from '@sectile/core/revision';
3
+ import { unwrap } from '@sectile/core/result';
4
+ import { formatExactPercentage } from './internal/exact-percentage.js';
5
+ export function getMeterRootAttributes(state, options = {}) {
6
+ const percentage = percentageOf(state);
7
+ return Object.freeze({
8
+ role: 'meter',
9
+ 'aria-valuemin': state.min,
10
+ 'aria-valuemax': state.max,
11
+ 'aria-valuenow': state.value,
12
+ 'aria-valuetext': options.formatValue?.(state.value) ?? state.value,
13
+ 'aria-label': options.label,
14
+ 'aria-labelledby': options.labelledBy,
15
+ 'aria-describedby': options.describedBy,
16
+ 'data-scope': options.scope ?? 'meter',
17
+ 'data-part': options.part ?? 'root',
18
+ 'data-zone': state.zone,
19
+ 'data-percentage': percentage,
20
+ style: `--sectile-meter-percentage: ${percentage}%`,
21
+ });
22
+ }
23
+ export function getMeterIndicatorAttributes(state, options = {}) {
24
+ const percentage = percentageOf(state);
25
+ return Object.freeze({
26
+ 'aria-hidden': 'true',
27
+ 'data-scope': options.scope ?? 'meter',
28
+ 'data-part': options.part ?? 'indicator',
29
+ 'data-zone': state.zone,
30
+ 'data-percentage': percentage,
31
+ style: `--sectile-meter-percentage: ${percentage}%`,
32
+ });
33
+ }
34
+ export function getMeterNativeAttributes(state) {
35
+ return Object.freeze({
36
+ min: state.min,
37
+ max: state.max,
38
+ value: state.value,
39
+ low: state.low,
40
+ high: state.high,
41
+ optimum: state.optimum,
42
+ });
43
+ }
44
+ export function createMeter(options) {
45
+ return unwrap(tryCreateMeter(options));
46
+ }
47
+ export function tryCreateMeter(options) {
48
+ const initial = tryCreateMeterState(options);
49
+ if (!initial.ok)
50
+ return initial;
51
+ return { ok: true, value: new DOMMeter(options, createRevisionSnapshot(initial.value)) };
52
+ }
53
+ class DOMMeter {
54
+ #options;
55
+ #snapshot;
56
+ constructor(options, snapshot) {
57
+ this.#options = options;
58
+ this.#snapshot = snapshot;
59
+ this.refreshAttributes();
60
+ }
61
+ getSnapshot() {
62
+ return this.#snapshot;
63
+ }
64
+ syncControlledValues(values) {
65
+ const next = tryCreateMeterState(values);
66
+ if (!next.ok)
67
+ return next;
68
+ if (this.#snapshot.revision === Number.MAX_SAFE_INTEGER)
69
+ return revisionCeiling();
70
+ this.#snapshot = createRevisionSnapshot(next.value, this.#snapshot.revision + 1);
71
+ this.refreshAttributes();
72
+ this.#options.onUpdate?.();
73
+ return { ok: true, value: this.#snapshot };
74
+ }
75
+ refreshAttributes() {
76
+ const state = this.#snapshot.state;
77
+ applyAttributes(this.#options.root, getMeterRootAttributes(state, this.#options));
78
+ if (this.#options.indicator !== undefined) {
79
+ applyAttributes(this.#options.indicator, getMeterIndicatorAttributes(state));
80
+ }
81
+ }
82
+ disconnect() { }
83
+ }
84
+ function percentageOf(state) {
85
+ return formatExactPercentage(state.ratio);
86
+ }
87
+ function applyAttributes(element, attributes) {
88
+ for (const [name, value] of Object.entries(attributes)) {
89
+ if (name === 'style') {
90
+ const percentage = attributes['data-percentage'];
91
+ if (percentage !== undefined)
92
+ element.style.setProperty('--sectile-meter-percentage', `${percentage}%`);
93
+ continue;
94
+ }
95
+ if (value === undefined)
96
+ element.removeAttribute(name);
97
+ else
98
+ element.setAttribute(name, String(value));
99
+ }
100
+ }
101
+ function revisionCeiling() {
102
+ return {
103
+ ok: false,
104
+ error: {
105
+ class: 'resource-rejection',
106
+ code: 'revision-ceiling-reached',
107
+ message: 'Meter revision cannot advance beyond the safe-integer ceiling.',
108
+ },
109
+ };
110
+ }
111
+ //# sourceMappingURL=meter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meter.js","sourceRoot":"","sources":["../src/meter.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,3 @@ export { createDatePicker as createMonthPicker, tryCreateDatePicker as tryCreate
2
2
  export type { DatePickerConnection as MonthPickerConnection, DatePickerControlledValues as MonthPickerControlledValues, DatePickerOptions as MonthPickerOptions, } from './date-picker.js';
3
3
  export { createCalendarYear as createMonthPickerYear } from './date-picker.js';
4
4
  export type { CalendarMonthValue as MonthPickerValue } from './date-picker.js';
5
- //# sourceMappingURL=month-picker.d.ts.map
@@ -1,4 +1,3 @@
1
1
  export { createDateRangePicker as createMonthRangePicker, tryCreateDateRangePicker as tryCreateMonthRangePicker, } from './date-range-picker.js';
2
2
  export type { DateRangePickerConnection as MonthRangePickerConnection, DateRangePickerControlledValues as MonthRangePickerControlledValues, DateRangePickerOptions as MonthRangePickerOptions, } from './date-range-picker.js';
3
3
  export { createCalendarYear as createMonthRangePickerYear } from './date-picker.js';
4
- //# sourceMappingURL=month-range-picker.d.ts.map
@@ -40,4 +40,3 @@ export interface MultiThumbSliderConnection<ID extends StableID = StableID> {
40
40
  }
41
41
  export declare function createMultiThumbSlider<ID extends StableID>(options: MultiThumbSliderOptions<ID>): FacadeConnection<MultiThumbSliderConnection<ID>>;
42
42
  export declare function tryCreateMultiThumbSlider<ID extends StableID>(options: MultiThumbSliderOptions<ID>): Result<FacadeConnection<MultiThumbSliderConnection<ID>>>;
43
- //# sourceMappingURL=multi-thumb-slider.d.ts.map
@@ -5,4 +5,3 @@ export type NavigationMenuOptions<ID extends StableID = StableID> = Omit<MenuCon
5
5
  export type NavigationMenuConnection<ID extends StableID = StableID> = MenuControl<ID>;
6
6
  export declare function createNavigationMenu<ID extends StableID>(options: NavigationMenuOptions<ID>): FacadeConnection<NavigationMenuConnection<ID>>;
7
7
  export declare function tryCreateNavigationMenu<ID extends StableID>(options: NavigationMenuOptions<ID>): Result<FacadeConnection<NavigationMenuConnection<ID>>>;
8
- //# sourceMappingURL=navigation-menu.d.ts.map
@@ -45,4 +45,3 @@ export interface NumberFieldConnection {
45
45
  }
46
46
  export declare function createNumberField(options: NumberFieldOptions): FacadeConnection<NumberFieldConnection>;
47
47
  export declare function tryCreateNumberField(options: NumberFieldOptions): Result<FacadeConnection<NumberFieldConnection>>;
48
- //# sourceMappingURL=number-field.d.ts.map
@@ -5,6 +5,7 @@ import { applyNumberFieldEvent, tryCreateNumberFieldState, } from '@sectile/core
5
5
  import { createSemanticController } from '@sectile/core/adapter-runtime';
6
6
  import { setInteractionAttributes } from './internal/interaction.js';
7
7
  import { DOMTextElementBinding } from './internal/text-element.js';
8
+ import { synchronizeControlledFieldInput, synchronizeFieldInputSelection } from './internal/controlled-field-input.js';
8
9
  import { toTextEvent } from './text.js';
9
10
  export function createNumberField(options) {
10
11
  return unwrap(tryCreateNumberField(options));
@@ -92,7 +93,13 @@ class DOMNumberField {
92
93
  return { ok: false, error: { class: 'construction', code: 'controlled-shape-mismatch', message: 'Controlled number field values must preserve their construction-time shape.' } };
93
94
  }
94
95
  const state = this.getSnapshot().state;
95
- const result = this.#runtime.replace(tryCreateNumberFieldState(this.#valueControlled ? values.value : state.value, this.#inputControlled ? values.inputState : state.inputState));
96
+ const value = this.#valueControlled ? values.value : state.value;
97
+ const normalized = tryCreateNumberFieldState(value);
98
+ if (!normalized.ok)
99
+ return normalized;
100
+ const result = this.#runtime.replace(tryCreateNumberFieldState(value, this.#inputControlled
101
+ ? values.inputState
102
+ : synchronizeControlledFieldInput(synchronizeFieldInputSelection(state.inputState, this.#options.input), state.value ?? '', normalized.value.value ?? '')));
96
103
  if (result.ok) {
97
104
  this.refresh();
98
105
  this.#options.onUpdate?.();
@@ -1 +1 @@
1
- {"version":3,"file":"number-field.js","sourceRoot":"","sources":["../src/number-field.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"number-field.js","sourceRoot":"","sources":["../src/number-field.ts"],"names":[],"mappings":"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"}
@@ -49,4 +49,3 @@ export interface PaginationView {
49
49
  export declare function getPaginationView(options: Omit<PaginationOptions, 'root'>): Result<PaginationView>;
50
50
  export declare function createPagination(options: PaginationOptions): FacadeConnection<PaginationConnection>;
51
51
  export declare function tryCreatePagination(options: PaginationOptions): Result<FacadeConnection<PaginationConnection>>;
52
- //# sourceMappingURL=pagination.d.ts.map
@@ -28,4 +28,3 @@ export interface PinInputConnection {
28
28
  }
29
29
  export declare function createPinInput(options: PinInputOptions): FacadeConnection<PinInputConnection>;
30
30
  export declare function tryCreatePinInput(options: PinInputOptions): Result<FacadeConnection<PinInputConnection>>;
31
- //# sourceMappingURL=pin-input.d.ts.map
package/dist/pin-input.js CHANGED
@@ -30,6 +30,7 @@ class DOMPinInputConnection {
30
30
  #options;
31
31
  #runtime;
32
32
  #controlled;
33
+ #active = true;
33
34
  constructor(options, runtime, controlled) {
34
35
  this.#options = options;
35
36
  this.#runtime = runtime;
@@ -67,12 +68,13 @@ class DOMPinInputConnection {
67
68
  handleEvent(event) { const result = this.#runtime.handle(event); if (!result.ok)
68
69
  return false; this.#render(); for (const effect of result.commands) {
69
70
  if (effect.type === 'focus-cell')
70
- queueMicrotask(() => this.#options.inputs[effect.index]?.focus());
71
+ queueMicrotask(() => { if (this.#active)
72
+ this.#options.inputs[effect.index]?.focus(); });
71
73
  else
72
74
  this.#options.onComplete?.(effect.value);
73
75
  } this.#options.onUpdate?.(); return true; }
74
- disconnect() { for (const remove of this.#listeners)
75
- remove(); }
76
+ disconnect() { this.#active = false; for (const remove of this.#listeners)
77
+ remove(); this.#listeners.length = 0; }
76
78
  #render() { const state = this.#runtime.getSnapshot().state; this.#options.inputs.forEach((input, index) => { input.value = state.values[index] ?? ''; input.tabIndex = state.current === index ? 0 : -1; }); }
77
79
  }
78
80
  function pinInputStateAtCurrent(length, value, current) {