kanto-ds 1.5.2 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -10
- package/dist/chunks/floating-B33g-M_1.js +63 -0
- package/dist/chunks/floating-B33g-M_1.js.map +1 -0
- package/dist/chunks/{index-STEEvEP7.js → index-TWJzttLX.js} +38 -15
- package/dist/chunks/index-TWJzttLX.js.map +1 -0
- package/dist/chunks/kt-calendar-CtwOby1R.js +780 -0
- package/dist/chunks/kt-calendar-CtwOby1R.js.map +1 -0
- package/dist/chunks/{kt-element-Djx2JcGl.js → kt-element-T0VbIBNp.js} +2 -2
- package/dist/chunks/{kt-element-Djx2JcGl.js.map → kt-element-T0VbIBNp.js.map} +1 -1
- package/dist/chunks/{listbox-llcUu_V-.js → listbox-LsUEyGhQ.js} +2 -2
- package/dist/chunks/{listbox-llcUu_V-.js.map → listbox-LsUEyGhQ.js.map} +1 -1
- package/dist/chunks/segmented-field-BBXR4XFL.js +384 -0
- package/dist/chunks/segmented-field-BBXR4XFL.js.map +1 -0
- package/dist/chunks/typed-date-CPAUNHzr.js +103 -0
- package/dist/chunks/typed-date-CPAUNHzr.js.map +1 -0
- package/dist/components/core/kt-avatar/kt-avatar.js +2 -2
- package/dist/components/core/kt-badge/kt-badge.js +2 -2
- package/dist/components/core/kt-button/kt-button.js +1 -1
- package/dist/components/core/kt-card/kt-card.js +1 -1
- package/dist/components/core/kt-code/kt-code.js +13 -13
- package/dist/components/core/kt-code/kt-code.js.map +1 -1
- package/dist/components/core/kt-icon/kt-icon.js +1 -1
- package/dist/components/core/kt-kbd/kt-kbd.js +5 -5
- package/dist/components/core/kt-kbd/kt-kbd.js.map +1 -1
- package/dist/components/core/kt-split-button/kt-split-button.js +3 -3
- package/dist/components/data/kt-chart/kt-chart.js +3 -3
- package/dist/components/data/kt-chart/kt-chart.js.map +1 -1
- package/dist/components/data/kt-meter/kt-meter.js +1 -1
- package/dist/components/data/kt-pagination/kt-pagination.js +2 -2
- package/dist/components/data/kt-stat/kt-stat.js +1 -1
- package/dist/components/data/kt-table/kt-table.js +85 -85
- package/dist/components/data/kt-table/kt-table.js.map +1 -1
- package/dist/components/data/kt-timeline/kt-timeline.js +1 -1
- package/dist/components/feedback/kt-alert/kt-alert.js +15 -15
- package/dist/components/feedback/kt-alert/kt-alert.js.map +1 -1
- package/dist/components/feedback/kt-empty-state/kt-empty-state.js +1 -1
- package/dist/components/feedback/kt-progress-bar/kt-progress-bar.js +1 -1
- package/dist/components/feedback/kt-skeleton/kt-skeleton.js +13 -13
- package/dist/components/feedback/kt-skeleton/kt-skeleton.js.map +1 -1
- package/dist/components/feedback/kt-toast/kt-toast.js +3 -3
- package/dist/components/feedback/kt-toast/kt-toast.js.map +1 -1
- package/dist/components/feedback/kt-toast-container/kt-toast-container.js +1 -1
- package/dist/components/feedback/kt-tooltip/kt-tooltip.js +1 -1
- package/dist/components/forms/kt-calendar/kt-calendar.d.ts +35 -9
- package/dist/components/forms/kt-calendar/kt-calendar.js +3 -3
- package/dist/components/forms/kt-checkbox/kt-checkbox.js +2 -2
- package/dist/components/forms/kt-date-input/kt-date-input.d.ts +65 -0
- package/dist/components/forms/kt-date-input/kt-date-input.js +241 -0
- package/dist/components/forms/kt-date-input/kt-date-input.js.map +1 -0
- package/dist/components/forms/kt-date-picker/kt-date-picker.d.ts +47 -3
- package/dist/components/forms/kt-date-picker/kt-date-picker.js +430 -199
- package/dist/components/forms/kt-date-picker/kt-date-picker.js.map +1 -1
- package/dist/components/forms/kt-drag-drop/kt-drag-drop.js +3 -3
- package/dist/components/forms/kt-drag-drop/kt-drag-drop.js.map +1 -1
- package/dist/components/forms/kt-form/kt-form.js +2 -2
- package/dist/components/forms/kt-input/kt-input.js +10 -10
- package/dist/components/forms/kt-input/kt-input.js.map +1 -1
- package/dist/components/forms/kt-input-menu/kt-input-menu.js +4 -4
- package/dist/components/forms/kt-label-input/kt-label-input.js +1 -1
- package/dist/components/forms/kt-multi-select/kt-multi-select.d.ts +113 -0
- package/dist/components/forms/kt-multi-select/kt-multi-select.js +532 -0
- package/dist/components/forms/kt-multi-select/kt-multi-select.js.map +1 -0
- package/dist/components/forms/kt-radio-group/kt-radio-group.js +56 -51
- package/dist/components/forms/kt-radio-group/kt-radio-group.js.map +1 -1
- package/dist/components/forms/kt-select/kt-select.js +4 -4
- package/dist/components/forms/kt-textarea/kt-textarea.js +2 -2
- package/dist/components/forms/kt-time-input/kt-time-input.d.ts +48 -0
- package/dist/components/forms/kt-time-input/kt-time-input.js +114 -0
- package/dist/components/forms/kt-time-input/kt-time-input.js.map +1 -0
- package/dist/components/forms/kt-toggle/kt-toggle.js +1 -1
- package/dist/components/navigation/kt-breadcrumb/kt-breadcrumb.js +6 -6
- package/dist/components/navigation/kt-breadcrumb/kt-breadcrumb.js.map +1 -1
- package/dist/components/navigation/kt-header/kt-header.js +2 -2
- package/dist/components/navigation/kt-page-header/kt-page-header.js +1 -1
- package/dist/components/navigation/kt-segmented-control/kt-segmented-control.js +2 -2
- package/dist/components/navigation/kt-sub-menu-navigation/kt-sub-menu-navigation.js +2 -2
- package/dist/components/navigation/kt-tabs/kt-tabs.js +2 -2
- package/dist/components/navigation/kt-tabs/kt-tabs.js.map +1 -1
- package/dist/components/navigation/kt-toggle-button/kt-toggle-button.js +1 -1
- package/dist/components/navigation/kt-toggle-button-group/kt-toggle-button-group.js +2 -2
- package/dist/components/overlays/kt-collapsible/kt-collapsible.js +3 -3
- package/dist/components/overlays/kt-collapsible/kt-collapsible.js.map +1 -1
- package/dist/components/overlays/kt-confirm-dialog/kt-confirm-dialog.js +2 -2
- package/dist/components/overlays/kt-dropdown/kt-dropdown.js +24 -24
- package/dist/components/overlays/kt-dropdown/kt-dropdown.js.map +1 -1
- package/dist/components/overlays/kt-modal/kt-modal.js +2 -2
- package/dist/components/overlays/kt-side-panel/kt-side-panel.js +2 -2
- package/dist/custom-elements.json +2230 -842
- package/dist/index.d.ts +9 -1
- package/dist/index.js +316 -109
- package/dist/index.js.map +1 -1
- package/dist/internal/floating.d.ts +3 -0
- package/dist/internal/segmented-field.d.ts +114 -0
- package/dist/internal/segments.d.ts +30 -0
- package/dist/internal/strings.d.ts +30 -0
- package/dist/internal/typed-date.d.ts +33 -0
- package/dist/react/index.d.ts +23 -0
- package/dist/react/index.js +193 -169
- package/dist/react/index.js.map +1 -1
- package/dist/react/jsx.d.ts +20 -1
- package/dist/strings/index.js +1 -1
- package/dist/theme/accent.d.ts +51 -0
- package/dist/theme/appearance.d.ts +37 -0
- package/dist/tokens/README.md +100 -1
- package/dist/tokens/accents.css +80 -0
- package/dist/tokens/appearance.css +65 -0
- package/dist/tokens/base.css +3 -0
- package/dist/tokens/colors.css +78 -25
- package/dist/tokens/index.css +2 -0
- package/dist/tokens/responsive.css +160 -75
- package/dist/tokens/spacing.css +47 -28
- package/dist/tokens/theme-light.css +124 -38
- package/dist/tokens/typography.css +20 -13
- package/dist/vscode.css-custom-data.json +36 -1
- package/dist/vscode.html-custom-data.json +67 -2
- package/dist/vue/index.d.ts +6 -0
- package/dist/vue/index.js +11 -8
- package/dist/vue/index.js.map +1 -1
- package/dist/web-types.json +190 -3
- package/package.json +13 -1
- package/dist/chunks/floating-B7_Dahpn.js +0 -54
- package/dist/chunks/floating-B7_Dahpn.js.map +0 -1
- package/dist/chunks/index-STEEvEP7.js.map +0 -1
- package/dist/chunks/kt-calendar-B_hFdD9V.js +0 -640
- package/dist/chunks/kt-calendar-B_hFdD9V.js.map +0 -1
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { nothing, type PropertyValues, type TemplateResult } from 'lit';
|
|
2
|
+
import { KtElement } from './kt-element.js';
|
|
3
|
+
import { type UsableInternals } from './form-control.js';
|
|
4
|
+
import { type SegmentSpec } from './segments.js';
|
|
5
|
+
/** One part of a segmented field: a number typed digit by digit, or one of a few words. */
|
|
6
|
+
export interface Segment {
|
|
7
|
+
readonly key: string;
|
|
8
|
+
readonly label: string;
|
|
9
|
+
/** What the segment shows while empty: "dd", "--". */
|
|
10
|
+
readonly placeholder: string;
|
|
11
|
+
/** A number, typed and stepped within these bounds… */
|
|
12
|
+
readonly spec?: SegmentSpec;
|
|
13
|
+
/** …stepped by this much with the arrows… */
|
|
14
|
+
readonly step?: number;
|
|
15
|
+
/** …or one of these words, picked by its first letter: AM, PM. */
|
|
16
|
+
readonly choices?: readonly string[];
|
|
17
|
+
}
|
|
18
|
+
/** What a segmented field is made of: segments, and the characters between them. */
|
|
19
|
+
export type FieldItem = Segment | {
|
|
20
|
+
readonly literal: string;
|
|
21
|
+
};
|
|
22
|
+
export type KtSegmentedFieldSize = 'small' | 'medium' | 'large';
|
|
23
|
+
/**
|
|
24
|
+
* The common ground of `<kt-date-input>` and `<kt-time-input>`: a field of
|
|
25
|
+
* segments — a day, a month, an hour — each its own spinbutton, typed digit by
|
|
26
|
+
* digit, stepped with the arrows, the focus moving on as each fills.
|
|
27
|
+
*
|
|
28
|
+
* Each segment is `contenteditable`, so a phone shows its number pad, but the
|
|
29
|
+
* text never changes behind the field's back: every keystroke and every input
|
|
30
|
+
* event is turned into the segment's new value here. A subclass says what its
|
|
31
|
+
* segments are, how they read into a value, and how a value fills them.
|
|
32
|
+
*/
|
|
33
|
+
export declare abstract class KtSegmentedField extends KtElement {
|
|
34
|
+
static readonly formAssociated = true;
|
|
35
|
+
static styles: import("lit").CSSResultGroup[];
|
|
36
|
+
protected internals: UsableInternals | null;
|
|
37
|
+
private defaultValue;
|
|
38
|
+
/** Set while the field writes its own value, which should not refill it. */
|
|
39
|
+
private committing;
|
|
40
|
+
protected readonly errorId: string;
|
|
41
|
+
/** What each segment holds, by key: digits, or the index of a choice. */
|
|
42
|
+
protected texts: Record<string, string>;
|
|
43
|
+
/** Why the segments do not make a value, when they are all filled. */
|
|
44
|
+
protected typedError: string;
|
|
45
|
+
private focusedKey;
|
|
46
|
+
/** Disabled by an enclosing `<fieldset>`, which leaves `disabled` alone. */
|
|
47
|
+
private formDisabled;
|
|
48
|
+
value: string | null;
|
|
49
|
+
name: string;
|
|
50
|
+
/** Accessible name of the field, when no `<kt-label-input>` wraps it. */
|
|
51
|
+
label: string;
|
|
52
|
+
/** BCP 47 locale for the order and names of the segments. Empty: page, then browser. */
|
|
53
|
+
locale: string;
|
|
54
|
+
min: string;
|
|
55
|
+
max: string;
|
|
56
|
+
size: KtSegmentedFieldSize;
|
|
57
|
+
disabled: boolean;
|
|
58
|
+
required: boolean;
|
|
59
|
+
/** Error message. A non-empty value puts the field in its error state. */
|
|
60
|
+
error: string;
|
|
61
|
+
/** The segments, in order, with what goes between them. */
|
|
62
|
+
protected abstract items(): FieldItem[];
|
|
63
|
+
/** What each segment holds for a value. */
|
|
64
|
+
protected abstract fill(value: string | null): Record<string, string>;
|
|
65
|
+
/** The value the segments make — null until they all hold something — and why not, if not. */
|
|
66
|
+
protected abstract read(texts: Record<string, string>): {
|
|
67
|
+
value: string | null;
|
|
68
|
+
error: string;
|
|
69
|
+
};
|
|
70
|
+
/** The message of a required field left empty. */
|
|
71
|
+
protected abstract requiredMessage(): string;
|
|
72
|
+
/** Anything after the segments: a calendar button. */
|
|
73
|
+
protected renderAfter(): TemplateResult | typeof nothing;
|
|
74
|
+
/**
|
|
75
|
+
* What a segment left half-typed becomes when the focus leaves it — a
|
|
76
|
+
* two-digit year written out — or null to leave it as typed.
|
|
77
|
+
*/
|
|
78
|
+
protected completeOnBlur(_segment: Segment, _text: string): string | null;
|
|
79
|
+
/** Whether a popup belonging to the field is open, for the field's outline. */
|
|
80
|
+
protected get expanded(): boolean;
|
|
81
|
+
connectedCallback(): void;
|
|
82
|
+
willUpdate(changed: PropertyValues<this>): void;
|
|
83
|
+
formResetCallback(): void;
|
|
84
|
+
/**
|
|
85
|
+
* Called by the platform when the control's disabled state changes — its
|
|
86
|
+
* own `disabled`, or an ancestor `<fieldset disabled>` it cannot see.
|
|
87
|
+
*/
|
|
88
|
+
formDisabledCallback(disabled: boolean): void;
|
|
89
|
+
/** Called by the platform when the browser restores a session. */
|
|
90
|
+
formStateRestoreCallback(state: string | null): void;
|
|
91
|
+
/** Focuses the first segment. */
|
|
92
|
+
focus(options?: FocusOptions): void;
|
|
93
|
+
protected get inactive(): boolean;
|
|
94
|
+
protected get resolvedLocale(): string;
|
|
95
|
+
/** Sets a value chosen outside the segments — a day picked in a calendar. */
|
|
96
|
+
protected commitValue(value: string | null): void;
|
|
97
|
+
private setText;
|
|
98
|
+
private apply;
|
|
99
|
+
private segmentElements;
|
|
100
|
+
private focusSegment;
|
|
101
|
+
/** One key's effect on a segment; true when the key was the field's to handle. */
|
|
102
|
+
private applyKey;
|
|
103
|
+
private onKeyDown;
|
|
104
|
+
/**
|
|
105
|
+
* What a phone's keyboard sends: input events rather than key presses.
|
|
106
|
+
* The text is never left to the browser; each character goes through the
|
|
107
|
+
* same path as a key.
|
|
108
|
+
*/
|
|
109
|
+
private onBeforeInput;
|
|
110
|
+
/** A click on the field's padding or separators lands in its first empty segment. */
|
|
111
|
+
private onFieldClick;
|
|
112
|
+
private renderSegment;
|
|
113
|
+
render(): TemplateResult;
|
|
114
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The arithmetic of a segmented field — a day, a month, a year, an hour —
|
|
3
|
+
* each typed digit by digit and stepped with the arrows. Pure, so the two
|
|
4
|
+
* fields that share it, `<kt-date-input>` and `<kt-time-input>`, agree on
|
|
5
|
+
* every key.
|
|
6
|
+
*/
|
|
7
|
+
export interface SegmentSpec {
|
|
8
|
+
readonly min: number;
|
|
9
|
+
readonly max: number;
|
|
10
|
+
/** Digits when full: 2 for a day, 4 for a year. */
|
|
11
|
+
readonly length: number;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The segment's text once `digit` is typed, and whether the focus should move
|
|
15
|
+
* on. It moves on when the segment is full, or as soon as no further digit
|
|
16
|
+
* could follow — a day starting with 4 is the 4th. A digit that would
|
|
17
|
+
* overshoot the maximum, or one typed into a full segment, starts it over.
|
|
18
|
+
*/
|
|
19
|
+
export declare function typeDigit(current: string, digit: string, spec: SegmentSpec): {
|
|
20
|
+
text: string;
|
|
21
|
+
advance: boolean;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* The value an arrow press lands on: the next multiple of the step — counted
|
|
25
|
+
* from the minimum — in the direction of `by`, wrapping past either end. An
|
|
26
|
+
* empty segment starts from its first value going up, its last going down.
|
|
27
|
+
*/
|
|
28
|
+
export declare function stepSegment(value: number | null, by: number, spec: SegmentSpec): number;
|
|
29
|
+
/** A value written with the segment's leading zeros: 4 → "04". */
|
|
30
|
+
export declare function padSegment(value: number, spec: SegmentSpec): string;
|
|
@@ -49,6 +49,8 @@ export interface KtStrings {
|
|
|
49
49
|
searchCountry: string;
|
|
50
50
|
noCountry: string;
|
|
51
51
|
countryCode: (country: string | undefined) => string;
|
|
52
|
+
/** How many values a multi-select holds, for a screen reader. */
|
|
53
|
+
selectedCount: (count: number) => string;
|
|
52
54
|
dragAndDrop: string;
|
|
53
55
|
browseFiles: string;
|
|
54
56
|
recommendedSize: (size: string) => string;
|
|
@@ -71,6 +73,34 @@ export interface KtStrings {
|
|
|
71
73
|
/** A required checkbox left unchecked. */
|
|
72
74
|
checkRequired: string;
|
|
73
75
|
dateRequired: string;
|
|
76
|
+
/** A typed date that does not read as one; `example` is today, written the reader's way. */
|
|
77
|
+
dateInvalid: (example: string) => string;
|
|
78
|
+
/** A typed date outside the field's min and max. */
|
|
79
|
+
dateOutOfRange: string;
|
|
80
|
+
/** The date field's button that opens its calendar. */
|
|
81
|
+
openCalendar: string;
|
|
82
|
+
/** The date picker's ready-made periods, and the button for today. */
|
|
83
|
+
presetToday: string;
|
|
84
|
+
presetLast7Days: string;
|
|
85
|
+
presetLast30Days: string;
|
|
86
|
+
presetThisMonth: string;
|
|
87
|
+
presetLastMonth: string;
|
|
88
|
+
presetThisYear: string;
|
|
89
|
+
/** The segments of the date and time inputs: their names, then what an empty one shows. */
|
|
90
|
+
segmentDay: string;
|
|
91
|
+
segmentMonth: string;
|
|
92
|
+
segmentYear: string;
|
|
93
|
+
segmentHour: string;
|
|
94
|
+
segmentMinute: string;
|
|
95
|
+
segmentSecond: string;
|
|
96
|
+
segmentDayPeriod: string;
|
|
97
|
+
placeholderDay: string;
|
|
98
|
+
placeholderMonth: string;
|
|
99
|
+
placeholderYear: string;
|
|
100
|
+
placeholderTime: string;
|
|
101
|
+
/** A required time left empty, and one outside min and max. */
|
|
102
|
+
timeRequired: string;
|
|
103
|
+
timeOutOfRange: string;
|
|
74
104
|
/** A phone number typed with the prefix only dialled from inside the country. */
|
|
75
105
|
phoneTrunkPrefix: (prefix: string) => string;
|
|
76
106
|
openMenu: string;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reading a date someone typed, in their language.
|
|
3
|
+
*
|
|
4
|
+
* A field that only opens a calendar makes a date ten years away, or one
|
|
5
|
+
* already on paper, a chore. Typed, it is a second's work — if the field reads
|
|
6
|
+
* it the way the person writes it: day then month in London, month then day in
|
|
7
|
+
* New York, month names in their own words, the year left out when it is this
|
|
8
|
+
* one.
|
|
9
|
+
*/
|
|
10
|
+
import { type PlainDate } from './date.js';
|
|
11
|
+
/**
|
|
12
|
+
* How the language writes a date in numbers: the order of day, month and year,
|
|
13
|
+
* and what goes between them — `25/09/2026`, `09/25/2026`, `25.09.2026`.
|
|
14
|
+
*/
|
|
15
|
+
export declare function dateLayout(locale: string): {
|
|
16
|
+
order: ('day' | 'month' | 'year')[];
|
|
17
|
+
separator: string;
|
|
18
|
+
};
|
|
19
|
+
/** A typed year: two digits are this century or the last, whichever is nearer. */
|
|
20
|
+
export declare function typedYear(digits: string, reference: number): number | null;
|
|
21
|
+
/** A date typed in `locale`, or null when it does not read as one. */
|
|
22
|
+
export declare function parseTypedDate(text: string, locale: string, reference: PlainDate): PlainDate | null;
|
|
23
|
+
/**
|
|
24
|
+
* A period typed as two dates around a dash — "1/9 – 25/9/2026" — in order.
|
|
25
|
+
* A start typed without a year borrows the end's, the year before if that
|
|
26
|
+
* would put it after the end: "20/12 – 5/1/2027" starts in December 2026.
|
|
27
|
+
*/
|
|
28
|
+
export declare function parseTypedRange(text: string, locale: string, reference: PlainDate): {
|
|
29
|
+
start: PlainDate;
|
|
30
|
+
end: PlainDate;
|
|
31
|
+
} | null;
|
|
32
|
+
/** `reference` written in numbers the way `locale` writes a date — for a hint. */
|
|
33
|
+
export declare function exampleDate(locale: string, reference: PlainDate): string;
|
package/dist/react/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type EventName } from '@lit/react';
|
|
2
|
+
import type { KtOption } from '../internal/listbox.js';
|
|
2
3
|
import { KtAvatar as KtAvatarElement } from '../components/core/kt-avatar/kt-avatar.js';
|
|
3
4
|
import { KtBadge as KtBadgeElement } from '../components/core/kt-badge/kt-badge.js';
|
|
4
5
|
import { KtButton as KtButtonElement } from '../components/core/kt-button/kt-button.js';
|
|
@@ -9,15 +10,18 @@ import { KtIcon as KtIconElement } from '../components/core/kt-icon/kt-icon.js';
|
|
|
9
10
|
import { KtKbd as KtKbdElement } from '../components/core/kt-kbd/kt-kbd.js';
|
|
10
11
|
import { KtCheckbox as KtCheckboxElement } from '../components/forms/kt-checkbox/kt-checkbox.js';
|
|
11
12
|
import { KtCalendar as KtCalendarElement } from '../components/forms/kt-calendar/kt-calendar.js';
|
|
13
|
+
import { KtDateInput as KtDateInputElement } from '../components/forms/kt-date-input/kt-date-input.js';
|
|
12
14
|
import { KtDatePicker as KtDatePickerElement } from '../components/forms/kt-date-picker/kt-date-picker.js';
|
|
13
15
|
import { KtDragDrop as KtDragDropElement } from '../components/forms/kt-drag-drop/kt-drag-drop.js';
|
|
14
16
|
import { KtForm as KtFormElement } from '../components/forms/kt-form/kt-form.js';
|
|
15
17
|
import { KtInput as KtInputElement } from '../components/forms/kt-input/kt-input.js';
|
|
16
18
|
import { KtInputMenu as KtInputMenuElement } from '../components/forms/kt-input-menu/kt-input-menu.js';
|
|
19
|
+
import { KtMultiSelect as KtMultiSelectElement } from '../components/forms/kt-multi-select/kt-multi-select.js';
|
|
17
20
|
import { KtLabelInput as KtLabelInputElement } from '../components/forms/kt-label-input/kt-label-input.js';
|
|
18
21
|
import { KtRadio as KtRadioElement, KtRadioGroup as KtRadioGroupElement } from '../components/forms/kt-radio-group/kt-radio-group.js';
|
|
19
22
|
import { KtSelect as KtSelectElement } from '../components/forms/kt-select/kt-select.js';
|
|
20
23
|
import { KtTextarea as KtTextareaElement } from '../components/forms/kt-textarea/kt-textarea.js';
|
|
24
|
+
import { KtTimeInput as KtTimeInputElement } from '../components/forms/kt-time-input/kt-time-input.js';
|
|
21
25
|
import { KtToggle as KtToggleElement } from '../components/forms/kt-toggle/kt-toggle.js';
|
|
22
26
|
import { KtBreadcrumb as KtBreadcrumbElement } from '../components/navigation/kt-breadcrumb/kt-breadcrumb.js';
|
|
23
27
|
import { KtPageHeader as KtPageHeaderElement } from '../components/navigation/kt-page-header/kt-page-header.js';
|
|
@@ -103,6 +107,16 @@ export declare const KtCalendar: import("@lit/react").ReactWebComponent<KtCalend
|
|
|
103
107
|
value: string;
|
|
104
108
|
}>;
|
|
105
109
|
}>;
|
|
110
|
+
export declare const KtDateInput: import("@lit/react").ReactWebComponent<KtDateInputElement, {
|
|
111
|
+
onKtChange: Kt<{
|
|
112
|
+
value: string | null;
|
|
113
|
+
}>;
|
|
114
|
+
}>;
|
|
115
|
+
export declare const KtTimeInput: import("@lit/react").ReactWebComponent<KtTimeInputElement, {
|
|
116
|
+
onKtChange: Kt<{
|
|
117
|
+
value: string | null;
|
|
118
|
+
}>;
|
|
119
|
+
}>;
|
|
106
120
|
export declare const KtDatePicker: import("@lit/react").ReactWebComponent<KtDatePickerElement, {
|
|
107
121
|
onKtChange: Kt<{
|
|
108
122
|
value: string | null;
|
|
@@ -132,6 +146,15 @@ export declare const KtInputMenu: import("@lit/react").ReactWebComponent<KtInput
|
|
|
132
146
|
query: string;
|
|
133
147
|
}>;
|
|
134
148
|
}>;
|
|
149
|
+
export declare const KtMultiSelect: import("@lit/react").ReactWebComponent<KtMultiSelectElement, {
|
|
150
|
+
onKtChange: Kt<{
|
|
151
|
+
value: (string | number)[];
|
|
152
|
+
options: KtOption[];
|
|
153
|
+
}>;
|
|
154
|
+
onKtFilter: Kt<{
|
|
155
|
+
query: string;
|
|
156
|
+
}>;
|
|
157
|
+
}>;
|
|
135
158
|
export declare const KtDragDrop: import("@lit/react").ReactWebComponent<KtDragDropElement, {
|
|
136
159
|
onKtFilesChange: Kt<{
|
|
137
160
|
files: File[];
|