@nubisco/ui 3.1.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/BlueprintCard.vue.d.ts.map +1 -1
- package/dist/components/Button.vue.d.ts.map +1 -1
- package/dist/components/Charts/GanttChart.vue.d.ts.map +1 -1
- package/dist/components/Charts/InterpolationChart.vue.d.ts.map +1 -1
- package/dist/components/Charts/shared/palette.d.ts +76 -1
- package/dist/components/Charts/shared/palette.d.ts.map +1 -1
- package/dist/components/CommandPalette.vue.d.ts.map +1 -1
- package/dist/components/Confirm.d.ts +199 -0
- package/dist/components/Confirm.env.d.ts +52 -0
- package/dist/components/Confirm.env.d.ts.map +1 -0
- package/dist/components/Confirm.vue.d.ts +61 -0
- package/dist/components/Confirm.vue.d.ts.map +1 -0
- package/dist/components/DatePicker.vue.d.ts +1 -1
- package/dist/components/InlineLoading.d.ts +37 -0
- package/dist/components/InlineLoading.vue.d.ts +30 -0
- package/dist/components/InlineLoading.vue.d.ts.map +1 -0
- package/dist/components/MenuItem.vue.d.ts +1 -1
- package/dist/components/Modal.d.ts +35 -1
- package/dist/components/Modal.vue.d.ts +10 -1
- package/dist/components/Modal.vue.d.ts.map +1 -1
- package/dist/components/NotificationCenter.d.ts +184 -0
- package/dist/components/NotificationCenter.vue.d.ts +130 -0
- package/dist/components/NotificationCenter.vue.d.ts.map +1 -0
- package/dist/components/NotificationCenterItem.d.ts +53 -0
- package/dist/components/NotificationCenterItem.vue.d.ts +36 -0
- package/dist/components/NotificationCenterItem.vue.d.ts.map +1 -0
- package/dist/components/ProgressBar.vue.d.ts.map +1 -1
- package/dist/components/Shell.d.ts +138 -8
- package/dist/components/Shell.vue.d.ts +30 -3
- package/dist/components/Shell.vue.d.ts.map +1 -1
- package/dist/components/ShellPanel.d.ts +16 -0
- package/dist/components/ShellPanel.vue.d.ts +1 -0
- package/dist/components/ShellPanel.vue.d.ts.map +1 -1
- package/dist/components/SidebarLink.d.ts +14 -1
- package/dist/components/Skeleton.d.ts +87 -0
- package/dist/components/Skeleton.vue.d.ts +17 -0
- package/dist/components/Skeleton.vue.d.ts.map +1 -0
- package/dist/components/Spinner.d.ts +80 -0
- package/dist/components/Spinner.overlay.d.ts +56 -0
- package/dist/components/Spinner.overlay.d.ts.map +1 -0
- package/dist/components/Spinner.vue.d.ts +25 -0
- package/dist/components/Spinner.vue.d.ts.map +1 -0
- package/dist/components/Stepper.context.d.ts +48 -0
- package/dist/components/Stepper.context.d.ts.map +1 -0
- package/dist/components/Stepper.d.ts +101 -0
- package/dist/components/Stepper.vue.d.ts +31 -0
- package/dist/components/Stepper.vue.d.ts.map +1 -0
- package/dist/components/StepperStep.vue.d.ts +24 -0
- package/dist/components/StepperStep.vue.d.ts.map +1 -0
- package/dist/components/TextInput.vue.d.ts +2 -2
- package/dist/components/TextInput.vue.d.ts.map +1 -1
- package/dist/components/Toast.vue.d.ts +43 -0
- package/dist/components/Toast.vue.d.ts.map +1 -1
- package/dist/components/Toaster.d.ts +93 -0
- package/dist/components/Toaster.vue.d.ts +30 -0
- package/dist/components/Toaster.vue.d.ts.map +1 -0
- package/dist/components/UserMenu.vue.d.ts.map +1 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/composables/useConfirm.composable.d.ts +45 -0
- package/dist/composables/useConfirm.composable.d.ts.map +1 -0
- package/dist/composables/useInlineLoading.composable.d.ts +43 -0
- package/dist/composables/useInlineLoading.composable.d.ts.map +1 -0
- package/dist/composables/useLoadingAnnouncer.composable.d.ts +63 -0
- package/dist/composables/useLoadingAnnouncer.composable.d.ts.map +1 -0
- package/dist/composables/useScrollLock.composable.d.ts +47 -0
- package/dist/composables/useScrollLock.composable.d.ts.map +1 -0
- package/dist/composables/useShellSlot.composable.d.ts +193 -0
- package/dist/composables/useShellSlot.composable.d.ts.map +1 -0
- package/dist/composables/useToast.composable.d.ts +325 -0
- package/dist/composables/useToast.composable.d.ts.map +1 -0
- package/dist/directives/ToolTip.content.d.ts +20 -0
- package/dist/directives/ToolTip.content.d.ts.map +1 -0
- package/dist/directives/ToolTip.directive.d.ts +94 -8
- package/dist/directives/ToolTip.directive.d.ts.map +1 -1
- package/dist/global.d.ts +18 -0
- package/dist/index.cjs +8 -9
- package/dist/index.mjs +17653 -14503
- package/dist/main.d.ts +43 -2
- package/dist/main.d.ts.map +1 -1
- package/dist/ui.css +1 -1
- package/package.json +1 -1
- package/src/styles/_theme.scss +171 -0
- package/src/styles/directives/_tooltip.scss +143 -21
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
import { type ComputedRef, type InjectionKey, type Ref } from 'vue';
|
|
2
|
+
import type { TToastVariant, IToastCta } from '../components/Toast.vue';
|
|
3
|
+
/**
|
|
4
|
+
* The toast queue: the clock, the cap and the ordering that `NbToaster`
|
|
5
|
+
* renders.
|
|
6
|
+
*
|
|
7
|
+
* The split matters. `NbToast` knows how one message looks, `NbToaster` knows
|
|
8
|
+
* where the stack sits and how it moves, and this file knows *when* a message
|
|
9
|
+
* leaves. Timing lives here rather than in the item because the whole region
|
|
10
|
+
* pauses together: while the pointer rests on the top toast, the two below it
|
|
11
|
+
* must stop counting down as well, and an item that owns its own timer cannot
|
|
12
|
+
* know that. Three applications hand-rolled a host over `NbToast` and all
|
|
13
|
+
* three got a different part of this wrong, which is why it is now library
|
|
14
|
+
* code.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Why a toast ended. Passed to `IToastOptions.onDismiss`.
|
|
18
|
+
*
|
|
19
|
+
* - `user`: the close button, or Escape while the toast held focus.
|
|
20
|
+
* - `timeout`: the countdown ran out.
|
|
21
|
+
* - `action`: the reader pressed the toast's own action.
|
|
22
|
+
* - `replaced`: a newer message took its place, either because a `key` push
|
|
23
|
+
* claimed its slot or because the stack was full of toasts that can never
|
|
24
|
+
* expire.
|
|
25
|
+
* - `navigated`: `dismissTransient()`, from a router guard.
|
|
26
|
+
* - `cleared`: `dismissAll()`, typically sign-out.
|
|
27
|
+
*
|
|
28
|
+
* The reason is the only thing that separates "Deleted. [Undo]" committing
|
|
29
|
+
* from cancelling, so it is never collapsed into a boolean.
|
|
30
|
+
*/
|
|
31
|
+
export type TToastDismissReason = 'user' | 'timeout' | 'action' | 'replaced' | 'navigated' | 'cleared';
|
|
32
|
+
/** Everything a caller can say about a toast. Only `message` is required. */
|
|
33
|
+
export interface IToastOptions {
|
|
34
|
+
/** The news, in one sentence. Written in the past tense: "Draft saved". */
|
|
35
|
+
message: string;
|
|
36
|
+
/** Tone. Also decides the icon, the politeness and the default duration. */
|
|
37
|
+
variant?: TToastVariant;
|
|
38
|
+
/** Optional short heading. Skip it when the message already stands alone. */
|
|
39
|
+
title?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Milliseconds on screen. `0` means it stays until dismissed. Omit it and
|
|
42
|
+
* the variant decides (see `NB_TOAST_DURATIONS`).
|
|
43
|
+
*/
|
|
44
|
+
duration?: number;
|
|
45
|
+
/**
|
|
46
|
+
* One action. A toast that carries one never auto-dismisses unless an
|
|
47
|
+
* explicit `duration` says it should: an action that removes itself while
|
|
48
|
+
* it is being reached for is not an action.
|
|
49
|
+
*/
|
|
50
|
+
cta?: IToastCta;
|
|
51
|
+
/**
|
|
52
|
+
* De-duplication key. Pushing again with a key that is already queued takes
|
|
53
|
+
* over that toast's slot instead of adding a second one, so a double-clicked
|
|
54
|
+
* Save button produces one "Saved", not two.
|
|
55
|
+
*
|
|
56
|
+
* The second push replaces the message wholesale: only the id, the slot and
|
|
57
|
+
* the position survive, and every field the new call leaves out goes back to
|
|
58
|
+
* its default rather than lingering from the previous one. A first push with
|
|
59
|
+
* a `title` and an `error` variant followed by a bare
|
|
60
|
+
* `push({ key, message })` is a plain info toast, not the old error wearing
|
|
61
|
+
* a new sentence. The displaced message's `onDismiss` fires with reason
|
|
62
|
+
* `replaced` before the new one takes the slot.
|
|
63
|
+
*/
|
|
64
|
+
key?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Survive a route change.
|
|
67
|
+
*
|
|
68
|
+
* A toast is scoped to the moment, and the moment usually ends with the
|
|
69
|
+
* route: "Draft saved" outliving the draft's page is news about a screen
|
|
70
|
+
* the user has left, and its `Undo` acts on a record they can no longer
|
|
71
|
+
* see. `dismissTransient()`, called from a router guard, clears everything
|
|
72
|
+
* that does not set this.
|
|
73
|
+
*
|
|
74
|
+
* Set it for news that is true wherever the user ends up: "Signed out",
|
|
75
|
+
* "Export ready", "Connection restored".
|
|
76
|
+
*/
|
|
77
|
+
retain?: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Called once, when the toast leaves the queue, with the reason it left.
|
|
80
|
+
*
|
|
81
|
+
* This is the observation point the CTA pattern needs. "Deleted. [Undo]"
|
|
82
|
+
* only works if something commits the delete when the toast goes and
|
|
83
|
+
* cancels it when Undo is pressed, and the difference between those two is
|
|
84
|
+
* exactly the reason:
|
|
85
|
+
*
|
|
86
|
+
* ```ts
|
|
87
|
+
* let undone = false
|
|
88
|
+
* toast.push({
|
|
89
|
+
* message: 'Comment deleted',
|
|
90
|
+
* cta: { label: 'Undo', action: () => { undone = true; restore(row) } },
|
|
91
|
+
* onDismiss: (reason) => { if (!undone) commitDelete(row) },
|
|
92
|
+
* })
|
|
93
|
+
* ```
|
|
94
|
+
*
|
|
95
|
+
* It fires exactly once per pushed message, and the reason is always the
|
|
96
|
+
* true one. Two rules keep that promise:
|
|
97
|
+
*
|
|
98
|
+
* - `update()` is not an end of life, so a progress toast that becomes a
|
|
99
|
+
* result calls it once, at the end. `update()` therefore cannot change
|
|
100
|
+
* the callback either: it is not in `TToastPatch`.
|
|
101
|
+
* - A second `push()` sharing a `key` is a *different* message taking over
|
|
102
|
+
* the slot, so the message being displaced ends first, with reason
|
|
103
|
+
* `replaced`, and the new callback takes over from there. Deleting row 1
|
|
104
|
+
* and then row 2 under one key commits row 1 and then row 2, in that
|
|
105
|
+
* order, rather than committing row 1 twice.
|
|
106
|
+
*/
|
|
107
|
+
onDismiss?: (reason: TToastDismissReason) => void;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* A partial change to a live toast, as accepted by `IToastHandle.update()`.
|
|
111
|
+
*
|
|
112
|
+
* `onDismiss` is deliberately not in it. The callback is the commit point of
|
|
113
|
+
* the message that was pushed, and an update only rewrites the words of that
|
|
114
|
+
* same message: swapping the callback halfway would either drop a commit or
|
|
115
|
+
* run it twice, which is the one thing this queue promises never to do. When
|
|
116
|
+
* the *message* really is a new one, push it (with a `key` if it should reuse
|
|
117
|
+
* the slot) and the queue ends the old one first, with reason `replaced`.
|
|
118
|
+
*
|
|
119
|
+
* Passing it anyway is ignored, and warns outside production.
|
|
120
|
+
*/
|
|
121
|
+
export type TToastPatch = Omit<Partial<IToastOptions>, 'onDismiss'>;
|
|
122
|
+
/** A queued toast, as `NbToaster` reads it. */
|
|
123
|
+
export interface IToastRecord extends IToastOptions {
|
|
124
|
+
/** Queue-unique id. Stable for the life of the toast. */
|
|
125
|
+
id: string;
|
|
126
|
+
variant: TToastVariant;
|
|
127
|
+
/** Resolved duration: never undefined here, `0` means persistent. */
|
|
128
|
+
duration: number;
|
|
129
|
+
/** `true` once it holds one of the visible slots. */
|
|
130
|
+
visible: boolean;
|
|
131
|
+
/**
|
|
132
|
+
* Incremented every time the countdown restarts (admission, or an update
|
|
133
|
+
* that changed the message). `NbToaster` keys the timer bar on it so the
|
|
134
|
+
* bar restarts with the clock instead of continuing from where it was.
|
|
135
|
+
*/
|
|
136
|
+
cycle: number;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* What `push()` hands back so the caller can keep talking about a toast it
|
|
140
|
+
* created: the save-in-progress that becomes a save-succeeded.
|
|
141
|
+
*/
|
|
142
|
+
export interface IToastHandle {
|
|
143
|
+
/** The record id, for `queue.dismiss(id)` or logging. */
|
|
144
|
+
readonly id: string;
|
|
145
|
+
/**
|
|
146
|
+
* Rewrite the toast in place. It keeps its slot and its position, so the
|
|
147
|
+
* stack does not jump. The countdown restarts, because the words changed
|
|
148
|
+
* and the reader has not seen the new ones yet.
|
|
149
|
+
*
|
|
150
|
+
* Passing a `variant` without a `duration` adopts that variant's default,
|
|
151
|
+
* which is what turns a persistent "Saving..." into a self-clearing
|
|
152
|
+
* "Saved". Fields left out of the patch are left alone.
|
|
153
|
+
*
|
|
154
|
+
* `onDismiss` is not patchable: see `TToastPatch`.
|
|
155
|
+
*/
|
|
156
|
+
update(patch: TToastPatch): void;
|
|
157
|
+
/**
|
|
158
|
+
* Remove it now. Safe to call after it has already gone. The reason is
|
|
159
|
+
* forwarded to `onDismiss`; it defaults to `user` because the usual caller
|
|
160
|
+
* is a control the reader pressed.
|
|
161
|
+
*/
|
|
162
|
+
dismiss(reason?: TToastDismissReason): void;
|
|
163
|
+
/** `false` once it has been dismissed or has expired. */
|
|
164
|
+
isActive(): boolean;
|
|
165
|
+
}
|
|
166
|
+
/** Options for a standalone queue. */
|
|
167
|
+
export interface IToastQueueOptions {
|
|
168
|
+
/** How many toasts may be on screen at once. Default `3`. */
|
|
169
|
+
max?: number;
|
|
170
|
+
/** Per-variant duration overrides, merged over `NB_TOAST_DURATIONS`. */
|
|
171
|
+
durations?: Partial<Record<TToastVariant, number>>;
|
|
172
|
+
/**
|
|
173
|
+
* The visually hidden severity word each variant is announced with, for
|
|
174
|
+
* applications that are not in English. Merged over `NB_TOAST_STATUS_LABELS`.
|
|
175
|
+
* An empty string suppresses the word for that variant.
|
|
176
|
+
*/
|
|
177
|
+
statusLabels?: Partial<Record<TToastVariant, string>>;
|
|
178
|
+
/** Accessible name of every close button in this queue. */
|
|
179
|
+
closeLabel?: string;
|
|
180
|
+
}
|
|
181
|
+
/** The strings `NbToaster` reads out of its queue. */
|
|
182
|
+
export interface IToastLabels {
|
|
183
|
+
status: Record<TToastVariant, string>;
|
|
184
|
+
close: string;
|
|
185
|
+
}
|
|
186
|
+
/** The queue object shared by `useToast()` and `NbToaster`. */
|
|
187
|
+
export interface IToastQueue {
|
|
188
|
+
/** Everything queued: the visible slots first, then whatever is waiting. */
|
|
189
|
+
readonly items: ComputedRef<IToastRecord[]>;
|
|
190
|
+
/** The records `NbToaster` renders, oldest first. */
|
|
191
|
+
readonly visible: ComputedRef<IToastRecord[]>;
|
|
192
|
+
/** Records admitted but waiting for a free slot. */
|
|
193
|
+
readonly pending: ComputedRef<IToastRecord[]>;
|
|
194
|
+
/** `true` while the clock is held (pointer, focus, or a hidden tab). */
|
|
195
|
+
readonly paused: Ref<boolean>;
|
|
196
|
+
/** Visible-slot cap. Writable, so a host can widen it for one screen. */
|
|
197
|
+
readonly max: Ref<number>;
|
|
198
|
+
/**
|
|
199
|
+
* Translated strings for this queue. `NbToaster` passes them to every
|
|
200
|
+
* toast, so a Spanish product states them once instead of per call.
|
|
201
|
+
*/
|
|
202
|
+
readonly labels: IToastLabels;
|
|
203
|
+
/** Queue a toast. Returns the handle. */
|
|
204
|
+
push(options: IToastOptions): IToastHandle;
|
|
205
|
+
/** `variant: 'info'`, message-first for the common call. */
|
|
206
|
+
info(message: string, options?: Omit<IToastOptions, 'message' | 'variant'>): IToastHandle;
|
|
207
|
+
/** `variant: 'success'`. */
|
|
208
|
+
success(message: string, options?: Omit<IToastOptions, 'message' | 'variant'>): IToastHandle;
|
|
209
|
+
/** `variant: 'warning'`. */
|
|
210
|
+
warning(message: string, options?: Omit<IToastOptions, 'message' | 'variant'>): IToastHandle;
|
|
211
|
+
/** `variant: 'error'`. Persistent by default. */
|
|
212
|
+
error(message: string, options?: Omit<IToastOptions, 'message' | 'variant'>): IToastHandle;
|
|
213
|
+
/** Rewrite a live toast by id, field by field. No-op if it has gone. */
|
|
214
|
+
update(id: string, patch: TToastPatch): void;
|
|
215
|
+
/** Remove one toast and let the next pending one in. */
|
|
216
|
+
dismiss(id: string, reason?: TToastDismissReason): void;
|
|
217
|
+
/**
|
|
218
|
+
* Clear the whole queue, visible and pending, `retain` included. Sign-out,
|
|
219
|
+
* tenant switch, anything after which no queued message is still true.
|
|
220
|
+
*/
|
|
221
|
+
dismissAll(reason?: TToastDismissReason): void;
|
|
222
|
+
/**
|
|
223
|
+
* Clear everything that did not ask to survive a route change. Call it from
|
|
224
|
+
* a router guard:
|
|
225
|
+
*
|
|
226
|
+
* ```ts
|
|
227
|
+
* router.afterEach(() => toast.dismissTransient())
|
|
228
|
+
* ```
|
|
229
|
+
*
|
|
230
|
+
* Nothing in this file knows about a router, and it must not: the library
|
|
231
|
+
* has no dependency on one and cannot guess whether a product's tab switch
|
|
232
|
+
* is a navigation. The queue provides the operation, the application says
|
|
233
|
+
* when.
|
|
234
|
+
*/
|
|
235
|
+
dismissTransient(reason?: TToastDismissReason): void;
|
|
236
|
+
/** Hold every countdown. Idempotent. */
|
|
237
|
+
pause(): void;
|
|
238
|
+
/** Resume from the exact remaining time, not from the start. */
|
|
239
|
+
resume(): void;
|
|
240
|
+
/** Remaining milliseconds for a record, for tests and instrumentation. */
|
|
241
|
+
remaining(id: string): number;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Default time on screen, per variant.
|
|
245
|
+
*
|
|
246
|
+
* The scale is reading time, not importance: a success is four words the user
|
|
247
|
+
* expected, a warning is a sentence they did not. An error stays until it is
|
|
248
|
+
* dismissed, because "it failed" is the start of a task and a message that
|
|
249
|
+
* removes itself before the user can act on it is worse than no message.
|
|
250
|
+
*/
|
|
251
|
+
export declare const NB_TOAST_DURATIONS: Record<TToastVariant, number>;
|
|
252
|
+
/**
|
|
253
|
+
* The word a screen reader hears before the message, per variant.
|
|
254
|
+
*
|
|
255
|
+
* Severity is otherwise carried by an icon (aria-hidden) and an accent colour,
|
|
256
|
+
* which is exactly the WCAG 1.4.1 failure: "Could not reach the server" with
|
|
257
|
+
* no indication that it is an error. Override the map per queue rather than
|
|
258
|
+
* per toast when the product is not in English.
|
|
259
|
+
*/
|
|
260
|
+
export declare const NB_TOAST_STATUS_LABELS: Record<TToastVariant, string>;
|
|
261
|
+
/**
|
|
262
|
+
* Build an isolated queue. Applications use `useToast()`, which shares one
|
|
263
|
+
* queue per page; tests and stories want their own so one spec cannot leave a
|
|
264
|
+
* toast behind for the next.
|
|
265
|
+
*/
|
|
266
|
+
export declare function createToastQueue(options?: IToastQueueOptions): IToastQueue;
|
|
267
|
+
/**
|
|
268
|
+
* Injection key for a queue scoped to one application instance.
|
|
269
|
+
*
|
|
270
|
+
* ```ts
|
|
271
|
+
* app.provide(NB_TOAST_QUEUE_KEY, createToastQueue())
|
|
272
|
+
* ```
|
|
273
|
+
*
|
|
274
|
+
* `useToast()` prefers it whenever it is called from a component, and
|
|
275
|
+
* `NbToaster` renders it without being given a `:queue`. Two reasons to use
|
|
276
|
+
* it: server rendering, where a module-level singleton is shared by every
|
|
277
|
+
* request the Node process is handling concurrently, and a host application
|
|
278
|
+
* that mounts several Vue apps in one page and does not want one app's toasts
|
|
279
|
+
* announced by another's toaster.
|
|
280
|
+
*
|
|
281
|
+
* It cannot be reached from a plain module (a service, a router guard, a
|
|
282
|
+
* store action) because there is no component instance there, which is why the
|
|
283
|
+
* shared queue below stays the default rather than being replaced by this.
|
|
284
|
+
*/
|
|
285
|
+
export declare const NB_TOAST_QUEUE_KEY: InjectionKey<IToastQueue>;
|
|
286
|
+
/**
|
|
287
|
+
* The toast queue for the current context.
|
|
288
|
+
*
|
|
289
|
+
* Inside a component, an app-scoped queue provided under
|
|
290
|
+
* `NB_TOAST_QUEUE_KEY` wins. Everywhere else, and when nothing was provided,
|
|
291
|
+
* this is one shared queue per page, created on first use, so a service
|
|
292
|
+
* module, a route guard and a deeply nested component all reach the same
|
|
293
|
+
* stack without prop drilling or a plugin install. Mount a single
|
|
294
|
+
* `<NbToaster />` to render it.
|
|
295
|
+
*
|
|
296
|
+
* @example
|
|
297
|
+
* const toast = useToast()
|
|
298
|
+
* toast.success('Draft saved')
|
|
299
|
+
*
|
|
300
|
+
* @example Progress that resolves into its own result
|
|
301
|
+
* const saving = toast.info('Saving changes...', { duration: 0 })
|
|
302
|
+
* try {
|
|
303
|
+
* await save()
|
|
304
|
+
* saving.update({ variant: 'success', message: 'Changes saved' })
|
|
305
|
+
* } catch {
|
|
306
|
+
* saving.update({ variant: 'error', message: 'Could not save changes' })
|
|
307
|
+
* }
|
|
308
|
+
*/
|
|
309
|
+
export declare function useToast(): IToastQueue;
|
|
310
|
+
/**
|
|
311
|
+
* Drop the shared queue, clearing whatever was in it.
|
|
312
|
+
*
|
|
313
|
+
* For tests, so one spec cannot leave a toast behind for the next, and for a
|
|
314
|
+
* single-render script (a static build, a prerender pass) that wants the
|
|
315
|
+
* module back in its initial state.
|
|
316
|
+
*
|
|
317
|
+
* It is not request isolation. A module-level singleton is shared by every
|
|
318
|
+
* request a Node process is serving at once, and resetting it globally
|
|
319
|
+
* between awaits would empty a queue another request is still filling. Server
|
|
320
|
+
* rendering with concurrent requests wants a queue per application instance:
|
|
321
|
+
* `app.provide(NB_TOAST_QUEUE_KEY, createToastQueue())`, which is scoped to
|
|
322
|
+
* the app that `createSSRApp()` returned and dies with it.
|
|
323
|
+
*/
|
|
324
|
+
export declare function resetToastQueue(): void;
|
|
325
|
+
//# sourceMappingURL=useToast.composable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useToast.composable.d.ts","sourceRoot":"","sources":["../../src/composables/useToast.composable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tooltip content rendering, and nothing else.
|
|
3
|
+
*
|
|
4
|
+
* Split out of `ToolTip.directive.ts` because it answers a different question
|
|
5
|
+
* from the rest of it. Everything in that file is about WHEN a chip exists
|
|
6
|
+
* and WHERE it sits; everything here is about what is allowed inside one when
|
|
7
|
+
* the text did not come from the person writing the template. The two change
|
|
8
|
+
* for unrelated reasons: a new allowed tag is a security review, a new
|
|
9
|
+
* placement rule is a layout bug.
|
|
10
|
+
*
|
|
11
|
+
* Private to the directive. Nothing here is part of the public API.
|
|
12
|
+
*/
|
|
13
|
+
import type { IComponentContent } from '../types/ContentRenderer';
|
|
14
|
+
declare const devWarn: (key: string, message: string) => void;
|
|
15
|
+
/**
|
|
16
|
+
* Renders tooltip content - supports both string and complex content structure
|
|
17
|
+
*/
|
|
18
|
+
declare const renderTooltipContent: (content: string | Array<IComponentContent> | undefined | null) => string;
|
|
19
|
+
export { renderTooltipContent, devWarn };
|
|
20
|
+
//# sourceMappingURL=ToolTip.content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolTip.content.d.ts","sourceRoot":"","sources":["../../src/directives/ToolTip.content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAwPhE,QAAA,MAAM,OAAO,GAAI,KAAK,MAAM,EAAE,SAAS,MAAM,SAM5C,CAAA;AA2DD;;GAEG;AACH,QAAA,MAAM,oBAAoB,GACxB,SAAS,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAAG,IAAI,KAC5D,MAYF,CAAA;AAED,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAA"}
|
|
@@ -1,17 +1,96 @@
|
|
|
1
|
-
import type { App } from 'vue';
|
|
1
|
+
import type { App, ObjectDirective } from 'vue';
|
|
2
2
|
import type { IComponentContent } from '../types/ContentRenderer';
|
|
3
3
|
export interface ITooltipOptions {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
/** The three content slots accept `null` as well as `undefined`, because an
|
|
5
|
+
* application binding a value straight from its state (`projectPath`, a
|
|
6
|
+
* fetched description, an optional field) usually has `string | null` and
|
|
7
|
+
* the runtime has always treated any falsy value as "no tooltip" via
|
|
8
|
+
* `hasContent`. Rejecting `null` in the type while accepting it at runtime
|
|
9
|
+
* only forced `?? undefined` at every call site. Found by type-checking
|
|
10
|
+
* `v-nb-tooltip` in a real consumer for the first time. */
|
|
11
|
+
body?: string | Array<IComponentContent> | null;
|
|
12
|
+
header?: string | Array<IComponentContent> | null;
|
|
13
|
+
tip?: string | Array<IComponentContent> | null;
|
|
14
|
+
/** The chip's tone, from the same vocabulary the rest of the library uses
|
|
15
|
+
* (`NbBanner.status`, `EVariant`). `default` is the inverted chip and is
|
|
16
|
+
* what a labelling tooltip should stay on: a coloured chip on a plain icon
|
|
17
|
+
* button reads as a state the control does not have. Reach for `danger` or
|
|
18
|
+
* `warning` only when the tooltip is explaining a blocked or destructive
|
|
19
|
+
* action, which is the case the fleet actually has. */
|
|
20
|
+
status?: TTooltipStatus;
|
|
21
|
+
/** @deprecated Use `status`. Kept because it is the name every existing
|
|
22
|
+
* binding uses and removing it would break them silently. `status` wins
|
|
23
|
+
* when both are given. Typed now, where it used to be `string`: the four
|
|
24
|
+
* values that were only ever documented are now the four the compiler
|
|
25
|
+
* accepts, plus `success` and `warning`, which the library's own status
|
|
26
|
+
* vocabulary has and this directive was missing. */
|
|
27
|
+
flavor?: TTooltipStatus;
|
|
8
28
|
delay?: number;
|
|
29
|
+
/** Milliseconds the chip stays up after the pointer or focus leaves.
|
|
30
|
+
* Defaults to 150. Raise it when the anchor sits next to a target the
|
|
31
|
+
* user must cross to reach, lower it for dense toolbars. */
|
|
32
|
+
hideDelay?: number;
|
|
33
|
+
/** How the tooltip is wired to assistive technology.
|
|
34
|
+
* - `label`: the tooltip IS the anchor's accessible name (icon-only
|
|
35
|
+
* controls). Applied as a permanent `aria-label`, because a name that
|
|
36
|
+
* only exists while a chip is on screen is not a name.
|
|
37
|
+
* - `description`: the tooltip adds to an anchor that is already named.
|
|
38
|
+
* Applied as `aria-describedby` on the visible chip only.
|
|
39
|
+
* - `none`: no aria wiring at all. For decorative or duplicated text.
|
|
40
|
+
* - `auto` (default): `label` when the anchor has no accessible name,
|
|
41
|
+
* `description` when it does. */
|
|
42
|
+
aria?: TTooltipAria;
|
|
43
|
+
/** Add `tabindex="0"` to an anchor that cannot otherwise take focus, so
|
|
44
|
+
* keyboard users can reach the tooltip. Only for anchors that carry
|
|
45
|
+
* information nothing else conveys (a truncated cell, a status dot).
|
|
46
|
+
* Never needed on a button or a link. */
|
|
47
|
+
focusable?: boolean;
|
|
48
|
+
/** Open on touch (tap) as well as hover and focus. Default true. */
|
|
49
|
+
touch?: boolean;
|
|
9
50
|
animationTime?: number;
|
|
10
51
|
position?: 'top' | 'bottom' | 'left' | 'right' | 'cursor';
|
|
11
52
|
followCursor?: boolean;
|
|
12
53
|
overflowOnly?: boolean;
|
|
54
|
+
/** Extra classes for the CHIP (not for the anchor, which keeps its own
|
|
55
|
+
* `class` attribute untouched). Use it for a one-off width or a product
|
|
56
|
+
* skin; the supported knobs are the three custom properties in the docs. */
|
|
57
|
+
chipClass?: string;
|
|
58
|
+
/** @deprecated Use `chipClass`, which says which element it lands on.
|
|
59
|
+
* `classExtra` is a name nothing else in this library uses. */
|
|
13
60
|
classExtra?: string;
|
|
61
|
+
/** Controlled visibility. When this is a boolean, the chip is on screen if
|
|
62
|
+
* and only if it is `true`, and hover / focus / tap stop opening and
|
|
63
|
+
* closing it themselves: they report what the user did through
|
|
64
|
+
* `onOpenChange` and leave the decision to you. This is what an onboarding
|
|
65
|
+
* highlight, a "show me" button and a visual-regression snapshot of the
|
|
66
|
+
* open state need, and there was previously no way to get any of them
|
|
67
|
+
* without synthesising MouseEvents. Leave it `undefined` for the ordinary
|
|
68
|
+
* uncontrolled tooltip. */
|
|
69
|
+
open?: boolean;
|
|
70
|
+
/** Open once, on mount, and behave normally afterwards. Uncontrolled: the
|
|
71
|
+
* first hover-out closes it for good. For a hint that should be seen once
|
|
72
|
+
* without taking the tooltip away from the user. */
|
|
73
|
+
defaultOpen?: boolean;
|
|
74
|
+
/** Called on every transition, with what caused it. In controlled mode this
|
|
75
|
+
* is the only way the user's pointer and keyboard reach you. */
|
|
76
|
+
onOpenChange?: (open: boolean, reason: TTooltipReason) => void;
|
|
14
77
|
}
|
|
78
|
+
export type TTooltipAria = 'auto' | 'label' | 'description' | 'none';
|
|
79
|
+
/** What opened a chip. `program` is a controlled or `defaultOpen` show, which
|
|
80
|
+
* never waits out the hover-intent delay. */
|
|
81
|
+
export type TTooltipTrigger = 'pointer' | 'focus' | 'touch' | 'program';
|
|
82
|
+
/** What caused a transition reported through `onOpenChange`.
|
|
83
|
+
* - `dismiss`: the user got rid of it. Escape, a pointerdown outside, the
|
|
84
|
+
* window losing focus, a drag starting, the anchor scrolling out of sight.
|
|
85
|
+
* - `superseded`: another anchor opened a chip, and only one chip is ever on
|
|
86
|
+
* screen. Nothing the user did was a dismissal OF THIS tooltip, which is
|
|
87
|
+
* why it is not called one: a host that treats every `false` as "the user
|
|
88
|
+
* is done with this hint" would otherwise cancel an onboarding highlight
|
|
89
|
+
* the moment the pointer crossed an unrelated icon button. */
|
|
90
|
+
export type TTooltipReason = TTooltipTrigger | 'dismiss' | 'superseded';
|
|
91
|
+
/** The chip's tone. Same words as `NbBanner.status` and `EVariant`, minus the
|
|
92
|
+
* ones a 55-character chip has no use for. */
|
|
93
|
+
export type TTooltipStatus = 'default' | 'primary' | 'info' | 'success' | 'warning' | 'danger';
|
|
15
94
|
declare const tooltipDirective: (app: App) => void;
|
|
16
95
|
/** Dismiss every currently-visible tooltip. Useful for view switches
|
|
17
96
|
* in single-page apps where the trigger element gets unmounted by a
|
|
@@ -19,9 +98,16 @@ declare const tooltipDirective: (app: App) => void;
|
|
|
19
98
|
* tooltip element about to be appended) leaves orphan chips behind.
|
|
20
99
|
* Call from the host on route / view change.
|
|
21
100
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* state directly. */
|
|
101
|
+
* Exported by name from the library entry, alongside the directive
|
|
102
|
+
* installer, so consumers do not have to reach into registered state. */
|
|
25
103
|
export declare function dismissAllTooltips(): void;
|
|
104
|
+
export type TTooltipDirective = ObjectDirective<HTMLElement, ITooltipOptions>;
|
|
105
|
+
declare module 'vue' {
|
|
106
|
+
interface GlobalDirectives {
|
|
107
|
+
/** Attach a tooltip to any element. See `ITooltipOptions` for the
|
|
108
|
+
* binding value: at minimum one of `header`, `body` or `tip`. */
|
|
109
|
+
vNbTooltip: TTooltipDirective;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
26
112
|
export default tooltipDirective;
|
|
27
113
|
//# sourceMappingURL=ToolTip.directive.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolTip.directive.d.ts","sourceRoot":"","sources":["../../src/directives/ToolTip.directive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAoB,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"ToolTip.directive.d.ts","sourceRoot":"","sources":["../../src/directives/ToolTip.directive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAoB,eAAe,EAAE,MAAM,KAAK,CAAA;AAEjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAuGhE,MAAM,WAAW,eAAe;IAC9B;;;;;;gEAM4D;IAC5D,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAA;IAC/C,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAA;IACjD,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAA;IAC9C;;;;;4DAKwD;IACxD,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB;;;;;yDAKqD;IACrD,MAAM,CAAC,EAAE,cAAc,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;iEAE6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;;wCAQoC;IACpC,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB;;;8CAG0C;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,oEAAoE;IACpE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;IACzD,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;iFAE6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;oEACgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;;;;gCAO4B;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd;;yDAEqD;IACrD,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;qEACiE;IACjE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,KAAK,IAAI,CAAA;CAC/D;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,aAAa,GAAG,MAAM,CAAA;AACpE;8CAC8C;AAC9C,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAA;AACvE;;;;;;;iEAOiE;AACjE,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,SAAS,GAAG,YAAY,CAAA;AACvE;+CAC+C;AAC/C,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,SAAS,GACT,MAAM,GACN,SAAS,GACT,SAAS,GACT,QAAQ,CAAA;AA83BZ,QAAA,MAAM,gBAAgB,GAAI,KAAK,GAAG,SAyQjC,CAAA;AAsgBD;;;;;;;0EAO0E;AAC1E,wBAAgB,kBAAkB,SAmBjC;AAeD,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC,WAAW,EAAE,eAAe,CAAC,CAAA;AAE7E,OAAO,QAAQ,KAAK,CAAC;IAInB,UAAU,gBAAgB;QACxB;0EACkE;QAClE,UAAU,EAAE,iBAAiB,CAAA;KAC9B;CACF;AAED,eAAe,gBAAgB,CAAA"}
|
package/dist/global.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ import Checkbox from './components/Checkbox.vue'
|
|
|
24
24
|
import CheckboxGroup from './components/CheckboxGroup.vue'
|
|
25
25
|
import ColorStrip from './components/ColorStrip.vue'
|
|
26
26
|
import CommandPalette from './components/CommandPalette.vue'
|
|
27
|
+
import Confirm from './components/Confirm.vue'
|
|
27
28
|
import DataTable from './components/DataTable.vue'
|
|
28
29
|
import DatePicker from './components/DatePicker.vue'
|
|
29
30
|
import DefinitionList from './components/DefinitionList.vue'
|
|
@@ -38,6 +39,7 @@ import Grid from './components/Grid.vue'
|
|
|
38
39
|
import Icon from './components/Icon.vue'
|
|
39
40
|
import ImageCropper from './components/ImageCropper.vue'
|
|
40
41
|
import InfoHint from './components/InfoHint.vue'
|
|
42
|
+
import InlineLoading from './components/InlineLoading.vue'
|
|
41
43
|
import InterpolationChart from './components/Charts/InterpolationChart.vue'
|
|
42
44
|
import JsonTree from './components/JsonTree.vue'
|
|
43
45
|
import Label from './components/Label.vue'
|
|
@@ -50,6 +52,8 @@ import MenuDivider from './components/MenuDivider.vue'
|
|
|
50
52
|
import MenuItem from './components/MenuItem.vue'
|
|
51
53
|
import Message from './components/Message.vue'
|
|
52
54
|
import Modal from './components/Modal.vue'
|
|
55
|
+
import NotificationCenter from './components/NotificationCenter.vue'
|
|
56
|
+
import NotificationCenterItem from './components/NotificationCenterItem.vue'
|
|
53
57
|
import NubiscoMark from './components/NubiscoMark.vue'
|
|
54
58
|
import NubiscoPlatformMark from './components/NubiscoPlatformMark.vue'
|
|
55
59
|
import NumberInput from './components/NumberInput.vue'
|
|
@@ -68,14 +72,19 @@ import SidebarMenu from './components/SidebarMenu.vue'
|
|
|
68
72
|
import SidebarMenuGroup from './components/SidebarMenuGroup.vue'
|
|
69
73
|
import SidebarMenuItem from './components/SidebarMenuItem.vue'
|
|
70
74
|
import SidebarVariantScope from './components/SidebarVariantScope.vue'
|
|
75
|
+
import Skeleton from './components/Skeleton.vue'
|
|
71
76
|
import Slider from './components/Slider.vue'
|
|
72
77
|
import Sparkline from './components/Charts/Sparkline.vue'
|
|
78
|
+
import Spinner from './components/Spinner.vue'
|
|
79
|
+
import Stepper from './components/Stepper.vue'
|
|
80
|
+
import StepperStep from './components/StepperStep.vue'
|
|
73
81
|
import Submenu from './components/Submenu.vue'
|
|
74
82
|
import SurfaceLayerScope from './components/SurfaceLayerScope.vue'
|
|
75
83
|
import Switch from './components/Switch.vue'
|
|
76
84
|
import Tabs from './components/Tabs.vue'
|
|
77
85
|
import TextInput from './components/TextInput.vue'
|
|
78
86
|
import Toast from './components/Toast.vue'
|
|
87
|
+
import Toaster from './components/Toaster.vue'
|
|
79
88
|
import Tree from './components/Tree.vue'
|
|
80
89
|
import TreeNode from './components/TreeNode.vue'
|
|
81
90
|
import UserMenu from './components/UserMenu.vue'
|
|
@@ -107,6 +116,7 @@ declare module 'vue' {
|
|
|
107
116
|
NbCheckboxGroup: typeof CheckboxGroup
|
|
108
117
|
NbColorStrip: typeof ColorStrip
|
|
109
118
|
NbCommandPalette: typeof CommandPalette
|
|
119
|
+
NbConfirm: typeof Confirm
|
|
110
120
|
NbDataTable: typeof DataTable
|
|
111
121
|
NbDatePicker: typeof DatePicker
|
|
112
122
|
NbDefinitionList: typeof DefinitionList
|
|
@@ -121,6 +131,7 @@ declare module 'vue' {
|
|
|
121
131
|
NbIcon: typeof Icon
|
|
122
132
|
NbImageCropper: typeof ImageCropper
|
|
123
133
|
NbInfoHint: typeof InfoHint
|
|
134
|
+
NbInlineLoading: typeof InlineLoading
|
|
124
135
|
NbInterpolationChart: typeof InterpolationChart
|
|
125
136
|
NbJsonTree: typeof JsonTree
|
|
126
137
|
NbLabel: typeof Label
|
|
@@ -133,6 +144,8 @@ declare module 'vue' {
|
|
|
133
144
|
NbMenuItem: typeof MenuItem
|
|
134
145
|
NbMessage: typeof Message
|
|
135
146
|
NbModal: typeof Modal
|
|
147
|
+
NbNotificationCenter: typeof NotificationCenter
|
|
148
|
+
NbNotificationCenterItem: typeof NotificationCenterItem
|
|
136
149
|
NbNubiscoMark: typeof NubiscoMark
|
|
137
150
|
NbNubiscoPlatformMark: typeof NubiscoPlatformMark
|
|
138
151
|
NbNumberInput: typeof NumberInput
|
|
@@ -151,14 +164,19 @@ declare module 'vue' {
|
|
|
151
164
|
NbSidebarMenuGroup: typeof SidebarMenuGroup
|
|
152
165
|
NbSidebarMenuItem: typeof SidebarMenuItem
|
|
153
166
|
NbSidebarVariantScope: typeof SidebarVariantScope
|
|
167
|
+
NbSkeleton: typeof Skeleton
|
|
154
168
|
NbSlider: typeof Slider
|
|
155
169
|
NbSparkline: typeof Sparkline
|
|
170
|
+
NbSpinner: typeof Spinner
|
|
171
|
+
NbStepper: typeof Stepper
|
|
172
|
+
NbStepperStep: typeof StepperStep
|
|
156
173
|
NbSubmenu: typeof Submenu
|
|
157
174
|
NbSurfaceLayerScope: typeof SurfaceLayerScope
|
|
158
175
|
NbSwitch: typeof Switch
|
|
159
176
|
NbTabs: typeof Tabs
|
|
160
177
|
NbTextInput: typeof TextInput
|
|
161
178
|
NbToast: typeof Toast
|
|
179
|
+
NbToaster: typeof Toaster
|
|
162
180
|
NbTree: typeof Tree
|
|
163
181
|
NbTreeNode: typeof TreeNode
|
|
164
182
|
NbUserMenu: typeof UserMenu
|