@synopackageland/ui 0.20.2 → 0.20.4
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/CHANGELOG.md +26 -0
- package/LICENSES/ux-foundation.md +83 -0
- package/LICENSES/ux-grid-baserow.md +35 -0
- package/LICENSES/ux-grid-teable.md +48 -0
- package/README.md +3 -0
- package/dist/cli.js +0 -0
- package/dist/components/app/app-layout/AppLayout.vue.d.ts +31 -4
- package/dist/components/app/app-root/AppRoot.vue.d.ts +9 -0
- package/dist/components/app/aside-panel/AsidePanel.vue.d.ts +69 -0
- package/dist/components/app/aside-panel/asidePreference.d.ts +28 -0
- package/dist/components/composite/adaptive-panel/AdaptivePanel.vue.d.ts +61 -0
- package/dist/components/composite/connection-topology/ConnectionTopology.vue.d.ts +1 -1
- package/dist/components/composite/data-grid/DataGrid.vue.d.ts +3 -2
- package/dist/components/composite/data-grid/viewState.d.ts +2 -2
- package/dist/components/composite/file-picker/FilePicker.vue.d.ts +1 -1
- package/dist/components/composite/mention-list/MentionList.vue.d.ts +2 -2
- package/dist/components/composite/overflow-toolbar/OverflowToolbar.vue.d.ts +2 -2
- package/dist/components/composite/record-panel/RecordPanel.vue.d.ts +77 -0
- package/dist/components/composite/record-panel/recordPanelWidth.d.ts +54 -0
- package/dist/components/composite/summary-card/SummaryCard.vue.d.ts +1 -1
- package/dist/components/composite/tag-editor/TagEditor.vue.d.ts +2 -2
- package/dist/components/composite/tree-view/TreeView.vue.d.ts +1 -1
- package/dist/components/composite/wizard/Wizard.vue.d.ts +2 -2
- package/dist/components/composite/wizard/WizardDialog.vue.d.ts +2 -2
- package/dist/components/containers/card/Card.vue.d.ts +1 -1
- package/dist/components/containers/card/CardField.vue.d.ts +26 -0
- package/dist/components/containers/card-grid/CardCover.vue.d.ts +16 -0
- package/dist/components/containers/card-grid/CardGrid.vue.d.ts +1 -1
- package/dist/components/containers/card-grid/VirtualCardGrid.vue.d.ts +71 -0
- package/dist/components/containers/expandable-item/ExpandableItem.vue.d.ts +1 -1
- package/dist/components/containers/fieldset/Fieldset.vue.d.ts +1 -1
- package/dist/components/containers/list-detail/ListDetail.vue.d.ts +1 -1
- package/dist/components/containers/split-pane/SplitPane.vue.d.ts +1 -1
- package/dist/components/feedback/notification/Notification.vue.d.ts +1 -1
- package/dist/components/feedback/notification/NotificationProvider.vue.d.ts +1 -1
- package/dist/components/primitives/breadcrumb/Breadcrumb.vue.d.ts +2 -2
- package/dist/components/primitives/context-menu/ContextMenu.vue.d.ts +3 -0
- package/dist/components/primitives/context-menu/ContextMenuItems.vue.d.ts +4 -5
- package/dist/components/primitives/dialog/Dialog.vue.d.ts +2 -2
- package/dist/components/primitives/dropdown-menu/DropdownMenu.vue.d.ts +4 -0
- package/dist/components/primitives/dropdown-menu/DropdownMenuItems.vue.d.ts +6 -3
- package/dist/components/primitives/popover/Popover.vue.d.ts +10 -2
- package/dist/components/primitives/popover/floating.d.ts +27 -0
- package/dist/components/primitives/popover/overlay.d.ts +36 -0
- package/dist/components/primitives/segment-control/SegmentControl.vue.d.ts +4 -1
- package/dist/components/primitives/segment-control/context.d.ts +3 -0
- package/dist/components/primitives/select/Select.vue.d.ts +4 -0
- package/dist/components/primitives/select/internal/ComboboxField.vue.d.ts +1 -0
- package/dist/components/primitives/select/internal/types.d.ts +2 -0
- package/dist/components/primitives/skeleton/SectionSkeleton.vue.d.ts +25 -4
- package/dist/components/primitives/skeleton/Skeleton.vue.d.ts +3 -0
- package/dist/components/primitives/tag/Tag.vue.d.ts +2 -2
- package/dist/components/primitives/toast/ToastProvider.vue.d.ts +0 -2
- package/dist/components/primitives/toast/toast.d.ts +21 -1
- package/dist/components/primitives/tooltip/Tooltip.vue.d.ts +8 -3
- package/dist/components/primitives/tooltip/tooltipStyle.d.ts +11 -1
- package/dist/composables/backDismiss.d.ts +19 -0
- package/dist/composables/phone.d.ts +8 -0
- package/dist/composables/softKeyboard.d.ts +26 -4
- package/dist/composables/visualViewport.d.ts +31 -0
- package/dist/dnd/autoScroll.d.ts +57 -0
- package/dist/dnd/dragKit.d.ts +111 -0
- package/dist/dnd/index.d.ts +4 -0
- package/dist/dnd/layout.d.ts +57 -0
- package/dist/dnd/vue.d.ts +16 -0
- package/dist/feedback/StatusSlot.vue.d.ts +24 -0
- package/dist/feedback/showAfter.d.ts +15 -0
- package/dist/feedback/stackMotion.d.ts +13 -0
- package/dist/feedback/timing.d.ts +23 -0
- package/dist/grid/cells/draw.d.ts +57 -0
- package/dist/grid/cells/images.d.ts +5 -0
- package/dist/grid/cells/index.d.ts +7 -0
- package/dist/grid/cells/number.d.ts +5 -0
- package/dist/grid/cells/registry.d.ts +56 -0
- package/dist/grid/cells/renderers.d.ts +8 -0
- package/dist/grid/cells/status.d.ts +6 -0
- package/dist/grid/cells/types.d.ts +200 -0
- package/dist/grid/cells/use.d.ts +7 -0
- package/dist/grid/clipboard/copy.d.ts +17 -0
- package/dist/grid/clipboard/index.d.ts +4 -0
- package/dist/grid/clipboard/proposal.d.ts +35 -0
- package/dist/grid/clipboard/tsv.d.ts +14 -0
- package/dist/grid/clipboard/write.d.ts +21 -0
- package/dist/grid/contracts.d.ts +200 -0
- package/dist/grid/edit/cell-status.d.ts +33 -0
- package/dist/grid/edit/edit-session.d.ts +97 -0
- package/dist/grid/edit/use-grid-edit.d.ts +48 -0
- package/dist/grid/focus/editor-style.d.ts +67 -0
- package/dist/grid/host/GridHost.vue.d.ts +137 -0
- package/dist/grid/host/controller.d.ts +219 -0
- package/dist/grid/host/dom.d.ts +10 -0
- package/dist/grid/index.d.ts +8 -0
- package/dist/grid/range/block.d.ts +30 -0
- package/dist/grid/range/fill.d.ts +27 -0
- package/dist/grid/range/index.d.ts +2 -0
- package/dist/grid/theme.d.ts +61 -0
- package/dist/grid-core/auto-scroll.d.ts +67 -0
- package/dist/grid-core/column-resize.d.ts +43 -0
- package/dist/grid-core/config.d.ts +39 -0
- package/dist/grid-core/coordinate.d.ts +64 -0
- package/dist/grid-core/drag.d.ts +46 -0
- package/dist/grid-core/freeze.d.ts +11 -0
- package/dist/grid-core/index.d.ts +17 -0
- package/dist/grid-core/keyboard.d.ts +34 -0
- package/dist/grid-core/keys.d.ts +38 -0
- package/dist/grid-core/lru.d.ts +10 -0
- package/dist/grid-core/range.d.ts +28 -0
- package/dist/grid-core/region.d.ts +73 -0
- package/dist/grid-core/renderer/base.d.ts +92 -0
- package/dist/grid-core/renderer/layout.d.ts +129 -0
- package/dist/grid-core/selection-controller.d.ts +62 -0
- package/dist/grid-core/selection.d.ts +35 -0
- package/dist/grid-core/theme.d.ts +81 -0
- package/dist/grid-core/types.d.ts +178 -0
- package/dist/grid.js +6173 -0
- package/dist/i18n/text.d.ts +6 -0
- package/dist/index.d.ts +32 -2
- package/dist/index.js +17662 -13637
- package/dist/interaction/editSession.d.ts +49 -0
- package/dist/interaction/focus.d.ts +28 -0
- package/dist/interaction/gesture.d.ts +49 -0
- package/dist/interaction/ime.d.ts +55 -0
- package/dist/interaction/index.d.ts +6 -0
- package/dist/interaction/outside.d.ts +40 -0
- package/dist/interaction/vue.d.ts +21 -0
- package/dist/json-ai-prompt.md +1 -1
- package/dist/json-preview/preview.js +8529 -7812
- package/dist/json.js +10 -10
- package/dist/lib/adaptiveLayout.d.ts +32 -2
- package/dist/lib/deviceViewport.d.ts +2 -1
- package/dist/lib/motion.d.ts +12 -0
- package/dist/reka-runtime.json +1 -1
- package/dist/theme.css +1 -1
- package/dist/themes/dsm7-embedded-theme.css +1 -1
- package/dist/themes/dsm7-embedded.css +1 -1
- package/dist/themes/dsm7.css +1 -1
- package/dist/virtual/cardHeight.d.ts +39 -0
- package/dist/virtual/galleryColumns.d.ts +11 -0
- package/dist/virtual/layoutMotion.d.ts +30 -0
- package/docs/adaptive-layout.md +137 -16
- package/docs/callout.md +22 -1
- package/docs/list-detail.md +54 -0
- package/docs/mobile-native.md +214 -0
- package/docs/release-checks.md +23 -0
- package/docs/theme-hooks.md +28 -7
- package/docs/ux-foundation.md +133 -0
- package/docs/ux-grid.md +217 -0
- package/package.json +94 -3
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license MIT
|
|
3
|
+
* The width rule (560 default, 320 minimum, 240 of the view kept beside the
|
|
4
|
+
* panel, the secondary column added on top and capped at the host) is ported
|
|
5
|
+
* from Teable's record side panel
|
|
6
|
+
* (packages/sdk/src/components/expand-record/Panel.tsx:20-26, 83-88 at
|
|
7
|
+
* f8be01fad).
|
|
8
|
+
*
|
|
9
|
+
* Copyright (c) 2023-2025 Teable, Inc.
|
|
10
|
+
*
|
|
11
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
12
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
13
|
+
* in the Software without restriction, including without limitation the rights
|
|
14
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
15
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
16
|
+
* furnished to do so, subject to the following conditions:
|
|
17
|
+
*
|
|
18
|
+
* The above copyright notice and this permission notice shall be included in all
|
|
19
|
+
* copies or substantial portions of the Software.
|
|
20
|
+
*
|
|
21
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
22
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
23
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
24
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
25
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
26
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
27
|
+
* SOFTWARE.
|
|
28
|
+
*/
|
|
29
|
+
export declare const RECORD_PANEL_DEFAULT_WIDTH = 560;
|
|
30
|
+
export declare const RECORD_PANEL_MIN_WIDTH = 320;
|
|
31
|
+
/** However wide the panel is dragged, this much of the view stays visible beside it. */
|
|
32
|
+
export declare const RECORD_PANEL_MIN_MAIN_WIDTH = 240;
|
|
33
|
+
/** The comments (or other secondary) column, added on the panel's far side. */
|
|
34
|
+
export declare const RECORD_PANEL_SECONDARY_WIDTH = 320;
|
|
35
|
+
/** Body padding switches from 24 to 48 at this body width (Teable `getBodyPadding`). */
|
|
36
|
+
export declare const RECORD_PANEL_WIDE_BODY = 640;
|
|
37
|
+
export interface RecordPanelBounds {
|
|
38
|
+
minWidth: number;
|
|
39
|
+
minMainWidth: number;
|
|
40
|
+
}
|
|
41
|
+
/** The widest the main column may be in a host; unbounded while the host is not measured. */
|
|
42
|
+
export declare function maxPanelWidth(hostWidth: number, bounds: RecordPanelBounds): number;
|
|
43
|
+
/** The main column's width: the stored width clamped to the host. */
|
|
44
|
+
export declare function clampPanelWidth(width: number, hostWidth: number, bounds: RecordPanelBounds): number;
|
|
45
|
+
/**
|
|
46
|
+
* True when the host cannot hold a docked panel with the view beside it, or is
|
|
47
|
+
* phone-narrow: the panel becomes a full-screen sheet. An unmeasured host
|
|
48
|
+
* (zero) stays docked.
|
|
49
|
+
*/
|
|
50
|
+
export declare function panelNeedsSheet(hostWidth: number, compactBelow: number, bounds: RecordPanelBounds): boolean;
|
|
51
|
+
/** 24 px below a 640 px body, 48 px from there. */
|
|
52
|
+
export declare function bodyPadding(bodyWidth: number): number;
|
|
53
|
+
export declare function readStoredWidth(key: string | undefined): number | undefined;
|
|
54
|
+
export declare function writeStoredWidth(key: string | undefined, width: number): void;
|
|
@@ -33,8 +33,8 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
33
33
|
disabled: boolean;
|
|
34
34
|
error: string;
|
|
35
35
|
figures: SummaryCardFigure[];
|
|
36
|
-
note: string;
|
|
37
36
|
state: string;
|
|
37
|
+
note: string;
|
|
38
38
|
stateTone: SummaryCardTone;
|
|
39
39
|
wide: boolean;
|
|
40
40
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
@@ -14,13 +14,13 @@ type __VLS_Props = {
|
|
|
14
14
|
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
15
15
|
error: (error: unknown) => any;
|
|
16
16
|
"update:modelValue": (value: string[]) => any;
|
|
17
|
-
open: () => any;
|
|
18
17
|
close: () => any;
|
|
18
|
+
open: () => any;
|
|
19
19
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
20
20
|
onError?: ((error: unknown) => any) | undefined;
|
|
21
21
|
"onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
|
|
22
|
-
onOpen?: (() => any) | undefined;
|
|
23
22
|
onClose?: (() => any) | undefined;
|
|
23
|
+
onOpen?: (() => any) | undefined;
|
|
24
24
|
}>, {
|
|
25
25
|
disabled: boolean;
|
|
26
26
|
modelValue: string[];
|
|
@@ -81,9 +81,9 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
|
|
|
81
81
|
onCollapse?: ((node: TreeNode) => any) | undefined;
|
|
82
82
|
}>, {
|
|
83
83
|
multiple: boolean;
|
|
84
|
+
expanded: string[];
|
|
84
85
|
checkedKeys: string[];
|
|
85
86
|
draggable: boolean | TreeViewDraggableConfig;
|
|
86
|
-
expanded: string[];
|
|
87
87
|
showIcons: boolean;
|
|
88
88
|
checkable: boolean;
|
|
89
89
|
defaultCheckedKeys: string[];
|
|
@@ -57,16 +57,16 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
|
|
|
57
57
|
cancel: typeof cancel;
|
|
58
58
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
59
59
|
cancel: () => any;
|
|
60
|
+
finished: () => any;
|
|
60
61
|
"update:activeStepKey": (key: string) => any;
|
|
61
62
|
"next-step": (change: WizardStepChange) => any;
|
|
62
63
|
"previous-step": (change: WizardStepChange) => any;
|
|
63
|
-
finished: () => any;
|
|
64
64
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
65
65
|
onCancel?: (() => any) | undefined;
|
|
66
|
+
onFinished?: (() => any) | undefined;
|
|
66
67
|
"onUpdate:activeStepKey"?: ((key: string) => any) | undefined;
|
|
67
68
|
"onNext-step"?: ((change: WizardStepChange) => any) | undefined;
|
|
68
69
|
"onPrevious-step"?: ((change: WizardStepChange) => any) | undefined;
|
|
69
|
-
onFinished?: (() => any) | undefined;
|
|
70
70
|
}>, {
|
|
71
71
|
footer: WizardFooterConfig;
|
|
72
72
|
fit: boolean;
|
|
@@ -23,12 +23,12 @@ type __VLS_Slots = {} & {
|
|
|
23
23
|
default?: (props: typeof __VLS_20) => any;
|
|
24
24
|
};
|
|
25
25
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
26
|
-
"update:open": (value: boolean) => any;
|
|
27
26
|
cancel: () => any;
|
|
27
|
+
"update:open": (value: boolean) => any;
|
|
28
28
|
finished: () => any;
|
|
29
29
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
30
|
-
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
31
30
|
onCancel?: (() => any) | undefined;
|
|
31
|
+
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
32
32
|
onFinished?: (() => any) | undefined;
|
|
33
33
|
}>, {
|
|
34
34
|
defaultOpen: boolean;
|
|
@@ -31,8 +31,8 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
31
31
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
32
32
|
"onUpdate:expanded"?: ((value: boolean) => any) | undefined;
|
|
33
33
|
}>, {
|
|
34
|
-
hasHeader: boolean;
|
|
35
34
|
expanded: boolean;
|
|
35
|
+
hasHeader: boolean;
|
|
36
36
|
expandable: boolean;
|
|
37
37
|
layoutType: "regular" | "compact";
|
|
38
38
|
footerAlign: "start" | "end" | "between";
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
/** The field name, translated by the caller. */
|
|
3
|
+
label: string;
|
|
4
|
+
/** Value-row height in px; the same number goes into `cardHeight()`. */
|
|
5
|
+
height?: number;
|
|
6
|
+
/** Shows a muted "-" in the value row, which keeps its height. */
|
|
7
|
+
empty?: boolean;
|
|
8
|
+
};
|
|
9
|
+
declare var __VLS_1: {}, __VLS_3: {};
|
|
10
|
+
type __VLS_Slots = {} & {
|
|
11
|
+
icon?: (props: typeof __VLS_1) => any;
|
|
12
|
+
} & {
|
|
13
|
+
default?: (props: typeof __VLS_3) => any;
|
|
14
|
+
};
|
|
15
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
16
|
+
height: number;
|
|
17
|
+
empty: boolean;
|
|
18
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
19
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
20
|
+
declare const _default: typeof __VLS_export;
|
|
21
|
+
export default _default;
|
|
22
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
23
|
+
new (): {
|
|
24
|
+
$slots: S;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
src?: string;
|
|
3
|
+
/** Translated by the caller; empty for a decorative cover. */
|
|
4
|
+
alt?: string;
|
|
5
|
+
/** The image's own size, so the browser knows its ratio before it loads. */
|
|
6
|
+
width?: number;
|
|
7
|
+
height?: number;
|
|
8
|
+
};
|
|
9
|
+
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
10
|
+
height: number;
|
|
11
|
+
width: number;
|
|
12
|
+
src: string;
|
|
13
|
+
alt: string;
|
|
14
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
15
|
+
declare const _default: typeof __VLS_export;
|
|
16
|
+
export default _default;
|
|
@@ -14,8 +14,8 @@ type __VLS_Slots = {} & {
|
|
|
14
14
|
default?: (props: typeof __VLS_1) => any;
|
|
15
15
|
};
|
|
16
16
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
17
|
-
gap: string;
|
|
18
17
|
minItemWidth: string;
|
|
18
|
+
gap: string;
|
|
19
19
|
fit: "stretch" | "fill";
|
|
20
20
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
21
21
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { ContextMenuEntry } from '../../primitives/context-menu/types';
|
|
2
|
+
declare const __VLS_export: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
3
|
+
props: import('vue').PublicProps & __VLS_PrettifyLocal<{
|
|
4
|
+
/** All cards in the view, loaded or not; usually from a count read. */
|
|
5
|
+
count: number;
|
|
6
|
+
/** The card at `index`, or undefined while its window is not loaded yet. */
|
|
7
|
+
getItem: (index: number) => T | undefined;
|
|
8
|
+
itemKey: (item: T, index: number) => string | number;
|
|
9
|
+
/** Every card's height in px, from `cardHeight()`; cards are never measured. */
|
|
10
|
+
cardHeight: number;
|
|
11
|
+
/** Cover box height in px, reserved on every card and placeholder; 0 for none. */
|
|
12
|
+
cover?: number;
|
|
13
|
+
/** Accessible name of the list, translated by the caller. */
|
|
14
|
+
label?: string;
|
|
15
|
+
/** The card whose record is open; it keeps an accent ring. */
|
|
16
|
+
activeKey?: string | number;
|
|
17
|
+
selectedKeys?: ReadonlySet<string | number>;
|
|
18
|
+
/**
|
|
19
|
+
* Cards re-render only when their item, state or this value changes. Change
|
|
20
|
+
* it when what the slots draw changes for every card (fields, cover field).
|
|
21
|
+
*/
|
|
22
|
+
memoKey?: unknown;
|
|
23
|
+
/** Entries for the one shared context menu, built when it opens; none shows the browser's menu. */
|
|
24
|
+
menuItems?: (item: T, index: number) => ContextMenuEntry[];
|
|
25
|
+
/** Rows rendered above and below the visible ones. */
|
|
26
|
+
overscan?: number;
|
|
27
|
+
} & {
|
|
28
|
+
onRange?: ((start: number, end: number) => any) | undefined;
|
|
29
|
+
onOpen?: ((item: T, index: number) => any) | undefined;
|
|
30
|
+
onPick?: ((item: T, index: number, mode: "range" | "toggle") => any) | undefined;
|
|
31
|
+
"onMenu-select"?: ((key: string, item: T, index: number) => any) | undefined;
|
|
32
|
+
}> & (typeof globalThis extends {
|
|
33
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
34
|
+
} ? P : {});
|
|
35
|
+
expose: (exposed: import('vue').ShallowUnwrapRef<{
|
|
36
|
+
scrollToIndex: (index: number) => void;
|
|
37
|
+
focusCard: (index: number) => void;
|
|
38
|
+
columns: import('vue').Ref<number, number>;
|
|
39
|
+
}>) => void;
|
|
40
|
+
attrs: any;
|
|
41
|
+
slots: {
|
|
42
|
+
/** The card body under the cover, inset 8 by 12 px: a 20 px title line and CardFields, stacked 8 px apart. */
|
|
43
|
+
default?: (props: {
|
|
44
|
+
item: T;
|
|
45
|
+
index: number;
|
|
46
|
+
}) => unknown;
|
|
47
|
+
cover?: (props: {
|
|
48
|
+
item: T;
|
|
49
|
+
index: number;
|
|
50
|
+
}) => unknown;
|
|
51
|
+
/** Actions over the card's top end, shown on hover and focus without taking space; always shown without hover (touch). */
|
|
52
|
+
actions?: (props: {
|
|
53
|
+
item: T;
|
|
54
|
+
index: number;
|
|
55
|
+
}) => unknown;
|
|
56
|
+
/** Inside the frame of a card that is not loaded yet. */
|
|
57
|
+
placeholder?: (props: {
|
|
58
|
+
index: number;
|
|
59
|
+
}) => unknown;
|
|
60
|
+
};
|
|
61
|
+
emit: ((evt: "range", start: number, end: number) => void) & ((evt: "open", item: T, index: number) => void) & ((evt: "pick", item: T, index: number, mode: "range" | "toggle") => void) & ((evt: "menu-select", key: string, item: T, index: number) => void);
|
|
62
|
+
}>) => import('vue').VNode & {
|
|
63
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
64
|
+
};
|
|
65
|
+
declare const _default: typeof __VLS_export;
|
|
66
|
+
export default _default;
|
|
67
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
68
|
+
[K in keyof T]: T[K];
|
|
69
|
+
} : {
|
|
70
|
+
[K in keyof T as K]: T[K];
|
|
71
|
+
}) & {};
|
|
@@ -64,8 +64,8 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
64
64
|
"onDrag-over"?: ((event: DragEvent) => any) | undefined;
|
|
65
65
|
"onDrag-end"?: ((event: DragEvent) => any) | undefined;
|
|
66
66
|
}>, {
|
|
67
|
-
draggable: boolean;
|
|
68
67
|
expanded: boolean;
|
|
68
|
+
draggable: boolean;
|
|
69
69
|
selectable: boolean;
|
|
70
70
|
expandable: boolean;
|
|
71
71
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
@@ -48,8 +48,8 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
|
|
|
48
48
|
"onHeader-click"?: (() => any) | undefined;
|
|
49
49
|
"onHeader-dblclick"?: (() => any) | undefined;
|
|
50
50
|
}>, {
|
|
51
|
-
collapsible: boolean;
|
|
52
51
|
collapsed: boolean;
|
|
52
|
+
collapsible: boolean;
|
|
53
53
|
collapseTriggerEvent: FieldsetCollapseTrigger;
|
|
54
54
|
collapseIcon: "left" | "none";
|
|
55
55
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
@@ -37,9 +37,9 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
|
|
|
37
37
|
title: string;
|
|
38
38
|
open: boolean;
|
|
39
39
|
minWidth: number;
|
|
40
|
-
closable: boolean;
|
|
41
40
|
storageKey: string;
|
|
42
41
|
defaultWidth: number;
|
|
42
|
+
closable: boolean;
|
|
43
43
|
listMinWidth: number;
|
|
44
44
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
45
45
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -34,10 +34,10 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
|
|
|
34
34
|
modelValue: number;
|
|
35
35
|
orientation: "horizontal" | "vertical";
|
|
36
36
|
gap: number;
|
|
37
|
+
storageKey: string;
|
|
37
38
|
defaultSize: number;
|
|
38
39
|
minStart: number;
|
|
39
40
|
minEnd: number;
|
|
40
|
-
storageKey: string;
|
|
41
41
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
42
42
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
43
43
|
declare const _default: typeof __VLS_export;
|
|
@@ -31,8 +31,8 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
31
31
|
onConfirm?: (() => any) | undefined;
|
|
32
32
|
}>, {
|
|
33
33
|
title: string | false;
|
|
34
|
-
open: boolean;
|
|
35
34
|
cancel: NotificationAction;
|
|
35
|
+
open: boolean;
|
|
36
36
|
content: string | false;
|
|
37
37
|
tone: NotificationTone;
|
|
38
38
|
duration: number | false;
|
|
@@ -19,9 +19,9 @@ type __VLS_Slots = {} & {
|
|
|
19
19
|
};
|
|
20
20
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, NotificationController, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
21
21
|
duration: number;
|
|
22
|
+
gap: number;
|
|
22
23
|
alignment: NotificationAlignment;
|
|
23
24
|
stackSize: number | false;
|
|
24
|
-
gap: number;
|
|
25
25
|
stackGap: number;
|
|
26
26
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
27
27
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -12,12 +12,12 @@ type __VLS_Props = {
|
|
|
12
12
|
collapsedLabel?: string;
|
|
13
13
|
};
|
|
14
14
|
declare function selectItem(item: BreadcrumbItem): void;
|
|
15
|
-
declare var
|
|
15
|
+
declare var __VLS_88: {
|
|
16
16
|
items: BreadcrumbActionItem[];
|
|
17
17
|
select: typeof selectItem;
|
|
18
18
|
};
|
|
19
19
|
type __VLS_Slots = {} & {
|
|
20
|
-
'action-menu-dropdown'?: (props: typeof
|
|
20
|
+
'action-menu-dropdown'?: (props: typeof __VLS_88) => any;
|
|
21
21
|
};
|
|
22
22
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
23
23
|
clickItem: (item: BreadcrumbItem) => any;
|
|
@@ -2,6 +2,8 @@ import { ContextMenuEntry } from './types';
|
|
|
2
2
|
type __VLS_Props = {
|
|
3
3
|
items: ContextMenuEntry[];
|
|
4
4
|
disabled?: boolean;
|
|
5
|
+
/** How long a touch press is held before the menu opens, in ms; Reka's 700 when unset. */
|
|
6
|
+
pressOpenDelay?: number;
|
|
5
7
|
};
|
|
6
8
|
declare var __VLS_18: {};
|
|
7
9
|
type __VLS_Slots = {} & {
|
|
@@ -15,6 +17,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
15
17
|
onToggle?: ((key: string, checked: boolean) => any) | undefined;
|
|
16
18
|
}>, {
|
|
17
19
|
disabled: boolean;
|
|
20
|
+
pressOpenDelay: number;
|
|
18
21
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
19
22
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
20
23
|
declare const _default: typeof __VLS_export;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { useFloating } from '../popover/floating';
|
|
1
2
|
import { ContextMenuEntry } from './types';
|
|
2
3
|
type __VLS_Props = {
|
|
3
4
|
items: ContextMenuEntry[];
|
|
4
|
-
/**
|
|
5
|
-
|
|
5
|
+
/** The parent menu's shared placement preset, including keyboard and safe-area padding. */
|
|
6
|
+
floating: ReturnType<typeof useFloating>['value'];
|
|
6
7
|
};
|
|
7
8
|
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
8
9
|
select: (key: string) => any;
|
|
@@ -10,8 +11,6 @@ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {
|
|
|
10
11
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
11
12
|
onSelect?: ((key: string) => any) | undefined;
|
|
12
13
|
onToggle?: ((key: string, checked: boolean) => any) | undefined;
|
|
13
|
-
}>, {
|
|
14
|
-
collisionBoundary: HTMLElement | HTMLElement[];
|
|
15
|
-
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
16
15
|
declare const _default: typeof __VLS_export;
|
|
17
16
|
export default _default;
|
|
@@ -55,12 +55,12 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
55
55
|
onCloseAutoFocus?: ((event: Event) => any) | undefined;
|
|
56
56
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
57
57
|
}>, {
|
|
58
|
+
flush: boolean;
|
|
58
59
|
defaultOpen: boolean;
|
|
59
60
|
open: boolean;
|
|
60
|
-
|
|
61
|
+
closeOnOutside: boolean;
|
|
61
62
|
showClose: boolean;
|
|
62
63
|
headerDivider: boolean;
|
|
63
|
-
closeOnOutside: boolean;
|
|
64
64
|
scrim: "dim" | "light" | "none";
|
|
65
65
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
66
66
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { OverlayMotion } from '../popover/overlay';
|
|
1
2
|
import { DropdownMenuEntry } from './types';
|
|
2
3
|
export type { DropdownMenuEntry } from './types';
|
|
3
4
|
type __VLS_Props = {
|
|
@@ -13,6 +14,8 @@ type __VLS_Props = {
|
|
|
13
14
|
radioValues?: Record<string, string>;
|
|
14
15
|
/** Mark of the selected radio entry: a filled dot (default) or a check. */
|
|
15
16
|
radioIndicator?: 'dot' | 'check';
|
|
17
|
+
/** `none` drops the open and close motion (a grid editor's menu); inherits `provideOverlayMotion`. */
|
|
18
|
+
motion?: OverlayMotion;
|
|
16
19
|
};
|
|
17
20
|
declare var __VLS_16: {};
|
|
18
21
|
type __VLS_Slots = {} & {
|
|
@@ -37,6 +40,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
37
40
|
}>, {
|
|
38
41
|
align: "start" | "center" | "end";
|
|
39
42
|
open: boolean;
|
|
43
|
+
motion: OverlayMotion;
|
|
40
44
|
radioIndicator: "dot" | "check";
|
|
41
45
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
42
46
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
+
import { useFloating } from '../popover/floating';
|
|
1
2
|
import { DropdownMenuEntry } from './types';
|
|
2
3
|
type __VLS_Props = {
|
|
3
4
|
items: DropdownMenuEntry[];
|
|
4
5
|
checkedKeys?: string[];
|
|
5
6
|
radioValues?: Record<string, string>;
|
|
6
|
-
/**
|
|
7
|
-
|
|
7
|
+
/** The parent menu's shared placement preset, including keyboard and safe-area padding. */
|
|
8
|
+
floating: ReturnType<typeof useFloating>['value'];
|
|
8
9
|
/** Mark of the selected radio entry: a filled dot (default) or a check. */
|
|
9
10
|
radioIndicator?: 'dot' | 'check';
|
|
11
|
+
/** The open menu's motion, so a submenu moves (or not) like it. */
|
|
12
|
+
motion?: 'auto' | 'none';
|
|
10
13
|
};
|
|
11
14
|
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
12
15
|
select: (key: string) => any;
|
|
@@ -17,7 +20,7 @@ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {
|
|
|
17
20
|
onRadio?: ((value: string, key: string, group: string) => any) | undefined;
|
|
18
21
|
onToggle?: ((key: string, checked: boolean) => any) | undefined;
|
|
19
22
|
}>, {
|
|
20
|
-
|
|
23
|
+
motion: "auto" | "none";
|
|
21
24
|
checkedKeys: string[];
|
|
22
25
|
radioValues: Record<string, string>;
|
|
23
26
|
radioIndicator: "dot" | "check";
|
|
@@ -1,25 +1,33 @@
|
|
|
1
|
+
import { OverlayMotion } from './overlay';
|
|
1
2
|
type __VLS_Props = {
|
|
2
3
|
/** Controlled open state (`v-model:open`), so the caller can close it after a pick or open it from elsewhere. */
|
|
3
4
|
open?: boolean;
|
|
4
5
|
side?: 'top' | 'right' | 'bottom' | 'left';
|
|
5
6
|
align?: 'start' | 'center' | 'end';
|
|
6
7
|
width?: string;
|
|
8
|
+
/** `none` drops the open and close motion (a grid editor's list); inherits `provideOverlayMotion`. */
|
|
9
|
+
motion?: OverlayMotion;
|
|
7
10
|
};
|
|
8
|
-
declare var __VLS_16: {},
|
|
11
|
+
declare var __VLS_16: {}, __VLS_34: {};
|
|
9
12
|
type __VLS_Slots = {} & {
|
|
10
13
|
trigger?: (props: typeof __VLS_16) => any;
|
|
11
14
|
} & {
|
|
12
|
-
default?: (props: typeof
|
|
15
|
+
default?: (props: typeof __VLS_34) => any;
|
|
13
16
|
};
|
|
14
17
|
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
18
|
+
openAutoFocus: (event: Event) => any;
|
|
19
|
+
closeAutoFocus: (event: Event) => any;
|
|
15
20
|
"update:open": (value: boolean) => any;
|
|
16
21
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
22
|
+
onOpenAutoFocus?: ((event: Event) => any) | undefined;
|
|
23
|
+
onCloseAutoFocus?: ((event: Event) => any) | undefined;
|
|
17
24
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
18
25
|
}>, {
|
|
19
26
|
width: string;
|
|
20
27
|
side: "top" | "right" | "bottom" | "left";
|
|
21
28
|
align: "start" | "center" | "end";
|
|
22
29
|
open: boolean;
|
|
30
|
+
motion: OverlayMotion;
|
|
23
31
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
24
32
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
25
33
|
declare const _default: typeof __VLS_export;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { MaybeRefOrGetter } from 'vue';
|
|
2
|
+
/** Room kept between a popup and the edge of its boundary. */
|
|
3
|
+
export declare const FLOATING_GAP = 8;
|
|
4
|
+
/** The largest a popup may be: the room floating-ui found next to its anchor. */
|
|
5
|
+
export declare const FLOATING_SIZE_CLASS = "max-w-[var(--reka-popper-available-width)] max-h-[var(--reka-popper-available-height)]";
|
|
6
|
+
export interface FloatingPadding {
|
|
7
|
+
top: number;
|
|
8
|
+
right: number;
|
|
9
|
+
bottom: number;
|
|
10
|
+
left: number;
|
|
11
|
+
}
|
|
12
|
+
/** 8px from each edge plus the safe area, and the soft keyboard at the bottom, as seen from `anchor`. */
|
|
13
|
+
export declare function floatingPadding(anchor: Element | null | undefined): FloatingPadding;
|
|
14
|
+
/**
|
|
15
|
+
* The collision props for a popup anchored at `anchor`, while `open`. The
|
|
16
|
+
* padding is read when it opens and again when the visual viewport changes
|
|
17
|
+
* (the keyboard opens or closes, the phone turns).
|
|
18
|
+
*/
|
|
19
|
+
export declare function useFloating(anchor: MaybeRefOrGetter<HTMLElement | null | undefined>, open: () => boolean): import('vue').ComputedRef<{
|
|
20
|
+
avoidCollisions: boolean;
|
|
21
|
+
collisionBoundary: HTMLElement | HTMLElement[];
|
|
22
|
+
collisionPadding: FloatingPadding;
|
|
23
|
+
sticky: "partial";
|
|
24
|
+
hideWhenDetached: boolean;
|
|
25
|
+
}>;
|
|
26
|
+
/** True on a touch-first device (no fine pointer), where a tap stands in for hover. */
|
|
27
|
+
export declare function coarsePointer(): boolean;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { MaybeRefOrGetter } from 'vue';
|
|
2
|
+
/** `none`: the surface appears and leaves on the same frame (a grid editor's select, date or person list). */
|
|
3
|
+
export type OverlayMotion = 'auto' | 'none';
|
|
4
|
+
/** Popups opened inside this component (a grid cell editor) take `motion` unless they set their own. */
|
|
5
|
+
export declare function provideOverlayMotion(motion: MaybeRefOrGetter<OverlayMotion>): void;
|
|
6
|
+
/** The motion a popup uses: its own prop, else the nearest scope, else `auto`. */
|
|
7
|
+
export declare function useOverlayMotion(own: () => OverlayMotion | undefined): () => OverlayMotion;
|
|
8
|
+
/**
|
|
9
|
+
* True while an input method owns Escape: during composition, or the first
|
|
10
|
+
* Escape right after it ends (Safari sends compositionend first). One guard
|
|
11
|
+
* per window, kept for the window's life.
|
|
12
|
+
*/
|
|
13
|
+
export declare function imeOwnsEscape(event: KeyboardEvent): boolean;
|
|
14
|
+
/** For a Reka `escapeKeyDown`: an Escape that cancels a composition never closes the surface. */
|
|
15
|
+
export declare function keepEscapeForIme(event: KeyboardEvent): void;
|
|
16
|
+
/**
|
|
17
|
+
* Joins an open popup to the interaction core's layer stack, so Escape closes
|
|
18
|
+
* only the topmost surface (a popup opened from a record panel or a grid
|
|
19
|
+
* editor closes before them) and a press inside the popup is never outside
|
|
20
|
+
* them. Returns the attributes for the popup's content element.
|
|
21
|
+
*/
|
|
22
|
+
export declare function useOverlayLayer(open: () => boolean, close: () => void): {
|
|
23
|
+
'data-ui-layer': string;
|
|
24
|
+
"data-ui-ignore-outside": string;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* For a Reka `pointerDownOutside` / `interactOutside`: a press or focus inside
|
|
28
|
+
* a portal marked `data-ui-ignore-outside` (a grid editor, a popup another
|
|
29
|
+
* surface opened) belongs to that surface and never dismisses this one.
|
|
30
|
+
*/
|
|
31
|
+
export declare function keepForIgnoredPortal(event: Event): void;
|
|
32
|
+
/**
|
|
33
|
+
* For a Reka `openAutoFocus`: with a coarse pointer the surface takes no
|
|
34
|
+
* initial focus (interaction-spec §14), so a soft keyboard does not cover it.
|
|
35
|
+
*/
|
|
36
|
+
export declare function skipAutoFocusOnTouch(event: Event): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SegmentVariant } from './context';
|
|
1
|
+
import { SegmentSize, SegmentVariant } from './context';
|
|
2
2
|
type __VLS_Props = {
|
|
3
3
|
/** Selected item value. */
|
|
4
4
|
modelValue?: string;
|
|
@@ -10,6 +10,8 @@ type __VLS_Props = {
|
|
|
10
10
|
disabled?: boolean;
|
|
11
11
|
/** Toolbar view switcher; use RadioGroup for form choices. `sheet` draws joined tabs on a rule. */
|
|
12
12
|
variant?: SegmentVariant;
|
|
13
|
+
/** `sm` draws a 32px track of 24px tabs (12px labels), the selected one raised on the surface, for a panel's surface switch. Only for `variant="segment"`. */
|
|
14
|
+
size?: SegmentSize;
|
|
13
15
|
};
|
|
14
16
|
declare var __VLS_1: {};
|
|
15
17
|
type __VLS_Slots = {} & {
|
|
@@ -22,6 +24,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {},
|
|
|
22
24
|
onChange?: ((value: string) => any) | undefined;
|
|
23
25
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
24
26
|
}>, {
|
|
27
|
+
size: SegmentSize;
|
|
25
28
|
variant: SegmentVariant;
|
|
26
29
|
disabled: boolean;
|
|
27
30
|
modelValue: string;
|
|
@@ -8,10 +8,13 @@ export type SegmentItemHandle = {
|
|
|
8
8
|
export type SegmentMove = 'previous' | 'next' | 'first' | 'last';
|
|
9
9
|
/** `segment`: a segmented control; `sheet`: joined sheet tabs on a rule, the selected one open to the content below. */
|
|
10
10
|
export type SegmentVariant = 'segment' | 'sheet';
|
|
11
|
+
/** `md`: the toolbar switch; `sm`: a 32px track of 24px tabs that switches the surfaces of a panel (an aside's tabs). */
|
|
12
|
+
export type SegmentSize = 'md' | 'sm';
|
|
11
13
|
export type SegmentControlContext = {
|
|
12
14
|
selected: Ref<string>;
|
|
13
15
|
groupDisabled: Ref<boolean>;
|
|
14
16
|
variant: Ref<SegmentVariant>;
|
|
17
|
+
size: Ref<SegmentSize>;
|
|
15
18
|
select: (value: string) => void;
|
|
16
19
|
register: (handle: SegmentItemHandle) => void;
|
|
17
20
|
unregister: (handle: SegmentItemHandle) => void;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SelectOptions, SelectSearch } from './internal/types';
|
|
2
|
+
import { OverlayMotion } from '../popover/overlay';
|
|
2
3
|
export type SelectOption = {
|
|
3
4
|
label: string;
|
|
4
5
|
value: string;
|
|
@@ -15,6 +16,8 @@ type __VLS_Props = {
|
|
|
15
16
|
searchPlaceholder?: string;
|
|
16
17
|
notFoundText?: string;
|
|
17
18
|
loadingText?: string;
|
|
19
|
+
/** `none` drops the list's open and close motion (a grid editor); inherits `provideOverlayMotion`. */
|
|
20
|
+
motion?: OverlayMotion;
|
|
18
21
|
};
|
|
19
22
|
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
20
23
|
"update:modelValue": (value: string) => any;
|
|
@@ -26,6 +29,7 @@ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {
|
|
|
26
29
|
options: SelectOptions;
|
|
27
30
|
minSearchChar: number;
|
|
28
31
|
caseSensitive: boolean;
|
|
32
|
+
motion: OverlayMotion;
|
|
29
33
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
30
34
|
declare const _default: typeof __VLS_export;
|
|
31
35
|
export default _default;
|
|
@@ -30,6 +30,7 @@ declare const __VLS_export: import('vue').DefineComponent<SelectFieldProps, {},
|
|
|
30
30
|
options: import('./types').SelectOptions;
|
|
31
31
|
minSearchChar: number;
|
|
32
32
|
caseSensitive: boolean;
|
|
33
|
+
motion: "auto" | "none";
|
|
33
34
|
multiple: boolean;
|
|
34
35
|
allowCreate: import('./types').SelectAllowCreate;
|
|
35
36
|
editable: boolean;
|