@nexdom/uimed-vue 2.0.0-beta.1 → 2.0.0-beta.11

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.
@@ -1,4 +1,4 @@
1
- import { t as ColorVariant } from "./types-BPXXtbmW.js";
1
+ import { t as ButtonProps } from "./types-HPMP8IrV.js";
2
2
  import { RouteLocationRaw } from "vue-router";
3
3
  //#region src/components/app-bar/types.d.ts
4
4
  /**
@@ -171,8 +171,8 @@ type MainProps = {
171
171
  *
172
172
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/main | Main Guide}
173
173
  */
174
- declare const _default$4: typeof __VLS_export$8;
175
- declare const __VLS_export$8: __VLS_WithSlots$7<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<MainProps & {
174
+ declare const _default$9: typeof __VLS_export$14;
175
+ declare const __VLS_export$14: __VLS_WithSlots$9<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<MainProps & {
176
176
  notificationsOpen?: boolean;
177
177
  }, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {
178
178
  "update:notificationsOpen": (value: boolean) => any;
@@ -183,56 +183,12 @@ declare const __VLS_export$8: __VLS_WithSlots$7<import("vue", { with: { "resolut
183
183
  }>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
184
184
  default?: (props: {}) => any;
185
185
  }>;
186
- type __VLS_WithSlots$7<T, S> = T & {
186
+ type __VLS_WithSlots$9<T, S> = T & {
187
187
  new (): {
188
188
  $slots: S;
189
189
  };
190
190
  };
191
191
  //#endregion
192
- //#region src/components/button/types.d.ts
193
- type ButtonVariant = "primary" | "secondary" | "ghost";
194
- /**
195
- * Props exposed by the {@link Button} component.
196
- */
197
- type ButtonProps = {
198
- /**
199
- * Applies a distinct style variation to the button.
200
- * One of `primary`, `secondary`, or `ghost`.
201
- * @default "primary"
202
- */
203
- variant?: ButtonVariant;
204
- /**
205
- * Applies a distinct behavior to the button.
206
- * One of `button` or `submit`.
207
- * @default "button"
208
- */
209
- type?: "submit" | "button";
210
- /**
211
- * Applies a color to the button.
212
- * One of `primary`, `secondary`, `positive`, `informative`, `caution`, or `danger`.
213
- * @default "primary"
214
- */
215
- color?: ColorVariant;
216
- /**
217
- * Removes the ability to click or target the button.
218
- * @default false
219
- */
220
- disabled?: boolean;
221
- /**
222
- * Displays a loading indicator on the button, disabling interaction.
223
- * @default false
224
- */
225
- loading?: boolean;
226
- /**
227
- * Associated [form](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/form) id.
228
- */
229
- form?: string;
230
- /**
231
- * Component id to use on automated tests.
232
- */
233
- dataTestid?: string;
234
- };
235
- //#endregion
236
192
  //#region src/components/button/button.vue.d.ts
237
193
  /**
238
194
  * Button component to be used throughout the application.
@@ -248,15 +204,15 @@ type ButtonProps = {
248
204
  *
249
205
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/button | Button Guide}
250
206
  */
251
- declare const _default: typeof __VLS_export$7;
252
- declare const __VLS_export$7: __VLS_WithSlots$6<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<ButtonProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {} & {
207
+ declare const _default$1: typeof __VLS_export$13;
208
+ declare const __VLS_export$13: __VLS_WithSlots$8<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<ButtonProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {} & {
253
209
  click: (event: MouseEvent) => any;
254
210
  }, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<ButtonProps> & Readonly<{
255
211
  onClick?: ((event: MouseEvent) => any) | undefined;
256
212
  }>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
257
213
  default?: (props: {}) => any;
258
214
  }>;
259
- type __VLS_WithSlots$6<T, S> = T & {
215
+ type __VLS_WithSlots$8<T, S> = T & {
260
216
  new (): {
261
217
  $slots: S;
262
218
  };
@@ -326,6 +282,118 @@ type TextFieldProps = {
326
282
  dataTestid?: string;
327
283
  };
328
284
  //#endregion
285
+ //#region src/components/inputs/autocomplete-field/types.d.ts
286
+ /**
287
+ * Autocomplete/Combobox item type that can be either a string or an object with label and value.
288
+ */
289
+ type AutocompleteItem<T = string> = string | {
290
+ label: string;
291
+ value: T;
292
+ };
293
+ /**
294
+ * Props exposed by the {@link AutocompleteField} component.
295
+ */
296
+ type AutocompleteFieldProps<T = string, Multiple extends boolean = false> = {
297
+ /**
298
+ * Applies a distinct style variation to the field.
299
+ * One of `primary` or `secondary`.
300
+ * @default "primary"
301
+ */
302
+ variant?: TextFieldVariant;
303
+ /**
304
+ * Removes the ability to click or target the field.
305
+ * @default false
306
+ */
307
+ disabled?: boolean;
308
+ /**
309
+ * Displays a loading indicator on the input.
310
+ * @default false
311
+ */
312
+ loading?: boolean;
313
+ /**
314
+ * Displays clear action.
315
+ * @default false
316
+ */
317
+ clearable?: boolean;
318
+ /**
319
+ * Prevent value changes.
320
+ * @default false
321
+ */
322
+ readonly?: boolean;
323
+ /**
324
+ * Add rules to require field to be filled before form submission.
325
+ * @default false
326
+ */
327
+ required?: boolean;
328
+ /**
329
+ * Field label.
330
+ */
331
+ label?: string;
332
+ /**
333
+ * Field placeholder.
334
+ */
335
+ placeholder?: string;
336
+ /**
337
+ * Field message to show and direct user to fill field correctly.
338
+ *
339
+ * This message will be replaced when there's an error message to be shown.
340
+ */
341
+ hint?: string;
342
+ /**
343
+ * Component id to use on automated tests.
344
+ */
345
+ dataTestid?: string;
346
+ /**
347
+ * Used to prevent user from adding new values to the list.
348
+ * @default false
349
+ */
350
+ strict?: boolean;
351
+ /**
352
+ * Allow selecting/typing more than one value.
353
+ *
354
+ * Passing the literal `true` narrows `modelValue` and `update:modelValue`
355
+ * to `T[]` instead of `T`.
356
+ * @default false
357
+ */
358
+ multiple?: Multiple;
359
+ /**
360
+ * List of autocomplete items. Can be strings or objects with label and value.
361
+ * @default []
362
+ */
363
+ items?: AutocompleteItem<T>[];
364
+ };
365
+ //#endregion
366
+ //#region src/components/inputs/autocomplete-field/autocomplete-field.vue.d.ts
367
+ /**
368
+ * Select field component to be used throughout the application.
369
+ *
370
+ * @example
371
+ * ```vue
372
+ * <template>
373
+ * <u-autocomplete-field label="Country" :items="['Brazil', 'Argentina']" />
374
+ * </template>
375
+ * ```
376
+ *
377
+ * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/autocomplete-field | AutocompleteField Guide}
378
+ */
379
+ declare const _default: typeof __VLS_export$12;
380
+ declare const __VLS_export$12: <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<{
381
+ props: import("vue").PublicProps & __VLS_PrettifyLocal$2<(AutocompleteFieldProps<T, Multiple> & {
382
+ modelValue?: Multiple extends true ? T[] : T;
383
+ }) & {
384
+ "onUpdate:modelValue"?: ((value: Multiple extends true ? T[] : T | undefined) => any) | undefined;
385
+ }> & (typeof globalThis extends {
386
+ __VLS_PROPS_FALLBACK: infer P;
387
+ } ? P : {});
388
+ expose: (exposed: {}) => void;
389
+ attrs: any;
390
+ slots: {};
391
+ emit: (event: "update:modelValue", value: Multiple extends true ? T[] : T | undefined) => void;
392
+ }>) => import("vue").VNode & {
393
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
394
+ };
395
+ type __VLS_PrettifyLocal$2<T> = (T extends any ? { [K in keyof T]: T[K]; } : { [K in keyof T as K]: T[K]; }) & {};
396
+ //#endregion
329
397
  //#region src/components/inputs/text-field/text-field.vue.d.ts
330
398
  /**
331
399
  * Text field component to be used throughout the application.
@@ -339,8 +407,8 @@ type TextFieldProps = {
339
407
  *
340
408
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/text-field | TextField Guide}
341
409
  */
342
- declare const _default$8: typeof __VLS_export$6;
343
- declare const __VLS_export$6: import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<TextFieldProps & {
410
+ declare const _default$14: typeof __VLS_export$11;
411
+ declare const __VLS_export$11: import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<TextFieldProps & {
344
412
  modelValue?: string;
345
413
  }, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {
346
414
  "update:modelValue": (value: string) => any;
@@ -350,10 +418,76 @@ declare const __VLS_export$6: import("vue", { with: { "resolution-mode": "import
350
418
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
351
419
  }>, {
352
420
  variant: TextFieldVariant;
353
- type: TextFieldType;
354
421
  clearable: boolean;
422
+ type: TextFieldType;
355
423
  }, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>;
356
424
  //#endregion
425
+ //#region src/components/inputs/checkbox/types.d.ts
426
+ /**
427
+ * Props exposed by the {@link Checkbox} component.
428
+ */
429
+ type CheckboxProps<T = boolean> = {
430
+ /**
431
+ * Field label.
432
+ */
433
+ label?: string;
434
+ /**
435
+ * Removes the ability to click or target the checkbox.
436
+ * @default false
437
+ */
438
+ disabled?: boolean;
439
+ /**
440
+ * Prevent value changes.
441
+ * @default false
442
+ */
443
+ readonly?: boolean;
444
+ /**
445
+ * Value applied to the model when the checkbox is checked.
446
+ * @default true
447
+ */
448
+ trueValue?: T;
449
+ /**
450
+ * Value applied to the model when the checkbox is unchecked.
451
+ * @default false
452
+ */
453
+ falseValue?: T;
454
+ /**
455
+ * Component id to use on automated tests.
456
+ */
457
+ dataTestid?: string;
458
+ };
459
+ //#endregion
460
+ //#region src/components/inputs/checkbox/checkbox.vue.d.ts
461
+ /**
462
+ * Checkbox component to be used throughout the application.
463
+ *
464
+ * @example
465
+ * ```vue
466
+ * <template>
467
+ * <u-checkbox label="Aceito os termos" />
468
+ * </template>
469
+ * ```
470
+ *
471
+ * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/checkbox | Checkbox Guide}
472
+ */
473
+ declare const _default$2: typeof __VLS_export$10;
474
+ declare const __VLS_export$10: <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<{
475
+ props: import("vue").PublicProps & __VLS_PrettifyLocal$1<(CheckboxProps<boolean | T> & {
476
+ modelValue?: T;
477
+ }) & {
478
+ "onUpdate:modelValue"?: ((value: T) => any) | undefined;
479
+ }> & (typeof globalThis extends {
480
+ __VLS_PROPS_FALLBACK: infer P;
481
+ } ? P : {});
482
+ expose: (exposed: {}) => void;
483
+ attrs: any;
484
+ slots: {};
485
+ emit: (event: "update:modelValue", value: T) => void;
486
+ }>) => import("vue").VNode & {
487
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
488
+ };
489
+ type __VLS_PrettifyLocal$1<T> = (T extends any ? { [K in keyof T]: T[K]; } : { [K in keyof T as K]: T[K]; }) & {};
490
+ //#endregion
357
491
  //#region src/components/grid/container/types.d.ts
358
492
  /**
359
493
  * Props exposed by the {@link Container} component.
@@ -380,11 +514,11 @@ type ContainerProps = {
380
514
  *
381
515
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/layout | Container Guide}
382
516
  */
383
- declare const _default$2: typeof __VLS_export$5;
384
- declare const __VLS_export$5: __VLS_WithSlots$5<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>, {
517
+ declare const _default$4: typeof __VLS_export$9;
518
+ declare const __VLS_export$9: __VLS_WithSlots$7<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>, {
385
519
  default?: (props: {}) => any;
386
520
  }>;
387
- type __VLS_WithSlots$5<T, S> = T & {
521
+ type __VLS_WithSlots$7<T, S> = T & {
388
522
  new (): {
389
523
  $slots: S;
390
524
  };
@@ -395,6 +529,14 @@ type __VLS_WithSlots$5<T, S> = T & {
395
529
  * Props exposed by the {@link Row} component.
396
530
  */
397
531
  type RowProps = {
532
+ /**
533
+ * Renders the row as a list (`<ul>`), without the list's default indentation
534
+ * and bullets, so assistive technologies announce its columns as the items
535
+ * of a list. Use it for a grid of records that is, semantically, a list,
536
+ * like cards of patients, and set `listItem` on each of its `UColumn`s.
537
+ * @default false
538
+ */
539
+ list?: boolean;
398
540
  /**
399
541
  * Component id to use on automated tests.
400
542
  */
@@ -418,11 +560,11 @@ type RowProps = {
418
560
  *
419
561
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/layout | Row Guide}
420
562
  */
421
- declare const _default$5: typeof __VLS_export$4;
422
- declare const __VLS_export$4: __VLS_WithSlots$4<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>, {
563
+ declare const _default$10: typeof __VLS_export$8;
564
+ declare const __VLS_export$8: __VLS_WithSlots$6<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>, {
423
565
  default?: (props: {}) => any;
424
566
  }>;
425
- type __VLS_WithSlots$4<T, S> = T & {
567
+ type __VLS_WithSlots$6<T, S> = T & {
426
568
  new (): {
427
569
  $slots: S;
428
570
  };
@@ -441,6 +583,13 @@ type ColumnProps = {
441
583
  * @default "12"
442
584
  */
443
585
  cols?: Cols;
586
+ /**
587
+ * Renders the column as an item of a list (`<li>`), without its bullet.
588
+ * Use it on every column of a `URow` with `list`, whose records are,
589
+ * semantically, the items of a list.
590
+ * @default false
591
+ */
592
+ listItem?: boolean;
444
593
  /**
445
594
  * Component id to use on automated tests.
446
595
  */
@@ -467,13 +616,13 @@ type Cols = "auto" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10"
467
616
  *
468
617
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/layout | Column Guide}
469
618
  */
470
- declare const _default$1: typeof __VLS_export$3;
471
- declare const __VLS_export$3: __VLS_WithSlots$3<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<{}>, {
619
+ declare const _default$3: typeof __VLS_export$7;
620
+ declare const __VLS_export$7: __VLS_WithSlots$5<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<{}>, {
472
621
  cols: "12" | "auto" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11";
473
622
  }, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
474
623
  default?: (props: {}) => any;
475
624
  }>;
476
- type __VLS_WithSlots$3<T, S> = T & {
625
+ type __VLS_WithSlots$5<T, S> = T & {
477
626
  new (): {
478
627
  $slots: S;
479
628
  };
@@ -510,15 +659,15 @@ type FormProps = {
510
659
  *
511
660
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/form | Form Guide}
512
661
  */
513
- declare const _default$3: typeof __VLS_export$2;
514
- declare const __VLS_export$2: __VLS_WithSlots$2<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<FormProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {} & {
662
+ declare const _default$8: typeof __VLS_export$6;
663
+ declare const __VLS_export$6: __VLS_WithSlots$4<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<FormProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {} & {
515
664
  submit: (event: SubmitEvent) => any;
516
665
  }, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<FormProps> & Readonly<{
517
666
  onSubmit?: ((event: SubmitEvent) => any) | undefined;
518
667
  }>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, {
519
668
  default?: (props: {}) => any;
520
669
  }>;
521
- type __VLS_WithSlots$2<T, S> = T & {
670
+ type __VLS_WithSlots$4<T, S> = T & {
522
671
  new (): {
523
672
  $slots: S;
524
673
  };
@@ -540,11 +689,11 @@ type __VLS_WithSlots$2<T, S> = T & {
540
689
  *
541
690
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/section | Section Guide}
542
691
  */
543
- declare const _default$7: typeof __VLS_export$1;
544
- declare const __VLS_export$1: __VLS_WithSlots$1<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>, {
692
+ declare const _default$12: typeof __VLS_export$5;
693
+ declare const __VLS_export$5: __VLS_WithSlots$3<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>, {
545
694
  default?: (props: {}) => any;
546
695
  }>;
547
- type __VLS_WithSlots$1<T, S> = T & {
696
+ type __VLS_WithSlots$3<T, S> = T & {
548
697
  new (): {
549
698
  $slots: S;
550
699
  };
@@ -626,14 +775,316 @@ interface SectionAction extends ButtonProps {
626
775
  *
627
776
  * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/section | Section Guide}
628
777
  */
629
- declare const _default$6: typeof __VLS_export;
630
- declare const __VLS_export: __VLS_WithSlots<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>, {
778
+ declare const _default$11: typeof __VLS_export$4;
779
+ declare const __VLS_export$4: __VLS_WithSlots$2<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>, {
780
+ default?: (props: {}) => any;
781
+ }>;
782
+ type __VLS_WithSlots$2<T, S> = T & {
783
+ new (): {
784
+ $slots: S;
785
+ };
786
+ };
787
+ //#endregion
788
+ //#region src/components/table/types.d.ts
789
+ /**
790
+ * Props exposed by the {@link UTable} component.
791
+ */
792
+ type TableProps = {
793
+ /**
794
+ * Optional column headers. When not provided or empty, no `<thead>` is
795
+ * rendered in horizontal mode. In vertical mode, headers (when non-empty)
796
+ * are used as labels for rows. When `vertical` is true and `headers` is
797
+ * `undefined`, the component falls back to horizontal mode (single table,
798
+ * plain rows). When `vertical` is true and `headers` is an empty array,
799
+ * vertical mode is still used, but rows are rendered without labels (a
800
+ * single `<td>` per row).
801
+ */
802
+ headers?: string[];
803
+ /**
804
+ * Optional rows of data. Each entry is a list of string cell values.
805
+ * In horizontal mode, each item becomes one `<tr>` with cells as `<td>`.
806
+ * In vertical mode with headers, renders one `v-table` per item with one `<tr>`
807
+ * per header (th + td for that item's value). In vertical mode with an empty
808
+ * `headers` array, renders one `v-table` per item with one `<tr>` per cell
809
+ * value (a single `<td>`, no `<th>`). No padding or truncation applied —
810
+ * cells are rendered exactly as provided, even if rows have different lengths.
811
+ */
812
+ items?: string[][];
813
+ /**
814
+ * Changes table layout when true. When enabled with a non-empty `headers`
815
+ * array, renders one `v-table` per item in `items`, with each table showing
816
+ * that item's values vertically (one row per header). When enabled with an
817
+ * empty `headers` array, still renders one `v-table` per item, but each row
818
+ * only has the item's value (no header label). When `headers` is
819
+ * `undefined`, falls back to horizontal layout (single table, plain rows)
820
+ * regardless of this prop.
821
+ * @default false
822
+ */
823
+ vertical?: boolean;
824
+ /**
825
+ * Shows a skeleton loader in place of the table content while data is being
826
+ * loaded.
827
+ * @default false
828
+ */
829
+ loading?: boolean;
830
+ /**
831
+ * Component id to use on automated tests. In vertical mode with multiple
832
+ * items, each table gets a suffixed id: `${dataTestid}-${index}`. With a
833
+ * single table (non-vertical or vertical with one item), the unsuffixed id
834
+ * is used. When undefined, no data-testid attribute is set.
835
+ */
836
+ dataTestid?: string;
837
+ };
838
+ //#endregion
839
+ //#region src/components/table/table.vue.d.ts
840
+ /**
841
+ * Component to present data using tables. All content is data-driven via props
842
+ * — no slots. Supports both horizontal (default) and vertical layouts.
843
+ *
844
+ * @example
845
+ * ```vue
846
+ * <template>
847
+ * <u-table :headers="['Nome', 'Idade']" :items="[['Ana', '30'], ['Bruno', '25']]" />
848
+ * </template>
849
+ * ```
850
+ *
851
+ * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/table | Table Guide}
852
+ */
853
+ declare const _default$13: typeof __VLS_export$3;
854
+ declare const __VLS_export$3: 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>;
855
+ //#endregion
856
+ //#region src/components/details/types.d.ts
857
+ type DetailsVariant = "primary" | "secondary";
858
+ /**
859
+ * Props exposed by the {@link Details} component.
860
+ */
861
+ type DetailsProps = {
862
+ /**
863
+ * Applies a distinct style variation to the details.
864
+ * One of `primary` or `secondary`.
865
+ * @default "primary"
866
+ */
867
+ variant?: DetailsVariant;
868
+ /**
869
+ * Title displayed on the header, which expands or collapses the content
870
+ * when clicked. The header stays clickable even without a title.
871
+ */
872
+ title?: string;
873
+ /**
874
+ * Shows a skeleton loader in place of the details while data is being
875
+ * loaded.
876
+ * @default false
877
+ */
878
+ loading?: boolean;
879
+ /**
880
+ * Component id to use on automated tests.
881
+ */
882
+ dataTestid?: string;
883
+ };
884
+ //#endregion
885
+ //#region src/components/details/details.vue.d.ts
886
+ /**
887
+ * Details component to show content that can be expanded or collapsed by
888
+ * clicking on its title. Starts collapsed.
889
+ *
890
+ * @example
891
+ * ```vue
892
+ * <template>
893
+ * <u-details title="Title">
894
+ * Content
895
+ * </u-details>
896
+ * </template>
897
+ * ```
898
+ *
899
+ * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/details | Details Guide}
900
+ */
901
+ declare const _default$7: typeof __VLS_export$2;
902
+ declare const __VLS_export$2: __VLS_WithSlots$1<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>, {
631
903
  default?: (props: {}) => any;
632
904
  }>;
905
+ type __VLS_WithSlots$1<T, S> = T & {
906
+ new (): {
907
+ $slots: S;
908
+ };
909
+ };
910
+ //#endregion
911
+ //#region src/components/data-sets/data-set/types.d.ts
912
+ /**
913
+ * Number of records shown side by side on each row of a {@link DataSet}.
914
+ */
915
+ type DataSetColumns = 1 | 2 | 3 | 4 | 6;
916
+ /**
917
+ * Props exposed by the {@link DataSet} component.
918
+ */
919
+ type DataSetProps<T extends object> = {
920
+ /**
921
+ * Records to be listed. Each record of the current page is passed, as is,
922
+ * to the default slot.
923
+ * @default []
924
+ */
925
+ items?: T[];
926
+ /**
927
+ * Maximum number of records shown side by side on each row of the grid.
928
+ * One of `1`, `2`, `3`, `4` or `6`.
929
+ *
930
+ * It's reduced to the largest of these values that keeps each record's card
931
+ * at least 240px wide within the data set's own width, so narrow
932
+ * containers, like dialogs or side panels, show fewer records per row, down
933
+ * to a single one. On extra small screens, each record always takes the
934
+ * full width.
935
+ * @default 3
936
+ */
937
+ columns?: DataSetColumns;
938
+ /**
939
+ * Maximum number of records shown per page. Page controls are only shown
940
+ * when there's more than one page.
941
+ * @default 10
942
+ */
943
+ itemsPerPage?: number;
944
+ /**
945
+ * Shows a search field above the records, bound to `v-model:search`.
946
+ * @default false
947
+ */
948
+ searchable?: boolean;
949
+ /**
950
+ * Record properties considered by the search. When undefined or empty,
951
+ * every property of the record is considered.
952
+ */
953
+ searchKeys?: Array<Extract<keyof T, string>>;
954
+ /**
955
+ * Message shown when there are no records to list, either because `items`
956
+ * is empty or because no record matches the search.
957
+ * @default "Nenhum registro encontrado."
958
+ */
959
+ noDataText?: string;
960
+ /**
961
+ * Shows a skeleton loader in place of the records while data is being
962
+ * loaded.
963
+ * @default false
964
+ */
965
+ loading?: boolean;
966
+ /**
967
+ * Component id to use on automated tests.
968
+ */
969
+ dataTestid?: string;
970
+ };
971
+ /**
972
+ * Slots exposed by the {@link DataSet} component.
973
+ */
974
+ type DataSetSlots<T extends object> = {
975
+ /**
976
+ * Renders each record of the current page in its own grid column, usually
977
+ * with `UDataSetItem`.
978
+ * @param props.item The original record, from `items`.
979
+ * @param props.index Position of the record inside the current page.
980
+ */
981
+ default?: (props: {
982
+ item: T;
983
+ index: number;
984
+ }) => unknown;
985
+ };
986
+ //#endregion
987
+ //#region src/components/data-sets/data-set/data-set.vue.d.ts
988
+ /**
989
+ * Data set component to list records as a responsive grid of cards, with
990
+ * client-side pagination and an optional search field. Each record of the
991
+ * current page is rendered by the default slot, usually with `UDataSetItem`.
992
+ *
993
+ * @example
994
+ * ```vue
995
+ * <template>
996
+ * <u-data-set :items="patients" :columns="4" searchable>
997
+ * <template #default="{ item }">
998
+ * <u-data-set-item :title="item.name" :subtitle="item.plan" />
999
+ * </template>
1000
+ * </u-data-set>
1001
+ * </template>
1002
+ * ```
1003
+ *
1004
+ * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/data-set | DataSet Guide}
1005
+ */
1006
+ declare const _default$5: typeof __VLS_export$1;
1007
+ declare const __VLS_export$1: <T extends object>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
1008
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<(DataSetProps<T> & {
1009
+ page?: number;
1010
+ search?: string;
1011
+ }) & {
1012
+ "onUpdate:page"?: ((value: number) => any) | undefined;
1013
+ "onUpdate:search"?: ((value: string) => any) | undefined;
1014
+ }> & (typeof globalThis extends {
1015
+ __VLS_PROPS_FALLBACK: infer P;
1016
+ } ? P : {});
1017
+ expose: (exposed: {}) => void;
1018
+ attrs: any;
1019
+ slots: DataSetSlots<T>;
1020
+ emit: ((event: "update:page", value: number) => void) & ((event: "update:search", value: string) => void);
1021
+ }>) => import("vue").VNode & {
1022
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
1023
+ };
1024
+ type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K]; } : { [K in keyof T as K]: T[K]; }) & {};
1025
+ //#endregion
1026
+ //#region src/components/data-sets/data-set-item/types.d.ts
1027
+ /**
1028
+ * Props exposed by the {@link DataSetItem} component.
1029
+ */
1030
+ type DataSetItemProps = {
1031
+ /**
1032
+ * Title displayed at the top of the record's card.
1033
+ */
1034
+ title?: string;
1035
+ /**
1036
+ * Short description displayed below the title.
1037
+ */
1038
+ subtitle?: string;
1039
+ /**
1040
+ * Applies a distinct style variation to the record's card, just like on
1041
+ * `USection`. One of `primary` or `secondary`.
1042
+ * @default "primary"
1043
+ */
1044
+ variant?: SectionVariant;
1045
+ /**
1046
+ * Component id to use on automated tests.
1047
+ */
1048
+ dataTestid?: string;
1049
+ };
1050
+ /**
1051
+ * Slots exposed by the {@link DataSetItem} component.
1052
+ */
1053
+ type DataSetItemSlots = {
1054
+ /**
1055
+ * Details of the record, displayed below the title and subtitle, like a
1056
+ * vertical `UTable` with some of its fields.
1057
+ */
1058
+ default?: () => unknown;
1059
+ };
1060
+ //#endregion
1061
+ //#region src/components/data-sets/data-set-item/data-set-item.vue.d.ts
1062
+ /**
1063
+ * Card of a single record listed by a {@link DataSet}, built on `USection`.
1064
+ * It fills the height of its grid column, so the cards of a row line up. Its
1065
+ * details, like a vertical `UTable`, go in the default slot.
1066
+ *
1067
+ * @example
1068
+ * ```vue
1069
+ * <template>
1070
+ * <u-data-set :items="patients">
1071
+ * <template #default="{ item }">
1072
+ * <u-data-set-item :title="item.name" subtitle="Beneficiário">
1073
+ * <u-table :headers="['Plano', 'Idade']" :items="[[item.plan, item.age]]" vertical />
1074
+ * </u-data-set-item>
1075
+ * </template>
1076
+ * </u-data-set>
1077
+ * </template>
1078
+ * ```
1079
+ *
1080
+ * @see {@link https://nexdom-healthtech.github.io/uimed-vue/guide/components/data-set | DataSet Guide}
1081
+ */
1082
+ declare const _default$6: typeof __VLS_export;
1083
+ declare const __VLS_export: __VLS_WithSlots<import("vue", { with: { "resolution-mode": "import" } }).DefineComponent<DataSetItemProps, {}, {}, {}, {}, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, import("vue", { with: { "resolution-mode": "import" } }).ComponentOptionsMixin, {}, string, import("vue", { with: { "resolution-mode": "import" } }).PublicProps, Readonly<DataSetItemProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue", { with: { "resolution-mode": "import" } }).ComponentProvideOptions, false, {}, any>, DataSetItemSlots>;
633
1084
  type __VLS_WithSlots<T, S> = T & {
634
1085
  new (): {
635
1086
  $slots: S;
636
1087
  };
637
1088
  };
638
1089
  //#endregion
639
- export { type AppBarProps as AppBarConfig, type AppBarUserProps as AppBarUserConfig, type NavigationMenuProps as NavigationMenuConfig, type SectionAction, _default as UButton, _default$1 as UColumn, _default$2 as UContainer, _default$3 as UForm, _default$4 as UMain, _default$5 as URow, _default$6 as USection, _default$7 as USectionContent, _default$8 as UTextField };
1090
+ 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 UDetails, _default$8 as UForm, _default$9 as UMain, _default$10 as URow, _default$11 as USection, _default$12 as USectionContent, _default$13 as UTable, _default$14 as UTextField };