@sectile/core 0.1.0 → 0.2.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.
- package/README.md +3 -2
- package/package.json +100 -2
- package/dist/accordion.d.ts +0 -43
- package/dist/accordion.d.ts.map +0 -1
- package/dist/accordion.js +0 -83
- package/dist/accordion.js.map +0 -1
- package/dist/alert-dialog.d.ts +0 -18
- package/dist/alert-dialog.d.ts.map +0 -1
- package/dist/alert-dialog.js +0 -9
- package/dist/alert-dialog.js.map +0 -1
- package/dist/calendar.d.ts +0 -2
- package/dist/calendar.d.ts.map +0 -1
- package/dist/calendar.js +0 -2
- package/dist/calendar.js.map +0 -1
- package/dist/carousel.d.ts +0 -40
- package/dist/carousel.d.ts.map +0 -1
- package/dist/carousel.js +0 -51
- package/dist/carousel.js.map +0 -1
- package/dist/checkbox-group.d.ts +0 -12
- package/dist/checkbox-group.d.ts.map +0 -1
- package/dist/checkbox-group.js +0 -12
- package/dist/checkbox-group.js.map +0 -1
- package/dist/checkbox.d.ts +0 -2
- package/dist/checkbox.d.ts.map +0 -1
- package/dist/checkbox.js +0 -2
- package/dist/checkbox.js.map +0 -1
- package/dist/combobox.d.ts +0 -16
- package/dist/combobox.d.ts.map +0 -1
- package/dist/combobox.js +0 -42
- package/dist/combobox.js.map +0 -1
- package/dist/date-field.d.ts +0 -58
- package/dist/date-field.d.ts.map +0 -1
- package/dist/date-field.js +0 -233
- package/dist/date-field.js.map +0 -1
- package/dist/date-picker.d.ts +0 -53
- package/dist/date-picker.d.ts.map +0 -1
- package/dist/date-picker.js +0 -157
- package/dist/date-picker.js.map +0 -1
- package/dist/date-range-picker.d.ts +0 -28
- package/dist/date-range-picker.d.ts.map +0 -1
- package/dist/date-range-picker.js +0 -85
- package/dist/date-range-picker.js.map +0 -1
- package/dist/date-time-field.d.ts +0 -53
- package/dist/date-time-field.d.ts.map +0 -1
- package/dist/date-time-field.js +0 -253
- package/dist/date-time-field.js.map +0 -1
- package/dist/date-time-picker.d.ts +0 -54
- package/dist/date-time-picker.d.ts.map +0 -1
- package/dist/date-time-picker.js +0 -151
- package/dist/date-time-picker.js.map +0 -1
- package/dist/date-time-range-picker.d.ts +0 -67
- package/dist/date-time-range-picker.d.ts.map +0 -1
- package/dist/date-time-range-picker.js +0 -226
- package/dist/date-time-range-picker.js.map +0 -1
- package/dist/dialog.d.ts +0 -16
- package/dist/dialog.d.ts.map +0 -1
- package/dist/dialog.js +0 -5
- package/dist/dialog.js.map +0 -1
- package/dist/disclosure.d.ts +0 -2
- package/dist/disclosure.d.ts.map +0 -1
- package/dist/disclosure.js +0 -2
- package/dist/disclosure.js.map +0 -1
- package/dist/feed.d.ts +0 -29
- package/dist/feed.d.ts.map +0 -1
- package/dist/feed.js +0 -26
- package/dist/feed.js.map +0 -1
- package/dist/index.d.ts +0 -17
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +0 -1
- package/dist/interaction.d.ts +0 -14
- package/dist/interaction.d.ts.map +0 -1
- package/dist/interaction.js +0 -38
- package/dist/interaction.js.map +0 -1
- package/dist/internal/composites/calendar.d.ts +0 -35
- package/dist/internal/composites/calendar.d.ts.map +0 -1
- package/dist/internal/composites/calendar.js +0 -139
- package/dist/internal/composites/calendar.js.map +0 -1
- package/dist/internal/composites/combobox.d.ts +0 -41
- package/dist/internal/composites/combobox.d.ts.map +0 -1
- package/dist/internal/composites/combobox.js +0 -184
- package/dist/internal/composites/combobox.js.map +0 -1
- package/dist/internal/composites/grid-control.d.ts +0 -36
- package/dist/internal/composites/grid-control.d.ts.map +0 -1
- package/dist/internal/composites/grid-control.js +0 -86
- package/dist/internal/composites/grid-control.js.map +0 -1
- package/dist/internal/composites/linear-action.d.ts +0 -35
- package/dist/internal/composites/linear-action.d.ts.map +0 -1
- package/dist/internal/composites/linear-action.js +0 -92
- package/dist/internal/composites/linear-action.js.map +0 -1
- package/dist/internal/composites/linear-choice.d.ts +0 -41
- package/dist/internal/composites/linear-choice.d.ts.map +0 -1
- package/dist/internal/composites/linear-choice.js +0 -139
- package/dist/internal/composites/linear-choice.js.map +0 -1
- package/dist/internal/composites/listbox.d.ts +0 -50
- package/dist/internal/composites/listbox.d.ts.map +0 -1
- package/dist/internal/composites/listbox.js +0 -243
- package/dist/internal/composites/listbox.js.map +0 -1
- package/dist/internal/composites/menu.d.ts +0 -28
- package/dist/internal/composites/menu.d.ts.map +0 -1
- package/dist/internal/composites/menu.js +0 -72
- package/dist/internal/composites/menu.js.map +0 -1
- package/dist/internal/composites/popup.d.ts +0 -20
- package/dist/internal/composites/popup.d.ts.map +0 -1
- package/dist/internal/composites/popup.js +0 -8
- package/dist/internal/composites/popup.js.map +0 -1
- package/dist/internal/composites/slider.d.ts +0 -20
- package/dist/internal/composites/slider.d.ts.map +0 -1
- package/dist/internal/composites/slider.js +0 -69
- package/dist/internal/composites/slider.js.map +0 -1
- package/dist/internal/composites/tree-grid.d.ts +0 -65
- package/dist/internal/composites/tree-grid.d.ts.map +0 -1
- package/dist/internal/composites/tree-grid.js +0 -274
- package/dist/internal/composites/tree-grid.js.map +0 -1
- package/dist/internal/composites/tree-view.d.ts +0 -39
- package/dist/internal/composites/tree-view.d.ts.map +0 -1
- package/dist/internal/composites/tree-view.js +0 -175
- package/dist/internal/composites/tree-view.js.map +0 -1
- package/dist/internal/editing/text.d.ts +0 -64
- package/dist/internal/editing/text.d.ts.map +0 -1
- package/dist/internal/editing/text.js +0 -238
- package/dist/internal/editing/text.js.map +0 -1
- package/dist/internal/kernel/decimal.d.ts +0 -22
- package/dist/internal/kernel/decimal.d.ts.map +0 -1
- package/dist/internal/kernel/decimal.js +0 -137
- package/dist/internal/kernel/decimal.js.map +0 -1
- package/dist/internal/kernel/foundation.d.ts +0 -12
- package/dist/internal/kernel/foundation.d.ts.map +0 -1
- package/dist/internal/kernel/foundation.js +0 -132
- package/dist/internal/kernel/foundation.js.map +0 -1
- package/dist/internal/kernel/indexed-sequence.d.ts +0 -26
- package/dist/internal/kernel/indexed-sequence.d.ts.map +0 -1
- package/dist/internal/kernel/indexed-sequence.js +0 -117
- package/dist/internal/kernel/indexed-sequence.js.map +0 -1
- package/dist/internal/kernel/machine.d.ts +0 -8
- package/dist/internal/kernel/machine.d.ts.map +0 -1
- package/dist/internal/kernel/machine.js +0 -6
- package/dist/internal/kernel/machine.js.map +0 -1
- package/dist/internal/runtime/revision.d.ts +0 -22
- package/dist/internal/runtime/revision.d.ts.map +0 -1
- package/dist/internal/runtime/revision.js +0 -72
- package/dist/internal/runtime/revision.js.map +0 -1
- package/dist/internal/state/checked.d.ts +0 -21
- package/dist/internal/state/checked.d.ts.map +0 -1
- package/dist/internal/state/checked.js +0 -29
- package/dist/internal/state/checked.js.map +0 -1
- package/dist/internal/state/cursor.d.ts +0 -13
- package/dist/internal/state/cursor.d.ts.map +0 -1
- package/dist/internal/state/cursor.js +0 -24
- package/dist/internal/state/cursor.js.map +0 -1
- package/dist/internal/state/expansion.d.ts +0 -8
- package/dist/internal/state/expansion.d.ts.map +0 -1
- package/dist/internal/state/expansion.js +0 -23
- package/dist/internal/state/expansion.js.map +0 -1
- package/dist/internal/state/open-state.d.ts +0 -16
- package/dist/internal/state/open-state.d.ts.map +0 -1
- package/dist/internal/state/open-state.js +0 -25
- package/dist/internal/state/open-state.js.map +0 -1
- package/dist/internal/state/selection.d.ts +0 -23
- package/dist/internal/state/selection.d.ts.map +0 -1
- package/dist/internal/state/selection.js +0 -110
- package/dist/internal/state/selection.js.map +0 -1
- package/dist/listbox.d.ts +0 -2
- package/dist/listbox.d.ts.map +0 -1
- package/dist/listbox.js +0 -2
- package/dist/listbox.js.map +0 -1
- package/dist/menu-button.d.ts +0 -3
- package/dist/menu-button.d.ts.map +0 -1
- package/dist/menu-button.js +0 -3
- package/dist/menu-button.js.map +0 -1
- package/dist/menu.d.ts +0 -8
- package/dist/menu.d.ts.map +0 -1
- package/dist/menu.js +0 -4
- package/dist/menu.js.map +0 -1
- package/dist/menubar.d.ts +0 -3
- package/dist/menubar.d.ts.map +0 -1
- package/dist/menubar.js +0 -3
- package/dist/menubar.js.map +0 -1
- package/dist/multi-thumb-slider.d.ts +0 -35
- package/dist/multi-thumb-slider.d.ts.map +0 -1
- package/dist/multi-thumb-slider.js +0 -68
- package/dist/multi-thumb-slider.js.map +0 -1
- package/dist/number-field.d.ts +0 -49
- package/dist/number-field.d.ts.map +0 -1
- package/dist/number-field.js +0 -454
- package/dist/number-field.js.map +0 -1
- package/dist/pagination.d.ts +0 -63
- package/dist/pagination.d.ts.map +0 -1
- package/dist/pagination.js +0 -190
- package/dist/pagination.js.map +0 -1
- package/dist/pin-input.d.ts +0 -29
- package/dist/pin-input.d.ts.map +0 -1
- package/dist/pin-input.js +0 -49
- package/dist/pin-input.js.map +0 -1
- package/dist/quantity-field.d.ts +0 -58
- package/dist/quantity-field.d.ts.map +0 -1
- package/dist/quantity-field.js +0 -250
- package/dist/quantity-field.js.map +0 -1
- package/dist/radio-group.d.ts +0 -22
- package/dist/radio-group.d.ts.map +0 -1
- package/dist/radio-group.js +0 -16
- package/dist/radio-group.js.map +0 -1
- package/dist/rating.d.ts +0 -17
- package/dist/rating.d.ts.map +0 -1
- package/dist/rating.js +0 -15
- package/dist/rating.js.map +0 -1
- package/dist/result.d.ts +0 -10
- package/dist/result.d.ts.map +0 -1
- package/dist/result.js +0 -19
- package/dist/result.js.map +0 -1
- package/dist/revision.d.ts +0 -2
- package/dist/revision.d.ts.map +0 -1
- package/dist/revision.js +0 -2
- package/dist/revision.js.map +0 -1
- package/dist/select.d.ts +0 -30
- package/dist/select.d.ts.map +0 -1
- package/dist/select.js +0 -28
- package/dist/select.js.map +0 -1
- package/dist/shared.d.ts +0 -42
- package/dist/shared.d.ts.map +0 -1
- package/dist/shared.js +0 -3
- package/dist/shared.js.map +0 -1
- package/dist/slider.d.ts +0 -2
- package/dist/slider.d.ts.map +0 -1
- package/dist/slider.js +0 -2
- package/dist/slider.js.map +0 -1
- package/dist/spin-button.d.ts +0 -29
- package/dist/spin-button.d.ts.map +0 -1
- package/dist/spin-button.js +0 -61
- package/dist/spin-button.js.map +0 -1
- package/dist/stepper.d.ts +0 -17
- package/dist/stepper.d.ts.map +0 -1
- package/dist/stepper.js +0 -12
- package/dist/stepper.js.map +0 -1
- package/dist/structures/grid.d.ts +0 -27
- package/dist/structures/grid.d.ts.map +0 -1
- package/dist/structures/grid.js +0 -197
- package/dist/structures/grid.js.map +0 -1
- package/dist/structures/range.d.ts +0 -39
- package/dist/structures/range.d.ts.map +0 -1
- package/dist/structures/range.js +0 -242
- package/dist/structures/range.js.map +0 -1
- package/dist/structures/sequence.d.ts +0 -17
- package/dist/structures/sequence.d.ts.map +0 -1
- package/dist/structures/sequence.js +0 -24
- package/dist/structures/sequence.js.map +0 -1
- package/dist/structures/tree.d.ts +0 -32
- package/dist/structures/tree.d.ts.map +0 -1
- package/dist/structures/tree.js +0 -234
- package/dist/structures/tree.js.map +0 -1
- package/dist/switch.d.ts +0 -20
- package/dist/switch.d.ts.map +0 -1
- package/dist/switch.js +0 -4
- package/dist/switch.js.map +0 -1
- package/dist/tabs.d.ts +0 -15
- package/dist/tabs.d.ts.map +0 -1
- package/dist/tabs.js +0 -23
- package/dist/tabs.js.map +0 -1
- package/dist/tags-input.d.ts +0 -41
- package/dist/tags-input.d.ts.map +0 -1
- package/dist/tags-input.js +0 -44
- package/dist/tags-input.js.map +0 -1
- package/dist/text.d.ts +0 -2
- package/dist/text.d.ts.map +0 -1
- package/dist/text.js +0 -2
- package/dist/text.js.map +0 -1
- package/dist/time-field.d.ts +0 -46
- package/dist/time-field.d.ts.map +0 -1
- package/dist/time-field.js +0 -148
- package/dist/time-field.js.map +0 -1
- package/dist/toggle-button.d.ts +0 -19
- package/dist/toggle-button.d.ts.map +0 -1
- package/dist/toggle-button.js +0 -16
- package/dist/toggle-button.js.map +0 -1
- package/dist/toolbar.d.ts +0 -2
- package/dist/toolbar.d.ts.map +0 -1
- package/dist/toolbar.js +0 -2
- package/dist/toolbar.js.map +0 -1
- package/dist/tooltip.d.ts +0 -2
- package/dist/tooltip.d.ts.map +0 -1
- package/dist/tooltip.js +0 -2
- package/dist/tooltip.js.map +0 -1
- package/dist/tree-grid.d.ts +0 -10
- package/dist/tree-grid.d.ts.map +0 -1
- package/dist/tree-grid.js +0 -14
- package/dist/tree-grid.js.map +0 -1
- package/dist/tree-view.d.ts +0 -2
- package/dist/tree-view.d.ts.map +0 -1
- package/dist/tree-view.js +0 -2
- package/dist/tree-view.js.map +0 -1
- package/dist/units.d.ts +0 -72
- package/dist/units.d.ts.map +0 -1
- package/dist/units.js +0 -496
- package/dist/units.js.map +0 -1
- package/dist/window-splitter.d.ts +0 -2
- package/dist/window-splitter.d.ts.map +0 -1
- package/dist/window-splitter.js +0 -2
- package/dist/window-splitter.js.map +0 -1
package/README.md
CHANGED
|
@@ -5,8 +5,9 @@ Pure, renderer-neutral interaction semantics with explicit laws, failures, and r
|
|
|
5
5
|
## Scope
|
|
6
6
|
|
|
7
7
|
- Ordered structures: sequence, range, grid, and tree
|
|
8
|
-
- Reusable state: cursor, selection, expansion, revision, and
|
|
9
|
-
-
|
|
8
|
+
- Reusable state: cursor, selection, expansion, revision, interaction gates, and finite collection windows
|
|
9
|
+
- Coordination primitives for generation-bound async work, nested layer stacks, and identity-based reordering
|
|
10
|
+
- Composite behavior for selection, navigation, disclosure, editing, forms, and overlays
|
|
10
11
|
- UTF-16-safe text editing, exact decimal expressions, and dimension-checked units
|
|
11
12
|
|
|
12
13
|
## Contract
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sectile/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Renderer-neutral interaction semantics with explicit laws, failures, and costs.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
},
|
|
14
14
|
"repository": {
|
|
15
15
|
"type": "git",
|
|
16
|
-
"url": "https://github.com/
|
|
16
|
+
"url": "https://github.com/sectile/sectile.git",
|
|
17
17
|
"directory": "packages/core"
|
|
18
18
|
},
|
|
19
19
|
"types": "./dist/index.d.ts",
|
|
@@ -53,6 +53,26 @@
|
|
|
53
53
|
"import": "./dist/interaction.js",
|
|
54
54
|
"default": "./dist/interaction.js"
|
|
55
55
|
},
|
|
56
|
+
"./collection-window": {
|
|
57
|
+
"types": "./dist/collection-window.d.ts",
|
|
58
|
+
"import": "./dist/collection-window.js",
|
|
59
|
+
"default": "./dist/collection-window.js"
|
|
60
|
+
},
|
|
61
|
+
"./layer-stack": {
|
|
62
|
+
"types": "./dist/layer-stack.d.ts",
|
|
63
|
+
"import": "./dist/layer-stack.js",
|
|
64
|
+
"default": "./dist/layer-stack.js"
|
|
65
|
+
},
|
|
66
|
+
"./reorder": {
|
|
67
|
+
"types": "./dist/reorder.d.ts",
|
|
68
|
+
"import": "./dist/reorder.js",
|
|
69
|
+
"default": "./dist/reorder.js"
|
|
70
|
+
},
|
|
71
|
+
"./form": {
|
|
72
|
+
"types": "./dist/form.d.ts",
|
|
73
|
+
"import": "./dist/form.js",
|
|
74
|
+
"default": "./dist/form.js"
|
|
75
|
+
},
|
|
56
76
|
"./listbox": {
|
|
57
77
|
"types": "./dist/listbox.d.ts",
|
|
58
78
|
"import": "./dist/listbox.js",
|
|
@@ -133,6 +153,11 @@
|
|
|
133
153
|
"import": "./dist/toggle-button.js",
|
|
134
154
|
"default": "./dist/toggle-button.js"
|
|
135
155
|
},
|
|
156
|
+
"./toggle-group": {
|
|
157
|
+
"types": "./dist/toggle-group.d.ts",
|
|
158
|
+
"import": "./dist/toggle-group.js",
|
|
159
|
+
"default": "./dist/toggle-group.js"
|
|
160
|
+
},
|
|
136
161
|
"./window-splitter": {
|
|
137
162
|
"types": "./dist/window-splitter.d.ts",
|
|
138
163
|
"import": "./dist/window-splitter.js",
|
|
@@ -153,6 +178,11 @@
|
|
|
153
178
|
"import": "./dist/date-field.js",
|
|
154
179
|
"default": "./dist/date-field.js"
|
|
155
180
|
},
|
|
181
|
+
"./date-range-field": {
|
|
182
|
+
"types": "./dist/date-range-field.d.ts",
|
|
183
|
+
"import": "./dist/date-range-field.js",
|
|
184
|
+
"default": "./dist/date-range-field.js"
|
|
185
|
+
},
|
|
156
186
|
"./date-time-field": {
|
|
157
187
|
"types": "./dist/date-time-field.d.ts",
|
|
158
188
|
"import": "./dist/date-time-field.js",
|
|
@@ -163,6 +193,11 @@
|
|
|
163
193
|
"import": "./dist/time-field.js",
|
|
164
194
|
"default": "./dist/time-field.js"
|
|
165
195
|
},
|
|
196
|
+
"./time-range-field": {
|
|
197
|
+
"types": "./dist/time-range-field.d.ts",
|
|
198
|
+
"import": "./dist/time-range-field.js",
|
|
199
|
+
"default": "./dist/time-range-field.js"
|
|
200
|
+
},
|
|
166
201
|
"./date-picker": {
|
|
167
202
|
"types": "./dist/date-picker.d.ts",
|
|
168
203
|
"import": "./dist/date-picker.js",
|
|
@@ -173,6 +208,31 @@
|
|
|
173
208
|
"import": "./dist/date-range-picker.js",
|
|
174
209
|
"default": "./dist/date-range-picker.js"
|
|
175
210
|
},
|
|
211
|
+
"./range-calendar": {
|
|
212
|
+
"types": "./dist/range-calendar.d.ts",
|
|
213
|
+
"import": "./dist/range-calendar.js",
|
|
214
|
+
"default": "./dist/range-calendar.js"
|
|
215
|
+
},
|
|
216
|
+
"./month-picker": {
|
|
217
|
+
"types": "./dist/month-picker.d.ts",
|
|
218
|
+
"import": "./dist/month-picker.js",
|
|
219
|
+
"default": "./dist/month-picker.js"
|
|
220
|
+
},
|
|
221
|
+
"./month-range-picker": {
|
|
222
|
+
"types": "./dist/month-range-picker.d.ts",
|
|
223
|
+
"import": "./dist/month-range-picker.js",
|
|
224
|
+
"default": "./dist/month-range-picker.js"
|
|
225
|
+
},
|
|
226
|
+
"./year-picker": {
|
|
227
|
+
"types": "./dist/year-picker.d.ts",
|
|
228
|
+
"import": "./dist/year-picker.js",
|
|
229
|
+
"default": "./dist/year-picker.js"
|
|
230
|
+
},
|
|
231
|
+
"./year-range-picker": {
|
|
232
|
+
"types": "./dist/year-range-picker.d.ts",
|
|
233
|
+
"import": "./dist/year-range-picker.js",
|
|
234
|
+
"default": "./dist/year-range-picker.js"
|
|
235
|
+
},
|
|
176
236
|
"./date-time-picker": {
|
|
177
237
|
"types": "./dist/date-time-picker.d.ts",
|
|
178
238
|
"import": "./dist/date-time-picker.js",
|
|
@@ -198,6 +258,31 @@
|
|
|
198
258
|
"import": "./dist/dialog.js",
|
|
199
259
|
"default": "./dist/dialog.js"
|
|
200
260
|
},
|
|
261
|
+
"./popover": {
|
|
262
|
+
"types": "./dist/popover.d.ts",
|
|
263
|
+
"import": "./dist/popover.js",
|
|
264
|
+
"default": "./dist/popover.js"
|
|
265
|
+
},
|
|
266
|
+
"./toast": {
|
|
267
|
+
"types": "./dist/toast.d.ts",
|
|
268
|
+
"import": "./dist/toast.js",
|
|
269
|
+
"default": "./dist/toast.js"
|
|
270
|
+
},
|
|
271
|
+
"./timer": {
|
|
272
|
+
"types": "./dist/timer.d.ts",
|
|
273
|
+
"import": "./dist/timer.js",
|
|
274
|
+
"default": "./dist/timer.js"
|
|
275
|
+
},
|
|
276
|
+
"./cascade-select": {
|
|
277
|
+
"types": "./dist/cascade-select.d.ts",
|
|
278
|
+
"import": "./dist/cascade-select.js",
|
|
279
|
+
"default": "./dist/cascade-select.js"
|
|
280
|
+
},
|
|
281
|
+
"./color-picker": {
|
|
282
|
+
"types": "./dist/color-picker.d.ts",
|
|
283
|
+
"import": "./dist/color-picker.js",
|
|
284
|
+
"default": "./dist/color-picker.js"
|
|
285
|
+
},
|
|
201
286
|
"./alert-dialog": {
|
|
202
287
|
"types": "./dist/alert-dialog.d.ts",
|
|
203
288
|
"import": "./dist/alert-dialog.js",
|
|
@@ -223,6 +308,11 @@
|
|
|
223
308
|
"import": "./dist/menubar.js",
|
|
224
309
|
"default": "./dist/menubar.js"
|
|
225
310
|
},
|
|
311
|
+
"./navigation-menu": {
|
|
312
|
+
"types": "./dist/navigation-menu.d.ts",
|
|
313
|
+
"import": "./dist/navigation-menu.js",
|
|
314
|
+
"default": "./dist/navigation-menu.js"
|
|
315
|
+
},
|
|
226
316
|
"./menu-button": {
|
|
227
317
|
"types": "./dist/menu-button.d.ts",
|
|
228
318
|
"import": "./dist/menu-button.js",
|
|
@@ -273,11 +363,19 @@
|
|
|
273
363
|
"import": "./dist/text.js",
|
|
274
364
|
"default": "./dist/text.js"
|
|
275
365
|
},
|
|
366
|
+
"./editable": {
|
|
367
|
+
"types": "./dist/editable.d.ts",
|
|
368
|
+
"import": "./dist/editable.js",
|
|
369
|
+
"default": "./dist/editable.js"
|
|
370
|
+
},
|
|
276
371
|
"./package.json": "./package.json"
|
|
277
372
|
},
|
|
278
373
|
"devDependencies": {
|
|
279
374
|
"typescript": "7.0.2"
|
|
280
375
|
},
|
|
376
|
+
"dependencies": {
|
|
377
|
+
"colord": "^2.10.0"
|
|
378
|
+
},
|
|
281
379
|
"scripts": {
|
|
282
380
|
"build": "node scripts/build.mjs production",
|
|
283
381
|
"build:verification": "node scripts/build.mjs verification",
|
package/dist/accordion.d.ts
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import type { Result, StableID } from './shared.js';
|
|
2
|
-
import type { Sequence } from './structures/sequence.js';
|
|
3
|
-
import { type LinearActionPolicies } from './internal/composites/linear-action.js';
|
|
4
|
-
import { type CursorState } from './internal/state/cursor.js';
|
|
5
|
-
export type AccordionEvent<ID extends StableID = StableID> = 'next' | 'previous' | 'first' | 'last' | 'toggle' | {
|
|
6
|
-
readonly type: 'focus';
|
|
7
|
-
readonly id: ID;
|
|
8
|
-
} | {
|
|
9
|
-
readonly type: 'toggle';
|
|
10
|
-
readonly id: ID;
|
|
11
|
-
} | {
|
|
12
|
-
readonly type: 'set-open';
|
|
13
|
-
readonly id: ID;
|
|
14
|
-
readonly open: boolean;
|
|
15
|
-
};
|
|
16
|
-
export type AccordionCommand<ID extends StableID = StableID> = {
|
|
17
|
-
readonly type: 'focus';
|
|
18
|
-
readonly id: ID;
|
|
19
|
-
} | {
|
|
20
|
-
readonly type: 'open-changed';
|
|
21
|
-
readonly id: ID;
|
|
22
|
-
readonly open: boolean;
|
|
23
|
-
};
|
|
24
|
-
export interface AccordionState<ID extends StableID = StableID> {
|
|
25
|
-
readonly cursor: CursorState<ID>;
|
|
26
|
-
readonly openIDs: readonly ID[];
|
|
27
|
-
has(id: ID): boolean;
|
|
28
|
-
}
|
|
29
|
-
export interface AccordionStateInput<ID extends StableID = StableID> {
|
|
30
|
-
readonly current?: ID | null;
|
|
31
|
-
readonly openIDs?: readonly ID[];
|
|
32
|
-
}
|
|
33
|
-
export interface AccordionPolicies<ID extends StableID = StableID> extends LinearActionPolicies<ID> {
|
|
34
|
-
readonly expansion?: 'single' | 'multiple';
|
|
35
|
-
readonly collapsible?: boolean;
|
|
36
|
-
}
|
|
37
|
-
export interface AccordionUpdate<ID extends StableID = StableID> {
|
|
38
|
-
readonly state: AccordionState<ID>;
|
|
39
|
-
readonly commands: readonly AccordionCommand<ID>[];
|
|
40
|
-
}
|
|
41
|
-
export declare function createAccordionState<ID extends StableID>(domain: Sequence<ID>, input?: AccordionStateInput<ID>, policies?: AccordionPolicies<ID>): Result<AccordionState<ID>>;
|
|
42
|
-
export declare function applyAccordionEvent<ID extends StableID>(domain: Sequence<ID>, state: AccordionState<ID>, event: AccordionEvent<ID>, policies?: AccordionPolicies<ID>): Result<AccordionUpdate<ID>>;
|
|
43
|
-
//# sourceMappingURL=accordion.d.ts.map
|
package/dist/accordion.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../src/accordion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEjF,MAAM,MAAM,cAAc,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IACrD,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GACjD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;CAAE,GAC3C;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;CAAE,GAC5C;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAC3E,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IACvD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;CAAE,GAC3C;IAAE,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAC/E,MAAM,WAAW,cAAc,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ;IAC5D,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC;IAChC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;CACtB;AACD,MAAM,WAAW,mBAAmB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ;IACjE,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC;CAClC;AACD,MAAM,WAAW,iBAAiB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,CAC/D,SAAQ,oBAAoB,CAAC,EAAE,CAAC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3C,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;CAChC;AACD,MAAM,WAAW,eAAe,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ;IAC7D,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,SAAS,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC;CACpD;AAED,wBAAgB,oBAAoB,CAAC,EAAE,SAAS,QAAQ,EACtD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EACpB,KAAK,GAAE,mBAAmB,CAAC,EAAE,CAAM,EACnC,QAAQ,GAAE,iBAAiB,CAAC,EAAE,CAAM,GACnC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAsB5B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,QAAQ,EACrD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,CAAC,EAC1E,QAAQ,GAAE,iBAAiB,CAAC,EAAE,CAAM,GACnC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CA+C7B"}
|
package/dist/accordion.js
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { fail, ok } from './internal/kernel/foundation.js';
|
|
2
|
-
import { createMachineUpdate } from './internal/kernel/machine.js';
|
|
3
|
-
import { applyLinearActionEvent, createLinearActionState, } from './internal/composites/linear-action.js';
|
|
4
|
-
import { createCursorState } from './internal/state/cursor.js';
|
|
5
|
-
export function createAccordionState(domain, input = {}, policies = {}) {
|
|
6
|
-
const current = input.current ?? null;
|
|
7
|
-
if (current !== null && !domain.contains(current)) {
|
|
8
|
-
return fail('construction', 'accordion-cursor-outside-domain', 'Accordion cursor must exist in its domain.');
|
|
9
|
-
}
|
|
10
|
-
const expansion = policies.expansion ?? 'single';
|
|
11
|
-
const collapsible = policies.collapsible ?? true;
|
|
12
|
-
if (!validPolicies(expansion, collapsible)) {
|
|
13
|
-
return fail('construction', 'invalid-accordion-policy', 'Accordion expansion and collapsible policies are invalid.');
|
|
14
|
-
}
|
|
15
|
-
const openIDs = input.openIDs ?? [];
|
|
16
|
-
const unique = new Set(openIDs);
|
|
17
|
-
if (unique.size !== openIDs.length || openIDs.some((id) => !domain.contains(id))) {
|
|
18
|
-
return fail('construction', 'invalid-accordion-open-set', 'Accordion open identities must be unique domain members.');
|
|
19
|
-
}
|
|
20
|
-
if (expansion === 'single' && openIDs.length > 1) {
|
|
21
|
-
return fail('construction', 'accordion-single-expansion', 'Single accordion state permits at most one open item.');
|
|
22
|
-
}
|
|
23
|
-
if (!collapsible && domain.size > 0 && openIDs.length === 0) {
|
|
24
|
-
return fail('construction', 'accordion-open-item-required', 'A non-collapsible accordion requires an open item.');
|
|
25
|
-
}
|
|
26
|
-
return ok(accordionState(current, openIDs));
|
|
27
|
-
}
|
|
28
|
-
export function applyAccordionEvent(domain, state, event, policies = {}) {
|
|
29
|
-
const normalized = createAccordionState(domain, {
|
|
30
|
-
current: state.cursor.current, openIDs: state.openIDs,
|
|
31
|
-
}, policies);
|
|
32
|
-
if (!normalized.ok)
|
|
33
|
-
return { ok: false, error: { ...normalized.error, class: 'transition-rejection' } };
|
|
34
|
-
if (typeof event === 'string' && ['next', 'previous', 'first', 'last'].includes(event)) {
|
|
35
|
-
const moved = applyLinearActionEvent(domain, { cursor: state.cursor }, event, policies);
|
|
36
|
-
if (!moved.ok)
|
|
37
|
-
return moved;
|
|
38
|
-
return createMachineUpdate(accordionState(moved.value.state.cursor.current, state.openIDs), moved.value.commands.map((command) => ({ type: 'focus', id: command.id })));
|
|
39
|
-
}
|
|
40
|
-
if (typeof event === 'object' && event.type === 'focus') {
|
|
41
|
-
const moved = applyLinearActionEvent(domain, { cursor: state.cursor }, event, policies);
|
|
42
|
-
if (!moved.ok)
|
|
43
|
-
return moved;
|
|
44
|
-
return createMachineUpdate(accordionState(event.id, state.openIDs), [{ type: 'focus', id: event.id }]);
|
|
45
|
-
}
|
|
46
|
-
const target = typeof event === 'object' ? event.id : state.cursor.current;
|
|
47
|
-
if (target === null)
|
|
48
|
-
return fail('transition-rejection', 'no-cursor', 'Accordion toggle requires a cursor.');
|
|
49
|
-
if (!domain.contains(target) || policies.eligible?.(target) === false) {
|
|
50
|
-
return fail('transition-rejection', 'accordion-target-unavailable', 'Accordion target must be eligible.');
|
|
51
|
-
}
|
|
52
|
-
const open = typeof event === 'object' && event.type === 'set-open'
|
|
53
|
-
? event.open
|
|
54
|
-
: !state.has(target);
|
|
55
|
-
if (typeof open !== 'boolean') {
|
|
56
|
-
return fail('transition-rejection', 'invalid-accordion-event', 'Accordion event is not accepted.');
|
|
57
|
-
}
|
|
58
|
-
if (!open && policies.collapsible === false && state.openIDs.length === 1 && state.has(target)) {
|
|
59
|
-
return fail('transition-rejection', 'accordion-collapse-forbidden', 'The last open item cannot collapse.');
|
|
60
|
-
}
|
|
61
|
-
const nextOpen = open
|
|
62
|
-
? policies.expansion === 'multiple'
|
|
63
|
-
? state.has(target) ? state.openIDs : [...state.openIDs, target]
|
|
64
|
-
: [target]
|
|
65
|
-
: state.openIDs.filter((id) => id !== target);
|
|
66
|
-
const cursorChanged = state.cursor.current !== target;
|
|
67
|
-
const openChanged = state.has(target) !== open;
|
|
68
|
-
const commands = [];
|
|
69
|
-
if (cursorChanged)
|
|
70
|
-
commands.push({ type: 'focus', id: target });
|
|
71
|
-
if (openChanged)
|
|
72
|
-
commands.push({ type: 'open-changed', id: target, open });
|
|
73
|
-
return createMachineUpdate(accordionState(target, nextOpen), commands);
|
|
74
|
-
}
|
|
75
|
-
function accordionState(current, openIDs) {
|
|
76
|
-
const ids = Object.freeze([...openIDs]);
|
|
77
|
-
const membership = new Set(ids);
|
|
78
|
-
return Object.freeze({ cursor: createCursorState(current), openIDs: ids, has: (id) => membership.has(id) });
|
|
79
|
-
}
|
|
80
|
-
function validPolicies(expansion, collapsible) {
|
|
81
|
-
return (expansion === 'single' || expansion === 'multiple') && typeof collapsible === 'boolean';
|
|
82
|
-
}
|
|
83
|
-
//# sourceMappingURL=accordion.js.map
|
package/dist/accordion.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"accordion.js","sourceRoot":"","sources":["../src/accordion.ts"],"names":[],"mappings":"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"}
|
package/dist/alert-dialog.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { Result } from './shared.js';
|
|
2
|
-
import { createDialogState, type DialogEvent, type DialogState } from './dialog.js';
|
|
3
|
-
export type AlertDialogState = DialogState;
|
|
4
|
-
export type AlertDialogEvent = DialogEvent;
|
|
5
|
-
export type AlertDialogCommand = {
|
|
6
|
-
readonly type: 'request-initial-focus';
|
|
7
|
-
} | {
|
|
8
|
-
readonly type: 'request-focus-restore';
|
|
9
|
-
} | {
|
|
10
|
-
readonly type: 'announce-alert';
|
|
11
|
-
};
|
|
12
|
-
export interface AlertDialogUpdate {
|
|
13
|
-
readonly state: AlertDialogState;
|
|
14
|
-
readonly commands: readonly AlertDialogCommand[];
|
|
15
|
-
}
|
|
16
|
-
export declare const createAlertDialogState: typeof createDialogState;
|
|
17
|
-
export declare function applyAlertDialogEvent(state: AlertDialogState, event: AlertDialogEvent): Result<AlertDialogUpdate>;
|
|
18
|
-
//# sourceMappingURL=alert-dialog.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"alert-dialog.d.ts","sourceRoot":"","sources":["../src/alert-dialog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAI,EAAC,MAAM,EAAC,MAAI,aAAa,CAAC;AAAA,OAAM,EAAkB,iBAAiB,EAAC,KAAK,WAAW,EAAC,KAAK,WAAW,EAAC,MAAI,aAAa,CAAC;AACnI,MAAM,MAAM,gBAAgB,GAAC,WAAW,CAAC;AAAA,MAAM,MAAM,gBAAgB,GAAC,WAAW,CAAC;AAAA,MAAM,MAAM,kBAAkB,GAAC;IAAC,QAAQ,CAAC,IAAI,EAAC,uBAAuB,CAAA;CAAC,GAAC;IAAC,QAAQ,CAAC,IAAI,EAAC,uBAAuB,CAAA;CAAC,GAAC;IAAC,QAAQ,CAAC,IAAI,EAAC,gBAAgB,CAAA;CAAC,CAAC;AAAA,MAAM,WAAW,iBAAiB;IAAC,QAAQ,CAAC,KAAK,EAAC,gBAAgB,CAAC;IAAA,QAAQ,CAAC,QAAQ,EAAC,SAAS,kBAAkB,EAAE,CAAA;CAAC;AACrV,eAAO,MAAM,sBAAsB,EAAC,OAAO,iBAAmC,CAAC;AAAA,wBAAgB,qBAAqB,CAAC,KAAK,EAAC,gBAAgB,EAAC,KAAK,EAAC,gBAAgB,GAAE,MAAM,CAAC,iBAAiB,CAAC,CAAyT"}
|
package/dist/alert-dialog.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { applyDialogEvent, createDialogState } from './dialog.js';
|
|
2
|
-
export const createAlertDialogState = createDialogState;
|
|
3
|
-
export function applyAlertDialogEvent(state, event) { const r = applyDialogEvent(state, event); if (!r.ok)
|
|
4
|
-
return r; const commands = []; for (const c of r.value.commands) {
|
|
5
|
-
commands.push(c);
|
|
6
|
-
if (c.type === 'request-initial-focus')
|
|
7
|
-
commands.push({ type: 'announce-alert' });
|
|
8
|
-
} return { ok: true, value: Object.freeze({ state: r.value.state, commands: Object.freeze(commands) }) }; }
|
|
9
|
-
//# sourceMappingURL=alert-dialog.js.map
|
package/dist/alert-dialog.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"alert-dialog.js","sourceRoot":"","sources":["../src/alert-dialog.ts"],"names":[],"mappings":"AAAqC,OAAM,EAAC,gBAAgB,EAAC,iBAAiB,EAAmC,MAAI,aAAa,CAAC;AAEnI,MAAM,CAAC,MAAM,sBAAsB,GAA0B,iBAAiB,CAAC;AAAA,MAAM,UAAU,qBAAqB,CAAC,KAAsB,EAAC,KAAsB,IAA4B,MAAM,CAAC,GAAC,gBAAgB,CAAC,KAAK,EAAC,KAAK,CAAC,CAAC,CAAA,IAAG,CAAC,CAAC,CAAC,EAAE;IAAC,OAAO,CAAC,CAAC,CAAA,MAAM,QAAQ,GAAsB,EAAE,CAAC,CAAA,KAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAC,CAAC;IAAA,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAAA,IAAG,CAAC,CAAC,IAAI,KAAG,uBAAuB;QAAC,QAAQ,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,gBAAgB,EAAC,CAAC,CAAA;AAAA,CAAC,CAAA,OAAM,EAAC,EAAE,EAAC,IAAI,EAAC,KAAK,EAAC,MAAM,CAAC,MAAM,CAAC,EAAC,KAAK,EAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAC,QAAQ,EAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAC,CAAC,EAAC,CAAA,CAAA,CAAC"}
|
package/dist/calendar.d.ts
DELETED
package/dist/calendar.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../src/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,cAAc,GACpB,MAAM,mCAAmC,CAAC"}
|
package/dist/calendar.js
DELETED
package/dist/calendar.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"calendar.js","sourceRoot":"","sources":["../src/calendar.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GAOpB,MAAM,mCAAmC,CAAC"}
|
package/dist/carousel.d.ts
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import type { Result, StableID } from './shared.js';
|
|
2
|
-
import type { Sequence } from './structures/sequence.js';
|
|
3
|
-
import { type CursorState } from './internal/state/cursor.js';
|
|
4
|
-
export type CarouselPauseReason = 'focus' | 'hover' | 'visibility';
|
|
5
|
-
export interface CarouselState<ID extends StableID = StableID> {
|
|
6
|
-
readonly cursor: CursorState<ID>;
|
|
7
|
-
/** User-owned pause state. Host-owned temporary pauses live in pauseReasons. */
|
|
8
|
-
readonly paused: boolean;
|
|
9
|
-
readonly pauseReasons: readonly CarouselPauseReason[];
|
|
10
|
-
}
|
|
11
|
-
export type CarouselEvent<ID extends StableID = StableID> = 'next' | 'previous' | 'first' | 'last' | 'pause' | 'resume' | 'toggle-pause' | {
|
|
12
|
-
readonly type: 'focus';
|
|
13
|
-
readonly id: ID;
|
|
14
|
-
} | {
|
|
15
|
-
readonly type: 'pause-for';
|
|
16
|
-
readonly reason: CarouselPauseReason;
|
|
17
|
-
} | {
|
|
18
|
-
readonly type: 'resume-for';
|
|
19
|
-
readonly reason: CarouselPauseReason;
|
|
20
|
-
};
|
|
21
|
-
export type CarouselCommand<ID extends StableID = StableID> = {
|
|
22
|
-
readonly type: 'announce-slide';
|
|
23
|
-
readonly id: ID;
|
|
24
|
-
};
|
|
25
|
-
export interface CarouselPolicies {
|
|
26
|
-
readonly wrap?: boolean;
|
|
27
|
-
}
|
|
28
|
-
export interface CarouselPosition {
|
|
29
|
-
readonly index: number | null;
|
|
30
|
-
readonly count: number;
|
|
31
|
-
}
|
|
32
|
-
export interface CarouselUpdate<ID extends StableID = StableID> {
|
|
33
|
-
readonly state: CarouselState<ID>;
|
|
34
|
-
readonly commands: readonly CarouselCommand<ID>[];
|
|
35
|
-
}
|
|
36
|
-
export declare function createCarouselState<ID extends StableID>(slides: Sequence<ID>, current?: ID | null, paused?: boolean, pauseReasons?: readonly CarouselPauseReason[]): Result<CarouselState<ID>>;
|
|
37
|
-
export declare function getCarouselPosition<ID extends StableID>(slides: Sequence<ID>, state: CarouselState<ID>): CarouselPosition;
|
|
38
|
-
export declare function isCarouselRotationPaused(state: CarouselState): boolean;
|
|
39
|
-
export declare function applyCarouselEvent<ID extends StableID>(slides: Sequence<ID>, state: CarouselState<ID>, event: CarouselEvent<ID>, policies?: CarouselPolicies): Result<CarouselUpdate<ID>>;
|
|
40
|
-
//# sourceMappingURL=carousel.d.ts.map
|
package/dist/carousel.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"carousel.d.ts","sourceRoot":"","sources":["../src/carousel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzD,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEjF,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC;AAEnE,MAAM,WAAW,aAAa,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ;IAC3D,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IACjC,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACvD;AAED,MAAM,MAAM,aAAa,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IACpD,MAAM,GACN,UAAU,GACV,OAAO,GACP,MAAM,GACN,OAAO,GACP,QAAQ,GACR,cAAc,GACd;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAA;CAAE,GAC3C;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAA;CAAE,GACpE;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAE1E,MAAM,MAAM,eAAe,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI;IAC5D,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;CACjB,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE;AAC7D,MAAM,WAAW,gBAAgB;IAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE;AAC3F,MAAM,WAAW,cAAc,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ;IAAI,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,eAAe,CAAC,EAAE,CAAC,EAAE,CAAA;CAAE;AAExJ,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,QAAQ,EACrD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EACpB,OAAO,GAAE,EAAE,GAAG,IAAW,EACzB,MAAM,UAAQ,EACd,YAAY,GAAE,SAAS,mBAAmB,EAAO,GAChD,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAG3B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAEzH;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAEtE;AAED,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,QAAQ,EACpD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EACpB,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,EACxB,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,EACxB,QAAQ,GAAE,gBAAqB,GAC9B,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAkC5B"}
|
package/dist/carousel.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { fail, ok } from './internal/kernel/foundation.js';
|
|
2
|
-
import { createMachineUpdate } from './internal/kernel/machine.js';
|
|
3
|
-
import { createCursorState } from './internal/state/cursor.js';
|
|
4
|
-
export function createCarouselState(slides, current = null, paused = false, pauseReasons = []) {
|
|
5
|
-
if (current !== null && !slides.contains(current))
|
|
6
|
-
return fail('construction', 'carousel-cursor-outside-slides', 'Carousel cursor must identify a slide.');
|
|
7
|
-
return ok(Object.freeze({ cursor: createCursorState(current), paused, pauseReasons: Object.freeze([...new Set(pauseReasons)]) }));
|
|
8
|
-
}
|
|
9
|
-
export function getCarouselPosition(slides, state) {
|
|
10
|
-
return Object.freeze({ index: state.cursor.current === null ? null : slides.indexOf(state.cursor.current), count: slides.size });
|
|
11
|
-
}
|
|
12
|
-
export function isCarouselRotationPaused(state) {
|
|
13
|
-
return state.paused || state.pauseReasons.length > 0;
|
|
14
|
-
}
|
|
15
|
-
export function applyCarouselEvent(slides, state, event, policies = {}) {
|
|
16
|
-
const valid = createCarouselState(slides, state.cursor.current, state.paused, state.pauseReasons);
|
|
17
|
-
if (!valid.ok)
|
|
18
|
-
return { ok: false, error: { ...valid.error, class: 'transition-rejection' } };
|
|
19
|
-
if (event === 'pause' || event === 'resume' || event === 'toggle-pause') {
|
|
20
|
-
const paused = event === 'pause' ? true : event === 'resume' ? false : !state.paused;
|
|
21
|
-
return createMachineUpdate(Object.freeze({ cursor: state.cursor, paused, pauseReasons: state.pauseReasons }));
|
|
22
|
-
}
|
|
23
|
-
if (typeof event === 'object' && (event.type === 'pause-for' || event.type === 'resume-for')) {
|
|
24
|
-
const pauseReasons = event.type === 'pause-for'
|
|
25
|
-
? state.pauseReasons.includes(event.reason) ? state.pauseReasons : Object.freeze([...state.pauseReasons, event.reason])
|
|
26
|
-
: Object.freeze(state.pauseReasons.filter((reason) => reason !== event.reason));
|
|
27
|
-
if (pauseReasons === state.pauseReasons)
|
|
28
|
-
return createMachineUpdate(state);
|
|
29
|
-
return createMachineUpdate(Object.freeze({ cursor: state.cursor, paused: state.paused, pauseReasons }));
|
|
30
|
-
}
|
|
31
|
-
let id;
|
|
32
|
-
if (typeof event === 'object') {
|
|
33
|
-
if (!slides.contains(event.id))
|
|
34
|
-
return fail('transition-rejection', 'carousel-target-unavailable', 'Direct carousel focus requires a slide.');
|
|
35
|
-
id = event.id;
|
|
36
|
-
}
|
|
37
|
-
else if (event === 'first')
|
|
38
|
-
id = slides.at(0);
|
|
39
|
-
else if (event === 'last')
|
|
40
|
-
id = slides.at(slides.size - 1);
|
|
41
|
-
else if (state.cursor.current === null)
|
|
42
|
-
id = slides.at(event === 'next' ? 0 : slides.size - 1);
|
|
43
|
-
else {
|
|
44
|
-
const moved = slides.move(state.cursor.current, event === 'next' ? 1 : -1, policies.wrap === false ? 'stop' : 'wrap');
|
|
45
|
-
id = moved.kind === 'found' ? moved.id : state.cursor.current;
|
|
46
|
-
}
|
|
47
|
-
if (id === null || id === state.cursor.current)
|
|
48
|
-
return createMachineUpdate(state);
|
|
49
|
-
return createMachineUpdate(Object.freeze({ cursor: createCursorState(id), paused: state.paused, pauseReasons: state.pauseReasons }), [{ type: 'announce-slide', id }]);
|
|
50
|
-
}
|
|
51
|
-
//# sourceMappingURL=carousel.js.map
|
package/dist/carousel.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"carousel.js","sourceRoot":"","sources":["../src/carousel.ts"],"names":[],"mappings":"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"}
|
package/dist/checkbox-group.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { Result, StableID } from './shared.js';
|
|
2
|
-
import type { Sequence } from './structures/sequence.js';
|
|
3
|
-
import { type ListboxCommand, type ListboxEvent, type ListboxPolicies, type ListboxState, type ListboxStateInput, type ListboxUpdate } from './internal/composites/listbox.js';
|
|
4
|
-
export type CheckboxGroupEvent<ID extends StableID = StableID> = Exclude<ListboxEvent<ID>, 'activate'>;
|
|
5
|
-
export type CheckboxGroupCommand<ID extends StableID = StableID> = ListboxCommand<ID>;
|
|
6
|
-
export type CheckboxGroupState<ID extends StableID = StableID> = ListboxState<ID>;
|
|
7
|
-
export type CheckboxGroupStateInput<ID extends StableID = StableID> = ListboxStateInput<ID>;
|
|
8
|
-
export type CheckboxGroupPolicies<ID extends StableID = StableID> = Omit<ListboxPolicies<ID>, 'selectionMode' | 'selectionFollowsFocus'>;
|
|
9
|
-
export type CheckboxGroupUpdate<ID extends StableID = StableID> = ListboxUpdate<ID>;
|
|
10
|
-
export declare function createCheckboxGroupState<ID extends StableID>(domain: Sequence<ID>, input?: CheckboxGroupStateInput<ID>): Result<CheckboxGroupState<ID>>;
|
|
11
|
-
export declare function applyCheckboxGroupEvent<ID extends StableID>(domain: Sequence<ID>, state: CheckboxGroupState<ID>, event: CheckboxGroupEvent<ID>, policies?: CheckboxGroupPolicies<ID>): Result<CheckboxGroupUpdate<ID>>;
|
|
12
|
-
//# sourceMappingURL=checkbox-group.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox-group.d.ts","sourceRoot":"","sources":["../src/checkbox-group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EACnB,MAAM,kCAAkC,CAAC;AAE1C,MAAM,MAAM,kBAAkB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;AACvG,MAAM,MAAM,oBAAoB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI,cAAc,CAAC,EAAE,CAAC,CAAC;AACtF,MAAM,MAAM,kBAAkB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;AAClF,MAAM,MAAM,uBAAuB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAC5F,MAAM,MAAM,qBAAqB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,EAAE,eAAe,GAAG,uBAAuB,CAAC,CAAC;AACzI,MAAM,MAAM,mBAAmB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;AAEpF,wBAAgB,wBAAwB,CAAC,EAAE,SAAS,QAAQ,EAC1D,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EACpB,KAAK,GAAE,uBAAuB,CAAC,EAAE,CAAM,GACtC,MAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAEhC;AAED,wBAAgB,uBAAuB,CAAC,EAAE,SAAS,QAAQ,EACzD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EACpB,KAAK,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAC7B,KAAK,EAAE,kBAAkB,CAAC,EAAE,CAAC,EAC7B,QAAQ,GAAE,qBAAqB,CAAC,EAAE,CAAM,GACvC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAMjC"}
|
package/dist/checkbox-group.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { applyListboxEvent, createListboxState, } from './internal/composites/listbox.js';
|
|
2
|
-
export function createCheckboxGroupState(domain, input = {}) {
|
|
3
|
-
return createListboxState(domain, input, 'multiple');
|
|
4
|
-
}
|
|
5
|
-
export function applyCheckboxGroupEvent(domain, state, event, policies = {}) {
|
|
6
|
-
return applyListboxEvent(domain, state, event, {
|
|
7
|
-
...policies,
|
|
8
|
-
selectionMode: 'multiple',
|
|
9
|
-
selectionFollowsFocus: false,
|
|
10
|
-
});
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=checkbox-group.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox-group.js","sourceRoot":"","sources":["../src/checkbox-group.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,GAOnB,MAAM,kCAAkC,CAAC;AAS1C,MAAM,UAAU,wBAAwB,CACtC,MAAoB,EACpB,KAAK,GAAgC,EAAE;IAEvC,OAAO,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,MAAoB,EACpB,KAA6B,EAC7B,KAA6B,EAC7B,QAAQ,GAA8B,EAAE;IAExC,OAAO,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;QAC7C,GAAG,QAAQ;QACX,aAAa,EAAE,UAAU;QACzB,qBAAqB,EAAE,KAAK;KAC7B,CAAC,CAAC;AACL,CAAC"}
|
package/dist/checkbox.d.ts
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export { applyCheckedEvent as applyCheckboxEvent, createCheckedState as createCheckboxState, type CheckedCommand as CheckboxCommand, type CheckedEvent as CheckboxEvent, type CheckedPolicies as CheckboxPolicies, type CheckedState as CheckboxState, type CheckedValue as CheckboxValue, } from './internal/state/checked.js';
|
|
2
|
-
//# sourceMappingURL=checkbox.d.ts.map
|
package/dist/checkbox.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,IAAI,kBAAkB,EACvC,kBAAkB,IAAI,mBAAmB,EACzC,KAAK,cAAc,IAAI,eAAe,EACtC,KAAK,YAAY,IAAI,aAAa,EAClC,KAAK,eAAe,IAAI,gBAAgB,EACxC,KAAK,YAAY,IAAI,aAAa,EAClC,KAAK,YAAY,IAAI,aAAa,GACnC,MAAM,6BAA6B,CAAC"}
|
package/dist/checkbox.js
DELETED
package/dist/checkbox.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,IAAI,kBAAkB,EACvC,kBAAkB,IAAI,mBAAmB,GAM1C,MAAM,6BAA6B,CAAC"}
|
package/dist/combobox.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { Result, StableID } from './shared.js';
|
|
2
|
-
import type { Sequence } from './structures/sequence.js';
|
|
3
|
-
import { type ComboboxCommand, type ComboboxEvent, type ComboboxPolicies, type ComboboxState, type ComboboxUpdate } from './internal/composites/combobox.js';
|
|
4
|
-
import { type TextEditingState } from './internal/editing/text.js';
|
|
5
|
-
export interface ComboboxStateInput<ID extends StableID = StableID> {
|
|
6
|
-
readonly inputValue?: string;
|
|
7
|
-
readonly text?: TextEditingState;
|
|
8
|
-
readonly popupOpen?: boolean;
|
|
9
|
-
readonly current?: ID | null;
|
|
10
|
-
readonly selected?: readonly ID[];
|
|
11
|
-
readonly anchor?: ID | null;
|
|
12
|
-
}
|
|
13
|
-
export declare function createComboboxState<ID extends StableID>(domain: Sequence<ID>, input?: ComboboxStateInput<ID>): Result<ComboboxState<ID>>;
|
|
14
|
-
export declare function applyComboboxEvent<ID extends StableID>(domain: Sequence<ID>, labels: ReadonlyMap<ID, string>, state: ComboboxState<ID>, event: ComboboxEvent<ID>, policies?: ComboboxPolicies<ID>): Result<ComboboxUpdate<ID>>;
|
|
15
|
-
export type { ComboboxCommand, ComboboxEvent, ComboboxPolicies, ComboboxState, ComboboxUpdate, };
|
|
16
|
-
//# sourceMappingURL=combobox.d.ts.map
|
package/dist/combobox.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../src/combobox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,cAAc,EACpB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,WAAW,kBAAkB,CAAC,EAAE,SAAS,QAAQ,GAAG,QAAQ;IAChE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,QAAQ,EACrD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EACpB,KAAK,GAAE,kBAAkB,CAAC,EAAE,CAAM,GACjC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAiC3B;AAED,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,QAAQ,EACpD,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EACpB,MAAM,EAAE,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,EAC/B,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,EACxB,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,EACxB,QAAQ,GAAE,gBAAgB,CAAC,EAAE,CAAM,GAClC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAE5B;AAED,YAAY,EACV,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,cAAc,GACf,CAAC"}
|
package/dist/combobox.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { applyComboboxEvent as applyInternalComboboxEvent, createComboboxState as createInternalComboboxState, } from './internal/composites/combobox.js';
|
|
2
|
-
import { createTextEditingState, normalizeTextEditingState, } from './internal/editing/text.js';
|
|
3
|
-
export function createComboboxState(domain, input = {}) {
|
|
4
|
-
if (input.text !== undefined && input.inputValue !== undefined) {
|
|
5
|
-
return {
|
|
6
|
-
ok: false,
|
|
7
|
-
error: {
|
|
8
|
-
class: 'construction',
|
|
9
|
-
code: 'ambiguous-combobox-text',
|
|
10
|
-
message: 'Combobox state accepts either text or inputValue, not both.',
|
|
11
|
-
},
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
let text;
|
|
15
|
-
if (input.text !== undefined) {
|
|
16
|
-
text = normalizeTextEditingState(input.text);
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
const inputValue = input.inputValue === undefined ? '' : input.inputValue;
|
|
20
|
-
if (typeof inputValue !== 'string') {
|
|
21
|
-
return {
|
|
22
|
-
ok: false,
|
|
23
|
-
error: {
|
|
24
|
-
class: 'construction',
|
|
25
|
-
code: 'invalid-combobox-input-value',
|
|
26
|
-
message: 'Combobox inputValue must be a string.',
|
|
27
|
-
},
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
text = createTextEditingState(inputValue, {
|
|
31
|
-
anchorCodeUnitOffset: inputValue.length,
|
|
32
|
-
focusCodeUnitOffset: inputValue.length,
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
if (!text.ok)
|
|
36
|
-
return text;
|
|
37
|
-
return createInternalComboboxState(domain, text.value, input);
|
|
38
|
-
}
|
|
39
|
-
export function applyComboboxEvent(domain, labels, state, event, policies = {}) {
|
|
40
|
-
return applyInternalComboboxEvent(domain, labels, state, event, policies);
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=combobox.js.map
|
package/dist/combobox.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"combobox.js","sourceRoot":"","sources":["../src/combobox.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,IAAI,0BAA0B,EAChD,mBAAmB,IAAI,2BAA2B,GAMnD,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAE1B,MAAM,4BAA4B,CAAC;AAWpC,MAAM,UAAU,mBAAmB,CACjC,MAAoB,EACpB,KAAK,GAA2B,EAAE;IAElC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAC/D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE;gBACL,KAAK,EAAE,cAAc;gBACrB,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,6DAA6D;aACvE;SACF,CAAC;IACJ,CAAC;IACD,IAAI,IAA8B,CAAC;IACnC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,GAAG,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;QAC1E,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE;oBACL,KAAK,EAAE,cAAc;oBACrB,IAAI,EAAE,8BAA8B;oBACpC,OAAO,EAAE,uCAAuC;iBACjD;aACF,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,sBAAsB,CAAC,UAAU,EAAE;YACxC,oBAAoB,EAAE,UAAU,CAAC,MAAM;YACvC,mBAAmB,EAAE,UAAU,CAAC,MAAM;SACvC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO,2BAA2B,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAAoB,EACpB,MAA+B,EAC/B,KAAwB,EACxB,KAAwB,EACxB,QAAQ,GAAyB,EAAE;IAEnC,OAAO,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC5E,CAAC"}
|