@nexdom/uimed-vue 2.0.0-beta.35 → 2.0.0-beta.37
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/AGENTS.md +1 -0
- package/dist/components.d.ts +82 -40
- package/dist/components.js +63 -4
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -184,6 +184,7 @@ Use an existing composable (e.g. `use-toast`) as the reference, and deliver in t
|
|
|
184
184
|
|
|
185
185
|
- Keep components thin: a component wires props, slots and events to Vuetify. Logic beyond that (focus management, queues, DOM lookups, comparisons) goes into an internal composable with its own unit tests.
|
|
186
186
|
- Path aliases: `@/*` → `src/*`, `@e2e/*` → `e2e/*`.
|
|
187
|
+
- A prop or option that points to a navigation destination is typed `RouteLocationRaw` (from `vue-router`) and named `route` (e.g. the items of `UNavigationMenu`), unless the name says which destination it is (e.g. `help` in `UAppBar`). Don't split it into `to`/`href` props: convert it with `useRouteProps`/`routeToProps` (`src/composables/navigation/use-route-props.ts`), which binds strings starting with `http` as `href` and anything else as the router's `to`.
|
|
187
188
|
- Every public component follows this pattern to block access to internals and give it an editor-hover description:
|
|
188
189
|
|
|
189
190
|
```vue
|
package/dist/components.d.ts
CHANGED
|
@@ -182,8 +182,8 @@ type MainProps = {
|
|
|
182
182
|
*
|
|
183
183
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/main | Main Guide}
|
|
184
184
|
*/
|
|
185
|
-
declare const _default$
|
|
186
|
-
declare const __VLS_export$
|
|
185
|
+
declare const _default$13: typeof __VLS_export$18;
|
|
186
|
+
declare const __VLS_export$18: __VLS_WithSlots$11<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<MainProps & {
|
|
187
187
|
notificationsOpen?: boolean;
|
|
188
188
|
}, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {
|
|
189
189
|
"update:notificationsOpen": (value: boolean) => any;
|
|
@@ -194,7 +194,7 @@ declare const __VLS_export$17: __VLS_WithSlots$10<import("vue", { with: { "resol
|
|
|
194
194
|
}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
195
195
|
default?: (props: {}) => any;
|
|
196
196
|
}>;
|
|
197
|
-
type __VLS_WithSlots$
|
|
197
|
+
type __VLS_WithSlots$11<T, S> = T & {
|
|
198
198
|
new (): {
|
|
199
199
|
$slots: S;
|
|
200
200
|
};
|
|
@@ -215,15 +215,15 @@ type __VLS_WithSlots$10<T, S> = T & {
|
|
|
215
215
|
*
|
|
216
216
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/button | Button Guide}
|
|
217
217
|
*/
|
|
218
|
-
declare const _default$1: typeof __VLS_export$
|
|
219
|
-
declare const __VLS_export$
|
|
218
|
+
declare const _default$1: typeof __VLS_export$17;
|
|
219
|
+
declare const __VLS_export$17: __VLS_WithSlots$10<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<ButtonProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {} & {
|
|
220
220
|
click: (event: MouseEvent) => any;
|
|
221
221
|
}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<ButtonProps> & Readonly<{
|
|
222
222
|
onClick?: ((event: MouseEvent) => any) | undefined;
|
|
223
223
|
}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
224
224
|
default?: (props: {}) => any;
|
|
225
225
|
}>;
|
|
226
|
-
type __VLS_WithSlots$
|
|
226
|
+
type __VLS_WithSlots$10<T, S> = T & {
|
|
227
227
|
new (): {
|
|
228
228
|
$slots: S;
|
|
229
229
|
};
|
|
@@ -395,8 +395,8 @@ type AutocompleteFieldProps<T = string, Multiple extends boolean = false> = {
|
|
|
395
395
|
*
|
|
396
396
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/autocomplete-field | AutocompleteField Guide}
|
|
397
397
|
*/
|
|
398
|
-
declare const _default: typeof __VLS_export$
|
|
399
|
-
declare const __VLS_export$
|
|
398
|
+
declare const _default: typeof __VLS_export$16;
|
|
399
|
+
declare const __VLS_export$16: <T = string, Multiple extends boolean = false>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal$2<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
400
400
|
props: import("vue").PublicProps & __VLS_PrettifyLocal$2<(AutocompleteFieldProps<T, Multiple> & {
|
|
401
401
|
modelValue?: Multiple extends true ? T[] : T;
|
|
402
402
|
}) & {
|
|
@@ -426,8 +426,8 @@ type __VLS_PrettifyLocal$2<T> = (T extends any ? { [K in keyof T]: T[K]; } : { [
|
|
|
426
426
|
*
|
|
427
427
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/text-field | TextField Guide}
|
|
428
428
|
*/
|
|
429
|
-
declare const _default$
|
|
430
|
-
declare const __VLS_export$
|
|
429
|
+
declare const _default$18: typeof __VLS_export$15;
|
|
430
|
+
declare const __VLS_export$15: import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<TextFieldProps & {
|
|
431
431
|
modelValue?: string;
|
|
432
432
|
}, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {
|
|
433
433
|
"update:modelValue": (value: string) => any;
|
|
@@ -489,8 +489,8 @@ type CheckboxProps<T = boolean> = {
|
|
|
489
489
|
*
|
|
490
490
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/checkbox | Checkbox Guide}
|
|
491
491
|
*/
|
|
492
|
-
declare const _default$2: typeof __VLS_export$
|
|
493
|
-
declare const __VLS_export$
|
|
492
|
+
declare const _default$2: typeof __VLS_export$14;
|
|
493
|
+
declare const __VLS_export$14: <T = any>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal$1<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
494
494
|
props: import("vue").PublicProps & __VLS_PrettifyLocal$1<(CheckboxProps<boolean | T> & {
|
|
495
495
|
modelValue?: T;
|
|
496
496
|
}) & {
|
|
@@ -606,8 +606,8 @@ type DateTimeFieldProps = {
|
|
|
606
606
|
*
|
|
607
607
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/date-time-field | DateTimeField Guide}
|
|
608
608
|
*/
|
|
609
|
-
declare const _default$7: typeof __VLS_export$
|
|
610
|
-
declare const __VLS_export$
|
|
609
|
+
declare const _default$7: typeof __VLS_export$13;
|
|
610
|
+
declare const __VLS_export$13: import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<DateTimeFieldProps & {
|
|
611
611
|
modelValue?: string;
|
|
612
612
|
}, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {
|
|
613
613
|
"update:modelValue": (value: string) => any;
|
|
@@ -652,11 +652,11 @@ type ContainerProps = {
|
|
|
652
652
|
*
|
|
653
653
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/layout | Container Guide}
|
|
654
654
|
*/
|
|
655
|
-
declare const _default$4: typeof __VLS_export$
|
|
656
|
-
declare const __VLS_export$
|
|
655
|
+
declare const _default$4: typeof __VLS_export$12;
|
|
656
|
+
declare const __VLS_export$12: __VLS_WithSlots$9<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<ContainerProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<ContainerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
657
657
|
default?: (props: {}) => any;
|
|
658
658
|
}>;
|
|
659
|
-
type __VLS_WithSlots$
|
|
659
|
+
type __VLS_WithSlots$9<T, S> = T & {
|
|
660
660
|
new (): {
|
|
661
661
|
$slots: S;
|
|
662
662
|
};
|
|
@@ -753,11 +753,11 @@ type RowProps = {
|
|
|
753
753
|
*
|
|
754
754
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/layout | Row Guide}
|
|
755
755
|
*/
|
|
756
|
-
declare const _default$
|
|
757
|
-
declare const __VLS_export$
|
|
756
|
+
declare const _default$14: typeof __VLS_export$11;
|
|
757
|
+
declare const __VLS_export$11: __VLS_WithSlots$8<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<RowProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<RowProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
758
758
|
default?: (props: {}) => any;
|
|
759
759
|
}>;
|
|
760
|
-
type __VLS_WithSlots$
|
|
760
|
+
type __VLS_WithSlots$8<T, S> = T & {
|
|
761
761
|
new (): {
|
|
762
762
|
$slots: S;
|
|
763
763
|
};
|
|
@@ -809,13 +809,13 @@ type Cols = "auto" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10"
|
|
|
809
809
|
*
|
|
810
810
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/layout | Column Guide}
|
|
811
811
|
*/
|
|
812
|
-
declare const _default$3: typeof __VLS_export$
|
|
813
|
-
declare const __VLS_export$
|
|
812
|
+
declare const _default$3: typeof __VLS_export$10;
|
|
813
|
+
declare const __VLS_export$10: __VLS_WithSlots$7<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<ColumnProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<ColumnProps> & Readonly<{}>, {
|
|
814
814
|
cols: "12" | "auto" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11";
|
|
815
815
|
}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
816
816
|
default?: (props: {}) => any;
|
|
817
817
|
}>;
|
|
818
|
-
type __VLS_WithSlots$
|
|
818
|
+
type __VLS_WithSlots$7<T, S> = T & {
|
|
819
819
|
new (): {
|
|
820
820
|
$slots: S;
|
|
821
821
|
};
|
|
@@ -852,15 +852,15 @@ type FormProps = {
|
|
|
852
852
|
*
|
|
853
853
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/form | Form Guide}
|
|
854
854
|
*/
|
|
855
|
-
declare const _default$10: typeof __VLS_export$
|
|
856
|
-
declare const __VLS_export$
|
|
855
|
+
declare const _default$10: typeof __VLS_export$9;
|
|
856
|
+
declare const __VLS_export$9: __VLS_WithSlots$6<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<FormProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {} & {
|
|
857
857
|
submit: (event: SubmitEvent) => any;
|
|
858
858
|
}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<FormProps> & Readonly<{
|
|
859
859
|
onSubmit?: ((event: SubmitEvent) => any) | undefined;
|
|
860
860
|
}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
861
861
|
default?: (props: {}) => any;
|
|
862
862
|
}>;
|
|
863
|
-
type __VLS_WithSlots$
|
|
863
|
+
type __VLS_WithSlots$6<T, S> = T & {
|
|
864
864
|
new (): {
|
|
865
865
|
$slots: S;
|
|
866
866
|
};
|
|
@@ -882,11 +882,11 @@ type __VLS_WithSlots$5<T, S> = T & {
|
|
|
882
882
|
*
|
|
883
883
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/section | Section Guide}
|
|
884
884
|
*/
|
|
885
|
-
declare const _default$
|
|
886
|
-
declare const __VLS_export$
|
|
885
|
+
declare const _default$16: typeof __VLS_export$8;
|
|
886
|
+
declare const __VLS_export$8: __VLS_WithSlots$5<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<{}, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, true, {}, any>, {
|
|
887
887
|
default?: (props: {}) => any;
|
|
888
888
|
}>;
|
|
889
|
-
type __VLS_WithSlots$
|
|
889
|
+
type __VLS_WithSlots$5<T, S> = T & {
|
|
890
890
|
new (): {
|
|
891
891
|
$slots: S;
|
|
892
892
|
};
|
|
@@ -987,11 +987,11 @@ interface SectionAction extends ButtonProps {
|
|
|
987
987
|
*
|
|
988
988
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/section | Section Guide}
|
|
989
989
|
*/
|
|
990
|
-
declare const _default$
|
|
991
|
-
declare const __VLS_export$
|
|
990
|
+
declare const _default$15: typeof __VLS_export$7;
|
|
991
|
+
declare const __VLS_export$7: __VLS_WithSlots$4<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<SectionProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<SectionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
992
992
|
default?: (props: {}) => any;
|
|
993
993
|
}>;
|
|
994
|
-
type __VLS_WithSlots$
|
|
994
|
+
type __VLS_WithSlots$4<T, S> = T & {
|
|
995
995
|
new (): {
|
|
996
996
|
$slots: S;
|
|
997
997
|
};
|
|
@@ -1062,8 +1062,8 @@ type TableProps = {
|
|
|
1062
1062
|
*
|
|
1063
1063
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/table | Table Guide}
|
|
1064
1064
|
*/
|
|
1065
|
-
declare const _default$
|
|
1066
|
-
declare const __VLS_export$
|
|
1065
|
+
declare const _default$17: typeof __VLS_export$6;
|
|
1066
|
+
declare const __VLS_export$6: import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<TableProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<TableProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>;
|
|
1067
1067
|
//#endregion
|
|
1068
1068
|
//#region src/components/details/types.d.ts
|
|
1069
1069
|
type DetailsVariant = "primary" | "secondary";
|
|
@@ -1110,11 +1110,11 @@ type DetailsProps = {
|
|
|
1110
1110
|
*
|
|
1111
1111
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/details | Details Guide}
|
|
1112
1112
|
*/
|
|
1113
|
-
declare const _default$8: typeof __VLS_export$
|
|
1114
|
-
declare const __VLS_export$
|
|
1113
|
+
declare const _default$8: typeof __VLS_export$5;
|
|
1114
|
+
declare const __VLS_export$5: __VLS_WithSlots$3<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<DetailsProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<DetailsProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
1115
1115
|
default?: (props: {}) => any;
|
|
1116
1116
|
}>;
|
|
1117
|
-
type __VLS_WithSlots$
|
|
1117
|
+
type __VLS_WithSlots$3<T, S> = T & {
|
|
1118
1118
|
new (): {
|
|
1119
1119
|
$slots: S;
|
|
1120
1120
|
};
|
|
@@ -1181,8 +1181,50 @@ type ImgProps = {
|
|
|
1181
1181
|
*
|
|
1182
1182
|
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/img | Img Guide}
|
|
1183
1183
|
*/
|
|
1184
|
-
declare const _default$11: typeof __VLS_export$
|
|
1185
|
-
declare const __VLS_export$
|
|
1184
|
+
declare const _default$11: typeof __VLS_export$4;
|
|
1185
|
+
declare const __VLS_export$4: import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<ImgProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<ImgProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>;
|
|
1186
|
+
//#endregion
|
|
1187
|
+
//#region src/components/link/types.d.ts
|
|
1188
|
+
/**
|
|
1189
|
+
* Props exposed by the {@link Link} component.
|
|
1190
|
+
*/
|
|
1191
|
+
type LinkProps = {
|
|
1192
|
+
/**
|
|
1193
|
+
* Where the link goes. A route inside the app (`"/login"`,
|
|
1194
|
+
* `{ name: "forgot-password" }`) navigates through the app's router; a URL
|
|
1195
|
+
* starting with `http` navigates through the browser, in the same tab.
|
|
1196
|
+
*/
|
|
1197
|
+
route: RouteLocationRaw;
|
|
1198
|
+
/**
|
|
1199
|
+
* Component id to use on automated tests.
|
|
1200
|
+
*/
|
|
1201
|
+
dataTestid?: string;
|
|
1202
|
+
};
|
|
1203
|
+
//#endregion
|
|
1204
|
+
//#region src/components/link/link.vue.d.ts
|
|
1205
|
+
/**
|
|
1206
|
+
* Standalone text link, such as "Forgot your password?" below a login form.
|
|
1207
|
+
* Routes inside the app navigate through the app's router, and URLs starting
|
|
1208
|
+
* with `http` navigate through the browser, in the same tab.
|
|
1209
|
+
*
|
|
1210
|
+
* @example
|
|
1211
|
+
* ```vue
|
|
1212
|
+
* <template>
|
|
1213
|
+
* <u-link route="/forgot-password">Forgot your password?</u-link>
|
|
1214
|
+
* </template>
|
|
1215
|
+
* ```
|
|
1216
|
+
*
|
|
1217
|
+
* @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/link | Link Guide}
|
|
1218
|
+
*/
|
|
1219
|
+
declare const _default$12: typeof __VLS_export$3;
|
|
1220
|
+
declare const __VLS_export$3: __VLS_WithSlots$2<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<LinkProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<LinkProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
|
|
1221
|
+
default?: (props: {}) => any;
|
|
1222
|
+
}>;
|
|
1223
|
+
type __VLS_WithSlots$2<T, S> = T & {
|
|
1224
|
+
new (): {
|
|
1225
|
+
$slots: S;
|
|
1226
|
+
};
|
|
1227
|
+
};
|
|
1186
1228
|
//#endregion
|
|
1187
1229
|
//#region src/components/data-sets/data-set/types.d.ts
|
|
1188
1230
|
/**
|
|
@@ -1451,4 +1493,4 @@ type __VLS_WithSlots<T, S> = T & {
|
|
|
1451
1493
|
};
|
|
1452
1494
|
};
|
|
1453
1495
|
//#endregion
|
|
1454
|
-
export { _default as UAutocompleteField, _default$1 as UButton, _default$2 as UCheckbox, _default$3 as UColumn, _default$4 as UContainer, _default$5 as UDataSet, _default$6 as UDataSetItem, _default$7 as UDateTimeField, _default$8 as UDetails, _default$9 as UDialog, _default$10 as UForm, _default$11 as UImg, _default$12 as
|
|
1496
|
+
export { _default as UAutocompleteField, _default$1 as UButton, _default$2 as UCheckbox, _default$3 as UColumn, _default$4 as UContainer, _default$5 as UDataSet, _default$6 as UDataSetItem, _default$7 as UDateTimeField, _default$8 as UDetails, _default$9 as UDialog, _default$10 as UForm, _default$11 as UImg, _default$12 as ULink, _default$13 as UMain, _default$14 as URow, _default$15 as USection, _default$16 as USectionContent, _default$17 as UTable, _default$18 as UTextField };
|
package/dist/components.js
CHANGED
|
@@ -3,6 +3,8 @@ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock
|
|
|
3
3
|
import { pt } from "vuetify/locale";
|
|
4
4
|
import { VApp, VAppBar, VAppBarNavIcon, VAppBarTitle, VAutocomplete, VAvatar, VBadge, VBtn, VCard, VCardActions, VCardText, VCheckboxBtn, VCol, VCombobox, VContainer, VDataIterator, VDatePicker, VDialog, VDivider, VEmptyState, VExpansionPanel, VExpansionPanelText, VExpansionPanelTitle, VExpansionPanels, VForm, VIcon, VIconBtn, VImg, VList, VListGroup, VListItem, VListItemAction, VListSubheader, VLocaleProvider, VMain, VMenu, VNavigationDrawer, VPagination, VProgressCircular, VProgressLinear, VRow, VSkeletonLoader, VSnackbarQueue, VTable, VTextField, VTimePicker } from "vuetify/components";
|
|
5
5
|
import { formatDateTime, isEmail, isEmpty, isPhone, isUrl } from "@nexdom/shared/utils";
|
|
6
|
+
import { VHighlight } from "vuetify/labs/VHighlight";
|
|
7
|
+
import { RouterLink } from "vue-router";
|
|
6
8
|
//#region src/composables/navigation/use-route-props.ts
|
|
7
9
|
function useRouteProps(route) {
|
|
8
10
|
return computed(() => routeToProps(route));
|
|
@@ -1343,6 +1345,8 @@ var autocomplete_field_default = /* @__PURE__ */ defineComponent({
|
|
|
1343
1345
|
multiple: isMultiple.value
|
|
1344
1346
|
}));
|
|
1345
1347
|
const vuetifyComponent = computed(() => props.strict ? VAutocomplete : VCombobox);
|
|
1348
|
+
const search = ref("");
|
|
1349
|
+
const maskClass = computed(() => props.strict ? "v-autocomplete__mask" : "v-combobox__mask");
|
|
1346
1350
|
const normalizedItems = computed(() => {
|
|
1347
1351
|
return props.items.map((item) => {
|
|
1348
1352
|
if (typeof item === "string") return {
|
|
@@ -1356,6 +1360,8 @@ var autocomplete_field_default = /* @__PURE__ */ defineComponent({
|
|
|
1356
1360
|
return openBlock(), createBlock(resolveDynamicComponent(vuetifyComponent.value), {
|
|
1357
1361
|
modelValue: modelValue.value,
|
|
1358
1362
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
|
|
1363
|
+
search: search.value,
|
|
1364
|
+
"onUpdate:search": _cache[1] || (_cache[1] = ($event) => search.value = $event),
|
|
1359
1365
|
variant: unref(vuetifyVariant),
|
|
1360
1366
|
items: normalizedItems.value,
|
|
1361
1367
|
"data-testid": props.dataTestid,
|
|
@@ -1372,11 +1378,35 @@ var autocomplete_field_default = /* @__PURE__ */ defineComponent({
|
|
|
1372
1378
|
rules: unref(rules),
|
|
1373
1379
|
"menu-props": unref(autocompleteFieldMenuProps),
|
|
1374
1380
|
chips: ""
|
|
1375
|
-
}, {
|
|
1381
|
+
}, createSlots({
|
|
1376
1382
|
loader: withCtx((loader) => [createVNode(field_loader_default, normalizeProps(guardReactiveProps(loader)), null, 16)]),
|
|
1377
|
-
_:
|
|
1378
|
-
},
|
|
1383
|
+
_: 2
|
|
1384
|
+
}, [isMultiple.value ? {
|
|
1385
|
+
name: "item",
|
|
1386
|
+
fn: withCtx(({ props: itemProps }) => [createVNode(unref(VListItem), normalizeProps(guardReactiveProps(itemProps)), {
|
|
1387
|
+
prepend: withCtx(({ isSelected }) => [createVNode(unref(VCheckboxBtn), {
|
|
1388
|
+
"model-value": isSelected,
|
|
1389
|
+
ripple: false,
|
|
1390
|
+
inert: "",
|
|
1391
|
+
"aria-hidden": "true"
|
|
1392
|
+
}, null, 8, ["model-value"])]),
|
|
1393
|
+
title: withCtx(() => [createVNode(unref(VHighlight), {
|
|
1394
|
+
text: itemProps.title,
|
|
1395
|
+
query: search.value,
|
|
1396
|
+
"match-all": "",
|
|
1397
|
+
"ignore-case": "",
|
|
1398
|
+
"mark-class": maskClass.value
|
|
1399
|
+
}, null, 8, [
|
|
1400
|
+
"text",
|
|
1401
|
+
"query",
|
|
1402
|
+
"mark-class"
|
|
1403
|
+
])]),
|
|
1404
|
+
_: 2
|
|
1405
|
+
}, 1040)]),
|
|
1406
|
+
key: "0"
|
|
1407
|
+
} : void 0]), 1064, [
|
|
1379
1408
|
"modelValue",
|
|
1409
|
+
"search",
|
|
1380
1410
|
"variant",
|
|
1381
1411
|
"items",
|
|
1382
1412
|
"data-testid",
|
|
@@ -2283,6 +2313,35 @@ var img_default = /* @__PURE__ */ defineComponent({
|
|
|
2283
2313
|
}
|
|
2284
2314
|
});
|
|
2285
2315
|
//#endregion
|
|
2316
|
+
//#region src/components/link/link.vue
|
|
2317
|
+
var link_default = /* @__PURE__ */ defineComponent({
|
|
2318
|
+
inheritAttrs: false,
|
|
2319
|
+
__name: "link",
|
|
2320
|
+
props: {
|
|
2321
|
+
route: {
|
|
2322
|
+
type: null,
|
|
2323
|
+
required: true
|
|
2324
|
+
},
|
|
2325
|
+
dataTestid: {
|
|
2326
|
+
type: String,
|
|
2327
|
+
required: false
|
|
2328
|
+
}
|
|
2329
|
+
},
|
|
2330
|
+
setup(__props) {
|
|
2331
|
+
const props = __props;
|
|
2332
|
+
const routeProps = useRouteProps(() => props.route);
|
|
2333
|
+
return (_ctx, _cache) => {
|
|
2334
|
+
return openBlock(), createElementBlock(Fragment, null, [createCommentVNode(" No Vuetify component renders an inline text link, so the class removes the browser's underline "), (openBlock(), createBlock(resolveDynamicComponent(unref(isExternalRoute)(props.route) ? "a" : unref(RouterLink)), mergeProps(unref(routeProps), {
|
|
2335
|
+
class: "text-decoration-none",
|
|
2336
|
+
"data-testid": props.dataTestid
|
|
2337
|
+
}), {
|
|
2338
|
+
default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
|
|
2339
|
+
_: 3
|
|
2340
|
+
}, 16, ["data-testid"]))], 2112);
|
|
2341
|
+
};
|
|
2342
|
+
}
|
|
2343
|
+
});
|
|
2344
|
+
//#endregion
|
|
2286
2345
|
//#region src/composables/data-set/data-set.ts
|
|
2287
2346
|
/**
|
|
2288
2347
|
* Width, out of the grid's 12 columns, taken by each record so that
|
|
@@ -2586,4 +2645,4 @@ var data_set_item_default = /* @__PURE__ */ defineComponent({
|
|
|
2586
2645
|
}
|
|
2587
2646
|
});
|
|
2588
2647
|
//#endregion
|
|
2589
|
-
export { autocomplete_field_default as UAutocompleteField, button_default as UButton, checkbox_default as UCheckbox, column_default as UColumn, container_default as UContainer, data_set_default as UDataSet, data_set_item_default as UDataSetItem, date_time_field_default as UDateTimeField, details_default as UDetails, dialog_default as UDialog, form_default as UForm, img_default as UImg, main_default as UMain, row_default as URow, section_default as USection, section_content_default as USectionContent, table_default as UTable, text_field_default as UTextField };
|
|
2648
|
+
export { autocomplete_field_default as UAutocompleteField, button_default as UButton, checkbox_default as UCheckbox, column_default as UColumn, container_default as UContainer, data_set_default as UDataSet, data_set_item_default as UDataSetItem, date_time_field_default as UDateTimeField, details_default as UDetails, dialog_default as UDialog, form_default as UForm, img_default as UImg, link_default as ULink, main_default as UMain, row_default as URow, section_default as USection, section_content_default as USectionContent, table_default as UTable, text_field_default as UTextField };
|