@leavepulse/ui 0.31.0 → 0.32.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/assets/{LpDropzone-DVDC-ABU.css → LpDropzone-BBoWvi-J.css} +12 -12
- package/dist/assets/{LpImageEditor-DqP5JKCy.css → LpImageEditor-BsSwej47.css} +6 -6
- package/dist/chunks/{LpAddressInput-BDkp3-Bp.js → LpAddressInput-C35TsJXt.js} +19 -14
- package/dist/chunks/{LpAppShell-Chz8Vbtu.js → LpAppShell-lVvpENMH.js} +18 -13
- package/dist/chunks/{LpBreadcrumbs-5uvViCXi.js → LpBreadcrumbs-p4jHe_V-.js} +9 -7
- package/dist/chunks/{LpCalendar-B7ZL0ty3.js → LpCalendar-B7Ko5RdR.js} +12 -7
- package/dist/chunks/{LpCard-D0M2ZCnB.js → LpCard-1SeUYPBT.js} +36 -9
- package/dist/chunks/{LpCheckbox-BO0zuuPh.js → LpCheckbox-CVccKYaH.js} +9 -4
- package/dist/chunks/{LpCodeBlock-BWX1KZwk.js → LpCodeBlock-Bo0B4TFR.js} +37 -32
- package/dist/chunks/{LpDatePicker-dY2q4dr4.js → LpDatePicker-6JFXllj5.js} +1 -1
- package/dist/chunks/{LpDisclosure-B4kVAWfg.js → LpDisclosure-y7wDBgLa.js} +11 -6
- package/dist/chunks/{LpEmptyState-BV3q7Qyi.js → LpEmptyState-Dsdqz1Wj.js} +13 -5
- package/dist/chunks/{LpFileTree-DfFqY__1.js → LpFileTree-C-NFRT0H.js} +19 -14
- package/dist/chunks/{LpFileTreeNode-COchUMNn.js → LpFileTreeNode-DNJUJiiB.js} +13 -6
- package/dist/chunks/{LpFormField-fV_2ZdCk.js → LpFormField-CazBc2-a.js} +14 -9
- package/dist/chunks/{LpInput-Bt4J71xn.js → LpInput-9EXWUM9B.js} +1 -1
- package/dist/chunks/{LpLightbox-Ci35Y_xP.js → LpLightbox-Cixfxezw.js} +29 -6
- package/dist/chunks/{LpLink-BHZ1CLlF.js → LpLink-DCND-zyu.js} +16 -9
- package/dist/chunks/{LpLogViewer-TSRyt3t9.js → LpLogViewer-y53ZqSVq.js} +20 -10
- package/dist/chunks/{LpMapPicker-CXvoTrAe.js → LpMapPicker-ul4oYno6.js} +14 -9
- package/dist/chunks/LpMediaGallery-t1z3bQcY.js +187 -0
- package/dist/chunks/{LpNotificationBell-gdvQY89m.js → LpNotificationBell-lHePf89W.js} +1 -1
- package/dist/chunks/{LpNumberField-NPE8Bumx.js → LpNumberField-CWuX08iX.js} +12 -5
- package/dist/chunks/{LpOtpInput-DqaT0Z75.js → LpOtpInput-y2v-pmiN.js} +11 -6
- package/dist/chunks/{LpPagination-CeGuNe_q.js → LpPagination-5FxjmmB5.js} +21 -19
- package/dist/chunks/{LpPasswordInput-BqMAc5HA.js → LpPasswordInput--sjYCkLS.js} +1 -1
- package/dist/chunks/{LpPhoneInput-NXXjciJJ.js → LpPhoneInput-BDSKVl_z.js} +16 -9
- package/dist/chunks/{LpPie-BL1vTDSM.js → LpPie-c2-q4DJu.js} +14 -8
- package/dist/chunks/{LpRadio-CL-pI0_O.js → LpRadio-B5AfqTpZ.js} +13 -5
- package/dist/chunks/{LpRadioGroup-B4yDTmi6.js → LpRadioGroup-xPIuVDO_.js} +12 -5
- package/dist/chunks/{LpSegmented-BmpanyAo.js → LpSegmented-fV0Sk92p.js} +16 -6
- package/dist/chunks/{LpSidebar-BiWM_lDB.js → LpSidebar-DcYavim2.js} +2 -2
- package/dist/chunks/{LpSidebarNav-CsgeuGAu.js → LpSidebarNav-CqwvT4H8.js} +21 -16
- package/dist/chunks/{LpSlider-B1SF3pRV.js → LpSlider-BwNIBkAK.js} +12 -5
- package/dist/chunks/{LpStat-CDanpzU0.js → LpStat-CQaW8R--.js} +23 -18
- package/dist/chunks/{LpStepper-Wtl-6nUh.js → LpStepper-Bk-XaQYU.js} +15 -10
- package/dist/chunks/{LpSwitch-v6fnccSM.js → LpSwitch-xgnRU2k0.js} +12 -5
- package/dist/chunks/{LpTextarea-BMIOfw5l.js → LpTextarea-t7F6gv8E.js} +1 -1
- package/dist/chunks/{LpUptimeBar-DcQ8HikG.js → LpUptimeBar-DvAMno0S.js} +26 -21
- package/dist/component-names.d.ts +1 -1
- package/dist/components/LpAddressInput.vue.d.ts +34 -17
- package/dist/components/LpAddressInput.vue.js +1 -1
- package/dist/components/LpAppShell.vue.d.ts +65 -31
- package/dist/components/LpAppShell.vue.js +1 -1
- package/dist/components/LpBreadcrumbs.vue.d.ts +12 -6
- package/dist/components/LpBreadcrumbs.vue.js +1 -1
- package/dist/components/LpCalendar.vue.d.ts +15 -6
- package/dist/components/LpCalendar.vue.js +1 -1
- package/dist/components/LpCard.vue.d.ts +26 -0
- package/dist/components/LpCard.vue.js +1 -1
- package/dist/components/LpChart.vue.d.ts +54 -12
- package/dist/components/LpChart.vue.js +15 -9
- package/dist/components/LpCheckbox.vue.d.ts +16 -12
- package/dist/components/LpCheckbox.vue.js +1 -1
- package/dist/components/LpCodeBlock.vue.d.ts +25 -6
- package/dist/components/LpCodeBlock.vue.js +1 -1
- package/dist/components/LpDatePicker.vue.js +1 -1
- package/dist/components/LpDisclosure.vue.d.ts +24 -14
- package/dist/components/LpDisclosure.vue.js +1 -1
- package/dist/components/LpDropzone.vue.d.ts +38 -14
- package/dist/components/LpDropzone.vue.js +17 -11
- package/dist/components/LpEmptyState.vue.d.ts +15 -10
- package/dist/components/LpEmptyState.vue.js +1 -1
- package/dist/components/LpFileTree.vue.d.ts +51 -31
- package/dist/components/LpFileTree.vue.js +1 -1
- package/dist/components/LpFileTreeNode.vue.d.ts +31 -16
- package/dist/components/LpFileTreeNode.vue.js +1 -1
- package/dist/components/LpFormField.vue.d.ts +14 -13
- package/dist/components/LpFormField.vue.js +1 -1
- package/dist/components/LpImageEditor.vue.d.ts +33 -10
- package/dist/components/LpImageEditor.vue.js +13 -7
- package/dist/components/LpInput.vue.js +1 -1
- package/dist/components/LpLightbox.vue.js +1 -1
- package/dist/components/LpLink.vue.d.ts +46 -11
- package/dist/components/LpLink.vue.js +1 -1
- package/dist/components/LpLogViewer.vue.d.ts +63 -6
- package/dist/components/LpLogViewer.vue.js +1 -1
- package/dist/components/LpMapPicker.vue.d.ts +25 -10
- package/dist/components/LpMapPicker.vue.js +1 -1
- package/dist/components/LpMediaGallery.vue.d.ts +76 -0
- package/dist/components/LpMediaGallery.vue.js +4 -0
- package/dist/components/LpNotificationBell.vue.js +1 -1
- package/dist/components/LpNumberField.vue.d.ts +12 -6
- package/dist/components/LpNumberField.vue.js +1 -1
- package/dist/components/LpOtpInput.vue.d.ts +18 -6
- package/dist/components/LpOtpInput.vue.js +1 -1
- package/dist/components/LpPagination.vue.d.ts +16 -6
- package/dist/components/LpPagination.vue.js +1 -1
- package/dist/components/LpPasswordInput.vue.js +1 -1
- package/dist/components/LpPhoneInput.vue.d.ts +18 -6
- package/dist/components/LpPhoneInput.vue.js +1 -1
- package/dist/components/LpPie.vue.d.ts +96 -34
- package/dist/components/LpPie.vue.js +1 -1
- package/dist/components/LpRadio.vue.d.ts +10 -10
- package/dist/components/LpRadio.vue.js +1 -1
- package/dist/components/LpRadioGroup.vue.d.ts +12 -12
- package/dist/components/LpRadioGroup.vue.js +1 -1
- package/dist/components/LpSegmented.vue.d.ts +12 -6
- package/dist/components/LpSegmented.vue.js +1 -1
- package/dist/components/LpSidebar.vue.js +1 -1
- package/dist/components/LpSidebarNav.vue.d.ts +28 -17
- package/dist/components/LpSidebarNav.vue.js +1 -1
- package/dist/components/LpSlider.vue.d.ts +13 -6
- package/dist/components/LpSlider.vue.js +1 -1
- package/dist/components/LpStat.vue.d.ts +35 -11
- package/dist/components/LpStat.vue.js +1 -1
- package/dist/components/LpStepper.vue.d.ts +17 -5
- package/dist/components/LpStepper.vue.js +1 -1
- package/dist/components/LpSwitch.vue.d.ts +8 -6
- package/dist/components/LpSwitch.vue.js +1 -1
- package/dist/components/LpTable.vue.js +1 -1
- package/dist/components/LpTextarea.vue.js +1 -1
- package/dist/components/LpUptimeBar.vue.d.ts +21 -5
- package/dist/components/LpUptimeBar.vue.js +1 -1
- package/dist/composables/useMergedClass.d.ts +20 -0
- package/dist/composables/useMergedClass.js +11 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +95 -89
- package/package.json +1 -3
- package/src/component-names.ts +1 -0
- package/src/components/LpAddressInput.vue +16 -1
- package/src/components/LpAppShell.vue +16 -1
- package/src/components/LpBreadcrumbs.vue +16 -1
- package/src/components/LpCalendar.vue +15 -1
- package/src/components/LpCard.vue +50 -5
- package/src/components/LpChart.vue +16 -1
- package/src/components/LpCheckbox.vue +16 -1
- package/src/components/LpCodeBlock.vue +16 -1
- package/src/components/LpDisclosure.vue +15 -1
- package/src/components/LpDropzone.vue +21 -6
- package/src/components/LpEmptyState.vue +21 -3
- package/src/components/LpFileTree.vue +16 -1
- package/src/components/LpFileTreeNode.vue +15 -1
- package/src/components/LpFormField.vue +16 -1
- package/src/components/LpImageEditor.vue +16 -1
- package/src/components/LpLightbox.vue +54 -2
- package/src/components/LpLink.vue +25 -9
- package/src/components/LpLogViewer.vue +20 -2
- package/src/components/LpMapPicker.vue +15 -1
- package/src/components/LpMediaGallery.vue +280 -0
- package/src/components/LpNumberField.vue +15 -1
- package/src/components/LpOtpInput.vue +15 -1
- package/src/components/LpPagination.vue +16 -1
- package/src/components/LpPhoneInput.vue +23 -8
- package/src/components/LpPie.vue +16 -1
- package/src/components/LpRadio.vue +20 -3
- package/src/components/LpRadioGroup.vue +15 -1
- package/src/components/LpSegmented.vue +21 -2
- package/src/components/LpSidebarNav.vue +16 -1
- package/src/components/LpSlider.vue +15 -1
- package/src/components/LpStat.vue +16 -1
- package/src/components/LpStepper.vue +16 -1
- package/src/components/LpSwitch.vue +15 -1
- package/src/components/LpUptimeBar.vue +16 -1
- package/src/composables/useMergedClass.ts +30 -0
- package/src/index.ts +2 -0
- package/src/tokens/tokens.css +29 -0
|
@@ -2,23 +2,23 @@ export interface RadioOption {
|
|
|
2
2
|
value: string;
|
|
3
3
|
label: string;
|
|
4
4
|
}
|
|
5
|
-
|
|
5
|
+
declare const _default: typeof __VLS_export;
|
|
6
|
+
export default _default;
|
|
7
|
+
declare const __VLS_export: __VLS_WithSlots<import('vue').DefineComponent<{
|
|
6
8
|
modelValue?: string;
|
|
7
9
|
options?: RadioOption[];
|
|
8
10
|
disabled?: boolean;
|
|
9
|
-
}
|
|
10
|
-
declare var __VLS_10: {};
|
|
11
|
-
type __VLS_Slots = {} & {
|
|
12
|
-
default?: (props: typeof __VLS_10) => any;
|
|
13
|
-
};
|
|
14
|
-
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
11
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
15
12
|
"update:modelValue": (value: string) => any;
|
|
16
|
-
}, string, import('vue').PublicProps, Readonly<
|
|
13
|
+
}, string, import('vue').PublicProps, Readonly<{
|
|
14
|
+
modelValue?: string;
|
|
15
|
+
options?: RadioOption[];
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
}> & Readonly<{
|
|
17
18
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
18
|
-
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
export default _default;
|
|
19
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>, {
|
|
20
|
+
default?: (props: {}) => any;
|
|
21
|
+
}>;
|
|
22
22
|
type __VLS_WithSlots<T, S> = T & {
|
|
23
23
|
new (): {
|
|
24
24
|
$slots: S;
|
|
@@ -4,21 +4,27 @@ export interface SegmentedOption {
|
|
|
4
4
|
/** Optional iconify name shown before the label (or alone, icon-only). */
|
|
5
5
|
icon?: string;
|
|
6
6
|
}
|
|
7
|
-
|
|
7
|
+
declare const _default: typeof __VLS_export;
|
|
8
|
+
export default _default;
|
|
9
|
+
declare const __VLS_export: import('vue').DefineComponent<{
|
|
8
10
|
modelValue?: string;
|
|
9
11
|
options: SegmentedOption[];
|
|
10
12
|
size?: "sm" | "md";
|
|
11
13
|
/** Stretch to fill the container with equal-width segments. */
|
|
12
14
|
block?: boolean;
|
|
13
15
|
disabled?: boolean;
|
|
14
|
-
}
|
|
15
|
-
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
16
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
16
17
|
"update:modelValue": (value: string) => any;
|
|
17
|
-
}, string, import('vue').PublicProps, Readonly<
|
|
18
|
+
}, string, import('vue').PublicProps, Readonly<{
|
|
19
|
+
modelValue?: string;
|
|
20
|
+
options: SegmentedOption[];
|
|
21
|
+
size?: "sm" | "md";
|
|
22
|
+
/** Stretch to fill the container with equal-width segments. */
|
|
23
|
+
block?: boolean;
|
|
24
|
+
disabled?: boolean;
|
|
25
|
+
}> & Readonly<{
|
|
18
26
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
19
27
|
}>, {
|
|
20
28
|
size: "sm" | "md";
|
|
21
29
|
block: boolean;
|
|
22
30
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
23
|
-
declare const _default: typeof __VLS_export;
|
|
24
|
-
export default _default;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { SidebarItem, SidebarSection } from './sidebar';
|
|
2
|
-
|
|
2
|
+
declare const _default: typeof __VLS_export;
|
|
3
|
+
export default _default;
|
|
4
|
+
declare const __VLS_export: __VLS_WithSlots<import('vue').DefineComponent<{
|
|
3
5
|
/** Normalised section list (LpSidebar collapses items/sections into this). */
|
|
4
6
|
groups: SidebarSection[];
|
|
5
7
|
/** Shared layoutId so the active pill flies between desktop/drawer renders. */
|
|
@@ -14,28 +16,37 @@ type __VLS_Props = {
|
|
|
14
16
|
* nav itself only reports the intent to change it.
|
|
15
17
|
*/
|
|
16
18
|
collapsedKeys?: string[];
|
|
17
|
-
}
|
|
18
|
-
declare var __VLS_63: {
|
|
19
|
-
item: SidebarItem;
|
|
20
|
-
active: boolean;
|
|
21
|
-
};
|
|
22
|
-
type __VLS_Slots = {} & {
|
|
23
|
-
item?: (props: typeof __VLS_63) => any;
|
|
24
|
-
};
|
|
25
|
-
declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
26
|
-
activate: (item: SidebarItem) => any;
|
|
19
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
27
20
|
"toggle-section": (key: string, collapsed: boolean) => any;
|
|
28
|
-
|
|
29
|
-
|
|
21
|
+
activate: (item: SidebarItem) => any;
|
|
22
|
+
}, string, import('vue').PublicProps, Readonly<{
|
|
23
|
+
/** Normalised section list (LpSidebar collapses items/sections into this). */
|
|
24
|
+
groups: SidebarSection[];
|
|
25
|
+
/** Shared layoutId so the active pill flies between desktop/drawer renders. */
|
|
26
|
+
pillId: string;
|
|
27
|
+
itemActive: (item: SidebarItem) => boolean;
|
|
28
|
+
loading?: boolean;
|
|
29
|
+
skeletonRows?: number;
|
|
30
|
+
skeletonHeader?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Keys of the groups currently folded away. The owner holds this so the
|
|
33
|
+
* choice can outlive the component (a setting, a stored preference) — the
|
|
34
|
+
* nav itself only reports the intent to change it.
|
|
35
|
+
*/
|
|
36
|
+
collapsedKeys?: string[];
|
|
37
|
+
}> & Readonly<{
|
|
30
38
|
"onToggle-section"?: ((key: string, collapsed: boolean) => any) | undefined;
|
|
39
|
+
onActivate?: ((item: SidebarItem) => any) | undefined;
|
|
31
40
|
}>, {
|
|
32
41
|
skeletonRows: number;
|
|
33
42
|
skeletonHeader: boolean;
|
|
34
43
|
collapsedKeys: string[];
|
|
35
|
-
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
44
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>, {
|
|
45
|
+
item?: (props: {
|
|
46
|
+
item: SidebarItem;
|
|
47
|
+
active: boolean;
|
|
48
|
+
}) => any;
|
|
49
|
+
}>;
|
|
39
50
|
type __VLS_WithSlots<T, S> = T & {
|
|
40
51
|
new (): {
|
|
41
52
|
$slots: S;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
declare const _default: typeof __VLS_export;
|
|
2
|
+
export default _default;
|
|
3
|
+
declare const __VLS_export: import('vue').DefineComponent<{
|
|
2
4
|
modelValue?: number;
|
|
3
5
|
min?: number;
|
|
4
6
|
max?: number;
|
|
@@ -6,11 +8,18 @@ type __VLS_Props = {
|
|
|
6
8
|
disabled?: boolean;
|
|
7
9
|
/** Accessible name for the thumb when there's no visible label. */
|
|
8
10
|
ariaLabel?: string;
|
|
9
|
-
}
|
|
10
|
-
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
11
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
11
12
|
change: (value: number) => any;
|
|
12
13
|
"update:modelValue": (value: number) => any;
|
|
13
|
-
}, string, import('vue').PublicProps, Readonly<
|
|
14
|
+
}, string, import('vue').PublicProps, Readonly<{
|
|
15
|
+
modelValue?: number;
|
|
16
|
+
min?: number;
|
|
17
|
+
max?: number;
|
|
18
|
+
step?: number;
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
/** Accessible name for the thumb when there's no visible label. */
|
|
21
|
+
ariaLabel?: string;
|
|
22
|
+
}> & Readonly<{
|
|
14
23
|
onChange?: ((value: number) => any) | undefined;
|
|
15
24
|
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
|
|
16
25
|
}>, {
|
|
@@ -19,5 +28,3 @@ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {
|
|
|
19
28
|
step: number;
|
|
20
29
|
modelValue: number;
|
|
21
30
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
22
|
-
declare const _default: typeof __VLS_export;
|
|
23
|
-
export default _default;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
declare const _default: typeof __VLS_export;
|
|
2
|
+
export default _default;
|
|
3
|
+
declare const __VLS_export: __VLS_WithSlots<import('vue').DefineComponent<{
|
|
2
4
|
label: string;
|
|
3
5
|
/**
|
|
4
6
|
* A string is printed as given; a NUMBER counts to its new value on
|
|
@@ -26,18 +28,40 @@ type __VLS_Props = {
|
|
|
26
28
|
/** For metrics where down is good (latency, errors): swaps the colours so a
|
|
27
29
|
* downward trend reads as positive (action) and upward as danger. */
|
|
28
30
|
invertTrend?: boolean;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
31
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
32
|
+
label: string;
|
|
33
|
+
/**
|
|
34
|
+
* A string is printed as given; a NUMBER counts to its new value on
|
|
35
|
+
* LpNumberFlow's digit wheels. A tile on a live dashboard is the one place
|
|
36
|
+
* a figure changes while somebody is looking at it, and a value that cuts
|
|
37
|
+
* from 41 to 43 says nothing about which way it moved.
|
|
38
|
+
*/
|
|
39
|
+
value: string | number;
|
|
40
|
+
/** Formatting for a numeric `value` — see LpNumberFlow. */
|
|
41
|
+
compact?: boolean;
|
|
42
|
+
grouped?: boolean;
|
|
43
|
+
decimals?: number;
|
|
44
|
+
prefix?: string;
|
|
45
|
+
valueSuffix?: string;
|
|
46
|
+
hint?: string;
|
|
47
|
+
icon?: string;
|
|
48
|
+
online?: boolean;
|
|
49
|
+
/** Change vs. a previous period. Renders a coloured arrow + this text. A
|
|
50
|
+
* number is shown with a sign; a string is shown verbatim (e.g. "+12%"). */
|
|
51
|
+
delta?: number | string;
|
|
52
|
+
/** Appended to a numeric delta, e.g. "%". Ignored for string deltas. */
|
|
53
|
+
deltaSuffix?: string;
|
|
54
|
+
/** Trend direction. "auto" derives it from a numeric delta's sign. */
|
|
55
|
+
trend?: "auto" | "up" | "down" | "flat";
|
|
56
|
+
/** For metrics where down is good (latency, errors): swaps the colours so a
|
|
57
|
+
* downward trend reads as positive (action) and upward as danger. */
|
|
58
|
+
invertTrend?: boolean;
|
|
59
|
+
}> & Readonly<{}>, {
|
|
35
60
|
decimals: number;
|
|
36
61
|
trend: "auto" | "up" | "down" | "flat";
|
|
37
|
-
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
export default _default;
|
|
62
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>, {
|
|
63
|
+
trend?: (props: {}) => any;
|
|
64
|
+
}>;
|
|
41
65
|
type __VLS_WithSlots<T, S> = T & {
|
|
42
66
|
new (): {
|
|
43
67
|
$slots: S;
|
|
@@ -5,7 +5,9 @@ export interface Step {
|
|
|
5
5
|
/** Replaces the step number while the step is pending or current. */
|
|
6
6
|
icon?: string;
|
|
7
7
|
}
|
|
8
|
-
|
|
8
|
+
declare const _default: typeof __VLS_export;
|
|
9
|
+
export default _default;
|
|
10
|
+
declare const __VLS_export: import('vue').DefineComponent<{
|
|
9
11
|
steps: Step[];
|
|
10
12
|
/**
|
|
11
13
|
* The active step: an index, or a step `key` for keyed flows.
|
|
@@ -18,7 +20,17 @@ type __VLS_Props = {
|
|
|
18
20
|
* prerequisite is filled in, say.
|
|
19
21
|
*/
|
|
20
22
|
completed?: Array<string | number>;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
24
|
+
steps: Step[];
|
|
25
|
+
/**
|
|
26
|
+
* The active step: an index, or a step `key` for keyed flows.
|
|
27
|
+
*/
|
|
28
|
+
current: number | string;
|
|
29
|
+
/**
|
|
30
|
+
* Which steps count as done. Omit it and everything before `current` is
|
|
31
|
+
* complete, which is the linear case. Pass keys (or indices) when a flow can
|
|
32
|
+
* finish steps out of order — a verification that succeeds before its
|
|
33
|
+
* prerequisite is filled in, say.
|
|
34
|
+
*/
|
|
35
|
+
completed?: Array<string | number>;
|
|
36
|
+
}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
declare const _default: typeof __VLS_export;
|
|
2
|
+
export default _default;
|
|
3
|
+
declare const __VLS_export: import('vue').DefineComponent<{
|
|
2
4
|
modelValue?: boolean;
|
|
3
5
|
disabled?: boolean;
|
|
4
|
-
}
|
|
5
|
-
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
6
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
6
7
|
"update:modelValue": (value: boolean) => any;
|
|
7
|
-
}, string, import('vue').PublicProps, Readonly<
|
|
8
|
+
}, string, import('vue').PublicProps, Readonly<{
|
|
9
|
+
modelValue?: boolean;
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
}> & Readonly<{
|
|
8
12
|
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
9
13
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
10
|
-
declare const _default: typeof __VLS_export;
|
|
11
|
-
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, watch, onBeforeUnmount, openBlock, createBlock, withCtx, createVNode, createElementVNode, normalizeClass, createElementBlock, createCommentVNode, Fragment, renderList, normalizeStyle, createTextVNode, toDisplayString, TransitionGroup, unref, mergeProps, withModifiers, renderSlot } from "vue";
|
|
2
|
-
import { _ as _sfc_main$3 } from "../chunks/LpCheckbox-
|
|
2
|
+
import { _ as _sfc_main$3 } from "../chunks/LpCheckbox-CVccKYaH.js";
|
|
3
3
|
import { _ as _sfc_main$2 } from "../chunks/LpContextMenu-B6WBLleS.js";
|
|
4
4
|
import { _ as _sfc_main$4 } from "../chunks/LpIcon-CCnX5_2j.js";
|
|
5
5
|
import { _ as _sfc_main$1 } from "../chunks/LpScrollArea-D8xyKXcF.js";
|
|
@@ -5,7 +5,26 @@ export interface UptimeSegment {
|
|
|
5
5
|
/** Optional rich tooltip body; falls back to a humanised status. */
|
|
6
6
|
label?: string;
|
|
7
7
|
}
|
|
8
|
-
|
|
8
|
+
declare const _default: typeof __VLS_export;
|
|
9
|
+
export default _default;
|
|
10
|
+
declare const __VLS_export: import('vue').DefineComponent<{
|
|
11
|
+
/** Oldest → newest. Each entry is one slice of the timeline. */
|
|
12
|
+
segments: UptimeSegment[];
|
|
13
|
+
/** Caption shown under the left edge (oldest point). */
|
|
14
|
+
startLabel?: string;
|
|
15
|
+
/** Caption shown under the right edge (newest point). */
|
|
16
|
+
endLabel?: string;
|
|
17
|
+
/** Show the computed uptime % above the bar. */
|
|
18
|
+
showUptime?: boolean;
|
|
19
|
+
/** Override the headline shown next to the uptime %. */
|
|
20
|
+
title?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Per-status colours. Any CSS colour (hex, rgb, `var(--token)`). Unset
|
|
23
|
+
* statuses fall back to the theme tokens below. Pass e.g.
|
|
24
|
+
* `{ degraded: '#ffb84d' }` to recolour just one state.
|
|
25
|
+
*/
|
|
26
|
+
colors?: Partial<Record<UptimeStatus, string>>;
|
|
27
|
+
}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
|
|
9
28
|
/** Oldest → newest. Each entry is one slice of the timeline. */
|
|
10
29
|
segments: UptimeSegment[];
|
|
11
30
|
/** Caption shown under the left edge (oldest point). */
|
|
@@ -22,9 +41,6 @@ type __VLS_Props = {
|
|
|
22
41
|
* `{ degraded: '#ffb84d' }` to recolour just one state.
|
|
23
42
|
*/
|
|
24
43
|
colors?: Partial<Record<UptimeStatus, string>>;
|
|
25
|
-
}
|
|
26
|
-
declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
44
|
+
}> & Readonly<{}>, {
|
|
27
45
|
showUptime: boolean;
|
|
28
46
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
29
|
-
declare const _default: typeof __VLS_export;
|
|
30
|
-
export default _default;
|
|
@@ -14,6 +14,26 @@ import { ComputedRef, MaybeRefOrGetter } from 'vue';
|
|
|
14
14
|
* so the raw `class` does not land on the element a second time, unmerged.
|
|
15
15
|
*/
|
|
16
16
|
export declare function useMergedClass(own: MaybeRefOrGetter<string | undefined>): ComputedRef<string>;
|
|
17
|
+
/**
|
|
18
|
+
* `useMergedClass` plus the rest of `$attrs`, for the common `inheritAttrs:
|
|
19
|
+
* false` shape: bind `class` and `attrs` and the consumer's `class` lands once,
|
|
20
|
+
* merged, while ids, handlers and aria-* still reach the element.
|
|
21
|
+
*
|
|
22
|
+
* ```ts
|
|
23
|
+
* const { class: rootClass, attrs: rest } = useMergedAttrs(() => card({ padded }))
|
|
24
|
+
* ```
|
|
25
|
+
* ```vue
|
|
26
|
+
* <div :class="rootClass" v-bind="rest">
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* Binding the raw `$attrs` alongside a merged class is the bug this avoids:
|
|
30
|
+
* Vue appends that second `class` to the merged one, and stylesheet order —
|
|
31
|
+
* not the caller — decides which wins.
|
|
32
|
+
*/
|
|
33
|
+
export declare function useMergedAttrs(own: MaybeRefOrGetter<string | undefined>): {
|
|
34
|
+
class: ComputedRef<string>;
|
|
35
|
+
attrs: ComputedRef<Record<string, unknown>>;
|
|
36
|
+
};
|
|
17
37
|
/**
|
|
18
38
|
* The same merge as a plain function, for the places that already have both
|
|
19
39
|
* strings in hand and do not need the attrs lookup — a render helper, or a
|
|
@@ -4,10 +4,21 @@ function useMergedClass(own) {
|
|
|
4
4
|
const attrs = useAttrs();
|
|
5
5
|
return computed(() => cn(toValue(own), attrs.class) ?? "");
|
|
6
6
|
}
|
|
7
|
+
function useMergedAttrs(own) {
|
|
8
|
+
const attrs = useAttrs();
|
|
9
|
+
return {
|
|
10
|
+
class: useMergedClass(own),
|
|
11
|
+
attrs: computed(() => {
|
|
12
|
+
const { class: _omitted, ...rest } = attrs;
|
|
13
|
+
return rest;
|
|
14
|
+
})
|
|
15
|
+
};
|
|
16
|
+
}
|
|
7
17
|
function mergeClass(...classes) {
|
|
8
18
|
return cn(...classes) ?? "";
|
|
9
19
|
}
|
|
10
20
|
export {
|
|
11
21
|
mergeClass,
|
|
22
|
+
useMergedAttrs,
|
|
12
23
|
useMergedClass
|
|
13
24
|
};
|
package/dist/index.d.ts
CHANGED
|
@@ -56,6 +56,7 @@ export { fileNameOf } from './components/lightbox';
|
|
|
56
56
|
export { default as LpLink } from './components/LpLink.vue';
|
|
57
57
|
export { default as LpLogViewer } from './components/LpLogViewer.vue';
|
|
58
58
|
export type { LogLevel, LogLine } from './components/LpLogViewer.vue';
|
|
59
|
+
export { default as LpMediaGallery } from './components/LpMediaGallery.vue';
|
|
59
60
|
export { default as LpModal } from './components/LpModal.vue';
|
|
60
61
|
export { default as LpNotificationBell } from './components/LpNotificationBell.vue';
|
|
61
62
|
export type { NotificationItem, NotificationLabels, } from './components/LpNotificationBell.vue';
|
|
@@ -134,6 +135,7 @@ export { useClipboard } from './composables/useClipboard';
|
|
|
134
135
|
export type { CopyOptions, UseClipboard } from './composables/useClipboard';
|
|
135
136
|
export { useHotkeys, isAppleKeyboard, appleModifierLabel } from './composables/useHotkeys';
|
|
136
137
|
export type { HotkeyBinding } from './composables/useHotkeys';
|
|
138
|
+
export { useMergedClass, useMergedAttrs, mergeClass } from './composables/useMergedClass';
|
|
137
139
|
export { useInputFilter } from './composables/useInputFilter';
|
|
138
140
|
export type { UseInputFilterOptions } from './composables/useInputFilter';
|
|
139
141
|
export { easeOut, easeTravel, easingToken, prefersReducedMotion } from './composables/easing';
|