@sectile/terminal 0.1.0 → 0.2.1
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 +15 -1
- package/dist/accordion.d.ts +3 -0
- package/dist/accordion.d.ts.map +1 -1
- package/dist/accordion.js +6 -6
- package/dist/accordion.js.map +1 -1
- package/dist/alert-dialog.d.ts +5 -0
- package/dist/alert-dialog.d.ts.map +1 -1
- package/dist/alert-dialog.js +2 -2
- package/dist/alert-dialog.js.map +1 -1
- package/dist/appearance.d.ts +50 -0
- package/dist/appearance.d.ts.map +1 -0
- package/dist/appearance.js +200 -0
- package/dist/appearance.js.map +1 -0
- package/dist/calendar.d.ts +5 -0
- package/dist/calendar.d.ts.map +1 -1
- package/dist/calendar.js +10 -10
- package/dist/calendar.js.map +1 -1
- package/dist/carousel.d.ts +6 -1
- package/dist/carousel.d.ts.map +1 -1
- package/dist/carousel.js +6 -6
- package/dist/carousel.js.map +1 -1
- package/dist/cascade-select.d.ts +43 -0
- package/dist/cascade-select.d.ts.map +1 -0
- package/dist/cascade-select.js +71 -0
- package/dist/cascade-select.js.map +1 -0
- package/dist/checkbox.d.ts +2 -0
- package/dist/checkbox.d.ts.map +1 -1
- package/dist/checkbox.js +2 -2
- package/dist/checkbox.js.map +1 -1
- package/dist/color-picker.d.ts +39 -0
- package/dist/color-picker.d.ts.map +1 -0
- package/dist/color-picker.js +62 -0
- package/dist/color-picker.js.map +1 -0
- package/dist/combobox.d.ts +7 -0
- package/dist/combobox.d.ts.map +1 -1
- package/dist/combobox.js +12 -12
- package/dist/combobox.js.map +1 -1
- package/dist/date-field.d.ts +3 -0
- package/dist/date-field.d.ts.map +1 -1
- package/dist/date-field.js +3 -3
- package/dist/date-field.js.map +1 -1
- package/dist/date-picker.d.ts +4 -0
- package/dist/date-picker.d.ts.map +1 -1
- package/dist/date-picker.js +4 -4
- package/dist/date-picker.js.map +1 -1
- package/dist/date-range-field.d.ts +43 -0
- package/dist/date-range-field.d.ts.map +1 -0
- package/dist/date-range-field.js +49 -0
- package/dist/date-range-field.js.map +1 -0
- package/dist/date-range-picker.d.ts +4 -0
- package/dist/date-range-picker.d.ts.map +1 -1
- package/dist/date-range-picker.js +4 -4
- package/dist/date-range-picker.js.map +1 -1
- package/dist/date-time-field.d.ts +3 -0
- package/dist/date-time-field.d.ts.map +1 -1
- package/dist/date-time-field.js +4 -4
- package/dist/date-time-field.js.map +1 -1
- package/dist/date-time-picker.d.ts +4 -0
- package/dist/date-time-picker.d.ts.map +1 -1
- package/dist/date-time-picker.js +6 -5
- package/dist/date-time-picker.js.map +1 -1
- package/dist/date-time-range-picker.d.ts +4 -0
- package/dist/date-time-range-picker.d.ts.map +1 -1
- package/dist/date-time-range-picker.js +6 -5
- package/dist/date-time-range-picker.js.map +1 -1
- package/dist/dialog.d.ts +4 -0
- package/dist/dialog.d.ts.map +1 -1
- package/dist/dialog.js +2 -2
- package/dist/dialog.js.map +1 -1
- package/dist/disclosure.d.ts +2 -0
- package/dist/disclosure.d.ts.map +1 -1
- package/dist/disclosure.js +4 -4
- package/dist/disclosure.js.map +1 -1
- package/dist/editable.d.ts +27 -0
- package/dist/editable.d.ts.map +1 -0
- package/dist/editable.js +70 -0
- package/dist/editable.js.map +1 -0
- package/dist/feed.d.ts +10 -2
- package/dist/feed.d.ts.map +1 -1
- package/dist/feed.js +77 -19
- package/dist/feed.js.map +1 -1
- package/dist/form.d.ts +65 -0
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +234 -0
- package/dist/form.js.map +1 -0
- package/dist/grid.d.ts +7 -0
- package/dist/grid.d.ts.map +1 -1
- package/dist/grid.js +4 -4
- package/dist/grid.js.map +1 -1
- package/dist/index.d.ts +66 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/controller.js +2 -2
- package/dist/internal/controller.js.map +1 -1
- package/dist/internal/facade.d.ts +2 -1
- package/dist/internal/facade.d.ts.map +1 -1
- package/dist/internal/facade.js.map +1 -1
- package/dist/internal/menu-control.d.ts +1 -1
- package/dist/internal/menu-control.d.ts.map +1 -1
- package/dist/internal/menu-control.js +161 -38
- package/dist/internal/menu-control.js.map +1 -1
- package/dist/internal/semantic-controller.js +4 -4
- package/dist/internal/semantic-controller.js.map +1 -1
- package/dist/layer-stack.d.ts +16 -0
- package/dist/layer-stack.d.ts.map +1 -0
- package/dist/layer-stack.js +49 -0
- package/dist/layer-stack.js.map +1 -0
- package/dist/listbox.d.ts +11 -0
- package/dist/listbox.d.ts.map +1 -1
- package/dist/listbox.js +18 -11
- package/dist/listbox.js.map +1 -1
- package/dist/month-picker.d.ts +3 -0
- package/dist/month-picker.d.ts.map +1 -0
- package/dist/month-picker.js +2 -0
- package/dist/month-picker.js.map +1 -0
- package/dist/month-range-picker.d.ts +3 -0
- package/dist/month-range-picker.d.ts.map +1 -0
- package/dist/month-range-picker.js +2 -0
- package/dist/month-range-picker.js.map +1 -0
- package/dist/multi-thumb-slider.d.ts +2 -0
- package/dist/multi-thumb-slider.d.ts.map +1 -1
- package/dist/multi-thumb-slider.js +8 -8
- package/dist/multi-thumb-slider.js.map +1 -1
- package/dist/navigation-menu.d.ts +8 -0
- package/dist/navigation-menu.d.ts.map +1 -0
- package/dist/navigation-menu.js +10 -0
- package/dist/navigation-menu.js.map +1 -0
- package/dist/node.d.ts +29 -1
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +124 -6
- package/dist/node.js.map +1 -1
- package/dist/number-field.d.ts +3 -0
- package/dist/number-field.d.ts.map +1 -1
- package/dist/number-field.js +4 -4
- package/dist/number-field.js.map +1 -1
- package/dist/pagination.d.ts +3 -0
- package/dist/pagination.d.ts.map +1 -1
- package/dist/pagination.js +5 -5
- package/dist/pagination.js.map +1 -1
- package/dist/pin-input.d.ts +3 -0
- package/dist/pin-input.d.ts.map +1 -1
- package/dist/pin-input.js +3 -3
- package/dist/pin-input.js.map +1 -1
- package/dist/popover.d.ts +21 -0
- package/dist/popover.d.ts.map +1 -0
- package/dist/popover.js +8 -0
- package/dist/popover.js.map +1 -0
- package/dist/quantity-field.d.ts +4 -0
- package/dist/quantity-field.d.ts.map +1 -1
- package/dist/quantity-field.js +4 -4
- package/dist/quantity-field.js.map +1 -1
- package/dist/radio-group.d.ts +3 -0
- package/dist/radio-group.d.ts.map +1 -1
- package/dist/radio-group.js +6 -6
- package/dist/radio-group.js.map +1 -1
- package/dist/range-calendar.d.ts +3 -0
- package/dist/range-calendar.d.ts.map +1 -0
- package/dist/range-calendar.js +2 -0
- package/dist/range-calendar.js.map +1 -0
- package/dist/rating.d.ts +1 -0
- package/dist/rating.d.ts.map +1 -1
- package/dist/rating.js.map +1 -1
- package/dist/reorder.d.ts +42 -0
- package/dist/reorder.d.ts.map +1 -0
- package/dist/reorder.js +166 -0
- package/dist/reorder.js.map +1 -0
- package/dist/screen.d.ts +108 -0
- package/dist/screen.d.ts.map +1 -0
- package/dist/screen.js +364 -0
- package/dist/screen.js.map +1 -0
- package/dist/select.d.ts +4 -0
- package/dist/select.d.ts.map +1 -1
- package/dist/select.js +5 -5
- package/dist/select.js.map +1 -1
- package/dist/slider.d.ts +3 -0
- package/dist/slider.d.ts.map +1 -1
- package/dist/slider.js +10 -10
- package/dist/slider.js.map +1 -1
- package/dist/spin-button.d.ts +3 -0
- package/dist/spin-button.d.ts.map +1 -1
- package/dist/spin-button.js +6 -6
- package/dist/spin-button.js.map +1 -1
- package/dist/switch.d.ts +2 -0
- package/dist/switch.d.ts.map +1 -1
- package/dist/switch.js +2 -2
- package/dist/switch.js.map +1 -1
- package/dist/tabs.d.ts +4 -0
- package/dist/tabs.d.ts.map +1 -1
- package/dist/tabs.js +6 -6
- package/dist/tabs.js.map +1 -1
- package/dist/tags-input.d.ts +3 -0
- package/dist/tags-input.d.ts.map +1 -1
- package/dist/tags-input.js +51 -10
- package/dist/tags-input.js.map +1 -1
- package/dist/text.d.ts +3 -0
- package/dist/text.d.ts.map +1 -1
- package/dist/text.js +6 -6
- package/dist/text.js.map +1 -1
- package/dist/time-field.d.ts +3 -0
- package/dist/time-field.d.ts.map +1 -1
- package/dist/time-field.js +3 -3
- package/dist/time-field.js.map +1 -1
- package/dist/time-range-field.d.ts +42 -0
- package/dist/time-range-field.d.ts.map +1 -0
- package/dist/time-range-field.js +43 -0
- package/dist/time-range-field.js.map +1 -0
- package/dist/timer.d.ts +30 -0
- package/dist/timer.d.ts.map +1 -0
- package/dist/timer.js +31 -0
- package/dist/timer.js.map +1 -0
- package/dist/toast.d.ts +29 -0
- package/dist/toast.d.ts.map +1 -0
- package/dist/toast.js +38 -0
- package/dist/toast.js.map +1 -0
- package/dist/toggle-button.d.ts +2 -0
- package/dist/toggle-button.d.ts.map +1 -1
- package/dist/toggle-button.js +2 -2
- package/dist/toggle-button.js.map +1 -1
- package/dist/toggle-group.d.ts +22 -0
- package/dist/toggle-group.d.ts.map +1 -0
- package/dist/toggle-group.js +33 -0
- package/dist/toggle-group.js.map +1 -0
- package/dist/toolbar.d.ts +3 -0
- package/dist/toolbar.d.ts.map +1 -1
- package/dist/toolbar.js +6 -6
- package/dist/toolbar.js.map +1 -1
- package/dist/tooltip.d.ts +2 -0
- package/dist/tooltip.d.ts.map +1 -1
- package/dist/tooltip.js +2 -2
- package/dist/tooltip.js.map +1 -1
- package/dist/tree-grid.d.ts +8 -0
- package/dist/tree-grid.d.ts.map +1 -1
- package/dist/tree-grid.js +9 -9
- package/dist/tree-grid.js.map +1 -1
- package/dist/tree-view.d.ts +14 -6
- package/dist/tree-view.d.ts.map +1 -1
- package/dist/tree-view.js +27 -24
- package/dist/tree-view.js.map +1 -1
- package/dist/year-picker.d.ts +3 -0
- package/dist/year-picker.d.ts.map +1 -0
- package/dist/year-picker.js +2 -0
- package/dist/year-picker.js.map +1 -0
- package/dist/year-range-picker.d.ts +3 -0
- package/dist/year-range-picker.d.ts.map +1 -0
- package/dist/year-range-picker.js +2 -0
- package/dist/year-range-picker.js.map +1 -0
- package/package.json +103 -3
package/dist/carousel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carousel.d.ts","sourceRoot":"","sources":["../src/carousel.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAML,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAG3D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"carousel.d.ts","sourceRoot":"","sources":["../src/carousel.ts"],"names":[],"mappings":"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"}
|
package/dist/carousel.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createFacadeConnection } from './internal/facade.js';
|
|
2
2
|
import { unwrap } from '@sectile/core/result';
|
|
3
|
-
import {
|
|
4
|
-
import { applyCarouselEvent,
|
|
3
|
+
import { tryCreateSequence } from '@sectile/core/sequence';
|
|
4
|
+
import { applyCarouselEvent, tryCreateCarouselState, getCarouselPosition, isCarouselRotationPaused, } from '@sectile/core/carousel';
|
|
5
5
|
import { createSemanticController } from './internal/semantic-controller.js';
|
|
6
6
|
export function createCarousel(options) {
|
|
7
7
|
return unwrap(tryCreateCarousel(options));
|
|
@@ -10,7 +10,7 @@ export function tryCreateCarousel(options) {
|
|
|
10
10
|
return createFacadeConnection(options, (options) => tryCreateCarouselConnection(options));
|
|
11
11
|
}
|
|
12
12
|
function tryCreateCarouselConnection(options) {
|
|
13
|
-
const slides =
|
|
13
|
+
const slides = tryCreateSequence(options.slides);
|
|
14
14
|
if (!slides.ok)
|
|
15
15
|
return slides;
|
|
16
16
|
const autoplay = normalizeAutoplay(options.autoplay);
|
|
@@ -19,9 +19,9 @@ function tryCreateCarouselConnection(options) {
|
|
|
19
19
|
const valueControlled = options.value !== undefined;
|
|
20
20
|
const pausedControlled = options.paused !== undefined;
|
|
21
21
|
const runtime = createSemanticController({
|
|
22
|
-
initial:
|
|
22
|
+
initial: tryCreateCarouselState(slides.value, options.value !== undefined ? options.value : options.defaultValue ?? options.slides[0] ?? null, options.paused ?? options.defaultPaused ?? false),
|
|
23
23
|
reducer: (state, event) => applyCarouselEvent(slides.value, state, event, options.policies),
|
|
24
|
-
reconcile: (previous, proposed) =>
|
|
24
|
+
reconcile: (previous, proposed) => tryCreateCarouselState(slides.value, valueControlled ? previous.cursor.current : proposed.cursor.current, pausedControlled ? previous.paused : proposed.paused, proposed.pauseReasons),
|
|
25
25
|
notify: (previous, proposed) => {
|
|
26
26
|
if (previous.cursor.current !== proposed.cursor.current)
|
|
27
27
|
options.onValueChange?.(proposed.cursor.current);
|
|
@@ -59,7 +59,7 @@ class TerminalCarousel {
|
|
|
59
59
|
return { ok: false, error: { class: 'construction', code: 'controlled-shape-mismatch', message: 'Controlled carousel values must preserve their construction-time shape.' } };
|
|
60
60
|
}
|
|
61
61
|
const state = this.getSnapshot().state;
|
|
62
|
-
const result = this.#runtime.replace(
|
|
62
|
+
const result = this.#runtime.replace(tryCreateCarouselState(this.#slides, this.#valueControlled ? values.value : state.cursor.current, this.#pausedControlled ? values.paused : state.paused, state.pauseReasons));
|
|
63
63
|
if (result.ok) {
|
|
64
64
|
this.#resetTimer();
|
|
65
65
|
this.#options.onUpdate?.();
|
package/dist/carousel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carousel.js","sourceRoot":"","sources":["../src/carousel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAyB,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"carousel.js","sourceRoot":"","sources":["../src/carousel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { type FacadeConnection } from './internal/facade.js';
|
|
2
|
+
import type { Result, StableID } from '@sectile/core';
|
|
3
|
+
import { type Tree, type TreeNodeInput } from '@sectile/core/tree';
|
|
4
|
+
import type { RevisionSnapshot } from '@sectile/core/revision';
|
|
5
|
+
import { type CascadeSelectEvent, type CascadeSelectPolicies, type CascadeSelectState } from '@sectile/core/cascade-select';
|
|
6
|
+
import type { TerminalKeyboardInput } from './keyboard.js';
|
|
7
|
+
export interface CascadeSelectOptions<ID extends StableID = StableID> {
|
|
8
|
+
readonly nodes: readonly TreeNodeInput<ID>[];
|
|
9
|
+
readonly disabledItems?: readonly ID[];
|
|
10
|
+
readonly policies?: CascadeSelectPolicies<ID>;
|
|
11
|
+
readonly disabled?: boolean;
|
|
12
|
+
readonly readOnly?: boolean;
|
|
13
|
+
readonly value?: ID | null;
|
|
14
|
+
readonly defaultValue?: ID | null;
|
|
15
|
+
readonly highlightedValue?: ID | null;
|
|
16
|
+
readonly defaultHighlightedValue?: ID | null;
|
|
17
|
+
readonly open?: boolean;
|
|
18
|
+
readonly defaultOpen?: boolean;
|
|
19
|
+
readonly onValueChange?: (value: ID | null) => void;
|
|
20
|
+
readonly onHighlightedValueChange?: (value: ID | null) => void;
|
|
21
|
+
readonly onOpenChange?: (open: boolean) => void;
|
|
22
|
+
readonly onUpdate?: () => void;
|
|
23
|
+
}
|
|
24
|
+
export type CascadeSelectValueChangeHandler<ID extends StableID = StableID> = NonNullable<CascadeSelectOptions<ID>['onValueChange']>;
|
|
25
|
+
export type CascadeSelectHighlightedValueChangeHandler<ID extends StableID = StableID> = NonNullable<CascadeSelectOptions<ID>['onHighlightedValueChange']>;
|
|
26
|
+
export type CascadeSelectOpenChangeHandler<ID extends StableID = StableID> = NonNullable<CascadeSelectOptions<ID>['onOpenChange']>;
|
|
27
|
+
export type CascadeSelectUpdateHandler<ID extends StableID = StableID> = NonNullable<CascadeSelectOptions<ID>['onUpdate']>;
|
|
28
|
+
export interface CascadeSelectConnection<ID extends StableID = StableID> {
|
|
29
|
+
readonly tree: Tree<ID>;
|
|
30
|
+
getSnapshot(): RevisionSnapshot<CascadeSelectState<ID>>;
|
|
31
|
+
getColumns(): readonly (readonly ID[])[];
|
|
32
|
+
getValuePath(): readonly ID[];
|
|
33
|
+
syncControlledValues(values: {
|
|
34
|
+
readonly value?: ID | null;
|
|
35
|
+
readonly highlightedValue?: ID | null;
|
|
36
|
+
readonly open?: boolean;
|
|
37
|
+
}): Result<RevisionSnapshot<CascadeSelectState<ID>>>;
|
|
38
|
+
handleEvent(event: CascadeSelectEvent<ID>): boolean;
|
|
39
|
+
handleKeyboardInput(input: TerminalKeyboardInput): boolean;
|
|
40
|
+
}
|
|
41
|
+
export declare function createCascadeSelect<ID extends StableID>(options: CascadeSelectOptions<ID>): FacadeConnection<CascadeSelectConnection<ID>>;
|
|
42
|
+
export declare function tryCreateCascadeSelect<ID extends StableID>(options: CascadeSelectOptions<ID>): Result<FacadeConnection<CascadeSelectConnection<ID>>>;
|
|
43
|
+
//# sourceMappingURL=cascade-select.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cascade-select.d.ts","sourceRoot":"","sources":["../src/cascade-select.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { createFacadeConnection } from './internal/facade.js';
|
|
2
|
+
import { unwrap } from '@sectile/core/result';
|
|
3
|
+
import { tryCreateTree } from '@sectile/core/tree';
|
|
4
|
+
import { applyCascadeSelectEvent, tryCreateCascadeSelectState, getCascadeSelectColumns, getCascadeSelectValuePath, } from '@sectile/core/cascade-select';
|
|
5
|
+
import { createSemanticController } from './internal/semantic-controller.js';
|
|
6
|
+
export function createCascadeSelect(options) {
|
|
7
|
+
return unwrap(tryCreateCascadeSelect(options));
|
|
8
|
+
}
|
|
9
|
+
export function tryCreateCascadeSelect(options) {
|
|
10
|
+
return createFacadeConnection(options, (options) => tryCreateCascadeSelectConnection(options));
|
|
11
|
+
}
|
|
12
|
+
function tryCreateCascadeSelectConnection(options) {
|
|
13
|
+
const tree = tryCreateTree(options.nodes);
|
|
14
|
+
if (!tree.ok)
|
|
15
|
+
return tree;
|
|
16
|
+
const disabled = new Set(options.disabledItems ?? []);
|
|
17
|
+
for (const id of disabled)
|
|
18
|
+
if (!tree.value.has(id))
|
|
19
|
+
return { ok: false, error: { class: 'construction', code: 'disabled-item-outside-domain', message: 'Every disabled cascade select item must exist in the tree.' } };
|
|
20
|
+
const suppliedEligibility = options.policies?.eligible;
|
|
21
|
+
const policies = { ...options.policies, eligible: (id) => !disabled.has(id) && (suppliedEligibility?.(id) ?? true) };
|
|
22
|
+
const controlled = { value: options.value !== undefined, highlighted: options.highlightedValue !== undefined, open: options.open !== undefined };
|
|
23
|
+
const runtime = createSemanticController({
|
|
24
|
+
interaction: options, interactionIntent: (event) => event === 'select' || (typeof event === 'object' && event.type === 'select') ? 'mutate' : 'navigate',
|
|
25
|
+
initial: tryCreateCascadeSelectState(tree.value, { value: options.value ?? options.defaultValue ?? null, highlighted: options.highlightedValue ?? options.defaultHighlightedValue ?? options.value ?? options.defaultValue ?? null, open: options.open ?? options.defaultOpen ?? false }),
|
|
26
|
+
reducer: (state, event) => applyCascadeSelectEvent(tree.value, state, event, policies),
|
|
27
|
+
reconcile: (previous, proposed) => tryCreateCascadeSelectState(tree.value, { value: controlled.value ? previous.value : proposed.value, highlighted: controlled.highlighted ? previous.highlighted : proposed.highlighted, open: controlled.open ? previous.open : proposed.open, path: proposed.path }),
|
|
28
|
+
notify: (previous, proposed) => { if (previous.value !== proposed.value)
|
|
29
|
+
options.onValueChange?.(proposed.value); if (previous.highlighted !== proposed.highlighted)
|
|
30
|
+
options.onHighlightedValueChange?.(proposed.highlighted); if (previous.open !== proposed.open)
|
|
31
|
+
options.onOpenChange?.(proposed.open); },
|
|
32
|
+
toEffect: (command) => command,
|
|
33
|
+
});
|
|
34
|
+
return runtime.ok ? { ok: true, value: new TerminalCascadeSelectConnection(options, tree.value, runtime.value, controlled) } : runtime;
|
|
35
|
+
}
|
|
36
|
+
class TerminalCascadeSelectConnection {
|
|
37
|
+
tree;
|
|
38
|
+
#options;
|
|
39
|
+
#runtime;
|
|
40
|
+
#controlled;
|
|
41
|
+
constructor(options, tree, runtime, controlled) { this.#options = options; this.tree = tree; this.#runtime = runtime; this.#controlled = controlled; }
|
|
42
|
+
getSnapshot() { return this.#runtime.getSnapshot(); }
|
|
43
|
+
getColumns() { return getCascadeSelectColumns(this.tree, this.getSnapshot().state); }
|
|
44
|
+
getValuePath() { return getCascadeSelectValuePath(this.tree, this.getSnapshot().state.value); }
|
|
45
|
+
syncControlledValues(values) { if (this.#controlled.value !== (values.value !== undefined) || this.#controlled.highlighted !== (values.highlightedValue !== undefined) || this.#controlled.open !== (values.open !== undefined))
|
|
46
|
+
return { ok: false, error: { class: 'construction', code: 'controlled-shape-mismatch', message: 'Controlled cascade select values must preserve their construction-time shape.' } }; const state = this.getSnapshot().state; const result = this.#runtime.replace(tryCreateCascadeSelectState(this.tree, { value: this.#controlled.value ? values.value ?? null : state.value, highlighted: this.#controlled.highlighted ? values.highlightedValue ?? null : state.highlighted, open: this.#controlled.open ? values.open ?? false : state.open })); if (result.ok)
|
|
47
|
+
this.#options.onUpdate?.(); return result; }
|
|
48
|
+
handleEvent(event) { const result = this.#runtime.handle(event); if (result.ok)
|
|
49
|
+
this.#options.onUpdate?.(); return result.ok; }
|
|
50
|
+
handleKeyboardInput(input) { const event = toCascadeSelectEvent(input); return event === null ? false : this.handleEvent(event); }
|
|
51
|
+
}
|
|
52
|
+
function toCascadeSelectEvent(input) {
|
|
53
|
+
if (input.key === 'down')
|
|
54
|
+
return 'next';
|
|
55
|
+
if (input.key === 'up')
|
|
56
|
+
return 'previous';
|
|
57
|
+
if (input.key === 'right')
|
|
58
|
+
return 'right';
|
|
59
|
+
if (input.key === 'left')
|
|
60
|
+
return 'left';
|
|
61
|
+
if (input.key === 'home')
|
|
62
|
+
return 'first';
|
|
63
|
+
if (input.key === 'end')
|
|
64
|
+
return 'last';
|
|
65
|
+
if (input.key === 'enter' || input.key === 'space')
|
|
66
|
+
return 'select';
|
|
67
|
+
if (input.key === 'escape')
|
|
68
|
+
return 'close';
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=cascade-select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cascade-select.js","sourceRoot":"","sources":["../src/cascade-select.ts"],"names":[],"mappings":"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"}
|
package/dist/checkbox.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ export interface CheckboxOptions {
|
|
|
11
11
|
readonly onValueChange?: (value: CheckboxValue) => void;
|
|
12
12
|
readonly onUpdate?: () => void;
|
|
13
13
|
}
|
|
14
|
+
export type CheckboxValueChangeHandler = NonNullable<CheckboxOptions['onValueChange']>;
|
|
15
|
+
export type CheckboxUpdateHandler = NonNullable<CheckboxOptions['onUpdate']>;
|
|
14
16
|
export type CheckboxConnection = TerminalCheckedControl<CheckboxState, CheckboxEvent, CheckboxValue>;
|
|
15
17
|
export declare function createCheckbox(options?: CheckboxOptions): FacadeConnection<CheckboxConnection>;
|
|
16
18
|
export declare function tryCreateCheckbox(options?: CheckboxOptions): Result<FacadeConnection<CheckboxConnection>>;
|
package/dist/checkbox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAAC,OAAO,EAAoE,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAAC,OAAO,EAAgC,KAAK,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACrV,MAAM,WAAW,eAAe;IAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE;AAEnS,MAAM,MAAM,0BAA0B,GAAG,WAAW,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC;AACvF,MAAM,MAAM,qBAAqB,GAAG,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;AAC7E,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;AACrG,wBAAgB,cAAc,CAAC,OAAO,GAAE,eAAoB,GAAG,gBAAgB,CAAC,kBAAkB,CAAC,CAElG;AAED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,eAAoB,GAAG,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,CAE7G"}
|
package/dist/checkbox.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createFacadeConnection } from './internal/facade.js';
|
|
2
2
|
import { unwrap } from '@sectile/core/result';
|
|
3
|
-
import { applyCheckboxEvent,
|
|
3
|
+
import { applyCheckboxEvent, tryCreateCheckboxState } from '@sectile/core/checkbox';
|
|
4
4
|
import { createTerminalCheckedControl } from './internal/checked-control.js';
|
|
5
5
|
export function createCheckbox(options = {}) {
|
|
6
6
|
return unwrap(tryCreateCheckbox(options));
|
|
@@ -8,5 +8,5 @@ export function createCheckbox(options = {}) {
|
|
|
8
8
|
export function tryCreateCheckbox(options = {}) {
|
|
9
9
|
return createFacadeConnection(options, (options) => tryCreateCheckboxConnection(options));
|
|
10
10
|
}
|
|
11
|
-
function tryCreateCheckboxConnection(options = {}) { return createTerminalCheckedControl({ controlled: options.value !== undefined, initial:
|
|
11
|
+
function tryCreateCheckboxConnection(options = {}) { return createTerminalCheckedControl({ controlled: options.value !== undefined, initial: tryCreateCheckboxState(options.value ?? options.defaultValue ?? false, options.policies), toggleEvent: 'toggle', reducer: (state, event) => applyCheckboxEvent(state, event, options.policies), create: (value) => tryCreateCheckboxState(value, options.policies), read: (state) => state.checked, interaction: options, onChange: options.onValueChange, onUpdate: options.onUpdate }); }
|
|
12
12
|
//# sourceMappingURL=checkbox.js.map
|
package/dist/checkbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAyB,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACD,OAAO,EAAE,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAyB,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAA2G,MAAM,wBAAwB,CAAC;AAAC,OAAO,EAAE,4BAA4B,EAA+B,MAAM,+BAA+B,CAAC;AAMrV,MAAM,UAAU,cAAc,CAAC,OAAO,GAAoB,EAAE;IAC1D,OAAO,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAO,GAAoB,EAAE;IAC7D,OAAO,sBAAsB,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,2BAA2B,CAAC,OAAO,GAAoB,EAAE,IAAgC,OAAO,4BAA4B,CAA+D,EAAE,UAAU,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,OAAO,EAAE,sBAAsB,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,YAAY,IAAI,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Result } from '@sectile/core';
|
|
2
|
+
import { type ColorFormat, type ColorPickerEvent, type ColorPickerPolicies, type ColorPickerState, type ColorValue } from '@sectile/core/color-picker';
|
|
3
|
+
import type { RevisionSnapshot } from '@sectile/core/revision';
|
|
4
|
+
import { type FacadeConnection } from './internal/facade.js';
|
|
5
|
+
import type { TerminalKeyboardInput } from './keyboard.js';
|
|
6
|
+
export interface ColorPickerOptions extends ColorPickerPolicies {
|
|
7
|
+
readonly value?: ColorValue | string;
|
|
8
|
+
readonly defaultValue?: ColorValue | string;
|
|
9
|
+
readonly draft?: string | null;
|
|
10
|
+
readonly defaultDraft?: string | null;
|
|
11
|
+
readonly format?: ColorFormat;
|
|
12
|
+
readonly defaultFormat?: ColorFormat;
|
|
13
|
+
readonly disabled?: boolean;
|
|
14
|
+
readonly readOnly?: boolean;
|
|
15
|
+
readonly onValueChange?: (value: ColorValue) => void;
|
|
16
|
+
readonly onDraftChange?: (draft: string | null) => void;
|
|
17
|
+
readonly onFormatChange?: (format: ColorFormat) => void;
|
|
18
|
+
readonly onUpdate?: () => void;
|
|
19
|
+
}
|
|
20
|
+
export type ColorPickerValueChangeHandler = NonNullable<ColorPickerOptions['onValueChange']>;
|
|
21
|
+
export type ColorPickerDraftChangeHandler = NonNullable<ColorPickerOptions['onDraftChange']>;
|
|
22
|
+
export type ColorPickerFormatChangeHandler = NonNullable<ColorPickerOptions['onFormatChange']>;
|
|
23
|
+
export type ColorPickerUpdateHandler = NonNullable<ColorPickerOptions['onUpdate']>;
|
|
24
|
+
export interface ColorPickerConnection {
|
|
25
|
+
getSnapshot(): RevisionSnapshot<ColorPickerState>;
|
|
26
|
+
getText(): string;
|
|
27
|
+
getCSSColor(): string;
|
|
28
|
+
syncControlledValues(values: {
|
|
29
|
+
readonly value?: ColorValue | string;
|
|
30
|
+
readonly draft?: string | null;
|
|
31
|
+
readonly format?: ColorFormat;
|
|
32
|
+
}): Result<RevisionSnapshot<ColorPickerState>>;
|
|
33
|
+
handleEvent(event: ColorPickerEvent): boolean;
|
|
34
|
+
handleKeyboardInput(input: TerminalKeyboardInput): boolean;
|
|
35
|
+
handleTextInput(text: string): boolean;
|
|
36
|
+
}
|
|
37
|
+
export declare function createColorPicker(options?: ColorPickerOptions): FacadeConnection<ColorPickerConnection>;
|
|
38
|
+
export declare function tryCreateColorPicker(options?: ColorPickerOptions): Result<FacadeConnection<ColorPickerConnection>>;
|
|
39
|
+
//# sourceMappingURL=color-picker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-picker.d.ts","sourceRoot":"","sources":["../src/color-picker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAyF,KAAK,WAAW,EAA2B,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,KAAK,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACvQ,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IACrC,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACrD,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC;AAED,MAAM,MAAM,6BAA6B,GAAG,WAAW,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC;AAC7F,MAAM,MAAM,6BAA6B,GAAG,WAAW,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC;AAC7F,MAAM,MAAM,8BAA8B,GAAG,WAAW,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAC/F,MAAM,MAAM,wBAAwB,GAAG,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC;AACnF,MAAM,WAAW,qBAAqB;IACpC,WAAW,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IAClD,OAAO,IAAI,MAAM,CAAC;IAClB,WAAW,IAAI,MAAM,CAAC;IACtB,oBAAoB,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAClL,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC;IAC9C,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC;IAC3D,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACxC;AACD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC,CAAkD;AAC9J,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,kBAAuB,GAAG,MAAM,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,CAA6F"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { applyColorPickerEvent, tryCreateColorPickerState, formatColorValue } from '@sectile/core/color-picker';
|
|
2
|
+
import { unwrap } from '@sectile/core/result';
|
|
3
|
+
import { createFacadeConnection } from './internal/facade.js';
|
|
4
|
+
import { createSemanticController } from './internal/semantic-controller.js';
|
|
5
|
+
export function createColorPicker(options = {}) { return unwrap(tryCreateColorPicker(options)); }
|
|
6
|
+
export function tryCreateColorPicker(options = {}) { return createFacadeConnection(options, (normalized) => tryCreateConnection(normalized)); }
|
|
7
|
+
function tryCreateConnection(options) {
|
|
8
|
+
const controlled = [options.value !== undefined, options.draft !== undefined, options.format !== undefined];
|
|
9
|
+
const policies = { ...(options.allowAlpha === undefined ? {} : { allowAlpha: options.allowAlpha }), ...(options.channelStep === undefined ? {} : { channelStep: options.channelStep }), ...(options.alphaStep === undefined ? {} : { alphaStep: options.alphaStep }) };
|
|
10
|
+
const runtime = createSemanticController({
|
|
11
|
+
initial: tryCreateColorPickerState({ value: options.value ?? options.defaultValue ?? '#000000', draft: options.draft !== undefined ? options.draft : options.defaultDraft ?? null, format: options.format ?? options.defaultFormat ?? 'hex' }, policies),
|
|
12
|
+
reducer: (state, event) => applyColorPickerEvent(state, event, policies),
|
|
13
|
+
reconcile: (previous, proposed) => tryCreateColorPickerState({ value: controlled[0] ? previous.value : proposed.value, draft: controlled[1] ? previous.draft : proposed.draft, format: controlled[2] ? previous.format : proposed.format, channel: proposed.channel }, policies),
|
|
14
|
+
notify: (previous, proposed) => { if (!sameColor(previous.value, proposed.value))
|
|
15
|
+
options.onValueChange?.(proposed.value); if (previous.draft !== proposed.draft)
|
|
16
|
+
options.onDraftChange?.(proposed.draft); if (previous.format !== proposed.format)
|
|
17
|
+
options.onFormatChange?.(proposed.format); },
|
|
18
|
+
toEffect: (command) => command, interaction: options,
|
|
19
|
+
});
|
|
20
|
+
return runtime.ok ? { ok: true, value: new TerminalColorPicker(options, policies, runtime.value, controlled) } : runtime;
|
|
21
|
+
}
|
|
22
|
+
class TerminalColorPicker {
|
|
23
|
+
#options;
|
|
24
|
+
#policies;
|
|
25
|
+
#runtime;
|
|
26
|
+
#controlled;
|
|
27
|
+
constructor(options, policies, runtime, controlled) { this.#options = options; this.#policies = policies; this.#runtime = runtime; this.#controlled = controlled; }
|
|
28
|
+
getSnapshot() { return this.#runtime.getSnapshot(); }
|
|
29
|
+
getText() { const state = this.getSnapshot().state; return state.draft ?? unwrap(formatColorValue(state.value, state.format)); }
|
|
30
|
+
getCSSColor() { return unwrap(formatColorValue(this.getSnapshot().state.value, 'rgb')); }
|
|
31
|
+
syncControlledValues(values) {
|
|
32
|
+
if (this.#controlled[0] !== (values.value !== undefined) || this.#controlled[1] !== (values.draft !== undefined) || this.#controlled[2] !== (values.format !== undefined))
|
|
33
|
+
return { ok: false, error: { class: 'construction', code: 'controlled-shape-mismatch', message: 'Controlled color picker values must preserve their construction-time shape.' } };
|
|
34
|
+
const state = this.getSnapshot().state;
|
|
35
|
+
const result = this.#runtime.replace(tryCreateColorPickerState({ value: values.value ?? state.value, draft: values.draft === undefined ? state.draft : values.draft, format: values.format ?? state.format, channel: state.channel }, this.#policies));
|
|
36
|
+
if (result.ok)
|
|
37
|
+
this.#options.onUpdate?.();
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
handleEvent(event) { const result = this.#runtime.handle(event); if (result.ok)
|
|
41
|
+
this.#options.onUpdate?.(); return result.ok; }
|
|
42
|
+
handleKeyboardInput(input) {
|
|
43
|
+
if (input.key === 'up')
|
|
44
|
+
return this.handleEvent('increment');
|
|
45
|
+
if (input.key === 'down')
|
|
46
|
+
return this.handleEvent('decrement');
|
|
47
|
+
if (input.key === 'left' || input.key === 'right') {
|
|
48
|
+
const channels = this.#policies.allowAlpha === false ? ['red', 'green', 'blue'] : ['red', 'green', 'blue', 'alpha'];
|
|
49
|
+
const current = channels.indexOf(this.getSnapshot().state.channel);
|
|
50
|
+
const next = (current + (input.key === 'right' ? 1 : channels.length - 1)) % channels.length;
|
|
51
|
+
return this.handleEvent({ type: 'focus-channel', channel: channels[next] });
|
|
52
|
+
}
|
|
53
|
+
if (input.key === 'enter')
|
|
54
|
+
return this.handleEvent('commit');
|
|
55
|
+
if (input.key === 'escape')
|
|
56
|
+
return this.handleEvent('cancel');
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
handleTextInput(text) { return this.handleEvent({ type: 'input', text }); }
|
|
60
|
+
}
|
|
61
|
+
function sameColor(left, right) { return left.red === right.red && left.green === right.green && left.blue === right.blue && left.alpha === right.alpha; }
|
|
62
|
+
//# sourceMappingURL=color-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-picker.js","sourceRoot":"","sources":["../src/color-picker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,gBAAgB,EAAyJ,MAAM,4BAA4B,CAAC;AAEvQ,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAyB,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,wBAAwB,EAA2B,MAAM,mCAAmC,CAAC;AA+BtG,MAAM,UAAU,iBAAiB,CAAC,OAAO,GAAuB,EAAE,IAA6C,OAAO,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9J,MAAM,UAAU,oBAAoB,CAAC,OAAO,GAAuB,EAAE,IAAqD,OAAO,sBAAsB,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AACpN,SAAS,mBAAmB,CAAC,OAA2B;IACtD,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,OAAO,CAAC,MAAM,KAAK,SAAS,CAAU,CAAC;IACrH,MAAM,QAAQ,GAAwB,EAAE,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;IAC5R,MAAM,OAAO,GAAG,wBAAwB,CAA6E;QACnH,OAAO,EAAE,yBAAyB,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,YAAY,IAAI,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,IAAI,KAAK,EAAE,EAAE,QAAQ,CAAC;QACxP,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC;QACxE,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,yBAAyB,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC;QAChR,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;YAAE,OAAO,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;YAAE,OAAO,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAChS,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO;KACrD,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AAC3H,CAAC;AACD,MAAM,mBAAmB;IACd,QAAQ,CAAqB;IAAU,SAAS,CAAsB;IAAU,QAAQ,CAA6E;IAAU,WAAW,CAAuC;IAC1O,YAAmB,OAA2B,EAAE,QAA6B,EAAE,OAAmF,EAAE,UAAgD,IAAI,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC;IAC9T,WAAW,KAAyC,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACzF,OAAO,KAAa,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACxI,WAAW,KAAa,OAAO,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjG,oBAAoB,CAAC,MAA+G;QACzI,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,6EAA6E,EAAE,EAAE,CAAC;QAC7V,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC;QAAC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAAC,IAAI,MAAM,CAAC,EAAE;YAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;QAAC,OAAO,MAAM,CAAC;IAC3V,CAAC;IACM,WAAW,CAAC,KAAuB,IAAa,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1J,mBAAmB,CAAC,KAA4B;QACrD,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAAC,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7H,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;YAAC,MAAM,QAAQ,GAA4B,IAAI,CAAC,SAAS,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAAC,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;YAAC,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAiB,EAAE,CAAC,CAAC;QAAC,CAAC;QACnc,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAAC,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAAC,OAAO,KAAK,CAAC;IAC5I,CAAC;IACM,eAAe,CAAC,IAAY,IAAa,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;CACpG;AACD,SAAS,SAAS,CAAC,IAAgB,EAAE,KAAiB,IAAa,OAAO,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC"}
|
package/dist/combobox.d.ts
CHANGED
|
@@ -49,6 +49,10 @@ export interface ComboboxControllerOptions<ID extends StableID = StableID> {
|
|
|
49
49
|
readonly onOpenChange?: (change: ComboboxOpenChangeDetails) => void;
|
|
50
50
|
readonly onHighlightedValueChange?: (change: ComboboxHighlightChangeDetails<ID>) => void;
|
|
51
51
|
}
|
|
52
|
+
export type ComboboxControllerValueChangeHandler<ID extends StableID = StableID> = NonNullable<ComboboxControllerOptions<ID>['onValueChange']>;
|
|
53
|
+
export type ComboboxControllerInputStateChangeHandler<ID extends StableID = StableID> = NonNullable<ComboboxControllerOptions<ID>['onInputStateChange']>;
|
|
54
|
+
export type ComboboxControllerOpenChangeHandler<ID extends StableID = StableID> = NonNullable<ComboboxControllerOptions<ID>['onOpenChange']>;
|
|
55
|
+
export type ComboboxControllerHighlightedValueChangeHandler<ID extends StableID = StableID> = NonNullable<ComboboxControllerOptions<ID>['onHighlightedValueChange']>;
|
|
52
56
|
export interface ComboboxControlledValues<ID extends StableID = StableID> {
|
|
53
57
|
readonly value?: ID | null;
|
|
54
58
|
readonly inputState?: TextEditingState;
|
|
@@ -79,6 +83,9 @@ export interface ComboboxConnectionOptions<ID extends StableID = StableID> {
|
|
|
79
83
|
readonly onTransition?: (details: ComboboxTransitionDetails<ID>) => void;
|
|
80
84
|
readonly onUpdate?: () => void;
|
|
81
85
|
}
|
|
86
|
+
export type ComboboxConnectionAcceptHandler<ID extends StableID = StableID> = NonNullable<ComboboxConnectionOptions<ID>['onAccept']>;
|
|
87
|
+
export type ComboboxConnectionTransitionHandler<ID extends StableID = StableID> = NonNullable<ComboboxConnectionOptions<ID>['onTransition']>;
|
|
88
|
+
export type ComboboxConnectionUpdateHandler<ID extends StableID = StableID> = NonNullable<ComboboxConnectionOptions<ID>['onUpdate']>;
|
|
82
89
|
export interface ComboboxConnection<ID extends StableID = StableID> {
|
|
83
90
|
readonly domain: Sequence<ID>;
|
|
84
91
|
readonly labels: ReadonlyMap<ID, string>;
|
package/dist/combobox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../src/combobox.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,KAAK,EAAE,MAAM,EAAgB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEpE,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,
|
|
1
|
+
{"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../src/combobox.ts"],"names":[],"mappings":"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"}
|
package/dist/combobox.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { createFacadeConnection } from './internal/facade.js';
|
|
2
2
|
import { unwrap } from '@sectile/core/result';
|
|
3
|
-
import {
|
|
4
|
-
import { applyComboboxEvent,
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import { tryCreateInteractionState, requireInteraction } from '@sectile/core/interaction';
|
|
4
|
+
import { applyComboboxEvent, tryCreateComboboxState, } from '@sectile/core/combobox';
|
|
5
|
+
import { tryCreateRevisionSnapshot, rejectRevisionInput, } from '@sectile/core/revision';
|
|
6
|
+
import { tryCreateSequence } from '@sectile/core/sequence';
|
|
7
|
+
import { tryCreateTextEditingState, } from '@sectile/core/text';
|
|
8
8
|
import { applyControllerEvent, sameControllerState, synchronizeControllerState, } from './internal/controller.js';
|
|
9
9
|
import { toTextEvent } from './text.js';
|
|
10
10
|
import { toTerminalTextInput } from './internal/text-input.js';
|
|
@@ -14,11 +14,11 @@ export function createComboboxController(options) {
|
|
|
14
14
|
? options.inputState
|
|
15
15
|
: options.defaultInputState;
|
|
16
16
|
const inputState = requestedInput === undefined
|
|
17
|
-
?
|
|
17
|
+
? tryCreateTextEditingState()
|
|
18
18
|
: { ok: true, value: requestedInput };
|
|
19
19
|
if (!inputState.ok)
|
|
20
20
|
return inputState;
|
|
21
|
-
const initial =
|
|
21
|
+
const initial = tryCreateComboboxState(options.domain, {
|
|
22
22
|
text: inputState.value,
|
|
23
23
|
popupOpen: options.open !== undefined ? options.open : options.defaultOpen ?? false,
|
|
24
24
|
current: options.highlightedValue !== undefined
|
|
@@ -29,10 +29,10 @@ export function createComboboxController(options) {
|
|
|
29
29
|
});
|
|
30
30
|
if (!initial.ok)
|
|
31
31
|
return initial;
|
|
32
|
-
const snapshot =
|
|
32
|
+
const snapshot = tryCreateRevisionSnapshot(initial.value);
|
|
33
33
|
if (!snapshot.ok)
|
|
34
34
|
return snapshot;
|
|
35
|
-
const interaction =
|
|
35
|
+
const interaction = tryCreateInteractionState(options);
|
|
36
36
|
if (!interaction.ok)
|
|
37
37
|
return interaction;
|
|
38
38
|
return { ok: true, value: new TerminalComboboxController(options, interaction.value, snapshot.value) };
|
|
@@ -44,7 +44,7 @@ export function tryCreateCombobox(options) {
|
|
|
44
44
|
return createFacadeConnection(options, (options) => tryCreateComboboxConnection(options));
|
|
45
45
|
}
|
|
46
46
|
function tryCreateComboboxConnection(options) {
|
|
47
|
-
const domain =
|
|
47
|
+
const domain = tryCreateSequence(options.items.map((item) => item.id));
|
|
48
48
|
if (!domain.ok)
|
|
49
49
|
return domain;
|
|
50
50
|
const labels = new Map(options.items.map((item) => [item.id, item.label]));
|
|
@@ -177,7 +177,7 @@ class TerminalComboboxController {
|
|
|
177
177
|
const selected = this.#valueControlled
|
|
178
178
|
? values.value
|
|
179
179
|
: selectedValue(this.#snapshot.state);
|
|
180
|
-
const state =
|
|
180
|
+
const state = tryCreateComboboxState(this.#domain, {
|
|
181
181
|
text: this.#inputStateControlled
|
|
182
182
|
? values.inputState
|
|
183
183
|
: this.#snapshot.state.text,
|
|
@@ -255,7 +255,7 @@ function comboboxIntent(event) {
|
|
|
255
255
|
return event === 'next' || event === 'previous' || event === 'close' ? 'navigate' : 'mutate';
|
|
256
256
|
}
|
|
257
257
|
function controlledState(domain, previous, proposed, valueControlled, inputStateControlled, openControlled, highlightControlled) {
|
|
258
|
-
return
|
|
258
|
+
return tryCreateComboboxState(domain, {
|
|
259
259
|
text: inputStateControlled ? previous.text : proposed.text,
|
|
260
260
|
popupOpen: openControlled ? previous.popupOpen : proposed.popupOpen,
|
|
261
261
|
current: highlightControlled ? previous.cursor.current : proposed.cursor.current,
|
package/dist/combobox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combobox.js","sourceRoot":"","sources":["../src/combobox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"combobox.js","sourceRoot":"","sources":["../src/combobox.ts"],"names":[],"mappings":"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"}
|
package/dist/date-field.d.ts
CHANGED
|
@@ -17,6 +17,9 @@ export interface DateFieldOptions {
|
|
|
17
17
|
readonly onInputStateChange?: (value: TextEditingState, previousValue: TextEditingState) => void;
|
|
18
18
|
readonly onUpdate?: () => void;
|
|
19
19
|
}
|
|
20
|
+
export type DateFieldValueChangeHandler = NonNullable<DateFieldOptions['onValueChange']>;
|
|
21
|
+
export type DateFieldInputStateChangeHandler = NonNullable<DateFieldOptions['onInputStateChange']>;
|
|
22
|
+
export type DateFieldUpdateHandler = NonNullable<DateFieldOptions['onUpdate']>;
|
|
20
23
|
export interface DateFieldControlledValues {
|
|
21
24
|
readonly value?: DateValue | null;
|
|
22
25
|
readonly inputState?: TextEditingState;
|
package/dist/date-field.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date-field.d.ts","sourceRoot":"","sources":["../src/date-field.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAiC,MAAM,oBAAoB,CAAC;AAC1F,OAAO,
|
|
1
|
+
{"version":3,"file":"date-field.d.ts","sourceRoot":"","sources":["../src/date-field.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAiC,MAAM,oBAAoB,CAAC;AAC1F,OAAO,EAAuE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACjM,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAG3D,MAAM,WAAW,gBAAgB;IAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC;IAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CAAE;AAErgB,MAAM,MAAM,2BAA2B,GAAG,WAAW,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC;AACzF,MAAM,MAAM,gCAAgC,GAAG,WAAW,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC;AACnG,MAAM,MAAM,sBAAsB,GAAG,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;AAC/E,MAAM,WAAW,yBAAyB;IAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAAE;AACzH,MAAM,WAAW,mBAAmB;IAAG,WAAW,IAAI,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAAC,OAAO,IAAI,MAAM,CAAC;IAAC,QAAQ,IAAI,SAAS,GAAG,IAAI,CAAC;IAAC,QAAQ,IAAI,MAAM,CAAC;IAAC,oBAAoB,CAAC,MAAM,EAAE,yBAAyB,GAAG,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC;IAAC,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC;IAAC,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC;IAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CAAE;AAClZ,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAgD;AACtJ,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,gBAAqB,GAAG,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,CAAuD"}
|