vue-dockable-desktop 1.0.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/CHANGELOG.md +60 -0
- package/LICENSE +21 -0
- package/README.md +169 -0
- package/dist/components/VddConfirm.vue.d.ts +19 -0
- package/dist/components/VddContextMenu.vue.d.ts +35 -0
- package/dist/components/VddDesktop.vue.d.ts +28 -0
- package/dist/components/VddDragGhost.vue.d.ts +3 -0
- package/dist/components/VddDropZones.vue.d.ts +6 -0
- package/dist/components/VddEdgeZones.vue.d.ts +3 -0
- package/dist/components/VddFloatingWidget.vue.d.ts +51 -0
- package/dist/components/VddFloatingWindow.vue.d.ts +12 -0
- package/dist/components/VddLeafGroup.vue.d.ts +7 -0
- package/dist/components/VddModalHost.vue.d.ts +9 -0
- package/dist/components/VddModals.vue.d.ts +3 -0
- package/dist/components/VddOverlayFrame.vue.d.ts +28 -0
- package/dist/components/VddPanelMount.vue.d.ts +8 -0
- package/dist/components/VddPanelOverlay.vue.d.ts +13 -0
- package/dist/components/VddPanelSlot.vue.d.ts +9 -0
- package/dist/components/VddPanelToolbar.vue.d.ts +26 -0
- package/dist/components/VddSecondarySidebar.vue.d.ts +16 -0
- package/dist/components/VddSidePanelHost.vue.d.ts +10 -0
- package/dist/components/VddSidePanels.vue.d.ts +12 -0
- package/dist/components/VddSidebar.vue.d.ts +54 -0
- package/dist/components/VddSidebarDrawer.vue.d.ts +51 -0
- package/dist/components/VddSidebarRail.vue.d.ts +22 -0
- package/dist/components/VddSidebarTabScope.vue.d.ts +22 -0
- package/dist/components/VddTaskbar.vue.d.ts +17 -0
- package/dist/components/VddTaskbarPreview.vue.d.ts +24 -0
- package/dist/components/VddToastIcon.vue.d.ts +8 -0
- package/dist/components/VddToastItem.vue.d.ts +18 -0
- package/dist/components/VddToasts.vue.d.ts +36 -0
- package/dist/components/VddToolbar.vue.d.ts +20 -0
- package/dist/components/VddToolbarButton.vue.d.ts +25 -0
- package/dist/components/VddToolbarCenter.vue.d.ts +13 -0
- package/dist/components/VddToolbarGroupButton.vue.d.ts +8 -0
- package/dist/components/VddToolbarItem.vue.d.ts +13 -0
- package/dist/components/VddToolbarSearch.vue.d.ts +27 -0
- package/dist/components/VddToolbarSeparator.vue.d.ts +3 -0
- package/dist/components/VddToolbarSpacer.vue.d.ts +3 -0
- package/dist/components/VddToolbarToggle.vue.d.ts +32 -0
- package/dist/components/VddWorkspaceGrid.vue.d.ts +8 -0
- package/dist/composables/useColorScheme.d.ts +19 -0
- package/dist/composables/useContextMenu.d.ts +29 -0
- package/dist/composables/useContributions.d.ts +48 -0
- package/dist/composables/useDragDock.d.ts +59 -0
- package/dist/composables/useOverlayHost.d.ts +30 -0
- package/dist/composables/useOverlays.d.ts +51 -0
- package/dist/composables/usePanel.d.ts +82 -0
- package/dist/composables/usePanelDom.d.ts +7 -0
- package/dist/composables/usePanelOverlay.d.ts +35 -0
- package/dist/composables/useSidebar.d.ts +15 -0
- package/dist/composables/useToolbar.d.ts +9 -0
- package/dist/composables/useWorkspace.d.ts +18 -0
- package/dist/core/anchorGeometry.d.ts +39 -0
- package/dist/core/contextMenu.d.ts +74 -0
- package/dist/core/contributions.d.ts +56 -0
- package/dist/core/dragResize.d.ts +67 -0
- package/dist/core/eventBus.d.ts +73 -0
- package/dist/core/layoutTree.d.ts +96 -0
- package/dist/core/messages.d.ts +117 -0
- package/dist/core/overlayState.d.ts +64 -0
- package/dist/core/overlays.d.ts +114 -0
- package/dist/core/panelDom.d.ts +79 -0
- package/dist/core/panelMenu.d.ts +45 -0
- package/dist/core/panelOverlay.d.ts +121 -0
- package/dist/core/registry.d.ts +61 -0
- package/dist/core/serializable.d.ts +26 -0
- package/dist/core/serialize.d.ts +32 -0
- package/dist/core/sidebarTypes.d.ts +102 -0
- package/dist/core/stretch.d.ts +47 -0
- package/dist/core/toast.d.ts +474 -0
- package/dist/core/toolbarState.d.ts +13 -0
- package/dist/core/toolbarTypes.d.ts +99 -0
- package/dist/core/workspace.d.ts +222 -0
- package/dist/index.cjs +5 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +64 -0
- package/dist/index.js +4851 -0
- package/dist/index.js.map +1 -0
- package/dist/styles.css +3944 -0
- package/dist/types.d.ts +145 -0
- package/package.json +102 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sidebar configuration shapes.
|
|
3
|
+
*
|
|
4
|
+
* `renderContent` is gone: content comes from a `#tab-<id>` slot or a `component` field
|
|
5
|
+
* (docs/decisions/0007-slots-over-render-props.md). Everything else keeps rdd's names.
|
|
6
|
+
*/
|
|
7
|
+
import type { Component, InjectionKey, Ref } from 'vue';
|
|
8
|
+
/** One tab in the activity bar. */
|
|
9
|
+
export interface SidebarTab {
|
|
10
|
+
id: string;
|
|
11
|
+
label: string;
|
|
12
|
+
/** Required unless `hidden` — a hidden tab renders no rail button, so it has no icon to show. */
|
|
13
|
+
icon?: Component;
|
|
14
|
+
/**
|
|
15
|
+
* Render no rail button, while the tab stays fully openable through `v-model:active-tab-id`
|
|
16
|
+
* or `useSidebar().openTab()`. For menu-driven panels with no permanent icon.
|
|
17
|
+
* @default false
|
|
18
|
+
*/
|
|
19
|
+
hidden?: boolean;
|
|
20
|
+
/** Mount as soon as the sidebar renders, not on first open. Implies `preserveState`. @default false */
|
|
21
|
+
eagerMount?: boolean;
|
|
22
|
+
/** Keep the content alive behind `display: none` when closed, instead of unmounting it. @default false */
|
|
23
|
+
preserveState?: boolean;
|
|
24
|
+
/** Content, when it comes from data rather than a slot. A `#tab-<id>` slot wins over this. */
|
|
25
|
+
component?: Component;
|
|
26
|
+
/** Props for `component`. */
|
|
27
|
+
props?: Record<string, unknown>;
|
|
28
|
+
}
|
|
29
|
+
/** A rail button that does not toggle the drawer — a hamburger, say. */
|
|
30
|
+
export interface SidebarActionButton {
|
|
31
|
+
/** Needed only inside an array, for the key. */
|
|
32
|
+
id?: string;
|
|
33
|
+
icon: Component;
|
|
34
|
+
/** Tooltip and accessible name. */
|
|
35
|
+
label: string;
|
|
36
|
+
onClick: () => void;
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
}
|
|
39
|
+
/** A rail entry the caller renders entirely themselves. */
|
|
40
|
+
export interface SidebarCustomEntry {
|
|
41
|
+
id?: string;
|
|
42
|
+
/** Rendered as-is, unwrapped, so the caller's own styling and behaviour are untouched. */
|
|
43
|
+
component: Component;
|
|
44
|
+
props?: Record<string, unknown>;
|
|
45
|
+
/** Marks this as a custom entry rather than a tab, since both carry `component`. */
|
|
46
|
+
custom: true;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* An entry in the header or footer area of the rail: a plain button, a caller-rendered
|
|
50
|
+
* component, or a real tab that behaves exactly like one from the main list.
|
|
51
|
+
*/
|
|
52
|
+
export type SidebarRailEntry = SidebarTab | SidebarActionButton | SidebarCustomEntry;
|
|
53
|
+
export declare const isCustomEntry: (entry: SidebarRailEntry) => entry is SidebarCustomEntry;
|
|
54
|
+
export declare const isTabEntry: (entry: SidebarRailEntry) => entry is SidebarTab;
|
|
55
|
+
export declare const isActionButton: (entry: SidebarRailEntry) => entry is SidebarActionButton;
|
|
56
|
+
/** Normalise the single-or-array shape both areas accept. */
|
|
57
|
+
export declare const toRailArray: (value: SidebarRailEntry | SidebarRailEntry[] | undefined) => SidebarRailEntry[];
|
|
58
|
+
/**
|
|
59
|
+
* `<VddSidebar>`'s props, declared here so `<VddSecondarySidebar>` can forward them with
|
|
60
|
+
* their types intact. Forwarding through `$attrs` alone works at runtime but throws the
|
|
61
|
+
* types away, which is most of the point of declaring them.
|
|
62
|
+
*
|
|
63
|
+
* The four two-way values — the open tab, visibility, strip visibility and width — are
|
|
64
|
+
* models rather than props, so they are not listed here.
|
|
65
|
+
*/
|
|
66
|
+
export interface SidebarProps {
|
|
67
|
+
/** Which edge the bar and drawer sit on. @default 'right' */
|
|
68
|
+
position?: 'left' | 'right';
|
|
69
|
+
tabs: SidebarTab[];
|
|
70
|
+
/** Entries above the tabs, in their own area. A single entry or an array. */
|
|
71
|
+
headerAction?: SidebarRailEntry | SidebarRailEntry[];
|
|
72
|
+
/** Entries pinned below the tabs. */
|
|
73
|
+
footerAction?: SidebarRailEntry | SidebarRailEntry[];
|
|
74
|
+
minWidth?: number;
|
|
75
|
+
maxWidth?: number;
|
|
76
|
+
/** Show an "X" in the drawer header. No effect once the default header is suppressed. @default false */
|
|
77
|
+
showCloseButton?: boolean;
|
|
78
|
+
/** Suppress the library's own drawer header for every tab. @default false */
|
|
79
|
+
hideDefaultHeader?: boolean;
|
|
80
|
+
/** @internal set by `<VddSecondarySidebar>`. */
|
|
81
|
+
isSecondary?: boolean;
|
|
82
|
+
}
|
|
83
|
+
/** What `useSidebar()` returns: control of the drawer from anywhere inside it. */
|
|
84
|
+
export interface SidebarContext {
|
|
85
|
+
openTab: (id: string) => void;
|
|
86
|
+
closeDrawer: () => void;
|
|
87
|
+
/** The open tab, or `null`. Reactive. */
|
|
88
|
+
activeTabId: Ref<string | null>;
|
|
89
|
+
position: 'left' | 'right';
|
|
90
|
+
/** True for a `<VddSecondarySidebar>`. */
|
|
91
|
+
isSecondary: boolean;
|
|
92
|
+
}
|
|
93
|
+
/** What `useSidebarTab()` returns: control scoped to the tab you are inside. */
|
|
94
|
+
export interface SidebarTabContext {
|
|
95
|
+
tabId: string;
|
|
96
|
+
open: () => void;
|
|
97
|
+
close: () => void;
|
|
98
|
+
/** Switch to another tab. */
|
|
99
|
+
openTab: (id: string) => void;
|
|
100
|
+
}
|
|
101
|
+
export declare const SIDEBAR_KEY: InjectionKey<SidebarContext>;
|
|
102
|
+
export declare const SIDEBAR_TAB_KEY: InjectionKey<SidebarTabContext>;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The stretch algebra for docked inner widgets.
|
|
3
|
+
*
|
|
4
|
+
* A docked widget normally pins one end of each axis and carries an explicit size. A
|
|
5
|
+
* *stretched* axis pins **both** ends and carries no size at all, so the widget tracks its
|
|
6
|
+
* panel as the panel resizes — with no ResizeObserver and no JavaScript, because CSS
|
|
7
|
+
* already does exactly this. "Full width" is not a width; it is a second pin.
|
|
8
|
+
*
|
|
9
|
+
* Pure functions over two values, so the nine placements (three inline states × three
|
|
10
|
+
* block states, minus the impossible) are testable without a DOM.
|
|
11
|
+
*/
|
|
12
|
+
import type { FloatAnchor } from '../types';
|
|
13
|
+
/** Which axes span the panel instead of carrying a size. */
|
|
14
|
+
export type Stretch = 'width' | 'height' | 'both';
|
|
15
|
+
/** Where a docked widget sits: its corner, plus which axes span. Reported as one unit
|
|
16
|
+
* because a single gesture can change both, and reporting separately would surface a
|
|
17
|
+
* state that is never valid. */
|
|
18
|
+
export interface PanelFloatPlacement {
|
|
19
|
+
anchor: FloatAnchor;
|
|
20
|
+
stretch: Stretch | null;
|
|
21
|
+
}
|
|
22
|
+
export declare const stretchesInline: (s: Stretch | null) => boolean;
|
|
23
|
+
export declare const stretchesBlock: (s: Stretch | null) => boolean;
|
|
24
|
+
/** Add one axis, keeping whatever was already stretched. */
|
|
25
|
+
export declare const addAxis: (s: Stretch | null, axis: "inline" | "block") => Stretch;
|
|
26
|
+
/** Drop one axis, keeping the other. */
|
|
27
|
+
export declare const releaseAxis: (s: Stretch | null, axis: "inline" | "block") => Stretch | null;
|
|
28
|
+
export declare const ANCHORS: readonly FloatAnchor[];
|
|
29
|
+
/**
|
|
30
|
+
* Which stacking buckets a placement occupies.
|
|
31
|
+
*
|
|
32
|
+
* The four corner buckets are a proxy for *"do these overlap on the inline axis?"* — two
|
|
33
|
+
* widgets in one corner overlap and stack; opposite corners sit side by side and do not. A
|
|
34
|
+
* full-width strip overlaps everything on its edge, so it belongs to **both** buckets of
|
|
35
|
+
* that edge and pushes whatever is stacked in either.
|
|
36
|
+
*
|
|
37
|
+
* A block-stretched widget spans the very axis stacking uses to separate siblings, so it
|
|
38
|
+
* cannot participate at all and occupies no bucket — z-order decides any overlap.
|
|
39
|
+
*
|
|
40
|
+
* Computing true inline overlap was considered and rejected: widths change continuously
|
|
41
|
+
* during a resize drag, so widgets would reshuffle mid-gesture.
|
|
42
|
+
*/
|
|
43
|
+
export declare const bucketsFor: (anchor: FloatAnchor, stretch: Stretch | null) => FloatAnchor[];
|
|
44
|
+
/** Replace the inline half of a corner, leaving the block half alone. */
|
|
45
|
+
export declare const withInlineHalf: (a: FloatAnchor, half: "left" | "right") => FloatAnchor;
|
|
46
|
+
/** Replace the block half of a corner, leaving the inline half alone. */
|
|
47
|
+
export declare const withBlockHalf: (a: FloatAnchor, half: "top" | "bottom") => FloatAnchor;
|
|
@@ -0,0 +1,474 @@
|
|
|
1
|
+
import type { Component } from 'vue';
|
|
2
|
+
export type ToastType = 'info' | 'success' | 'warning' | 'error';
|
|
3
|
+
export type ToastPosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
4
|
+
/** Per-toast options. Anything omitted falls back to the `<VddToasts>` defaults. */
|
|
5
|
+
export interface ToastOptions {
|
|
6
|
+
/** @default 'info' — set for you by the `toast.info`/`success`/… shorthands. */
|
|
7
|
+
type?: ToastType;
|
|
8
|
+
/** Auto-dismiss delay in ms. `0` never auto-dismisses. @default from the container */
|
|
9
|
+
duration?: number;
|
|
10
|
+
/** Supply to deduplicate: calling again with the same id updates that toast in place. */
|
|
11
|
+
id?: string;
|
|
12
|
+
/** @default from the container */
|
|
13
|
+
closable?: boolean;
|
|
14
|
+
/** Replaces the built-in type icon. */
|
|
15
|
+
icon?: Component;
|
|
16
|
+
/** Replaces the message string with a component. */
|
|
17
|
+
content?: Component;
|
|
18
|
+
/** Props for `content`. */
|
|
19
|
+
contentProps?: Record<string, unknown>;
|
|
20
|
+
/** Called on dismissal by timer, close button or `toast.dismiss()`. */
|
|
21
|
+
onClose?: () => void;
|
|
22
|
+
}
|
|
23
|
+
/** A toast's options with every default filled in. What an adapter receives. */
|
|
24
|
+
export interface ResolvedToastOptions extends Required<Pick<ToastOptions, 'id' | 'type' | 'duration' | 'closable'>> {
|
|
25
|
+
icon?: Component;
|
|
26
|
+
content?: Component;
|
|
27
|
+
contentProps?: Record<string, unknown>;
|
|
28
|
+
onClose?: () => void;
|
|
29
|
+
}
|
|
30
|
+
/** One toast in the store. */
|
|
31
|
+
export interface ToastRecord {
|
|
32
|
+
id: string;
|
|
33
|
+
message: string;
|
|
34
|
+
options: ToastOptions & {
|
|
35
|
+
id: string;
|
|
36
|
+
};
|
|
37
|
+
/** Set while the exit transition runs; an exiting toast no longer counts as visible. */
|
|
38
|
+
exiting: boolean;
|
|
39
|
+
/** Bumped whenever the toast is updated, so a watcher can restart its timer. */
|
|
40
|
+
revision: number;
|
|
41
|
+
}
|
|
42
|
+
/** Messages for `toast.promise()`. The settled forms may be functions of the value. */
|
|
43
|
+
export interface ToastPromiseMessages<T> {
|
|
44
|
+
pending: string;
|
|
45
|
+
success: string | ((result: T) => string);
|
|
46
|
+
error: string | ((error: unknown) => string);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Hand every `toast.*` call to another notification library instead.
|
|
50
|
+
*
|
|
51
|
+
* `component` is rendered by `<VddToasts>` in place of the built-in list; `null` means the
|
|
52
|
+
* adapter owns its own DOM and `<VddToasts>` renders nothing at all.
|
|
53
|
+
*/
|
|
54
|
+
export interface ToastAdapter {
|
|
55
|
+
show(id: string, message: string, options: ResolvedToastOptions): void;
|
|
56
|
+
update(id: string, message: string, patch: Partial<ResolvedToastOptions>): void;
|
|
57
|
+
/** With no id, dismiss everything. */
|
|
58
|
+
dismiss(id?: string): void;
|
|
59
|
+
component: Component | null;
|
|
60
|
+
}
|
|
61
|
+
/** The live queue. Exported for `<VddToasts>` and for tests; applications use `toast`. */
|
|
62
|
+
export declare const toastQueue: {
|
|
63
|
+
items: {
|
|
64
|
+
id: string;
|
|
65
|
+
message: string;
|
|
66
|
+
options: {
|
|
67
|
+
type?: ToastType
|
|
68
|
+
/** Auto-dismiss delay in ms. `0` never auto-dismisses. @default from the container */
|
|
69
|
+
| undefined;
|
|
70
|
+
duration?: number
|
|
71
|
+
/** Supply to deduplicate: calling again with the same id updates that toast in place. */
|
|
72
|
+
| undefined;
|
|
73
|
+
id: string;
|
|
74
|
+
closable?: boolean
|
|
75
|
+
/** Replaces the built-in type icon. */
|
|
76
|
+
| undefined;
|
|
77
|
+
icon?: import("vue").FunctionalComponent<any, {}, any, {}> | {
|
|
78
|
+
new (...args: any[]): any;
|
|
79
|
+
__isFragment?: never;
|
|
80
|
+
__isTeleport?: never;
|
|
81
|
+
__isSuspense?: never;
|
|
82
|
+
} | {
|
|
83
|
+
[x: string]: any;
|
|
84
|
+
setup?: ((this: void, props: import("@vue/shared").LooseRequired<any>, ctx: {
|
|
85
|
+
attrs: import("vue").Attrs;
|
|
86
|
+
slots: Readonly<{
|
|
87
|
+
[name: string]: import("vue").Slot<any> | undefined;
|
|
88
|
+
}>;
|
|
89
|
+
emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
|
|
90
|
+
expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed) => void;
|
|
91
|
+
}) => any) | undefined;
|
|
92
|
+
name?: string | undefined;
|
|
93
|
+
template?: string | object | undefined;
|
|
94
|
+
render?: Function | undefined;
|
|
95
|
+
components?: Record<string, Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, {}, any>> | undefined;
|
|
96
|
+
directives?: Record<string, import("vue").Directive<any, any, string, any>> | undefined;
|
|
97
|
+
inheritAttrs?: boolean | undefined;
|
|
98
|
+
emits?: any;
|
|
99
|
+
slots?: {} | undefined;
|
|
100
|
+
expose?: string[] | undefined;
|
|
101
|
+
serverPrefetch?: (() => void | Promise<any>) | undefined;
|
|
102
|
+
compilerOptions?: {
|
|
103
|
+
isCustomElement?: ((tag: string) => boolean) | undefined;
|
|
104
|
+
whitespace?: "preserve" | "condense" | undefined;
|
|
105
|
+
comments?: boolean | undefined;
|
|
106
|
+
delimiters?: [string, string] | undefined;
|
|
107
|
+
} | undefined;
|
|
108
|
+
call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
|
|
109
|
+
__isFragment?: never | undefined;
|
|
110
|
+
__isTeleport?: never | undefined;
|
|
111
|
+
__isSuspense?: never | undefined;
|
|
112
|
+
__defaults?: {} | undefined;
|
|
113
|
+
compatConfig?: {
|
|
114
|
+
GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
|
|
115
|
+
GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
|
|
116
|
+
GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
|
|
117
|
+
GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
|
|
118
|
+
GLOBAL_SET?: boolean | "suppress-warning" | undefined;
|
|
119
|
+
GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
|
|
120
|
+
GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
|
|
121
|
+
GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
|
|
122
|
+
CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
|
|
123
|
+
CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
|
|
124
|
+
CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
|
|
125
|
+
CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
|
|
126
|
+
CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
|
|
127
|
+
CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
|
|
128
|
+
CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
|
|
129
|
+
INSTANCE_SET?: boolean | "suppress-warning" | undefined;
|
|
130
|
+
INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
|
|
131
|
+
INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
|
|
132
|
+
INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
|
|
133
|
+
INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
|
|
134
|
+
INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
|
|
135
|
+
INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
|
|
136
|
+
INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
|
|
137
|
+
INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
|
|
138
|
+
OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
|
|
139
|
+
OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
|
|
140
|
+
OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
|
|
141
|
+
OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
|
|
142
|
+
WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
|
|
143
|
+
PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
|
|
144
|
+
V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
|
|
145
|
+
CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
|
|
146
|
+
ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
|
|
147
|
+
ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
|
|
148
|
+
TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
|
|
149
|
+
TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
|
|
150
|
+
COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
|
|
151
|
+
COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
|
|
152
|
+
COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
|
|
153
|
+
RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
|
|
154
|
+
FILTERS?: boolean | "suppress-warning" | undefined;
|
|
155
|
+
PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
|
|
156
|
+
MODE?: 2 | 3 | ((comp: Component | null) => 2 | 3) | undefined;
|
|
157
|
+
} | undefined;
|
|
158
|
+
data?: ((this: any, vm: any) => any) | undefined;
|
|
159
|
+
computed?: import("vue").ComputedOptions | undefined;
|
|
160
|
+
methods?: import("vue").MethodOptions | undefined;
|
|
161
|
+
watch?: {
|
|
162
|
+
[x: string]: (string | import("vue").WatchCallback | ({
|
|
163
|
+
handler: import("vue").WatchCallback | string;
|
|
164
|
+
} & import("vue").WatchOptions<boolean>)) | (string | import("vue").WatchCallback | ({
|
|
165
|
+
handler: import("vue").WatchCallback | string;
|
|
166
|
+
} & import("vue").WatchOptions<boolean>))[];
|
|
167
|
+
} | undefined;
|
|
168
|
+
provide?: import("vue").ComponentProvideOptions | undefined;
|
|
169
|
+
inject?: {} | string[] | undefined;
|
|
170
|
+
filters?: Record<string, Function> | undefined;
|
|
171
|
+
mixins?: any[] | undefined;
|
|
172
|
+
extends?: any;
|
|
173
|
+
beforeCreate?: (() => any) | undefined;
|
|
174
|
+
created?: (() => any) | undefined;
|
|
175
|
+
beforeMount?: (() => any) | undefined;
|
|
176
|
+
mounted?: (() => any) | undefined;
|
|
177
|
+
beforeUpdate?: (() => any) | undefined;
|
|
178
|
+
updated?: (() => any) | undefined;
|
|
179
|
+
activated?: (() => any) | undefined;
|
|
180
|
+
deactivated?: (() => any) | undefined;
|
|
181
|
+
beforeDestroy?: (() => any) | undefined;
|
|
182
|
+
beforeUnmount?: (() => any) | undefined;
|
|
183
|
+
destroyed?: (() => any) | undefined;
|
|
184
|
+
unmounted?: (() => any) | undefined;
|
|
185
|
+
renderTracked?: ((e: import("vue").DebuggerEvent) => void) | undefined;
|
|
186
|
+
renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | undefined;
|
|
187
|
+
errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void) | undefined;
|
|
188
|
+
delimiters?: [string, string] | undefined;
|
|
189
|
+
__differentiator?: string | number | symbol | undefined;
|
|
190
|
+
__isBuiltIn?: boolean | undefined;
|
|
191
|
+
__file?: string | undefined;
|
|
192
|
+
__name?: string | undefined;
|
|
193
|
+
} | undefined;
|
|
194
|
+
content?: import("vue").FunctionalComponent<any, {}, any, {}> | {
|
|
195
|
+
new (...args: any[]): any;
|
|
196
|
+
__isFragment?: never;
|
|
197
|
+
__isTeleport?: never;
|
|
198
|
+
__isSuspense?: never;
|
|
199
|
+
} | {
|
|
200
|
+
[x: string]: any;
|
|
201
|
+
setup?: ((this: void, props: import("@vue/shared").LooseRequired<any>, ctx: {
|
|
202
|
+
attrs: import("vue").Attrs;
|
|
203
|
+
slots: Readonly<{
|
|
204
|
+
[name: string]: import("vue").Slot<any> | undefined;
|
|
205
|
+
}>;
|
|
206
|
+
emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
|
|
207
|
+
expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed) => void;
|
|
208
|
+
}) => any) | undefined;
|
|
209
|
+
name?: string | undefined;
|
|
210
|
+
template?: string | object | undefined;
|
|
211
|
+
render?: Function | undefined;
|
|
212
|
+
components?: Record<string, Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, {}, any>> | undefined;
|
|
213
|
+
directives?: Record<string, import("vue").Directive<any, any, string, any>> | undefined;
|
|
214
|
+
inheritAttrs?: boolean | undefined;
|
|
215
|
+
emits?: any;
|
|
216
|
+
slots?: {} | undefined;
|
|
217
|
+
expose?: string[] | undefined;
|
|
218
|
+
serverPrefetch?: (() => void | Promise<any>) | undefined;
|
|
219
|
+
compilerOptions?: {
|
|
220
|
+
isCustomElement?: ((tag: string) => boolean) | undefined;
|
|
221
|
+
whitespace?: "preserve" | "condense" | undefined;
|
|
222
|
+
comments?: boolean | undefined;
|
|
223
|
+
delimiters?: [string, string] | undefined;
|
|
224
|
+
} | undefined;
|
|
225
|
+
call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
|
|
226
|
+
__isFragment?: never | undefined;
|
|
227
|
+
__isTeleport?: never | undefined;
|
|
228
|
+
__isSuspense?: never | undefined;
|
|
229
|
+
__defaults?: {} | undefined;
|
|
230
|
+
compatConfig?: {
|
|
231
|
+
GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
|
|
232
|
+
GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
|
|
233
|
+
GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
|
|
234
|
+
GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
|
|
235
|
+
GLOBAL_SET?: boolean | "suppress-warning" | undefined;
|
|
236
|
+
GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
|
|
237
|
+
GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
|
|
238
|
+
GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
|
|
239
|
+
CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
|
|
240
|
+
CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
|
|
241
|
+
CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
|
|
242
|
+
CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
|
|
243
|
+
CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
|
|
244
|
+
CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
|
|
245
|
+
CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
|
|
246
|
+
INSTANCE_SET?: boolean | "suppress-warning" | undefined;
|
|
247
|
+
INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
|
|
248
|
+
INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
|
|
249
|
+
INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
|
|
250
|
+
INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
|
|
251
|
+
INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
|
|
252
|
+
INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
|
|
253
|
+
INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
|
|
254
|
+
INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
|
|
255
|
+
OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
|
|
256
|
+
OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
|
|
257
|
+
OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
|
|
258
|
+
OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
|
|
259
|
+
WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
|
|
260
|
+
PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
|
|
261
|
+
V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
|
|
262
|
+
CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
|
|
263
|
+
ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
|
|
264
|
+
ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
|
|
265
|
+
TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
|
|
266
|
+
TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
|
|
267
|
+
COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
|
|
268
|
+
COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
|
|
269
|
+
COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
|
|
270
|
+
RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
|
|
271
|
+
FILTERS?: boolean | "suppress-warning" | undefined;
|
|
272
|
+
PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
|
|
273
|
+
MODE?: 2 | 3 | ((comp: Component | null) => 2 | 3) | undefined;
|
|
274
|
+
} | undefined;
|
|
275
|
+
data?: ((this: any, vm: any) => any) | undefined;
|
|
276
|
+
computed?: import("vue").ComputedOptions | undefined;
|
|
277
|
+
methods?: import("vue").MethodOptions | undefined;
|
|
278
|
+
watch?: {
|
|
279
|
+
[x: string]: (string | import("vue").WatchCallback | ({
|
|
280
|
+
handler: import("vue").WatchCallback | string;
|
|
281
|
+
} & import("vue").WatchOptions<boolean>)) | (string | import("vue").WatchCallback | ({
|
|
282
|
+
handler: import("vue").WatchCallback | string;
|
|
283
|
+
} & import("vue").WatchOptions<boolean>))[];
|
|
284
|
+
} | undefined;
|
|
285
|
+
provide?: import("vue").ComponentProvideOptions | undefined;
|
|
286
|
+
inject?: {} | string[] | undefined;
|
|
287
|
+
filters?: Record<string, Function> | undefined;
|
|
288
|
+
mixins?: any[] | undefined;
|
|
289
|
+
extends?: any;
|
|
290
|
+
beforeCreate?: (() => any) | undefined;
|
|
291
|
+
created?: (() => any) | undefined;
|
|
292
|
+
beforeMount?: (() => any) | undefined;
|
|
293
|
+
mounted?: (() => any) | undefined;
|
|
294
|
+
beforeUpdate?: (() => any) | undefined;
|
|
295
|
+
updated?: (() => any) | undefined;
|
|
296
|
+
activated?: (() => any) | undefined;
|
|
297
|
+
deactivated?: (() => any) | undefined;
|
|
298
|
+
beforeDestroy?: (() => any) | undefined;
|
|
299
|
+
beforeUnmount?: (() => any) | undefined;
|
|
300
|
+
destroyed?: (() => any) | undefined;
|
|
301
|
+
unmounted?: (() => any) | undefined;
|
|
302
|
+
renderTracked?: ((e: import("vue").DebuggerEvent) => void) | undefined;
|
|
303
|
+
renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | undefined;
|
|
304
|
+
errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void) | undefined;
|
|
305
|
+
delimiters?: [string, string] | undefined;
|
|
306
|
+
__differentiator?: string | number | symbol | undefined;
|
|
307
|
+
__isBuiltIn?: boolean | undefined;
|
|
308
|
+
__file?: string | undefined;
|
|
309
|
+
__name?: string | undefined;
|
|
310
|
+
} | undefined;
|
|
311
|
+
contentProps?: Record<string, unknown>
|
|
312
|
+
/** Called on dismissal by timer, close button or `toast.dismiss()`. */
|
|
313
|
+
| undefined;
|
|
314
|
+
onClose?: (() => void) | undefined;
|
|
315
|
+
};
|
|
316
|
+
exiting: boolean;
|
|
317
|
+
revision: number;
|
|
318
|
+
}[];
|
|
319
|
+
adapter: {
|
|
320
|
+
show: (id: string, message: string, options: ResolvedToastOptions) => void;
|
|
321
|
+
update: (id: string, message: string, patch: Partial<ResolvedToastOptions>) => void;
|
|
322
|
+
dismiss: (id?: string) => void;
|
|
323
|
+
component: import("vue").FunctionalComponent<any, {}, any, {}> | {
|
|
324
|
+
new (...args: any[]): any;
|
|
325
|
+
__isFragment?: never;
|
|
326
|
+
__isTeleport?: never;
|
|
327
|
+
__isSuspense?: never;
|
|
328
|
+
} | {
|
|
329
|
+
[x: string]: any;
|
|
330
|
+
setup?: ((this: void, props: import("@vue/shared").LooseRequired<any>, ctx: {
|
|
331
|
+
attrs: import("vue").Attrs;
|
|
332
|
+
slots: Readonly<{
|
|
333
|
+
[name: string]: import("vue").Slot<any> | undefined;
|
|
334
|
+
}>;
|
|
335
|
+
emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
|
|
336
|
+
expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed) => void;
|
|
337
|
+
}) => any) | undefined;
|
|
338
|
+
name?: string | undefined;
|
|
339
|
+
template?: string | object | undefined;
|
|
340
|
+
render?: Function | undefined;
|
|
341
|
+
components?: Record<string, Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, {}, any>> | undefined;
|
|
342
|
+
directives?: Record<string, import("vue").Directive<any, any, string, any>> | undefined;
|
|
343
|
+
inheritAttrs?: boolean | undefined;
|
|
344
|
+
emits?: any;
|
|
345
|
+
slots?: {} | undefined;
|
|
346
|
+
expose?: string[] | undefined;
|
|
347
|
+
serverPrefetch?: (() => void | Promise<any>) | undefined;
|
|
348
|
+
compilerOptions?: {
|
|
349
|
+
isCustomElement?: ((tag: string) => boolean) | undefined;
|
|
350
|
+
whitespace?: "preserve" | "condense" | undefined;
|
|
351
|
+
comments?: boolean | undefined;
|
|
352
|
+
delimiters?: [string, string] | undefined;
|
|
353
|
+
} | undefined;
|
|
354
|
+
call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
|
|
355
|
+
__isFragment?: never | undefined;
|
|
356
|
+
__isTeleport?: never | undefined;
|
|
357
|
+
__isSuspense?: never | undefined;
|
|
358
|
+
__defaults?: {} | undefined;
|
|
359
|
+
compatConfig?: {
|
|
360
|
+
GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
|
|
361
|
+
GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
|
|
362
|
+
GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
|
|
363
|
+
GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
|
|
364
|
+
GLOBAL_SET?: boolean | "suppress-warning" | undefined;
|
|
365
|
+
GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
|
|
366
|
+
GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
|
|
367
|
+
GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
|
|
368
|
+
CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
|
|
369
|
+
CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
|
|
370
|
+
CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
|
|
371
|
+
CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
|
|
372
|
+
CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
|
|
373
|
+
CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
|
|
374
|
+
CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
|
|
375
|
+
INSTANCE_SET?: boolean | "suppress-warning" | undefined;
|
|
376
|
+
INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
|
|
377
|
+
INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
|
|
378
|
+
INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
|
|
379
|
+
INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
|
|
380
|
+
INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
|
|
381
|
+
INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
|
|
382
|
+
INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
|
|
383
|
+
INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
|
|
384
|
+
OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
|
|
385
|
+
OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
|
|
386
|
+
OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
|
|
387
|
+
OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
|
|
388
|
+
WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
|
|
389
|
+
PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
|
|
390
|
+
V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
|
|
391
|
+
CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
|
|
392
|
+
ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
|
|
393
|
+
ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
|
|
394
|
+
TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
|
|
395
|
+
TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
|
|
396
|
+
COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
|
|
397
|
+
COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
|
|
398
|
+
COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
|
|
399
|
+
RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
|
|
400
|
+
FILTERS?: boolean | "suppress-warning" | undefined;
|
|
401
|
+
PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
|
|
402
|
+
MODE?: 2 | 3 | ((comp: Component | null) => 2 | 3) | undefined;
|
|
403
|
+
} | undefined;
|
|
404
|
+
data?: ((this: any, vm: any) => any) | undefined;
|
|
405
|
+
computed?: import("vue").ComputedOptions | undefined;
|
|
406
|
+
methods?: import("vue").MethodOptions | undefined;
|
|
407
|
+
watch?: {
|
|
408
|
+
[x: string]: (string | import("vue").WatchCallback | ({
|
|
409
|
+
handler: import("vue").WatchCallback | string;
|
|
410
|
+
} & import("vue").WatchOptions<boolean>)) | (string | import("vue").WatchCallback | ({
|
|
411
|
+
handler: import("vue").WatchCallback | string;
|
|
412
|
+
} & import("vue").WatchOptions<boolean>))[];
|
|
413
|
+
} | undefined;
|
|
414
|
+
provide?: import("vue").ComponentProvideOptions | undefined;
|
|
415
|
+
inject?: {} | string[] | undefined;
|
|
416
|
+
filters?: Record<string, Function> | undefined;
|
|
417
|
+
mixins?: any[] | undefined;
|
|
418
|
+
extends?: any;
|
|
419
|
+
beforeCreate?: (() => any) | undefined;
|
|
420
|
+
created?: (() => any) | undefined;
|
|
421
|
+
beforeMount?: (() => any) | undefined;
|
|
422
|
+
mounted?: (() => any) | undefined;
|
|
423
|
+
beforeUpdate?: (() => any) | undefined;
|
|
424
|
+
updated?: (() => any) | undefined;
|
|
425
|
+
activated?: (() => any) | undefined;
|
|
426
|
+
deactivated?: (() => any) | undefined;
|
|
427
|
+
beforeDestroy?: (() => any) | undefined;
|
|
428
|
+
beforeUnmount?: (() => any) | undefined;
|
|
429
|
+
destroyed?: (() => any) | undefined;
|
|
430
|
+
unmounted?: (() => any) | undefined;
|
|
431
|
+
renderTracked?: ((e: import("vue").DebuggerEvent) => void) | undefined;
|
|
432
|
+
renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | undefined;
|
|
433
|
+
errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance | null, info: string) => boolean | void) | undefined;
|
|
434
|
+
delimiters?: [string, string] | undefined;
|
|
435
|
+
__differentiator?: string | number | symbol | undefined;
|
|
436
|
+
__isBuiltIn?: boolean | undefined;
|
|
437
|
+
__file?: string | undefined;
|
|
438
|
+
__name?: string | undefined;
|
|
439
|
+
} | null;
|
|
440
|
+
} | null;
|
|
441
|
+
};
|
|
442
|
+
/** Begin the exit transition. `<VddToasts>` removes the record when it finishes. */
|
|
443
|
+
export declare function startExit(id: string): void;
|
|
444
|
+
/** Drop a record outright — called once its exit transition has ended. */
|
|
445
|
+
export declare function removeToast(id: string): void;
|
|
446
|
+
export interface ToastFunction {
|
|
447
|
+
(message: string, options?: ToastOptions): string;
|
|
448
|
+
info(message: string, options?: ToastOptions): string;
|
|
449
|
+
success(message: string, options?: ToastOptions): string;
|
|
450
|
+
warning(message: string, options?: ToastOptions): string;
|
|
451
|
+
error(message: string, options?: ToastOptions): string;
|
|
452
|
+
/** Dismiss one toast, or all of them when called with no id. */
|
|
453
|
+
dismiss(id?: string): void;
|
|
454
|
+
/**
|
|
455
|
+
* Track a promise: a sticky "pending" toast immediately, updated in place on settlement.
|
|
456
|
+
* Returns the same promise, so it can be dropped into an existing chain.
|
|
457
|
+
*/
|
|
458
|
+
promise<T>(promise: Promise<T>, messages: ToastPromiseMessages<T>, options?: ToastOptions): Promise<T>;
|
|
459
|
+
}
|
|
460
|
+
/**
|
|
461
|
+
* Show a notification, from anywhere — a component, a store, a service, an interceptor.
|
|
462
|
+
*
|
|
463
|
+
* Mount `<VddToasts>` once to render them. Calling with none mounted is not an error: the
|
|
464
|
+
* toast sits in the queue and appears if a container mounts later.
|
|
465
|
+
*
|
|
466
|
+
* ```ts
|
|
467
|
+
* toast.success('Layout saved')
|
|
468
|
+
* toast.error('Upload failed', { duration: 0 }) // sticky
|
|
469
|
+
* await toast.promise(save(), { pending: 'Saving…', success: 'Saved', error: 'Failed' })
|
|
470
|
+
* ```
|
|
471
|
+
*/
|
|
472
|
+
export declare const toast: ToastFunction;
|
|
473
|
+
/** Empty the queue with no animation. For tests and for a full application teardown. */
|
|
474
|
+
export declare function resetToasts(): void;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface ToolbarState {
|
|
2
|
+
/** The active item in a radio group, or `null`. */
|
|
3
|
+
activeInGroup: (group: string) => string | null;
|
|
4
|
+
/** Set the active item in a group. `null` clears it. */
|
|
5
|
+
setActiveInGroup: (group: string, id: string | null) => void;
|
|
6
|
+
/** Whether a toggle is on. */
|
|
7
|
+
isToggled: (id: string) => boolean;
|
|
8
|
+
/** Set a toggle explicitly. */
|
|
9
|
+
setToggled: (id: string, on: boolean) => void;
|
|
10
|
+
/** Flip a toggle. */
|
|
11
|
+
toggle: (id: string) => void;
|
|
12
|
+
}
|
|
13
|
+
export declare function createToolbarState(): ToolbarState;
|