@bridge-ui/vue 0.1.0 → 0.1.1
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/ai/skills/bridge-ui-components/SKILL.md +5 -3
- package/ai/skills/bridge-ui-forms/SKILL.md +4 -2
- package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +0 -1
- package/dist/Components/Autocomplete/composables/useAutocomplete.js +0 -1
- package/dist/Components/Calendar/Calendar.vue_vue_type_script_setup_true_lang.js +0 -1
- package/dist/Components/Calendar/calendar.types.d.ts +1 -21
- package/dist/Components/Calendar/composables/useCalendar.d.ts +1 -2
- package/dist/Components/Calendar/composables/useCalendar.js +97 -97
- package/dist/Components/Calendar/index.d.ts +1 -1
- package/dist/Components/CalendarDate/CalendarDate.vue_vue_type_script_setup_true_lang.js +0 -1
- package/dist/Components/CalendarDate/calendarDate.types.d.ts +1 -21
- package/dist/Components/CalendarDate/composables/useCalendarDate.d.ts +1 -1
- package/dist/Components/CalendarDate/composables/useCalendarDate.js +73 -73
- package/dist/Components/CalendarDate/index.d.ts +1 -1
- package/dist/Components/CalendarMonth/CalendarMonth.vue_vue_type_script_setup_true_lang.js +0 -1
- package/dist/Components/CalendarMonth/calendarMonth.types.d.ts +1 -17
- package/dist/Components/CalendarMonth/composables/useCalendarMonth.d.ts +1 -1
- package/dist/Components/CalendarMonth/composables/useCalendarMonth.js +25 -25
- package/dist/Components/CalendarMonth/index.d.ts +1 -1
- package/dist/Components/CalendarRange/CalendarRange.vue_vue_type_script_setup_true_lang.js +0 -1
- package/dist/Components/CalendarRange/calendarRange.types.d.ts +1 -21
- package/dist/Components/CalendarRange/composables/useCalendarRange.d.ts +1 -2
- package/dist/Components/CalendarRange/composables/useCalendarRange.js +111 -112
- package/dist/Components/CalendarRange/index.d.ts +1 -1
- package/dist/Components/CalendarYear/CalendarYear.vue_vue_type_script_setup_true_lang.js +0 -1
- package/dist/Components/CalendarYear/calendarYear.types.d.ts +1 -17
- package/dist/Components/CalendarYear/composables/useCalendarYear.d.ts +1 -1
- package/dist/Components/CalendarYear/composables/useCalendarYear.js +27 -27
- package/dist/Components/CalendarYear/index.d.ts +1 -1
- package/dist/Components/ColorField/ColorField.js +5 -0
- package/dist/Components/ColorField/ColorField.vue.d.ts +38 -0
- package/dist/Components/ColorField/ColorField.vue_vue_type_script_setup_true_lang.js +149 -0
- package/dist/Components/ColorField/colorField.types.d.ts +179 -0
- package/dist/Components/ColorField/composables/useColorField.d.ts +748 -0
- package/dist/Components/ColorField/composables/useColorField.js +182 -0
- package/dist/Components/ColorField/index.d.ts +3 -0
- package/dist/Components/ColorField/index.js +3 -0
- package/dist/Components/ColorPicker/ColorPicker.js +5 -0
- package/dist/Components/ColorPicker/ColorPicker.vue.d.ts +21 -0
- package/dist/Components/ColorPicker/ColorPicker.vue_vue_type_script_setup_true_lang.js +91 -0
- package/dist/Components/ColorPicker/colorPicker.types.d.ts +200 -0
- package/dist/Components/ColorPicker/composables/useColorPicker.d.ts +111 -0
- package/dist/Components/ColorPicker/composables/useColorPicker.js +253 -0
- package/dist/Components/ColorPicker/index.d.ts +3 -0
- package/dist/Components/ColorPicker/index.js +3 -0
- package/dist/Components/DatePicker/DatePicker.vue_vue_type_script_setup_true_lang.js +4 -7
- package/dist/Components/DatePicker/composables/useDatePicker.d.ts +1 -6
- package/dist/Components/DatePicker/composables/useDatePicker.js +30 -9
- package/dist/Components/DatePicker/datePicker.types.d.ts +1 -29
- package/dist/Components/DatePicker/index.d.ts +1 -1
- package/dist/Components/DateRangePicker/DateRangePicker.vue_vue_type_script_setup_true_lang.js +4 -7
- package/dist/Components/DateRangePicker/composables/useDateRangePicker.d.ts +1 -6
- package/dist/Components/DateRangePicker/composables/useDateRangePicker.js +3 -9
- package/dist/Components/DateRangePicker/dateRangePicker.types.d.ts +1 -29
- package/dist/Components/DateRangePicker/index.d.ts +1 -1
- package/dist/Components/DateTimePicker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +16 -21
- package/dist/Components/DateTimePicker/composables/useDateTimePicker.d.ts +1 -10
- package/dist/Components/DateTimePicker/composables/useDateTimePicker.js +30 -39
- package/dist/Components/DateTimePicker/dateTimePicker.types.d.ts +1 -36
- package/dist/Components/DateTimePicker/index.d.ts +1 -1
- package/dist/Components/DateTimeRangePicker/DateTimeRangePicker.vue_vue_type_script_setup_true_lang.js +20 -27
- package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.d.ts +1 -10
- package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.js +34 -43
- package/dist/Components/DateTimeRangePicker/dateTimeRangePicker.types.d.ts +1 -36
- package/dist/Components/DateTimeRangePicker/index.d.ts +1 -1
- package/dist/Components/FieldOverlay/composables/useFieldOverlay.js +17 -10
- package/dist/Components/FieldOverlay/fieldOverlay.types.d.ts +3 -0
- package/dist/Components/FormField/composables/useFormField.d.ts +1 -1
- package/dist/Components/Listbox/Listbox.vue_vue_type_script_setup_true_lang.js +1 -2
- package/dist/Components/Listbox/composables/useListbox.d.ts +1 -10
- package/dist/Components/Listbox/composables/useListbox.js +50 -51
- package/dist/Components/Listbox/index.d.ts +0 -1
- package/dist/Components/Listbox/listbox.types.d.ts +0 -6
- package/dist/Components/Select/composables/useSelect.d.ts +0 -1
- package/dist/Components/Select/composables/useSelect.js +0 -1
- package/dist/Components/Step/Step.js +5 -0
- package/dist/Components/Step/Step.vue.d.ts +11 -0
- package/dist/Components/Step/Step.vue_vue_type_script_setup_true_lang.js +32 -0
- package/dist/Components/Step/composables/useStep.d.ts +56 -0
- package/dist/Components/Step/composables/useStep.js +162 -0
- package/dist/Components/Step/index.d.ts +3 -0
- package/dist/Components/Step/index.js +3 -0
- package/dist/Components/Step/step.types.d.ts +160 -0
- package/dist/Components/Stepper/Stepper.js +5 -0
- package/dist/Components/Stepper/Stepper.vue.d.ts +24 -0
- package/dist/Components/Stepper/Stepper.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/Components/Stepper/composables/useStepper.d.ts +18 -0
- package/dist/Components/Stepper/composables/useStepper.js +91 -0
- package/dist/Components/Stepper/index.d.ts +4 -0
- package/dist/Components/Stepper/index.js +4 -0
- package/dist/Components/Stepper/stepper.types.d.ts +93 -0
- package/dist/Components/Stepper/stepperInjectionKey.d.ts +77 -0
- package/dist/Components/Stepper/stepperInjectionKey.js +4 -0
- package/dist/Components/TimePanel/TimePanel.vue_vue_type_script_setup_true_lang.js +0 -1
- package/dist/Components/TimePanel/composables/useTimePanel.d.ts +1 -1
- package/dist/Components/TimePanel/composables/useTimePanel.js +75 -75
- package/dist/Components/TimePanel/index.d.ts +1 -1
- package/dist/Components/TimePanel/timePanel.types.d.ts +1 -17
- package/dist/Components/TimePicker/TimePicker.vue_vue_type_script_setup_true_lang.js +10 -13
- package/dist/Components/TimePicker/composables/useTimePicker.d.ts +1 -5
- package/dist/Components/TimePicker/composables/useTimePicker.js +12 -17
- package/dist/Components/TimePicker/index.d.ts +1 -1
- package/dist/Components/TimePicker/timePicker.types.d.ts +1 -24
- package/dist/Components/TimeRangePicker/TimeRangePicker.vue_vue_type_script_setup_true_lang.js +13 -18
- package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.d.ts +1 -5
- package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.js +27 -32
- package/dist/Components/TimeRangePicker/index.d.ts +1 -1
- package/dist/Components/TimeRangePicker/timeRangePicker.types.d.ts +1 -24
- package/dist/index.d.ts +20 -12
- package/dist/index.js +88 -80
- package/docs/README.md +3 -0
- package/docs/components/Autocomplete.md +1 -1
- package/docs/components/BridgeUIProvider.md +9 -11
- package/docs/components/Calendar.md +2 -1
- package/docs/components/CalendarDate.md +2 -1
- package/docs/components/CalendarMonth.md +2 -1
- package/docs/components/CalendarRange.md +2 -1
- package/docs/components/CalendarYear.md +2 -1
- package/docs/components/ColorField.md +93 -0
- package/docs/components/ColorPicker.md +78 -0
- package/docs/components/DatePicker.md +2 -1
- package/docs/components/DateRangePicker.md +2 -1
- package/docs/components/DateTimePicker.md +2 -1
- package/docs/components/DateTimeRangePicker.md +2 -1
- package/docs/components/FieldOverlay.md +1 -1
- package/docs/components/Select.md +1 -1
- package/docs/components/Stepper.md +60 -0
- package/docs/components/TimePanel.md +2 -1
- package/docs/components/TimePicker.md +2 -1
- package/docs/components/TimeRangePicker.md +2 -1
- package/docs/examples/icon-fontawesome.ts +2 -0
- package/docs/examples/icon-heroicons.ts +2 -0
- package/docs/examples/icon-lucide.ts +2 -0
- package/docs/examples/icon-phosphor.ts +2 -0
- package/docs/examples/icon-tabler.ts +2 -0
- package/package.json +2 -2
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { ButtonHTMLAttributes, HTMLAttributes, Slot } from 'vue';
|
|
2
|
+
import { MergeHtmlProps } from '@bridge-ui/core/Utils';
|
|
3
|
+
import { IconSource } from '../../Adapters/Icon';
|
|
4
|
+
import { IconProps } from '../Icon';
|
|
5
|
+
export interface StepClasses {
|
|
6
|
+
/**
|
|
7
|
+
* Classes merged onto the connector line.
|
|
8
|
+
*/
|
|
9
|
+
connector?: string;
|
|
10
|
+
/**
|
|
11
|
+
* Classes merged onto optional vertical body content.
|
|
12
|
+
*/
|
|
13
|
+
content?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Classes merged onto the description.
|
|
16
|
+
*/
|
|
17
|
+
description?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Classes merged onto the indicator icon.
|
|
20
|
+
*/
|
|
21
|
+
icon?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Classes merged onto the circle / number indicator.
|
|
24
|
+
*/
|
|
25
|
+
indicator?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Classes merged onto the step title.
|
|
28
|
+
*/
|
|
29
|
+
label?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Classes merged onto the list item.
|
|
32
|
+
*/
|
|
33
|
+
root?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Classes merged onto the step trigger.
|
|
36
|
+
*/
|
|
37
|
+
trigger?: string;
|
|
38
|
+
}
|
|
39
|
+
export interface StepCustomProps {
|
|
40
|
+
/**
|
|
41
|
+
* Props forwarded to the connector line.
|
|
42
|
+
*
|
|
43
|
+
* @default undefined
|
|
44
|
+
*/
|
|
45
|
+
connector?: HTMLAttributes;
|
|
46
|
+
/**
|
|
47
|
+
* Props forwarded to optional vertical body content.
|
|
48
|
+
*
|
|
49
|
+
* @default undefined
|
|
50
|
+
*/
|
|
51
|
+
content?: HTMLAttributes;
|
|
52
|
+
/**
|
|
53
|
+
* Props forwarded to the description.
|
|
54
|
+
*
|
|
55
|
+
* @default undefined
|
|
56
|
+
*/
|
|
57
|
+
description?: HTMLAttributes;
|
|
58
|
+
/**
|
|
59
|
+
* Props forwarded to the indicator `Icon`.
|
|
60
|
+
*
|
|
61
|
+
* @default undefined
|
|
62
|
+
*/
|
|
63
|
+
icon?: Partial<Omit<IconProps, "icon">>;
|
|
64
|
+
/**
|
|
65
|
+
* Props forwarded to the circle / number indicator.
|
|
66
|
+
*
|
|
67
|
+
* @default undefined
|
|
68
|
+
*/
|
|
69
|
+
indicator?: HTMLAttributes;
|
|
70
|
+
/**
|
|
71
|
+
* Props forwarded to the step title.
|
|
72
|
+
*
|
|
73
|
+
* @default undefined
|
|
74
|
+
*/
|
|
75
|
+
label?: HTMLAttributes;
|
|
76
|
+
/**
|
|
77
|
+
* Props forwarded to the list item.
|
|
78
|
+
*
|
|
79
|
+
* @default undefined
|
|
80
|
+
*/
|
|
81
|
+
root?: HTMLAttributes;
|
|
82
|
+
/**
|
|
83
|
+
* Props forwarded to the step trigger.
|
|
84
|
+
*
|
|
85
|
+
* @default undefined
|
|
86
|
+
*/
|
|
87
|
+
trigger?: ButtonHTMLAttributes;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* One step in a `Stepper`. Must be used inside `Stepper`.
|
|
91
|
+
*/
|
|
92
|
+
export interface StepOwnProps {
|
|
93
|
+
/**
|
|
94
|
+
* Classes for step parts.
|
|
95
|
+
*
|
|
96
|
+
* @default undefined
|
|
97
|
+
*/
|
|
98
|
+
classes?: StepClasses;
|
|
99
|
+
/**
|
|
100
|
+
* Force completed state (else derived from index vs `activeStep`).
|
|
101
|
+
*
|
|
102
|
+
* @default undefined
|
|
103
|
+
*/
|
|
104
|
+
completed?: boolean;
|
|
105
|
+
/**
|
|
106
|
+
* Extra props for internal parts.
|
|
107
|
+
*
|
|
108
|
+
* @default undefined
|
|
109
|
+
*/
|
|
110
|
+
customProps?: StepCustomProps;
|
|
111
|
+
/**
|
|
112
|
+
* Secondary text under the label.
|
|
113
|
+
*
|
|
114
|
+
* @default undefined
|
|
115
|
+
*/
|
|
116
|
+
description?: string;
|
|
117
|
+
/**
|
|
118
|
+
* Non-interactive step.
|
|
119
|
+
*
|
|
120
|
+
* @default false
|
|
121
|
+
*/
|
|
122
|
+
disabled?: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* Error styling on the indicator.
|
|
125
|
+
*
|
|
126
|
+
* @default false
|
|
127
|
+
*/
|
|
128
|
+
error?: boolean;
|
|
129
|
+
/**
|
|
130
|
+
* Override the default numeric / check indicator.
|
|
131
|
+
*
|
|
132
|
+
* @default undefined
|
|
133
|
+
*/
|
|
134
|
+
icon?: IconSource;
|
|
135
|
+
/**
|
|
136
|
+
* Step title (prefer `#label` slot when set).
|
|
137
|
+
*
|
|
138
|
+
* @default undefined
|
|
139
|
+
*/
|
|
140
|
+
label?: string;
|
|
141
|
+
}
|
|
142
|
+
export interface StepSlots {
|
|
143
|
+
/**
|
|
144
|
+
* Optional body shown under the step when `orientation="vertical"` and active.
|
|
145
|
+
*/
|
|
146
|
+
default?: Slot<undefined>;
|
|
147
|
+
/**
|
|
148
|
+
* Custom description (overrides `description` when set).
|
|
149
|
+
*/
|
|
150
|
+
description?: Slot<undefined>;
|
|
151
|
+
/**
|
|
152
|
+
* Custom indicator content (overrides number / check / `icon`).
|
|
153
|
+
*/
|
|
154
|
+
icon?: Slot<undefined>;
|
|
155
|
+
/**
|
|
156
|
+
* Custom title (overrides `label` when set).
|
|
157
|
+
*/
|
|
158
|
+
label?: Slot<undefined>;
|
|
159
|
+
}
|
|
160
|
+
export type StepProps = MergeHtmlProps<StepOwnProps, HTMLAttributes>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { StepperOwnProps, StepperSlots } from './stepper.types';
|
|
2
|
+
type __VLS_Slots = StepperSlots;
|
|
3
|
+
type __VLS_Props = StepperOwnProps;
|
|
4
|
+
type __VLS_ModelProps = {
|
|
5
|
+
modelValue?: number;
|
|
6
|
+
};
|
|
7
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
8
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
9
|
+
change: (step: number) => any;
|
|
10
|
+
"update:modelValue": (...args: unknown[]) => any;
|
|
11
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
12
|
+
onChange?: ((step: number) => any) | undefined;
|
|
13
|
+
"onUpdate:modelValue"?: ((...args: unknown[]) => any) | undefined;
|
|
14
|
+
}>, {
|
|
15
|
+
linear: boolean;
|
|
16
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
17
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
18
|
+
declare const _default: typeof __VLS_export;
|
|
19
|
+
export default _default;
|
|
20
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
21
|
+
new (): {
|
|
22
|
+
$slots: S;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { useStepper as e } from "./composables/useStepper.js";
|
|
2
|
+
import { createElementBlock as t, createElementVNode as n, defineComponent as r, guardReactiveProps as i, mergeModels as a, normalizeProps as o, openBlock as s, renderSlot as c, unref as l, useModel as u } from "vue";
|
|
3
|
+
//#region src/Components/Stepper/Stepper.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
+
var d = /*@__PURE__*/ r({
|
|
5
|
+
inheritAttrs: !1,
|
|
6
|
+
__name: "Stepper",
|
|
7
|
+
props: /*@__PURE__*/ a({
|
|
8
|
+
classes: {},
|
|
9
|
+
color: {},
|
|
10
|
+
customProps: {},
|
|
11
|
+
linear: {
|
|
12
|
+
type: Boolean,
|
|
13
|
+
default: !0
|
|
14
|
+
},
|
|
15
|
+
orientation: {},
|
|
16
|
+
size: {}
|
|
17
|
+
}, {
|
|
18
|
+
modelValue: { default: 0 },
|
|
19
|
+
modelModifiers: {}
|
|
20
|
+
}),
|
|
21
|
+
emits: /*@__PURE__*/ a(["change", "update:modelValue"], ["update:modelValue"]),
|
|
22
|
+
setup(r, { emit: a }) {
|
|
23
|
+
let d = a, f = r, p = u(r, "modelValue"), { listBind: m, rootBind: h } = e(f, {
|
|
24
|
+
size: "md",
|
|
25
|
+
linear: !0,
|
|
26
|
+
color: "primary",
|
|
27
|
+
orientation: "horizontal"
|
|
28
|
+
}, p, d);
|
|
29
|
+
return (e, r) => (s(), t("nav", o(i(l(h))), [n("ol", o(i(l(m))), [c(e.$slots, "default")], 16)], 16));
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
//#endregion
|
|
33
|
+
export { d as default };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Ref, SetupContext } from 'vue';
|
|
2
|
+
import { LibDefaultsShape, MergeLibDefaults } from '@bridge-ui/core/Utils';
|
|
3
|
+
import { StepperEmits, StepperOwnProps, StepperProps } from '../stepper.types';
|
|
4
|
+
import { StepperContextValue } from '../stepperInjectionKey';
|
|
5
|
+
type StepperLibDefaults = LibDefaultsShape<StepperOwnProps, "size" | "color" | "linear" | "orientation">;
|
|
6
|
+
type StepperMerged = MergeLibDefaults<StepperOwnProps, StepperLibDefaults>;
|
|
7
|
+
export declare function useStepper(props: StepperOwnProps, libDefaults: StepperLibDefaults, model: Ref<number | undefined>, emit: SetupContext<StepperEmits>["emit"]): {
|
|
8
|
+
merged: import('vue').ComputedRef<StepperMerged>;
|
|
9
|
+
listBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
|
|
10
|
+
class: string;
|
|
11
|
+
}, "class", import('vue').OlHTMLAttributes | undefined, {}>>;
|
|
12
|
+
rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<{
|
|
13
|
+
"aria-label": string;
|
|
14
|
+
class: string;
|
|
15
|
+
}, "class", import('vue').HTMLAttributes | undefined, Omit<StepperProps, "color" | "orientation" | "size" | "classes" | "customProps" | "linear">>>;
|
|
16
|
+
contextValue: import('vue').ComputedRef<StepperContextValue>;
|
|
17
|
+
};
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { mergePartBind as e, useBridgeUIComponent as t, useBridgeUIMergedRegistryClasses as n } from "../../../Utils/index.js";
|
|
2
|
+
import { STEPPER_INJECTION_KEY as r } from "../stepperInjectionKey.js";
|
|
3
|
+
import { computed as i, provide as a, ref as o, useAttrs as s, useId as c } from "vue";
|
|
4
|
+
import { get as l } from "es-toolkit/compat";
|
|
5
|
+
import { getAdjacentStepperIndex as u, getStepperStepId as d } from "@bridge-ui/core/Domain";
|
|
6
|
+
import { stepperChromeProps as f, stepperColorProps as p, stepperOrientationProps as m, stepperSizeProps as h } from "@bridge-ui/core/Tokens";
|
|
7
|
+
import { cn as g, mergeBridgeUILayeredClasses as _, splitComponentProps as v } from "@bridge-ui/core/Utils";
|
|
8
|
+
//#region src/Components/Stepper/composables/useStepper.ts
|
|
9
|
+
var y = [
|
|
10
|
+
"size",
|
|
11
|
+
"color",
|
|
12
|
+
"linear",
|
|
13
|
+
"classes",
|
|
14
|
+
"customProps",
|
|
15
|
+
"orientation"
|
|
16
|
+
];
|
|
17
|
+
function b(b, x, S, C) {
|
|
18
|
+
let w = c(), T = s(), E = `bridge-stepper${w}`, D = o([]), O = /* @__PURE__ */ new Map(), k = i(() => v({
|
|
19
|
+
props: {
|
|
20
|
+
...T,
|
|
21
|
+
...b
|
|
22
|
+
},
|
|
23
|
+
bridgeKeys: y
|
|
24
|
+
})), { merged: A, entry: j } = t({
|
|
25
|
+
libDefaults: x,
|
|
26
|
+
componentName: "Stepper",
|
|
27
|
+
props: () => k.value.componentProps
|
|
28
|
+
}), M = i(() => S.value ?? 0);
|
|
29
|
+
function N(e) {
|
|
30
|
+
return D.value.includes(e) || (D.value = [...D.value, e]), () => {
|
|
31
|
+
D.value = D.value.filter((t) => t !== e);
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
function P(e, t) {
|
|
35
|
+
O.set(e, t);
|
|
36
|
+
}
|
|
37
|
+
function F(e) {
|
|
38
|
+
let t = O.get(e);
|
|
39
|
+
t?.disabled || t?.clickable === !1 || (S.value = e, C("update:modelValue", e), C("change", e));
|
|
40
|
+
}
|
|
41
|
+
function I(e) {
|
|
42
|
+
document.getElementById(d(E, e))?.focus();
|
|
43
|
+
}
|
|
44
|
+
function L(e, t) {
|
|
45
|
+
let n = /* @__PURE__ */ new Set();
|
|
46
|
+
return O.forEach((e, t) => {
|
|
47
|
+
(e.disabled || !e.clickable) && n.add(t);
|
|
48
|
+
}), u(D.value.length, e, t, n);
|
|
49
|
+
}
|
|
50
|
+
function R(e) {
|
|
51
|
+
return D.value.indexOf(e);
|
|
52
|
+
}
|
|
53
|
+
let z = n({
|
|
54
|
+
entry: j,
|
|
55
|
+
props: () => k.value.componentProps
|
|
56
|
+
}), B = i(() => _(h, j.value?.tokens?.size)), V = i(() => _(p, j.value?.tokens?.color)), H = i(() => _(m, j.value?.tokens?.orientation)), U = i(() => l(B.value, A.value.size)), W = i(() => l(V.value, A.value.color)), G = i(() => l(V.value, "error")), K = i(() => l(H.value, A.value.orientation)), q = i(() => ({
|
|
57
|
+
getIndex: R,
|
|
58
|
+
focusStep: I,
|
|
59
|
+
selectStep: F,
|
|
60
|
+
registerStep: N,
|
|
61
|
+
id: E,
|
|
62
|
+
getAdjacentIndex: L,
|
|
63
|
+
registerStepMeta: P,
|
|
64
|
+
sizeItem: U.value,
|
|
65
|
+
colorItem: W.value,
|
|
66
|
+
activeStep: M.value,
|
|
67
|
+
errorColorItem: G.value,
|
|
68
|
+
linear: A.value.linear === !0,
|
|
69
|
+
orientationItem: K.value,
|
|
70
|
+
orientation: String(A.value.orientation)
|
|
71
|
+
}));
|
|
72
|
+
a(r, q);
|
|
73
|
+
let J = i(() => e(A.value.customProps?.root, k.value.inheritedAttrs, {
|
|
74
|
+
"aria-label": "Progress",
|
|
75
|
+
class: g({ [l(z.value, "root") ?? ""]: !0 })
|
|
76
|
+
}));
|
|
77
|
+
return {
|
|
78
|
+
merged: A,
|
|
79
|
+
listBind: i(() => e(A.value.customProps?.list, {}, { class: g({
|
|
80
|
+
[f.list]: !0,
|
|
81
|
+
[l(U.value, "track") ?? ""]: !0,
|
|
82
|
+
[l(K.value, "list") ?? ""]: !0,
|
|
83
|
+
[l(z.value, "list") ?? ""]: !0,
|
|
84
|
+
"[&>li:last-child_[data-part=connector]]:hidden": !0
|
|
85
|
+
}) })),
|
|
86
|
+
rootBind: J,
|
|
87
|
+
contextValue: q
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
//#endregion
|
|
91
|
+
export { b as useStepper };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { useStepper } from './composables/useStepper';
|
|
2
|
+
export type { StepperClasses, StepperColorOverrides, StepperCustomProps, StepperEmits, StepperOrientationOverrides, StepperOwnProps, StepperProps, StepperSizeOverrides, StepperSlots, } from './stepper.types';
|
|
3
|
+
export { default as Stepper } from './Stepper.vue';
|
|
4
|
+
export { STEPPER_INJECTION_KEY, type StepperContextValue, type StepperStepMeta, } from './stepperInjectionKey';
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { HTMLAttributes, OlHTMLAttributes, Slot } from 'vue';
|
|
2
|
+
import { StepperColor, StepperOrientation, StepperSize } from '@bridge-ui/core/Tokens';
|
|
3
|
+
import { MergeHtmlProps, MergeProps } from '@bridge-ui/core/Utils';
|
|
4
|
+
export interface StepperSizeOverrides {}
|
|
5
|
+
export interface StepperColorOverrides {}
|
|
6
|
+
export interface StepperOrientationOverrides {}
|
|
7
|
+
export interface StepperClasses {
|
|
8
|
+
/**
|
|
9
|
+
* Classes merged onto the ordered list.
|
|
10
|
+
*/
|
|
11
|
+
list?: string;
|
|
12
|
+
/**
|
|
13
|
+
* Classes merged onto the nav root.
|
|
14
|
+
*/
|
|
15
|
+
root?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface StepperCustomProps {
|
|
18
|
+
/**
|
|
19
|
+
* Props forwarded to the ordered list.
|
|
20
|
+
*
|
|
21
|
+
* @default undefined
|
|
22
|
+
*/
|
|
23
|
+
list?: OlHTMLAttributes;
|
|
24
|
+
/**
|
|
25
|
+
* Props forwarded to the nav root.
|
|
26
|
+
*
|
|
27
|
+
* @default undefined
|
|
28
|
+
*/
|
|
29
|
+
root?: HTMLAttributes;
|
|
30
|
+
}
|
|
31
|
+
export interface StepperEmits {
|
|
32
|
+
/**
|
|
33
|
+
* Emitted when the active index changes.
|
|
34
|
+
*/
|
|
35
|
+
change: [step: number];
|
|
36
|
+
/**
|
|
37
|
+
* Emitted when `v-model` should update.
|
|
38
|
+
*/
|
|
39
|
+
"update:modelValue": [step: number];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Multi-step flow indicator. Compose with `Step`.
|
|
43
|
+
*/
|
|
44
|
+
export interface StepperOwnProps {
|
|
45
|
+
/**
|
|
46
|
+
* Classes for stepper parts.
|
|
47
|
+
*
|
|
48
|
+
* @default undefined
|
|
49
|
+
*/
|
|
50
|
+
classes?: StepperClasses;
|
|
51
|
+
/**
|
|
52
|
+
* Accent color for active / completed steps.
|
|
53
|
+
*
|
|
54
|
+
* @default "primary"
|
|
55
|
+
*/
|
|
56
|
+
color?: MergeProps<StepperColor, StepperColorOverrides>;
|
|
57
|
+
/**
|
|
58
|
+
* Extra props for internal parts.
|
|
59
|
+
*
|
|
60
|
+
* @default undefined
|
|
61
|
+
*/
|
|
62
|
+
customProps?: StepperCustomProps;
|
|
63
|
+
/**
|
|
64
|
+
* Block jumping ahead of incomplete steps.
|
|
65
|
+
*
|
|
66
|
+
* @default true
|
|
67
|
+
*/
|
|
68
|
+
linear?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Layout direction.
|
|
71
|
+
*
|
|
72
|
+
* @default "horizontal"
|
|
73
|
+
*/
|
|
74
|
+
orientation?: MergeProps<StepperOrientation, StepperOrientationOverrides>;
|
|
75
|
+
/**
|
|
76
|
+
* Indicator and label scale.
|
|
77
|
+
*
|
|
78
|
+
* @default "md"
|
|
79
|
+
*/
|
|
80
|
+
size?: MergeProps<StepperSize, StepperSizeOverrides>;
|
|
81
|
+
}
|
|
82
|
+
export interface StepperSlots {
|
|
83
|
+
/**
|
|
84
|
+
* The children to render (`Step`, etc.).
|
|
85
|
+
*/
|
|
86
|
+
default?: Slot<undefined>;
|
|
87
|
+
}
|
|
88
|
+
export type StepperProps = MergeHtmlProps<StepperOwnProps, HTMLAttributes> & {
|
|
89
|
+
/**
|
|
90
|
+
* Bound with `v-model` on the component (`defineModel` internally).
|
|
91
|
+
*/
|
|
92
|
+
modelValue?: number;
|
|
93
|
+
};
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { ComputedRef, InjectionKey } from 'vue';
|
|
2
|
+
import { StepperColorItem, StepperOrientationItem, StepperSizeItem } from '@bridge-ui/core/Tokens';
|
|
3
|
+
/**
|
|
4
|
+
* Per-step flags registered for click / keyboard gating.
|
|
5
|
+
*/
|
|
6
|
+
export type StepperStepMeta = {
|
|
7
|
+
/**
|
|
8
|
+
* Whether the step may be selected.
|
|
9
|
+
*/
|
|
10
|
+
clickable: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Whether the step is disabled.
|
|
13
|
+
*/
|
|
14
|
+
disabled: boolean;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Shared stepper state for `Step` descendants.
|
|
18
|
+
*/
|
|
19
|
+
export type StepperContextValue = {
|
|
20
|
+
/**
|
|
21
|
+
* Bound 0-based active index.
|
|
22
|
+
*/
|
|
23
|
+
activeStep: number;
|
|
24
|
+
/**
|
|
25
|
+
* Accent color item for the stepper `color` token.
|
|
26
|
+
*/
|
|
27
|
+
colorItem: undefined | StepperColorItem;
|
|
28
|
+
/**
|
|
29
|
+
* Error palette (used when a step has `error`).
|
|
30
|
+
*/
|
|
31
|
+
errorColorItem: undefined | StepperColorItem;
|
|
32
|
+
/**
|
|
33
|
+
* Focus a step trigger by index.
|
|
34
|
+
*/
|
|
35
|
+
focusStep: (index: number) => void;
|
|
36
|
+
/**
|
|
37
|
+
* Next enabled, clickable index from `from`, wrapping around.
|
|
38
|
+
*/
|
|
39
|
+
getAdjacentIndex: (from: number, direction: 1 | -1) => number;
|
|
40
|
+
/**
|
|
41
|
+
* Resolves a registered step's 0-based index.
|
|
42
|
+
*/
|
|
43
|
+
getIndex: (id: string) => number;
|
|
44
|
+
/**
|
|
45
|
+
* Stable id prefix for step / content pairing.
|
|
46
|
+
*/
|
|
47
|
+
id: string;
|
|
48
|
+
/**
|
|
49
|
+
* When true, block jumping ahead of incomplete steps.
|
|
50
|
+
*/
|
|
51
|
+
linear: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Layout direction token key.
|
|
54
|
+
*/
|
|
55
|
+
orientation: string;
|
|
56
|
+
/**
|
|
57
|
+
* Orientation class map.
|
|
58
|
+
*/
|
|
59
|
+
orientationItem: undefined | StepperOrientationItem;
|
|
60
|
+
/**
|
|
61
|
+
* Registers a step id and returns unregister.
|
|
62
|
+
*/
|
|
63
|
+
registerStep: (id: string) => () => void;
|
|
64
|
+
/**
|
|
65
|
+
* Records clickable / disabled for an index.
|
|
66
|
+
*/
|
|
67
|
+
registerStepMeta: (index: number, meta: StepperStepMeta) => void;
|
|
68
|
+
/**
|
|
69
|
+
* Selects a step when clickable.
|
|
70
|
+
*/
|
|
71
|
+
selectStep: (index: number) => void;
|
|
72
|
+
/**
|
|
73
|
+
* Size class map.
|
|
74
|
+
*/
|
|
75
|
+
sizeItem: undefined | StepperSizeItem;
|
|
76
|
+
};
|
|
77
|
+
export declare const STEPPER_INJECTION_KEY: InjectionKey<ComputedRef<StepperContextValue>>;
|
|
@@ -22,7 +22,7 @@ export type TimePanelItem = {
|
|
|
22
22
|
*/
|
|
23
23
|
export declare function useTimePanel(props: MaybeRefOrGetter<TimePanelOwnProps>, libDefaults: TimePanelLibDefaults, emit: (event: "change", value: Date | null) => void): {
|
|
24
24
|
merged: import('vue').ComputedRef<TimePanelMerged>;
|
|
25
|
-
rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<TimePanelOwnProps, "error" | "color" | "fill" | "value" | "classes" | "
|
|
25
|
+
rootBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, Partial<Omit<TimePanelOwnProps, "error" | "color" | "fill" | "value" | "classes" | "customProps" | "rounded" | "disabled" | "readOnly" | "timeZone" | "ampm" | "disableTimes" | "interval" | "maxTime" | "minTime" | "showSeconds">>>>;
|
|
26
26
|
hourItems: import('vue').ComputedRef<TimePanelItem[]>;
|
|
27
27
|
columnBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {}>>;
|
|
28
28
|
getHourBind: (item: TimePanelItem) => import('@bridge-ui/core/Utils').MergePartBind<object, "class", import('vue').ButtonHTMLAttributes | undefined, {
|