@foldkit/ui 0.148.2 → 0.149.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/dist/animation/index.d.ts +3 -3
- package/dist/animation/index.d.ts.map +1 -1
- package/dist/animation/index.js +2 -2
- package/dist/animation/public.d.ts +1 -1
- package/dist/animation/public.d.ts.map +1 -1
- package/dist/animation/public.js +1 -1
- package/dist/animation/schema.d.ts +12 -21
- package/dist/animation/schema.d.ts.map +1 -1
- package/dist/animation/schema.js +11 -15
- package/dist/animation/update.d.ts +1 -1
- package/dist/animation/update.d.ts.map +1 -1
- package/dist/animation/update.js +9 -9
- package/dist/calendar/index.d.ts +50 -105
- package/dist/calendar/index.d.ts.map +1 -1
- package/dist/calendar/index.js +61 -98
- package/dist/calendar/public.d.ts +1 -1
- package/dist/calendar/public.d.ts.map +1 -1
- package/dist/calendar/public.js +1 -1
- package/dist/combobox/multi.d.ts +9 -9
- package/dist/combobox/multi.d.ts.map +1 -1
- package/dist/combobox/multi.js +9 -9
- package/dist/combobox/public.d.ts +1 -1
- package/dist/combobox/public.d.ts.map +1 -1
- package/dist/combobox/public.js +1 -1
- package/dist/combobox/shared.d.ts +93 -137
- package/dist/combobox/shared.d.ts.map +1 -1
- package/dist/combobox/shared.js +108 -153
- package/dist/combobox/single.d.ts +9 -9
- package/dist/combobox/single.d.ts.map +1 -1
- package/dist/combobox/single.js +10 -10
- package/dist/datePicker/index.d.ts +88 -84
- package/dist/datePicker/index.d.ts.map +1 -1
- package/dist/datePicker/index.js +33 -63
- package/dist/datePicker/public.d.ts +1 -1
- package/dist/datePicker/public.d.ts.map +1 -1
- package/dist/datePicker/public.js +1 -1
- package/dist/dialog/index.d.ts +28 -49
- package/dist/dialog/index.d.ts.map +1 -1
- package/dist/dialog/index.js +39 -67
- package/dist/dialog/public.d.ts +1 -1
- package/dist/dialog/public.d.ts.map +1 -1
- package/dist/dialog/public.js +1 -1
- package/dist/dragAndDrop/index.d.ts +45 -72
- package/dist/dragAndDrop/index.d.ts.map +1 -1
- package/dist/dragAndDrop/index.js +72 -93
- package/dist/dragAndDrop/public.d.ts +1 -1
- package/dist/dragAndDrop/public.d.ts.map +1 -1
- package/dist/dragAndDrop/public.js +1 -1
- package/dist/fileDrop/index.d.ts +14 -35
- package/dist/fileDrop/index.d.ts.map +1 -1
- package/dist/fileDrop/index.js +20 -46
- package/dist/fileDrop/public.d.ts +1 -1
- package/dist/fileDrop/public.d.ts.map +1 -1
- package/dist/fileDrop/public.js +1 -1
- package/dist/listbox/multi.d.ts +7 -7
- package/dist/listbox/multi.d.ts.map +1 -1
- package/dist/listbox/multi.js +8 -8
- package/dist/listbox/public.d.ts +1 -1
- package/dist/listbox/public.d.ts.map +1 -1
- package/dist/listbox/public.js +1 -1
- package/dist/listbox/shared.d.ts +80 -127
- package/dist/listbox/shared.d.ts.map +1 -1
- package/dist/listbox/shared.js +92 -149
- package/dist/listbox/single.d.ts +7 -7
- package/dist/listbox/single.d.ts.map +1 -1
- package/dist/listbox/single.js +8 -8
- package/dist/menu/index.d.ts +86 -134
- package/dist/menu/index.d.ts.map +1 -1
- package/dist/menu/index.js +141 -189
- package/dist/menu/public.d.ts +1 -1
- package/dist/menu/public.d.ts.map +1 -1
- package/dist/menu/public.js +1 -1
- package/dist/popover/index.d.ts +39 -65
- package/dist/popover/index.d.ts.map +1 -1
- package/dist/popover/index.js +68 -98
- package/dist/popover/public.d.ts +1 -1
- package/dist/popover/public.d.ts.map +1 -1
- package/dist/popover/public.js +1 -1
- package/dist/radioGroup/index.d.ts +18 -29
- package/dist/radioGroup/index.d.ts.map +1 -1
- package/dist/radioGroup/index.js +22 -27
- package/dist/radioGroup/public.d.ts +1 -1
- package/dist/radioGroup/public.d.ts.map +1 -1
- package/dist/radioGroup/public.js +1 -1
- package/dist/slider/index.d.ts +29 -51
- package/dist/slider/index.d.ts.map +1 -1
- package/dist/slider/index.js +36 -56
- package/dist/slider/public.d.ts +1 -1
- package/dist/slider/public.d.ts.map +1 -1
- package/dist/slider/public.js +1 -1
- package/dist/tabs/index.d.ts +18 -28
- package/dist/tabs/index.d.ts.map +1 -1
- package/dist/tabs/index.js +22 -26
- package/dist/tabs/public.d.ts +1 -1
- package/dist/tabs/public.d.ts.map +1 -1
- package/dist/tabs/public.js +1 -1
- package/dist/test/apps/disabledButton.d.ts +71 -14
- package/dist/test/apps/disabledButton.d.ts.map +1 -1
- package/dist/test/apps/disabledButton.js +14 -13
- package/dist/toast/index.d.ts +124 -109
- package/dist/toast/index.d.ts.map +1 -1
- package/dist/toast/index.js +5 -5
- package/dist/toast/public.d.ts +1 -1
- package/dist/toast/public.d.ts.map +1 -1
- package/dist/toast/public.js +1 -1
- package/dist/toast/schema.d.ts +72 -84
- package/dist/toast/schema.d.ts.map +1 -1
- package/dist/toast/schema.js +31 -41
- package/dist/toast/test.d.ts.map +1 -1
- package/dist/toast/test.js +6 -3
- package/dist/toast/update.d.ts +104 -89
- package/dist/toast/update.d.ts.map +1 -1
- package/dist/toast/update.js +19 -20
- package/dist/tooltip/message.d.ts +26 -47
- package/dist/tooltip/message.d.ts.map +1 -1
- package/dist/tooltip/message.js +15 -40
- package/dist/tooltip/public.d.ts +1 -1
- package/dist/tooltip/public.d.ts.map +1 -1
- package/dist/tooltip/public.js +1 -1
- package/dist/tooltip/tooltip.d.ts +1 -1
- package/dist/tooltip/tooltip.d.ts.map +1 -1
- package/dist/tooltip/tooltip.js +15 -16
- package/dist/virtualList/index.d.ts +46 -23
- package/dist/virtualList/index.d.ts.map +1 -1
- package/dist/virtualList/index.js +12 -23
- package/dist/virtualList/public.d.ts +1 -1
- package/dist/virtualList/public.d.ts.map +1 -1
- package/dist/virtualList/public.js +1 -1
- package/package.json +3 -3
package/dist/calendar/index.js
CHANGED
|
@@ -4,7 +4,7 @@ import * as Calendar from 'foldkit/calendar';
|
|
|
4
4
|
import * as Command from 'foldkit/command';
|
|
5
5
|
import * as Dom from 'foldkit/dom';
|
|
6
6
|
import { childAttributes, } from 'foldkit/html';
|
|
7
|
-
import {
|
|
7
|
+
import { defineMessageUnion } from 'foldkit/message';
|
|
8
8
|
import { evo } from 'foldkit/struct';
|
|
9
9
|
import { defineView } from 'foldkit/submodel';
|
|
10
10
|
import * as OptionExt from '../internal/optionExtensions.js';
|
|
@@ -33,77 +33,33 @@ export const Model = S.Struct({
|
|
|
33
33
|
disabledDates: S.Array(Calendar.CalendarDate),
|
|
34
34
|
});
|
|
35
35
|
// MESSAGE
|
|
36
|
-
/** Sent when the user clicks a day cell in the grid. */
|
|
37
|
-
export const ClickedDay = m('ClickedDay', { date: Calendar.CalendarDate });
|
|
38
|
-
/** Sent when the user presses a key on the grid container. The update maps
|
|
39
|
-
* the key to a navigation or selection action. */
|
|
40
|
-
export const PressedKeyOnGrid = m('PressedKeyOnGrid', {
|
|
41
|
-
key: S.String,
|
|
42
|
-
isShift: S.Boolean,
|
|
43
|
-
});
|
|
44
|
-
/** Sent when the user clicks the previous-month navigation button in Days
|
|
45
|
-
* mode. (The Years mode prev/next-page buttons dispatch `PagedYears`.) */
|
|
46
|
-
export const ClickedPreviousMonthButton = m('ClickedPreviousMonthButton');
|
|
47
|
-
/** Sent when the user clicks the next-month navigation button in Days
|
|
48
|
-
* mode. (The Years mode prev/next-page buttons dispatch `PagedYears`.) */
|
|
49
|
-
export const ClickedNextMonthButton = m('ClickedNextMonthButton');
|
|
50
|
-
/** Sent when the user clicks the calendar heading. Zooms out one mode
|
|
51
|
-
* level: Days → Months, Months → Years. Terminal in Years mode. */
|
|
52
|
-
export const ClickedHeading = m('ClickedHeading');
|
|
53
|
-
/** Sent when the user picks a month from the months grid. Jumps the view
|
|
54
|
-
* to that month and returns the calendar to Days mode. */
|
|
55
|
-
export const SelectedMonth = m('SelectedMonth', { month: S.Int });
|
|
56
|
-
/** Sent when the user picks a year from the years grid. Jumps the view to
|
|
57
|
-
* that year and transitions the calendar to Months mode for further drilling. */
|
|
58
|
-
export const SelectedYear = m('SelectedYear', { year: S.Int });
|
|
59
|
-
/** Sent when the user pages the years grid forward or backward by one
|
|
60
|
-
* window. Direction is `1` for next, `-1` for previous. */
|
|
61
|
-
export const PagedYears = m('PagedYears', {
|
|
62
|
-
direction: S.Literals([1, -1]),
|
|
63
|
-
});
|
|
64
|
-
/** Sent when the grid container receives DOM focus. */
|
|
65
|
-
export const FocusedGrid = m('FocusedGrid');
|
|
66
|
-
/** Sent when the grid container loses DOM focus. */
|
|
67
|
-
export const BlurredGrid = m('BlurredGrid');
|
|
68
|
-
/** Sent when a long-lived session's "today" reference should be refreshed. */
|
|
69
|
-
export const RefreshedToday = m('RefreshedToday', {
|
|
70
|
-
today: Calendar.CalendarDate,
|
|
71
|
-
});
|
|
72
|
-
/** Sent when a FocusGrid command completes. */
|
|
73
|
-
export const CompletedFocusGrid = m('CompletedFocusGrid');
|
|
74
36
|
/** Union of all messages the calendar component can produce. */
|
|
75
|
-
export const Message =
|
|
76
|
-
ClickedDay,
|
|
77
|
-
PressedKeyOnGrid
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
* inline calendar may use this to load month-scoped data (holidays, events).
|
|
92
|
-
* A click that commits a date in a different month emits `SelectedDate`, not
|
|
93
|
-
* `ChangedViewMonth`. The parent infers the month change from the date. */
|
|
94
|
-
export const ChangedViewMonth = m('ChangedViewMonth', {
|
|
95
|
-
year: S.Int,
|
|
96
|
-
month: S.Int,
|
|
97
|
-
});
|
|
98
|
-
/** Emitted when the user commits a date selection via click or keyboard. The
|
|
99
|
-
* calendar's internal state already reflects the new selection by the time
|
|
100
|
-
* this fires; consumers react by lifting the date into their domain state
|
|
101
|
-
* (closing a popover, advancing a form step, etc.). */
|
|
102
|
-
export const SelectedDate = m('SelectedDate', {
|
|
103
|
-
date: Calendar.CalendarDate,
|
|
37
|
+
export const Message = defineMessageUnion({
|
|
38
|
+
ClickedDay: { date: Calendar.CalendarDate },
|
|
39
|
+
PressedKeyOnGrid: {
|
|
40
|
+
key: S.String,
|
|
41
|
+
isShift: S.Boolean,
|
|
42
|
+
},
|
|
43
|
+
ClickedPreviousMonthButton: {},
|
|
44
|
+
ClickedNextMonthButton: {},
|
|
45
|
+
ClickedHeading: {},
|
|
46
|
+
SelectedMonth: { month: S.Int },
|
|
47
|
+
SelectedYear: { year: S.Int },
|
|
48
|
+
PagedYears: { direction: S.Literals([1, -1]) },
|
|
49
|
+
FocusedGrid: {},
|
|
50
|
+
BlurredGrid: {},
|
|
51
|
+
RefreshedToday: { today: Calendar.CalendarDate },
|
|
52
|
+
CompletedFocusGrid: {},
|
|
104
53
|
});
|
|
54
|
+
// OUT MESSAGE
|
|
105
55
|
/** Union of the calendar's OutMessages. */
|
|
106
|
-
export const OutMessage =
|
|
56
|
+
export const OutMessage = defineMessageUnion({
|
|
57
|
+
ChangedViewMonth: {
|
|
58
|
+
year: S.Int,
|
|
59
|
+
month: S.Int,
|
|
60
|
+
},
|
|
61
|
+
SelectedDate: { date: Calendar.CalendarDate },
|
|
62
|
+
});
|
|
107
63
|
/** Creates an initial calendar model. The selected date is owned by the
|
|
108
64
|
* parent and passed in via `ViewInputs.maybeSelectedDate`. The view month
|
|
109
65
|
* defaults to `initialViewDate` (pass the parent's selected date to open onto
|
|
@@ -132,8 +88,8 @@ const gridSelector = (modelId) => __foldkitBrandViewResult((idSelector(gridId(mo
|
|
|
132
88
|
* dispatch this after opening to hand focus to the grid's keyboard layer. */
|
|
133
89
|
export const FocusGrid = Command.define('FocusGrid', {
|
|
134
90
|
args: { id: S.String },
|
|
135
|
-
messages: [CompletedFocusGrid],
|
|
136
|
-
execute: ({ id }) => __foldkitBrandViewResult((Dom.focus(gridSelector(id)).pipe(Effect.ignore, Effect.as(CompletedFocusGrid()))), "@foldkit/ui/calendar/index.js#execute"),
|
|
91
|
+
messages: [Message.CompletedFocusGrid],
|
|
92
|
+
execute: ({ id }) => __foldkitBrandViewResult((Dom.focus(gridSelector(id)).pipe(Effect.ignore, Effect.as(Message.CompletedFocusGrid()))), "@foldkit/ui/calendar/index.js#execute"),
|
|
137
93
|
});
|
|
138
94
|
/** Programmatically selects a date on the calendar, committing it as the
|
|
139
95
|
* chosen value and moving the cursor onto it. Use this in controlled-mode
|
|
@@ -141,7 +97,7 @@ export const FocusGrid = Command.define('FocusGrid', {
|
|
|
141
97
|
* the selection back to the calendar's internal state.
|
|
142
98
|
*
|
|
143
99
|
* Equivalent to dispatching `ClickedDay({ date })` through `update`. */
|
|
144
|
-
export const selectDate = (model, date) => __foldkitBrandViewResult((update(model, ClickedDay({ date }))), "@foldkit/ui/calendar/index.js#selectDate");
|
|
100
|
+
export const selectDate = (model, date) => __foldkitBrandViewResult((update(model, Message.ClickedDay({ date }))), "@foldkit/ui/calendar/index.js#selectDate");
|
|
145
101
|
/** Moves the calendar's view and cursor to a date without changing the
|
|
146
102
|
* selection (which the parent owns). Use it to navigate to a known date, for
|
|
147
103
|
* example when opening a date picker onto its current value so the selected
|
|
@@ -250,7 +206,7 @@ const commitSelection = (model, date) => {
|
|
|
250
206
|
viewYear: () => __foldkitBrandViewResult((date.year), "@foldkit/ui/calendar/index.js#viewYear~2"),
|
|
251
207
|
viewMonth: () => __foldkitBrandViewResult((date.month), "@foldkit/ui/calendar/index.js#viewMonth~2"),
|
|
252
208
|
});
|
|
253
|
-
return __foldkitBrandViewResult(([nextModel, Option.some(SelectedDate({ date }))]), "@foldkit/ui/calendar/index.js#commitSelection");
|
|
209
|
+
return __foldkitBrandViewResult(([nextModel, Option.some(OutMessage.SelectedDate({ date }))]), "@foldkit/ui/calendar/index.js#commitSelection");
|
|
254
210
|
};
|
|
255
211
|
/** Applies a focus move to the model, clamping to the allowed range and
|
|
256
212
|
* skipping disabled dates. Emits `ChangedViewMonth` if the move crossed a
|
|
@@ -264,7 +220,10 @@ const applyFocusMove = (model, candidate, direction, cap) => {
|
|
|
264
220
|
viewYear: () => __foldkitBrandViewResult((nextFocus.year), "@foldkit/ui/calendar/index.js#viewYear~3"),
|
|
265
221
|
viewMonth: () => __foldkitBrandViewResult((nextFocus.month), "@foldkit/ui/calendar/index.js#viewMonth~3"),
|
|
266
222
|
});
|
|
267
|
-
const maybeOutMessage = OptionExt.when(crossedMonth, ChangedViewMonth({
|
|
223
|
+
const maybeOutMessage = OptionExt.when(crossedMonth, OutMessage.ChangedViewMonth({
|
|
224
|
+
year: nextFocus.year,
|
|
225
|
+
month: nextFocus.month,
|
|
226
|
+
}));
|
|
268
227
|
return __foldkitBrandViewResult(([nextModel, maybeOutMessage]), "@foldkit/ui/calendar/index.js#applyFocusMove");
|
|
269
228
|
};
|
|
270
229
|
/** Computes the focused-date cursor for a view-month change. Preserves the
|
|
@@ -291,7 +250,11 @@ const applyViewMonthChange = (model, year, month, direction) => {
|
|
|
291
250
|
viewMonth: () => __foldkitBrandViewResult((month), "@foldkit/ui/calendar/index.js#viewMonth~4"),
|
|
292
251
|
maybeFocusedDate: () => __foldkitBrandViewResult((Option.some(nextFocus)), "@foldkit/ui/calendar/index.js#maybeFocusedDate~5"),
|
|
293
252
|
});
|
|
294
|
-
return __foldkitBrandViewResult(([
|
|
253
|
+
return __foldkitBrandViewResult(([
|
|
254
|
+
nextModel,
|
|
255
|
+
[],
|
|
256
|
+
Option.some(OutMessage.ChangedViewMonth({ year, month })),
|
|
257
|
+
]), "@foldkit/ui/calendar/index.js#applyViewMonthChange");
|
|
295
258
|
};
|
|
296
259
|
/** Direction the user moved when jumping to a new view year/month via grid
|
|
297
260
|
* selection. Used by `skipDisabled` so a forward jump skips forward through
|
|
@@ -341,7 +304,7 @@ const applyYearsFocusShift = (model, yearShift) => {
|
|
|
341
304
|
};
|
|
342
305
|
/** Processes a calendar message and returns the next model, commands, and
|
|
343
306
|
* optional OutMessage. */
|
|
344
|
-
export const update = (model, message) => __foldkitBrandViewResult((
|
|
307
|
+
export const update = (model, message) => __foldkitBrandViewResult((Message.match(message, {
|
|
345
308
|
ClickedDay: ({ date }) => {
|
|
346
309
|
if (isDateDisabled(model, date)) {
|
|
347
310
|
return __foldkitBrandViewResult(([model, [], Option.none()]), "@foldkit/ui/calendar/index.js#ClickedDay");
|
|
@@ -438,7 +401,7 @@ export const update = (model, message) => __foldkitBrandViewResult((M.value(mess
|
|
|
438
401
|
Option.none(),
|
|
439
402
|
]), "@foldkit/ui/calendar/index.js#RefreshedToday"),
|
|
440
403
|
CompletedFocusGrid: () => __foldkitBrandViewResult(([model, [], Option.none()]), "@foldkit/ui/calendar/index.js#CompletedFocusGrid"),
|
|
441
|
-
}))
|
|
404
|
+
})), "@foldkit/ui/calendar/index.js#update");
|
|
442
405
|
// VIEW
|
|
443
406
|
const headingId = (modelId) => __foldkitBrandViewResult((`${modelId}-heading`), "@foldkit/ui/calendar/index.js#headingId");
|
|
444
407
|
const dayCellId = (modelId, date) => __foldkitBrandViewResult((`${modelId}-cell-${date.year}-${date.month}-${date.day}`), "@foldkit/ui/calendar/index.js#dayCellId");
|
|
@@ -523,29 +486,29 @@ const buildDaysAttributes = (model, viewInputs, h) => {
|
|
|
523
486
|
const previousMonthButton = [
|
|
524
487
|
h.Type('button'),
|
|
525
488
|
h.AriaLabel(previousMonthLabel),
|
|
526
|
-
h.OnClick(ClickedPreviousMonthButton()),
|
|
489
|
+
h.OnClick(Message.ClickedPreviousMonthButton()),
|
|
527
490
|
];
|
|
528
491
|
const nextMonthButton = [
|
|
529
492
|
h.Type('button'),
|
|
530
493
|
h.AriaLabel(nextMonthLabel),
|
|
531
|
-
h.OnClick(ClickedNextMonthButton()),
|
|
494
|
+
h.OnClick(Message.ClickedNextMonthButton()),
|
|
532
495
|
];
|
|
533
496
|
const headingButton = [
|
|
534
497
|
h.Type('button'),
|
|
535
498
|
h.AriaLabel(headingButtonLabel),
|
|
536
|
-
h.OnClick(ClickedHeading()),
|
|
499
|
+
h.OnClick(Message.ClickedHeading()),
|
|
537
500
|
];
|
|
538
501
|
const handleKeyDown = (key, modifiers) => {
|
|
539
502
|
if (!NAV_KEYS.has(key)) {
|
|
540
503
|
return __foldkitBrandViewResult((Option.none()), "@foldkit/ui/calendar/index.js#handleKeyDown");
|
|
541
504
|
}
|
|
542
505
|
if (isCommitKey(key)) {
|
|
543
|
-
const maybeCommit = pipe(maybeFocusedDate, Option.filter(date => __foldkitBrandViewResult((!isDateDisabled(model, date)), "@foldkit/ui/calendar/index.js#anonymous~44")), Option.map(date => __foldkitBrandViewResult((ClickedDay({ date })), "@foldkit/ui/calendar/index.js#anonymous~45")));
|
|
506
|
+
const maybeCommit = pipe(maybeFocusedDate, Option.filter(date => __foldkitBrandViewResult((!isDateDisabled(model, date)), "@foldkit/ui/calendar/index.js#anonymous~44")), Option.map(date => __foldkitBrandViewResult((Message.ClickedDay({ date })), "@foldkit/ui/calendar/index.js#anonymous~45")));
|
|
544
507
|
if (Option.isSome(maybeCommit)) {
|
|
545
508
|
return __foldkitBrandViewResult((maybeCommit), "@foldkit/ui/calendar/index.js#handleKeyDown");
|
|
546
509
|
}
|
|
547
510
|
}
|
|
548
|
-
return __foldkitBrandViewResult((Option.some(PressedKeyOnGrid({ key, isShift: modifiers.shiftKey }))), "@foldkit/ui/calendar/index.js#handleKeyDown");
|
|
511
|
+
return __foldkitBrandViewResult((Option.some(Message.PressedKeyOnGrid({ key, isShift: modifiers.shiftKey }))), "@foldkit/ui/calendar/index.js#handleKeyDown");
|
|
549
512
|
};
|
|
550
513
|
const activeDescendantAttributes = pipe(maybeFocusedDate, Option.map(date => __foldkitBrandViewResult((h.AriaActiveDescendant(dayCellId(id, date))), "@foldkit/ui/calendar/index.js#anonymous~46")), Option.toArray);
|
|
551
514
|
const gridAttributes = [
|
|
@@ -555,8 +518,8 @@ const buildDaysAttributes = (model, viewInputs, h) => {
|
|
|
555
518
|
h.AriaRowcount(Number.increment(WEEKS_IN_GRID)),
|
|
556
519
|
h.AriaColcount(DAYS_IN_WEEK),
|
|
557
520
|
h.Tabindex(0),
|
|
558
|
-
h.OnFocus(FocusedGrid()),
|
|
559
|
-
h.OnBlur(BlurredGrid()),
|
|
521
|
+
h.OnFocus(Message.FocusedGrid()),
|
|
522
|
+
h.OnBlur(Message.BlurredGrid()),
|
|
560
523
|
h.OnKeyDownPreventDefault(handleKeyDown),
|
|
561
524
|
...activeDescendantAttributes,
|
|
562
525
|
];
|
|
@@ -586,7 +549,7 @@ const buildDaysAttributes = (model, viewInputs, h) => {
|
|
|
586
549
|
h.Tabindex(-1),
|
|
587
550
|
h.AriaLabel(Calendar.formatAriaLabel(date, locale)),
|
|
588
551
|
h.AriaDisabled(isDisabled),
|
|
589
|
-
...(isDisabled ? [] : [h.OnClick(ClickedDay({ date }))]),
|
|
552
|
+
...(isDisabled ? [] : [h.OnClick(Message.ClickedDay({ date }))]),
|
|
590
553
|
];
|
|
591
554
|
return __foldkitBrandViewResult(({
|
|
592
555
|
date,
|
|
@@ -640,7 +603,7 @@ const buildMonthsAttributes = (model, viewInputs, h) => {
|
|
|
640
603
|
const headingButton = [
|
|
641
604
|
h.Type('button'),
|
|
642
605
|
h.AriaLabel(headingButtonLabel),
|
|
643
|
-
h.OnClick(ClickedHeading()),
|
|
606
|
+
h.OnClick(Message.ClickedHeading()),
|
|
644
607
|
];
|
|
645
608
|
const focusedMonth = Option.match(maybeFocusedDate, {
|
|
646
609
|
onNone: () => __foldkitBrandViewResult((viewMonth), "@foldkit/ui/calendar/index.js#onNone~8"),
|
|
@@ -651,10 +614,10 @@ const buildMonthsAttributes = (model, viewInputs, h) => {
|
|
|
651
614
|
return __foldkitBrandViewResult((Option.none()), "@foldkit/ui/calendar/index.js#handleKeyDown~2");
|
|
652
615
|
}
|
|
653
616
|
else if (isCommitKey(key)) {
|
|
654
|
-
return __foldkitBrandViewResult((OptionExt.when(!isMonthDisabled(model, viewYear, focusedMonth), SelectedMonth({ month: focusedMonth }))), "@foldkit/ui/calendar/index.js#handleKeyDown~2");
|
|
617
|
+
return __foldkitBrandViewResult((OptionExt.when(!isMonthDisabled(model, viewYear, focusedMonth), Message.SelectedMonth({ month: focusedMonth }))), "@foldkit/ui/calendar/index.js#handleKeyDown~2");
|
|
655
618
|
}
|
|
656
619
|
else {
|
|
657
|
-
return __foldkitBrandViewResult((Option.some(PressedKeyOnGrid({ key, isShift: modifiers.shiftKey }))), "@foldkit/ui/calendar/index.js#handleKeyDown~2");
|
|
620
|
+
return __foldkitBrandViewResult((Option.some(Message.PressedKeyOnGrid({ key, isShift: modifiers.shiftKey }))), "@foldkit/ui/calendar/index.js#handleKeyDown~2");
|
|
658
621
|
}
|
|
659
622
|
};
|
|
660
623
|
const activeDescendantAttributes = [
|
|
@@ -665,8 +628,8 @@ const buildMonthsAttributes = (model, viewInputs, h) => {
|
|
|
665
628
|
h.Role('grid'),
|
|
666
629
|
h.AriaLabel(`Month picker, ${headingText}`),
|
|
667
630
|
h.Tabindex(0),
|
|
668
|
-
h.OnFocus(FocusedGrid()),
|
|
669
|
-
h.OnBlur(BlurredGrid()),
|
|
631
|
+
h.OnFocus(Message.FocusedGrid()),
|
|
632
|
+
h.OnBlur(Message.BlurredGrid()),
|
|
670
633
|
h.OnKeyDownPreventDefault(handleKeyDown),
|
|
671
634
|
...activeDescendantAttributes,
|
|
672
635
|
];
|
|
@@ -694,7 +657,7 @@ const buildMonthsAttributes = (model, viewInputs, h) => {
|
|
|
694
657
|
h.Tabindex(-1),
|
|
695
658
|
h.AriaLabel(`${label} ${viewYear}`),
|
|
696
659
|
h.AriaDisabled(isDisabled),
|
|
697
|
-
...(isDisabled ? [] : [h.OnClick(SelectedMonth({ month }))]),
|
|
660
|
+
...(isDisabled ? [] : [h.OnClick(Message.SelectedMonth({ month }))]),
|
|
698
661
|
];
|
|
699
662
|
return __foldkitBrandViewResult(({
|
|
700
663
|
month,
|
|
@@ -733,12 +696,12 @@ const buildYearsAttributes = (model, viewInputs, h) => {
|
|
|
733
696
|
const previousPageButton = [
|
|
734
697
|
h.Type('button'),
|
|
735
698
|
h.AriaLabel(previousYearsPageLabel),
|
|
736
|
-
h.OnClick(PagedYears({ direction: -1 })),
|
|
699
|
+
h.OnClick(Message.PagedYears({ direction: -1 })),
|
|
737
700
|
];
|
|
738
701
|
const nextPageButton = [
|
|
739
702
|
h.Type('button'),
|
|
740
703
|
h.AriaLabel(nextYearsPageLabel),
|
|
741
|
-
h.OnClick(PagedYears({ direction: 1 })),
|
|
704
|
+
h.OnClick(Message.PagedYears({ direction: 1 })),
|
|
742
705
|
];
|
|
743
706
|
const focusedYear = cursorYear;
|
|
744
707
|
const handleKeyDown = (key, modifiers) => {
|
|
@@ -746,10 +709,10 @@ const buildYearsAttributes = (model, viewInputs, h) => {
|
|
|
746
709
|
return __foldkitBrandViewResult((Option.none()), "@foldkit/ui/calendar/index.js#handleKeyDown~3");
|
|
747
710
|
}
|
|
748
711
|
else if (isCommitKey(key)) {
|
|
749
|
-
return __foldkitBrandViewResult((OptionExt.when(!isYearDisabled(model, focusedYear), SelectedYear({ year: focusedYear }))), "@foldkit/ui/calendar/index.js#handleKeyDown~3");
|
|
712
|
+
return __foldkitBrandViewResult((OptionExt.when(!isYearDisabled(model, focusedYear), Message.SelectedYear({ year: focusedYear }))), "@foldkit/ui/calendar/index.js#handleKeyDown~3");
|
|
750
713
|
}
|
|
751
714
|
else {
|
|
752
|
-
return __foldkitBrandViewResult((Option.some(PressedKeyOnGrid({ key, isShift: modifiers.shiftKey }))), "@foldkit/ui/calendar/index.js#handleKeyDown~3");
|
|
715
|
+
return __foldkitBrandViewResult((Option.some(Message.PressedKeyOnGrid({ key, isShift: modifiers.shiftKey }))), "@foldkit/ui/calendar/index.js#handleKeyDown~3");
|
|
753
716
|
}
|
|
754
717
|
};
|
|
755
718
|
const activeDescendantAttributes = [
|
|
@@ -760,8 +723,8 @@ const buildYearsAttributes = (model, viewInputs, h) => {
|
|
|
760
723
|
h.Role('grid'),
|
|
761
724
|
h.AriaLabel(`Year picker, ${headingText}`),
|
|
762
725
|
h.Tabindex(0),
|
|
763
|
-
h.OnFocus(FocusedGrid()),
|
|
764
|
-
h.OnBlur(BlurredGrid()),
|
|
726
|
+
h.OnFocus(Message.FocusedGrid()),
|
|
727
|
+
h.OnBlur(Message.BlurredGrid()),
|
|
765
728
|
h.OnKeyDownPreventDefault(handleKeyDown),
|
|
766
729
|
...activeDescendantAttributes,
|
|
767
730
|
];
|
|
@@ -788,7 +751,7 @@ const buildYearsAttributes = (model, viewInputs, h) => {
|
|
|
788
751
|
h.Tabindex(-1),
|
|
789
752
|
h.AriaLabel(label),
|
|
790
753
|
h.AriaDisabled(isDisabled),
|
|
791
|
-
...(isDisabled ? [] : [h.OnClick(SelectedYear({ year }))]),
|
|
754
|
+
...(isDisabled ? [] : [h.OnClick(Message.SelectedYear({ year }))]),
|
|
792
755
|
];
|
|
793
756
|
return __foldkitBrandViewResult(({
|
|
794
757
|
year,
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { init, update, view, selectDate, focusDate, reflectMinDate, reflectMaxDate, reflectDisabledDates, reflectDisabledDaysOfWeek, dropToDays, Model, ViewMode, Message, OutMessage, ChangedViewMonth, SelectedDate, ClickedDay, PressedKeyOnGrid,
|
|
1
|
+
export { init, update, view, selectDate, focusDate, reflectMinDate, reflectMaxDate, reflectDisabledDates, reflectDisabledDaysOfWeek, dropToDays, Model, ViewMode, Message, OutMessage, type ChangedViewMonth, type SelectedDate, type ClickedDay, type PressedKeyOnGrid, type SelectedMonth, type SelectedYear, FocusGrid, } from './index.js';
|
|
2
2
|
export type { InitConfig, ViewInputs, CalendarAttributes, DaysModeAttributes, MonthsModeAttributes, YearsModeAttributes, DayCell, ColumnHeader, Week, MonthCell, YearCell, } from './index.js';
|
|
3
3
|
//# sourceMappingURL=public.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/calendar/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,UAAU,EACV,SAAS,EACT,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,KAAK,EACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,gBAAgB,
|
|
1
|
+
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/calendar/public.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,UAAU,EACV,SAAS,EACT,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,EACV,KAAK,EACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,SAAS,GACV,MAAM,YAAY,CAAA;AAEnB,YAAY,EACV,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,OAAO,EACP,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,QAAQ,GACT,MAAM,YAAY,CAAA"}
|
package/dist/calendar/public.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { init, update, view, selectDate, focusDate, reflectMinDate, reflectMaxDate, reflectDisabledDates, reflectDisabledDaysOfWeek, dropToDays, Model, ViewMode, Message, OutMessage,
|
|
1
|
+
export { init, update, view, selectDate, focusDate, reflectMinDate, reflectMaxDate, reflectDisabledDates, reflectDisabledDaysOfWeek, dropToDays, Model, ViewMode, Message, OutMessage, FocusGrid, } from './index.js';
|
package/dist/combobox/multi.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Option, Schema as S } from 'effect';
|
|
2
2
|
import type * as Command from 'foldkit/command';
|
|
3
3
|
import type { View as SubmodelView } from 'foldkit/submodel';
|
|
4
|
-
import { type BaseInitConfig, type BaseViewInputs,
|
|
4
|
+
import { type BaseInitConfig, type BaseViewInputs, Message, OutMessage } from './shared.js';
|
|
5
5
|
/** Schema for the multi-select combobox's private interaction state (open/closed status, active item, activation trigger, typed input value). The selection is owned by the parent and passed in via `ViewInputs.selectedValues`. */
|
|
6
6
|
export declare const Model: S.Struct<{
|
|
7
7
|
readonly id: S.String;
|
|
@@ -130,14 +130,6 @@ export declare const update: (model: {
|
|
|
130
130
|
readonly _tag: "PressedToggleButton";
|
|
131
131
|
readonly restingInputValue: string;
|
|
132
132
|
readonly isClearable: boolean;
|
|
133
|
-
} | {
|
|
134
|
-
readonly _tag: "CompletedAnchorCombobox";
|
|
135
|
-
} | {
|
|
136
|
-
readonly _tag: "CompletedAttachComboboxPreventBlur";
|
|
137
|
-
} | {
|
|
138
|
-
readonly _tag: "CompletedAttachComboboxSelectOnFocus";
|
|
139
|
-
} | {
|
|
140
|
-
readonly _tag: "CompletedPortalComboboxBackdrop";
|
|
141
133
|
} | {
|
|
142
134
|
readonly _tag: "GotAnimationMessage";
|
|
143
135
|
readonly message: {
|
|
@@ -149,6 +141,14 @@ export declare const update: (model: {
|
|
|
149
141
|
} | {
|
|
150
142
|
readonly _tag: "EndedAnimation";
|
|
151
143
|
};
|
|
144
|
+
} | {
|
|
145
|
+
readonly _tag: "CompletedAnchorCombobox";
|
|
146
|
+
} | {
|
|
147
|
+
readonly _tag: "CompletedAttachComboboxPreventBlur";
|
|
148
|
+
} | {
|
|
149
|
+
readonly _tag: "CompletedAttachComboboxSelectOnFocus";
|
|
150
|
+
} | {
|
|
151
|
+
readonly _tag: "CompletedPortalComboboxBackdrop";
|
|
152
152
|
}, never, never>;
|
|
153
153
|
}>[], Option.Option<OutMessage<string>>];
|
|
154
154
|
type UpdateReturn = ReturnType<typeof update>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi.d.ts","sourceRoot":"","sources":["../../src/combobox/multi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC5C,OAAO,KAAK,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE/C,OAAO,KAAK,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE5D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"multi.d.ts","sourceRoot":"","sources":["../../src/combobox/multi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC5C,OAAO,KAAK,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE/C,OAAO,KAAK,EAAE,IAAI,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE5D,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,cAAc,EACnB,OAAO,EACP,UAAU,EAKX,MAAM,aAAa,CAAA;AAIpB,qOAAqO;AACrO,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;EAEhB,CAAA;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAIrC,mOAAmO;AACnO,MAAM,MAAM,UAAU,GAAG,cAAc,CAAA;AAEvC,+HAA+H;AAC/H,eAAO,MAAM,IAAI,GAAI,QAAQ,UAAU,KAAG,KAAyB,CAAA;AAInE,okBAAokB;AACpkB,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAgBjB,CAAA;AAEF,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAA;AAE7C;wFACwF;AACxF,eAAO,MAAM,IAAI,GAAI,OAAO,KAAK,KAAG,YACoC,CAAA;AAExE;;sEAEsE;AACtE,eAAO,MAAM,KAAK,GAAI,OAAO,KAAK,KAAG,YACwC,CAAA;AAE7E;wEACwE;AACxE,eAAO,MAAM,UAAU,GAAI,OAAO,KAAK,EAAE,MAAM,MAAM,KAAG,YAIrD,CAAA;AAIH,uFAAuF;AACvF,MAAM,MAAM,UAAU,CAAC,IAAI,SAAS,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,CAAA;AAIlE;;;;+BAI+B;AAC/B,MAAM,MAAM,MAAM,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,IAAI,QAAQ,CAAC;IAC1D,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;IACpD,MAAM,EAAE,CACN,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,KACb,SAAS;QACZ,KAAK;QACL,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KAChC,CAAA;IACD,UAAU,EAAE,CACV,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,KACP,SAAS;QACZ,KAAK;QACL,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KAChC,CAAA;IACD,IAAI,EAAE,CACJ,KAAK,EAAE,KAAK,KACT,SAAS;QACZ,KAAK;QACL,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KAChC,CAAA;IACD,KAAK,EAAE,CACL,KAAK,EAAE,KAAK,KACT,SAAS;QACZ,KAAK;QACL,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KAChC,CAAA;CACF,CAAC,CAAA;AAEF;;wEAEwE;AACxE,eAAO,MAAM,MAAM,GAAI,IAAI,SAAS,MAAM,GAAG,MAAM,OAAK,MAAM,CAAC,IAAI,CA2BlE,CAAA"}
|
package/dist/combobox/multi.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { brandViewResult as __foldkitBrandViewResult } from 'foldkit/brand'
|
|
2
2
|
import { Option, Schema as S } from 'effect';
|
|
3
3
|
import { evo } from 'foldkit/struct';
|
|
4
|
-
import { BaseModel,
|
|
4
|
+
import { BaseModel, Message, OutMessage, baseInit, closedBaseModel, makeUpdate, makeView, } from './shared.js';
|
|
5
5
|
// MODEL
|
|
6
6
|
/** Schema for the multi-select combobox's private interaction state (open/closed status, active item, activation trigger, typed input value). The selection is owned by the parent and passed in via `ViewInputs.selectedValues`. */
|
|
7
7
|
export const Model = S.Struct({
|
|
@@ -19,23 +19,23 @@ export const update = makeUpdate({
|
|
|
19
19
|
handleSelectedItem: (model, item) => __foldkitBrandViewResult(([
|
|
20
20
|
model,
|
|
21
21
|
[],
|
|
22
|
-
Option.some(
|
|
22
|
+
Option.some(OutMessage.Selected({ value: item })),
|
|
23
23
|
]), "@foldkit/ui/combobox/multi.js#handleSelectedItem"),
|
|
24
24
|
handleImmediateActivation: (model, item) => __foldkitBrandViewResult(([
|
|
25
25
|
model,
|
|
26
|
-
Option.some(
|
|
26
|
+
Option.some(OutMessage.Selected({ value: item })),
|
|
27
27
|
]), "@foldkit/ui/combobox/multi.js#handleImmediateActivation"),
|
|
28
28
|
});
|
|
29
29
|
/** Programmatically opens the combobox, updating the model and returning
|
|
30
30
|
* focus and modal commands. Use this in domain-event handlers to open the combobox. */
|
|
31
|
-
export const open = (model) => __foldkitBrandViewResult((update(model, Opened({ maybeActiveItemIndex: Option.none() }))), "@foldkit/ui/combobox/multi.js#open");
|
|
31
|
+
export const open = (model) => __foldkitBrandViewResult((update(model, Message.Opened({ maybeActiveItemIndex: Option.none() }))), "@foldkit/ui/combobox/multi.js#open");
|
|
32
32
|
/** Programmatically closes the combobox, updating the model and returning
|
|
33
33
|
* focus and modal commands. The multi-select input always rests empty on
|
|
34
34
|
* close. Use this in domain-event handlers to close the combobox. */
|
|
35
|
-
export const close = (model) => __foldkitBrandViewResult((update(model, Closed({ restingInputValue: '', isClearable: true }))), "@foldkit/ui/combobox/multi.js#close");
|
|
35
|
+
export const close = (model) => __foldkitBrandViewResult((update(model, Message.Closed({ restingInputValue: '', isClearable: true }))), "@foldkit/ui/combobox/multi.js#close");
|
|
36
36
|
/** Programmatically activates an item in the multi-select combobox. Emits
|
|
37
37
|
* `Selected({ value })`; the parent toggles the value's membership. */
|
|
38
|
-
export const selectItem = (model, item) => __foldkitBrandViewResult((update(model, SelectedItem({ item, displayText: item, wasSelected: false }))), "@foldkit/ui/combobox/multi.js#selectItem");
|
|
38
|
+
export const selectItem = (model, item) => __foldkitBrandViewResult((update(model, Message.SelectedItem({ item, displayText: item, wasSelected: false }))), "@foldkit/ui/combobox/multi.js#selectItem");
|
|
39
39
|
const internalView = makeView({ ariaMultiSelectable: true });
|
|
40
40
|
/** Pairs the multi-select combobox's `view` and `update` (and programmatic
|
|
41
41
|
* helpers) behind a single Item-typed entry point. `selectItem` emits
|
|
@@ -46,8 +46,8 @@ export const create = () => {
|
|
|
46
46
|
return __foldkitBrandViewResult(({
|
|
47
47
|
view: internalView(),
|
|
48
48
|
update: typedUpdate,
|
|
49
|
-
selectItem: (model, item) => __foldkitBrandViewResult((typedUpdate(model, SelectedItem({ item, displayText: item, wasSelected: false }))), "@foldkit/ui/combobox/multi.js#selectItem~2"),
|
|
50
|
-
open: model => __foldkitBrandViewResult((typedUpdate(model, Opened({ maybeActiveItemIndex: Option.none() }))), "@foldkit/ui/combobox/multi.js#open~2"),
|
|
51
|
-
close: model => __foldkitBrandViewResult((typedUpdate(model, Closed({ restingInputValue: '', isClearable: true }))), "@foldkit/ui/combobox/multi.js#close~2"),
|
|
49
|
+
selectItem: (model, item) => __foldkitBrandViewResult((typedUpdate(model, Message.SelectedItem({ item, displayText: item, wasSelected: false }))), "@foldkit/ui/combobox/multi.js#selectItem~2"),
|
|
50
|
+
open: model => __foldkitBrandViewResult((typedUpdate(model, Message.Opened({ maybeActiveItemIndex: Option.none() }))), "@foldkit/ui/combobox/multi.js#open~2"),
|
|
51
|
+
close: model => __foldkitBrandViewResult((typedUpdate(model, Message.Closed({ restingInputValue: '', isClearable: true }))), "@foldkit/ui/combobox/multi.js#close~2"),
|
|
52
52
|
}), "@foldkit/ui/combobox/multi.js#create");
|
|
53
53
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { init, create, Model } from './single.js';
|
|
2
2
|
export { inputId } from './shared.js';
|
|
3
|
-
export { Message, OutMessage, Selected, ClearedSelection, SelectedItem, CompletedLockScroll, CompletedUnlockScroll, CompletedInertOthers, CompletedRestoreInert, CompletedFocusInput, CompletedScrollIntoView, CompletedClickItem,
|
|
3
|
+
export { Message, OutMessage, type Selected, type ClearedSelection, type SelectedItem, type CompletedLockScroll, type CompletedUnlockScroll, type CompletedInertOthers, type CompletedRestoreInert, type CompletedFocusInput, type CompletedScrollIntoView, type CompletedClickItem, AnchorCombobox, AttachComboboxPreventBlur, AttachComboboxSelectOnFocus, PortalComboboxBackdrop, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, type Opened, type Closed, type BlurredInput, type ActivatedItem, type DeactivatedItem, type MovedPointerOverItem, type RequestedItemClick, type SuppressedItemCommit, type UpdatedInputValue, type PressedToggleButton, } from './shared.js';
|
|
4
4
|
export type { ActivationTrigger, ItemConfig, GroupHeading, BaseViewInputsCommon, } from './shared.js';
|
|
5
5
|
export type { Bundle, InitConfig, ViewInputs } from './single.js';
|
|
6
6
|
export type { AnchorConfig } from '../anchor/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/combobox/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EACL,OAAO,EACP,UAAU,EACV,QAAQ,
|
|
1
|
+
{"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../../src/combobox/public.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EACL,OAAO,EACP,UAAU,EACV,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,cAAc,EACd,yBAAyB,EACzB,2BAA2B,EAC3B,sBAAsB,EACtB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,UAAU,EACV,cAAc,EACd,SAAS,EACT,4BAA4B,EAC5B,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,aAAa,CAAA;AAEpB,YAAY,EACV,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,oBAAoB,GACrB,MAAM,aAAa,CAAA;AAEpB,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAEjE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA"}
|
package/dist/combobox/public.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { init, create, Model } from './single.js';
|
|
2
2
|
export { inputId } from './shared.js';
|
|
3
|
-
export { Message, OutMessage,
|
|
3
|
+
export { Message, OutMessage, AnchorCombobox, AttachComboboxPreventBlur, AttachComboboxSelectOnFocus, PortalComboboxBackdrop, LockScroll, UnlockScroll, InertOthers, RestoreInert, FocusInput, ScrollIntoView, ClickItem, DetectMovementOrAnimationEnd, } from './shared.js';
|
|
4
4
|
export * as Multi from './multiPublic.js';
|