@dynamicforms/vuetify-inputs 0.12.1 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -2,8 +2,6 @@ import { Action as Action_2 } from '@dynamicforms/vue-forms';
2
2
  import { ActionValue } from '@dynamicforms/vue-forms';
3
3
  import { AllowedComponentProps } from 'vue';
4
4
  import { App } from 'vue';
5
- import { ClassTypes } from '@dynamicforms/vue-forms';
6
- import { ClassValue } from '../../node_modules/vuetify/lib/composables/component';
7
5
  import { ComponentCustomProps } from 'vue';
8
6
  import { ComponentOptionsBase } from 'vue';
9
7
  import { ComponentOptionsMixin } from 'vue';
@@ -12,10 +10,9 @@ import { ComputedRef } from 'vue';
12
10
  import { CreateComponentPublicInstanceWithMixins } from 'vue';
13
11
  import { Day } from 'date-fns';
14
12
  import { default as default_2 } from '@dynamicforms/vue-forms';
15
- import { DefaultInputSlot } from 'vuetify/lib/components/VField/VField';
16
13
  import { DefineComponent } from 'vue';
17
- import { Editor } from '../node_modules/@tiptap/vue-3/dist';
18
14
  import { Era } from 'date-fns';
15
+ import { ErrorDescription } from '@dynamicforms/vue-forms';
19
16
  import { FieldBase } from '@dynamicforms/vue-forms';
20
17
  import { FirstWeekContainsDate } from 'date-fns';
21
18
  import { FormatDistanceFn } from 'date-fns';
@@ -24,7 +21,6 @@ import { FormatPart } from 'date-fns';
24
21
  import { FormatRelativeFn } from 'date-fns';
25
22
  import { GlobalComponents } from 'vue';
26
23
  import { GlobalDirectives } from 'vue';
27
- import { IFieldConstructorParams } from '@dynamicforms/vue-forms';
28
24
  import { Locale } from 'date-fns';
29
25
  import { LocaleDayPeriod } from 'date-fns';
30
26
  import { LocaleUnit } from 'date-fns';
@@ -32,16 +28,19 @@ import { LocalizeFn } from 'date-fns';
32
28
  import { MatchFn } from 'date-fns';
33
29
  import { MaybeRef } from 'vue';
34
30
  import { MaybeRefOrGetter } from 'vue';
35
- import { MdString } from '@dynamicforms/vue-forms';
36
31
  import { Month } from 'date-fns';
37
32
  import { PublicProps } from 'vue';
38
33
  import { Quarter } from 'date-fns';
39
34
  import { Ref } from 'vue';
40
- import { TranslateStringsCallback } from '@dynamicforms/translatable';
35
+ import { TranslateFunction } from '@dynamicforms/translatable';
41
36
  import { useDisplay } from 'vuetify';
42
37
  import { ValidationError } from '@dynamicforms/vue-forms';
43
38
  import { VAutocomplete } from 'vuetify/components/VAutocomplete';
44
39
  import { VBtn } from 'vuetify/components/VBtn';
40
+ import { VBtnGroup } from 'vuetify/components/VBtnGroup';
41
+ import { VBtnToggle } from 'vuetify/components/VBtnToggle';
42
+ import { VCard } from 'vuetify/components/VCard';
43
+ import { VCardActions } from 'vuetify/components/VCard';
45
44
  import { VCheckbox } from 'vuetify/components/VCheckbox';
46
45
  import { VChip } from 'vuetify/components/VChip';
47
46
  import { VCol } from 'vuetify/components/VGrid';
@@ -49,12 +48,15 @@ import { VColorPicker } from 'vuetify/components/VColorPicker';
49
48
  import { VCombobox } from 'vuetify/components/VCombobox';
50
49
  import { VConfirmEdit } from 'vuetify/components/VConfirmEdit';
51
50
  import { VDatePicker } from 'vuetify/components/VDatePicker';
51
+ import { VDivider } from 'vuetify/components/VDivider';
52
52
  import { VField } from 'vuetify/components/VField';
53
53
  import { VFileInput } from 'vuetify/components/VFileInput';
54
54
  import { VIcon } from 'vuetify/components/VIcon';
55
55
  import { VImg } from 'vuetify/components/VImg';
56
56
  import { VInput } from 'vuetify/components/VInput';
57
+ import { VList } from 'vuetify/components/VList';
57
58
  import { VListItem } from 'vuetify/components/VList';
59
+ import { VListItemTitle } from 'vuetify/components/VList';
58
60
  import { VMenu } from 'vuetify/components/VMenu';
59
61
  import { VNodeProps } from 'vue';
60
62
  import { VNumberInput } from 'vuetify/components/VNumberInput';
@@ -88,13 +90,13 @@ dfSelectRef: unknown;
88
90
  }, any>;
89
91
 
90
92
  declare const __VLS_component_2: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
91
- blur: () => any;
92
93
  "update:modelValue": (value: any) => any;
93
94
  "click:clear": () => any;
95
+ blur: () => any;
94
96
  }, string, PublicProps, Readonly<__VLS_Props> & Readonly<{
95
- onBlur?: (() => any) | undefined;
96
97
  "onUpdate:modelValue"?: ((value: any) => any) | undefined;
97
98
  "onClick:clear"?: (() => any) | undefined;
99
+ onBlur?: (() => any) | undefined;
98
100
  }>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
99
101
 
100
102
  declare type __VLS_Props = BaseProps & {
@@ -118,44 +120,16 @@ declare function __VLS_template(): {
118
120
 
119
121
  declare function __VLS_template_2(): {
120
122
  attrs: Partial<{}>;
121
- slots: {
122
- default?(_: {
123
- props: Record<string, unknown> & {
124
- class?: ClassValue;
125
- };
126
- isActive: Ref<boolean>;
127
- isFocused: Ref<boolean>;
128
- iconColor: ComputedRef<string | undefined>;
129
- controlRef: Ref<HTMLElement | undefined>;
130
- focus: () => void;
131
- blur: () => void;
132
- }): any;
133
- loader?(_: {
134
- color: string | undefined;
135
- isActive: boolean;
136
- }): any;
137
- 'prepend-inner'?(_: {
138
- isActive: Ref<boolean>;
139
- isFocused: Ref<boolean>;
140
- iconColor: ComputedRef<string | undefined>;
141
- controlRef: Ref<HTMLElement | undefined>;
142
- focus: () => void;
143
- blur: () => void;
144
- }): any;
145
- prepend?(_: {
146
- id: ComputedRef<string>;
147
- messagesId: ComputedRef<string | undefined>;
148
- isDirty: ComputedRef<boolean>;
149
- isDisabled: ComputedRef<boolean>;
150
- isReadonly: ComputedRef<boolean>;
151
- isPristine: Ref<boolean>;
152
- isValid: ComputedRef<boolean | null>;
153
- isValidating: Ref<boolean>;
154
- hasDetails: Ref<boolean>;
155
- reset: () => void;
156
- resetValidation: () => void;
157
- validate: () => void;
158
- }): any;
123
+ slots: Readonly<{
124
+ default?(props: InputBaseSlotProps): any;
125
+ 'prepend-inner'?(props: Omit<InputBaseSlotProps, "props">): any;
126
+ loader?(props: Record<string, unknown>): any;
127
+ prepend?(props: Record<string, unknown>): any;
128
+ }> & {
129
+ default?(props: InputBaseSlotProps): any;
130
+ 'prepend-inner'?(props: Omit<InputBaseSlotProps, "props">): any;
131
+ loader?(props: Record<string, unknown>): any;
132
+ prepend?(props: Record<string, unknown>): any;
159
133
  };
160
134
  refs: {};
161
135
  rootEl: any;
@@ -179,7 +153,10 @@ declare type __VLS_WithTemplateSlots_2<T, S> = T & {
179
153
 
180
154
  export declare class Action extends Action_2<ActionBreakpointOptions> {
181
155
  /** @see getRenderOptionsForBreakpoint, which answers the same for the value of any `Action` */
182
- getBreakpointValue(breakpoint: Ref<BreakpointNames>): ComputedRef<ActionRenderOptions>;
156
+ getBreakpointValue(breakpoint: Ref<BreakpointNames>): ComputedRef<ResolvedActionRenderOptions>;
157
+ /** The label read: where the value holds a ref or a function, the string it gives now. */
158
+ get label(): string | undefined;
159
+ set label(newValue: ActionBreakpointOptions['label']);
183
160
  /** @see ActionRenderOptions.name */
184
161
  get name(): string | undefined;
185
162
  /**
@@ -198,15 +175,8 @@ export declare class Action extends Action_2<ActionBreakpointOptions> {
198
175
  get showIcon(): boolean | undefined;
199
176
  /** @see ActionRenderOptions.renderAs */
200
177
  get renderAs(): ActionDisplayStyle | undefined;
201
- /** @see ActionRenderOptions.defaultConfirm */
202
- get defaultConfirm(): boolean | undefined;
203
- /** @see ActionRenderOptions.defaultReject */
204
- get defaultReject(): boolean | undefined;
205
178
  /** @see ActionRenderOptions.passthroughAttrs */
206
179
  get passthroughAttrs(): Record<string, any> | undefined;
207
- static closeAction(data?: Partial<IFieldConstructorParams<ActionBreakpointOptions>>): Action;
208
- static yesAction(data?: Partial<IFieldConstructorParams<ActionBreakpointOptions>>): Action;
209
- static noAction(data?: Partial<IFieldConstructorParams<ActionBreakpointOptions>>): Action;
210
180
  }
211
181
 
212
182
  export declare type ActionBreakpointOptions = BreakpointsJSON<ActionRenderOptions, ActionBreakpointRenderOptions>;
@@ -228,8 +198,10 @@ export declare const actionDisplayStyles: readonly ActionDisplayStyle[];
228
198
 
229
199
  export declare interface ActionRenderOptions extends ActionValue {
230
200
  /** The text of the action, rendered when {@link showLabel} is set and the text is not empty. `ActionValue`
231
- * types this `unknown`, leaving what a label is to the rendering library; here it is a string. */
232
- label?: string;
201
+ * types this `unknown`, leaving what a label is to the rendering library; here it is a string, a ref to one or a
202
+ * function returning one. A ref or a function is read while the action renders, so a label that follows the
203
+ * locale is `() => t('Save')`. */
204
+ label?: MaybeRefOrGetter<string>;
233
205
  /** The icon of the action, a name `vue-cached-icon` resolves, rendered when {@link showIcon} is set and the
234
206
  * name is not empty. Typed here for the same reason `label` is. */
235
207
  icon?: string;
@@ -254,8 +226,8 @@ export declare interface ActionRenderOptions extends ActionValue {
254
226
  /** Marks this as the action to trigger on Escape when rendered inside `<df-modal>` (see that component's
255
227
  * `onKeydown` in `@dynamicforms/vuetify-modal-form-kit`) - e.g. a "Cancel" or "No" action. In `<df-actions>` it
256
228
  * also colors the button `secondary`, unless overridden via `passthroughAttrs.color`. At most one action in a
257
- * given set should set this (an action such as `Action.closeAction()` may set both `defaultConfirm` and
258
- * `defaultReject` so it fires on either key). */
229
+ * given set should set this (a single Close action may set both `defaultConfirm` and `defaultReject` so it fires
230
+ * on either key). */
259
231
  defaultReject?: boolean;
260
232
  /** Additional props/attrs forwarded verbatim to the rendered `<v-btn>` (e.g. `color`, `loading`, `density`,
261
233
  * `rounded`, `block`, `prependIcon`, ...), taking precedence over `<df-actions>`'s own computed bindings
@@ -273,8 +245,8 @@ export declare interface BaseEmits<T = any> {
273
245
  export declare interface BaseProps<T = any> {
274
246
  control?: default_2.FieldBase<T>;
275
247
  modelValue?: T;
276
- label?: string | Label | MdString;
277
- errors?: string[];
248
+ label?: RenderContentNonCallable | Label;
249
+ errors?: ErrorInput[];
278
250
  placeholder?: string;
279
251
  helpText?: string;
280
252
  hint?: string;
@@ -296,6 +268,10 @@ export declare type BreakpointNames = (typeof responsiveBreakpoints)[number];
296
268
  */
297
269
  export declare type BreakpointsJSON<T extends Record<string, any>, B extends Record<string, any> = T> = T & Partial<Record<BreakpointNames, B>>;
298
270
 
271
+ export declare type ClassType = string | string[] | Record<string, boolean>;
272
+
273
+ export declare type ClassTypes = ClassType | ClassType[];
274
+
299
275
  export declare const DateTimeLocaleConfig: {
300
276
  dateTimeLocale: Ref<{
301
277
  code: string;
@@ -373,6 +349,69 @@ export declare const defaultBaseProps: {
373
349
  /** What an action renders as where nothing states otherwise. */
374
350
  export declare const defaultDisplayStyle: ActionDisplayStyle;
375
351
 
352
+ declare const defaults: {
353
+ Cancel: string;
354
+ Ok: string;
355
+ Paragraph: string;
356
+ Heading1: string;
357
+ Heading2: string;
358
+ Heading3: string;
359
+ Heading4: string;
360
+ Heading5: string;
361
+ Heading6: string;
362
+ Downloadable: string;
363
+ ArticleCategory: string;
364
+ Title: string;
365
+ Subtitle: string;
366
+ InfoBox: string;
367
+ SideQuote: string;
368
+ Marker: string;
369
+ Spoiler: string;
370
+ CodeDark: string;
371
+ CodeBright: string;
372
+ Undo: string;
373
+ Redo: string;
374
+ SelectAll: string;
375
+ Bold: string;
376
+ Italic: string;
377
+ HorizontalLine: string;
378
+ Blockquote: string;
379
+ BulletedList: string;
380
+ NumberedList: string;
381
+ Outdent: string;
382
+ Indent: string;
383
+ AlignLeft: string;
384
+ AlignCenter: string;
385
+ AlignRight: string;
386
+ AlignJustify: string;
387
+ Link: string;
388
+ LinkUrl: string;
389
+ LinkApply: string;
390
+ LinkRemove: string;
391
+ Image: string;
392
+ ImageUrl: string;
393
+ ImageUpload: string;
394
+ ImageInsert: string;
395
+ ImageDropHint: string;
396
+ ImageReplace: string;
397
+ ImageDownload: string;
398
+ FileDownload: string;
399
+ Table: string;
400
+ TableInsert: string;
401
+ TableAddRowAbove: string;
402
+ TableAddRowBelow: string;
403
+ TableDeleteRow: string;
404
+ TableAddColumnBefore: string;
405
+ TableAddColumnAfter: string;
406
+ TableDeleteColumn: string;
407
+ TableToggleHeaderRow: string;
408
+ TableDeleteTable: string;
409
+ Style: string;
410
+ MediaEmbed: string;
411
+ MediaEmbedUrl: string;
412
+ MediaEmbedInsert: string;
413
+ };
414
+
376
415
  export declare const DfActions: DefineComponent<DfActionsProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<DfActionsProps> & Readonly<{}>, {
377
416
  buttonSize: VuetifyButtonSize;
378
417
  buttonDensity: VuetifyDensity;
@@ -510,6 +549,7 @@ export declare namespace DfInputComponentProps {
510
549
  DfFileProps,
511
550
  DfImageProps,
512
551
  DfInputProps,
552
+ MessagesWidgetProps,
513
553
  DfInputHintProps,
514
554
  DfLabelProps,
515
555
  DfRtfEditorProps,
@@ -539,8 +579,7 @@ export declare namespace DfInputComponents {
539
579
  * Every component this library draws with, keyed by the tag a layout names it by.
540
580
  *
541
581
  * A rendering layer that resolves a component by name out of a map - `@dynamicforms/vuetify-modal-form-kit`'s
542
- * `<component-render>` is one - is handed this instead of keeping a list of its own, which would have to be
543
- * extended whenever this package gains a component and would silently render nothing until it was.
582
+ * `<component-render>` is one - takes it from here, so a component this package adds is in the map.
544
583
  *
545
584
  * The keys are the kebab-case of the export names, so a tag names the same component whether it is looked up
546
585
  * here or left to Vue's own resolver after `DynamicFormsInputs` has registered the components globally.
@@ -624,8 +663,8 @@ export declare const dfInputComponentsByTag: {
624
663
  max: number;
625
664
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
626
665
  readonly 'df-input-hint': DefineComponent<DfInputHintProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<DfInputHintProps> & Readonly<{}>, {
627
- errors: string | ValidationError[];
628
- message: string | ValidationError[];
666
+ errors: string | readonly (RenderableValue | ErrorInput)[];
667
+ message: RenderContentRef | readonly RenderableValue[];
629
668
  errorClasses: ClassTypes;
630
669
  messageClasses: ClassTypes;
631
670
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
@@ -640,69 +679,7 @@ export declare const dfInputComponentsByTag: {
640
679
  minHeight: string;
641
680
  enabled: boolean;
642
681
  clearable: boolean;
643
- }, {}, {}, {}, string, ComponentProvideOptions, false, {
644
- $editor: CreateComponentPublicInstanceWithMixins<Readonly<{
645
- modelValue?: string;
646
- minHeight?: string;
647
- disabled?: boolean;
648
- toolbarButtonSize?: VuetifyButtonSize;
649
- fontFamily?: string;
650
- }> & Readonly<{
651
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
652
- }>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
653
- "update:modelValue": (value: string) => any;
654
- }, PublicProps, {
655
- minHeight: string;
656
- disabled: boolean;
657
- modelValue: string;
658
- toolbarButtonSize: VuetifyButtonSize;
659
- fontFamily: string;
660
- }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
661
- toolbarRef: CreateComponentPublicInstanceWithMixins<Readonly<{
662
- editor?: Editor;
663
- buttonSize?: VuetifyButtonSize;
664
- }> & Readonly<{}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {
665
- buttonSize: VuetifyButtonSize;
666
- editor: Editor;
667
- }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
668
- imageInput: HTMLInputElement;
669
- }, HTMLDivElement, ComponentProvideOptions, {
670
- P: {};
671
- B: {};
672
- D: {};
673
- C: {};
674
- M: {};
675
- Defaults: {};
676
- }, Readonly<{
677
- editor?: Editor;
678
- buttonSize?: VuetifyButtonSize;
679
- }> & Readonly<{}>, {}, {}, {}, {}, {
680
- buttonSize: VuetifyButtonSize;
681
- editor: Editor;
682
- }> | null;
683
- }, HTMLDivElement, ComponentProvideOptions, {
684
- P: {};
685
- B: {};
686
- D: {};
687
- C: {};
688
- M: {};
689
- Defaults: {};
690
- }, Readonly<{
691
- modelValue?: string;
692
- minHeight?: string;
693
- disabled?: boolean;
694
- toolbarButtonSize?: VuetifyButtonSize;
695
- fontFamily?: string;
696
- }> & Readonly<{
697
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
698
- }>, {}, {}, {}, {}, {
699
- minHeight: string;
700
- disabled: boolean;
701
- modelValue: string;
702
- toolbarButtonSize: VuetifyButtonSize;
703
- fontFamily: string;
704
- }> | null;
705
- }, any>;
682
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
706
683
  readonly 'df-select': {
707
684
  new (...args: any[]): CreateComponentPublicInstanceWithMixins<Readonly<DfSelectProps> & Readonly<{
708
685
  "onUpdate:modelValue"?: ((value: any) => any) | undefined;
@@ -788,17 +765,18 @@ export declare const dfInputComponentsByTag: {
788
765
  export declare type DfInputComponentTag = keyof typeof dfInputComponentsByTag;
789
766
 
790
767
  export declare const DfInputHint: DefineComponent<DfInputHintProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<DfInputHintProps> & Readonly<{}>, {
791
- errors: string | ValidationError[];
792
- message: string | ValidationError[];
768
+ errors: string | readonly (RenderableValue | ErrorInput)[];
769
+ message: RenderContentRef | readonly RenderableValue[];
793
770
  errorClasses: ClassTypes;
794
771
  messageClasses: ClassTypes;
795
772
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
796
773
 
797
774
  declare interface DfInputHintProps {
798
- /** The errors to render. Rendered in place of {@link message} whenever there is one. */
799
- errors?: string | ValidationError[];
800
- /** The message to render, shown while there is no error. */
801
- message?: string | ValidationError[];
775
+ /** The errors to render, in place of {@link message} whenever there is one. A string is text in the user's
776
+ * language; an error description may lack any member. */
777
+ errors?: string | readonly (RenderableValue | ErrorInput)[];
778
+ /** The message to render, shown while there is no error: content in any of its forms, or the items to render. */
779
+ message?: RenderContentRef | readonly RenderableValue[];
802
780
  /** Classes for the rendered errors. Defaults to `text-error`. */
803
781
  errorClasses?: ClassTypes;
804
782
  /** Classes for the rendered message. Defaults to no class. */
@@ -816,11 +794,13 @@ declare interface DfInputProps extends BaseProps {
816
794
  export declare const DfLabel: DefineComponent<DfLabelProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<DfLabelProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
817
795
 
818
796
  declare interface DfLabelProps {
819
- /** The slot data Vuetify hands a `#label` slot. Where it is given, its `label` is what is rendered. */
820
- data?: DefaultInputSlot & {
821
- label?: string | MdString;
797
+ /** The slot data Vuetify hands a `#label` slot. Its `label`, the label's text, is rendered where {@link label} has
798
+ * no content. */
799
+ data?: {
800
+ label?: string;
801
+ props?: Record<string, unknown>;
822
802
  };
823
- /** The label to render where no {@link data} is given: its text, and the icon it carries. */
803
+ /** The label to render: its content in any of the four forms, and the icon it carries. */
824
804
  label: Label;
825
805
  /** Whether the label wraps over several lines. It is rendered on one line by default. */
826
806
  allowWrap?: boolean;
@@ -836,69 +816,7 @@ export declare const DfRtfEditor: DefineComponent<DfRtfEditorProps, {}, {}, {},
836
816
  minHeight: string;
837
817
  enabled: boolean;
838
818
  clearable: boolean;
839
- }, {}, {}, {}, string, ComponentProvideOptions, false, {
840
- $editor: CreateComponentPublicInstanceWithMixins<Readonly<{
841
- modelValue?: string;
842
- minHeight?: string;
843
- disabled?: boolean;
844
- toolbarButtonSize?: VuetifyButtonSize;
845
- fontFamily?: string;
846
- }> & Readonly<{
847
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
848
- }>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
849
- "update:modelValue": (value: string) => any;
850
- }, PublicProps, {
851
- minHeight: string;
852
- disabled: boolean;
853
- modelValue: string;
854
- toolbarButtonSize: VuetifyButtonSize;
855
- fontFamily: string;
856
- }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
857
- toolbarRef: CreateComponentPublicInstanceWithMixins<Readonly<{
858
- editor?: Editor;
859
- buttonSize?: VuetifyButtonSize;
860
- }> & Readonly<{}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {
861
- buttonSize: VuetifyButtonSize;
862
- editor: Editor;
863
- }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
864
- imageInput: HTMLInputElement;
865
- }, HTMLDivElement, ComponentProvideOptions, {
866
- P: {};
867
- B: {};
868
- D: {};
869
- C: {};
870
- M: {};
871
- Defaults: {};
872
- }, Readonly<{
873
- editor?: Editor;
874
- buttonSize?: VuetifyButtonSize;
875
- }> & Readonly<{}>, {}, {}, {}, {}, {
876
- buttonSize: VuetifyButtonSize;
877
- editor: Editor;
878
- }> | null;
879
- }, HTMLDivElement, ComponentProvideOptions, {
880
- P: {};
881
- B: {};
882
- D: {};
883
- C: {};
884
- M: {};
885
- Defaults: {};
886
- }, Readonly<{
887
- modelValue?: string;
888
- minHeight?: string;
889
- disabled?: boolean;
890
- toolbarButtonSize?: VuetifyButtonSize;
891
- fontFamily?: string;
892
- }> & Readonly<{
893
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
894
- }>, {}, {}, {}, {}, {
895
- minHeight: string;
896
- disabled: boolean;
897
- modelValue: string;
898
- toolbarButtonSize: VuetifyButtonSize;
899
- fontFamily: string;
900
- }> | null;
901
- }, any>;
819
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
902
820
 
903
821
  declare interface DfRtfEditorProps extends BaseProps {
904
822
  minHeight?: string;
@@ -949,6 +867,27 @@ export declare interface DynamicFormsInputsOptions extends VuetifyInputsSettings
949
867
  registerVuetifyComponents: boolean;
950
868
  }
951
869
 
870
+ /**
871
+ * An error as a component accepts it for rendering: content in one of the four forms (a string, an `MdString`, an
872
+ * `HtmlString` or a `SimpleComponentDef`), which renders as it is, or an error description of which any member may
873
+ * be missing.
874
+ */
875
+ export declare type ErrorInput = RenderContentNonCallable | Partial<ErrorDescription>;
876
+
877
+ /**
878
+ * Converts an error to the content it renders as: plain text, an `MdString` for markdown, an `HtmlString` for HTML
879
+ * or a `SimpleComponentDef` for a component. `undefined` renders the error's `detail`. It is called for an error with
880
+ * a code. It runs while the errors are rendered, so the reactive state it reads, such as the locale, is tracked.
881
+ */
882
+ export declare type ErrorText = (error: ErrorDescription) => RenderContentNonCallable | undefined;
883
+
884
+ /**
885
+ * What a component renders for `error`. Content renders as it is. An error without a code renders as its
886
+ * `detail`: it is text in the user's language. An error with a code renders as the `errorText` setting's answer, and
887
+ * as its `detail` where the setting is not given or answers `undefined`.
888
+ */
889
+ export declare function errorText(error: ErrorInput, settings: VuetifyInputsSettings): RenderContentNonCallable;
890
+
952
891
  export declare type FieldDensity = 'default' | 'comfortable' | 'compact' | 'inline';
953
892
 
954
893
  export declare type FieldVariant = 'outlined' | 'plain' | 'underlined' | 'filled' | 'solo' | 'solo-inverted' | 'solo-filled';
@@ -1021,20 +960,123 @@ export declare function getBreakpointName(dp: ReturnType<typeof useDisplay>): Br
1021
960
  * `label` and `icon` come back only where the matching flag says they are shown, and the flags come back false
1022
961
  * where there is no text or name to show, so a caller renders each member on its own flag and never on emptiness.
1023
962
  */
1024
- export declare function getRenderOptionsForBreakpoint(value: ActionValue, breakpoint: BreakpointNames): ActionRenderOptions;
963
+ export declare function getRenderOptionsForBreakpoint(value: ActionValue, breakpoint: BreakpointNames): ResolvedActionRenderOptions;
964
+
965
+ /**
966
+ * A string rendered as HTML: it is set as the `innerHTML` of a `div`. It is not sanitized, so a string holding text
967
+ * from a user or a server is escaped or sanitized before it is wrapped.
968
+ */
969
+ export declare class HtmlString extends String {
970
+ }
1025
971
 
1026
972
  export declare const InputBase: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;
1027
973
 
974
+ /** What `InputBase`'s `default` slot receives: Vuetify's `v-field` slot props. `prepend-inner` receives them without
975
+ * `props`. */
976
+ export declare interface InputBaseSlotProps {
977
+ /** Attributes for the control: its `id`, `class` and ARIA attributes. */
978
+ props: Record<string, unknown>;
979
+ isActive: Ref<boolean>;
980
+ isFocused: Ref<boolean>;
981
+ iconColor: ComputedRef<string | undefined>;
982
+ controlRef: Ref<HTMLElement | undefined>;
983
+ /** Sets the field's focused state. */
984
+ focus: () => void;
985
+ /** Clears the field's focused state. */
986
+ blur: () => void;
987
+ }
988
+
1028
989
  /** Answers whether `value` is one of the display styles. */
1029
990
  export declare function isActionDisplayStyle(value: unknown): value is ActionDisplayStyle;
1030
991
 
992
+ /** True where `content` is a function answering the content. */
993
+ export declare function isCallableFunction(content?: RenderContentRef): content is RenderContentCallable;
994
+
995
+ /** True where `value` is content in one of the four forms: a string, an `MdString`, an `HtmlString` or a component. */
996
+ export declare function isRenderContent(value: unknown): value is RenderContentNonCallable;
997
+
998
+ /** True where `content` names a component to render it with. */
999
+ export declare function isSimpleComponentDef(content?: RenderContentRef): content is SimpleComponentDef;
1000
+
1001
+ declare type Key = keyof typeof defaults;
1002
+
1003
+ /** A field's label: its content, and an icon shown before it. */
1031
1004
  export declare class Label {
1032
- text: string;
1005
+ text: RenderContentNonCallable;
1033
1006
  icon?: string | undefined;
1034
1007
  iconComponent: string;
1035
- constructor(text: string, icon?: string | undefined, iconComponent?: string);
1008
+ constructor(text: RenderContentNonCallable, icon?: string | undefined, iconComponent?: string);
1009
+ }
1010
+
1011
+ /** A string rendered as markdown by `vue-markdown-render`, with its `options` and `plugins`. */
1012
+ export declare class MdString extends String {
1013
+ plugins?: any[];
1014
+ options?: any;
1015
+ constructor(value: string, options?: any, plugins?: any[]);
1016
+ }
1017
+
1018
+ export declare const MessagesWidget: DefineComponent<MessagesWidgetProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<MessagesWidgetProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
1019
+
1020
+ declare interface MessagesWidgetProps {
1021
+ /** A plain text, or the items to render, each in its own element: a `RenderableValue` as its content, an error
1022
+ * as `errorText()` gives it. */
1023
+ message: string | readonly (RenderableValue | ErrorInput)[];
1024
+ /** Classes for every rendered item, beside the item's own `extraClasses`. */
1025
+ classes?: ClassTypes;
1036
1026
  }
1037
1027
 
1028
+ /**
1029
+ * Content with the CSS classes it is rendered with, described as what renders it: `componentName`, its
1030
+ * `componentBindings`, its `componentChildren`, its `componentBody` and its `extraClasses`. `componentName` is
1031
+ * `'template'` for plain text, `'vue-markdown'` for markdown, `'html'` for an `HtmlString` and the component's name
1032
+ * for a `SimpleComponentDef`; `componentBody` is the text of plain text and the HTML of an `HtmlString`.
1033
+ *
1034
+ * `MessagesWidget` renders it, and so does any component that reads those five members. A reference or a function as
1035
+ * the content is read on every render, so what it answers reaches the screen without the value being built again.
1036
+ */
1037
+ export declare class RenderableValue {
1038
+ private readonly content;
1039
+ classes: ClassTypes;
1040
+ private readonly kindRef;
1041
+ constructor(content?: RenderContentRef, classes?: ClassTypes);
1042
+ /** The content as it reads now: a reference unwrapped and a function called. */
1043
+ get resolvedText(): RenderContentNonCallable;
1044
+ /** Which of the four forms the content takes now. */
1045
+ get kind(): RenderContentKind;
1046
+ get componentName(): string;
1047
+ get componentBindings(): Record<string, any>;
1048
+ /** The children of a component; empty for the other forms. */
1049
+ get componentChildren(): readonly RenderContentNonCallable[];
1050
+ get componentBody(): string;
1051
+ get extraClasses(): ClassTypes;
1052
+ }
1053
+
1054
+ /** Content in one of four forms - plain text, markdown, HTML or a component - or a function answering one. */
1055
+ export declare type RenderContent = RenderContentNonCallable | RenderContentCallable;
1056
+
1057
+ export declare type RenderContentCallable = () => RenderContentNonCallable;
1058
+
1059
+ /** Which of the four forms content takes. */
1060
+ export declare type RenderContentKind = 'string' | 'md' | 'html' | 'component';
1061
+
1062
+ export declare type RenderContentNonCallable = string | MdString | HtmlString | SimpleComponentDef;
1063
+
1064
+ /** `RenderContent`, or a reference to it. */
1065
+ export declare type RenderContentRef = RenderContent | Ref<RenderContent>;
1066
+
1067
+ /**
1068
+ * The text of `content` where only text is taken, such as an `aria-label`: a string and an `MdString` as written, an
1069
+ * `HtmlString` without its tags, its blocks separated by a space, whitespace collapsed and trimmed, and with `&amp;`,
1070
+ * `&lt;`, `&gt;`, `&quot;`, `&#39;` and `&nbsp;` read, and a component as the text of its children joined, whitespace
1071
+ * collapsed and trimmed. An `&nbsp;` reads as a space that is neither collapsed nor trimmed.
1072
+ */
1073
+ export declare function renderContentText(content: RenderContentNonCallable): string;
1074
+
1075
+ /** `ActionRenderOptions` with the label read: a string. */
1076
+ export declare type ResolvedActionRenderOptions = Omit<ActionRenderOptions, 'label'> & {
1077
+ label?: string;
1078
+ };
1079
+
1038
1080
  export declare class ResponsiveActionRenderOptions extends ResponsiveRenderOptions<ActionRenderOptions> {
1039
1081
  protected cleanBreakpoint(bp?: ActionRenderOptions, defaultIfEmpty?: boolean): ActionRenderOptions | null;
1040
1082
  }
@@ -1063,12 +1105,10 @@ export declare interface SelectChoice {
1063
1105
  export declare type SelectFetchChoices<T1 = any, T2 = any> = (queryValue?: T1, idValue?: T2) => Promise<SelectChoice[]>;
1064
1106
 
1065
1107
  /**
1066
- * The errors of `errors` a component shows now. `errors` and `valid` state the verdict, which a submit needs at
1067
- * once; what the user is shown waits for the user, because a form covered in errors before anything was typed tells
1068
- * the user nothing they can act on.
1108
+ * The errors of `errors` a component shows now.
1069
1109
  *
1070
- * By default an error is shown where `control` is sent at all - its `effectiveAccess` is not `'disabled'` - and
1071
- * either its `origin` is `'server'`, since the server answered something the user did, or the element is `touched`.
1110
+ * By default an error is shown where `control` is sent - its `effectiveAccess` is not `'disabled'` - and either its
1111
+ * `origin` is `'server'` or the element is `touched`.
1072
1112
  * Without a control, `touched` is the component's own. The `shownErrors` setting replaces the rule with a condition
1073
1113
  * of the application's own, asked for each error with the default answer.
1074
1114
  */
@@ -1083,137 +1123,42 @@ export declare function setFileGoneError(control: default_2.FieldBase | undefine
1083
1123
 
1084
1124
  declare type ShowAsGroup = 'no' | 'grouped' | 'grouped-no-borders';
1085
1125
 
1086
- export declare const translatableStrings: {
1087
- Yes: string;
1088
- No: string;
1089
- Close: string;
1090
- Paragraph: string;
1091
- Heading1: string;
1092
- Heading2: string;
1093
- Heading3: string;
1094
- Heading4: string;
1095
- Heading5: string;
1096
- Heading6: string;
1097
- Downloadable: string;
1098
- ArticleCategory: string;
1099
- Title: string;
1100
- Subtitle: string;
1101
- InfoBox: string;
1102
- SideQuote: string;
1103
- Marker: string;
1104
- Spoiler: string;
1105
- CodeDark: string;
1106
- CodeBright: string;
1107
- Undo: string;
1108
- Redo: string;
1109
- SelectAll: string;
1110
- Bold: string;
1111
- Italic: string;
1112
- HorizontalLine: string;
1113
- Blockquote: string;
1114
- BulletedList: string;
1115
- NumberedList: string;
1116
- Outdent: string;
1117
- Indent: string;
1118
- AlignLeft: string;
1119
- AlignCenter: string;
1120
- AlignRight: string;
1121
- AlignJustify: string;
1122
- Link: string;
1123
- LinkUrl: string;
1124
- LinkApply: string;
1125
- LinkRemove: string;
1126
- Image: string;
1127
- ImageUrl: string;
1128
- ImageUpload: string;
1129
- ImageInsert: string;
1130
- ImageDropHint: string;
1131
- ImageReplace: string;
1132
- ImageDownload: string;
1133
- FileDownload: string;
1134
- Table: string;
1135
- TableInsert: string;
1136
- TableAddRowAbove: string;
1137
- TableAddRowBelow: string;
1138
- TableDeleteRow: string;
1139
- TableAddColumnBefore: string;
1140
- TableAddColumnAfter: string;
1141
- TableDeleteColumn: string;
1142
- TableToggleHeaderRow: string;
1143
- TableDeleteTable: string;
1144
- Style: string;
1145
- MediaEmbed: string;
1146
- MediaEmbedUrl: string;
1147
- MediaEmbedInsert: string;
1148
- InvalidHexColor: string;
1149
- };
1126
+ /**
1127
+ * A component to render content with: an HTML element or a registered component by its name, with its props and its
1128
+ * children. It has no HTML content of its own; HTML is an `HtmlString`.
1129
+ */
1130
+ export declare interface SimpleComponentDef {
1131
+ componentName: string;
1132
+ /** The props of the component. A listener is a prop named `on` and the event, e.g. `onClick`. `innerHTML` is not
1133
+ * one: the component drops it. */
1134
+ componentProps?: Record<string, unknown> & {
1135
+ innerHTML?: never;
1136
+ };
1137
+ /** The children of an HTML element, or the default slot of a component. A string renders as text. */
1138
+ children?: RenderContentNonCallable | readonly RenderContentNonCallable[];
1139
+ }
1140
+
1141
+ /**
1142
+ * `error` with every missing member set: `code` to `''`, `params` to `{}`, `detail` to `''` and `origin` to
1143
+ * `'application'`. Content becomes an error without a code, its text (`renderContentText`) as the `detail`.
1144
+ */
1145
+ export declare function toErrorDescription(error: ErrorInput): ErrorDescription;
1146
+
1147
+ /**
1148
+ * The current translation of one of the library's strings. Called while a component sets up or renders, it
1149
+ * translates with the `translate` setting the component reads, as it reads every other setting, where one is given,
1150
+ * and with the function `translateStrings` set otherwise. Under server-side rendering each request's app states its
1151
+ * own `translate`. An event handler or a timer reads no setting; it uses `useTranslate()`.
1152
+ */
1153
+ export declare function translate(key: Key, params?: Record<string, unknown>): string;
1154
+
1155
+ /**
1156
+ * Sets the translation function of the library's strings for the whole process; see `@dynamicforms/translatable`.
1157
+ * An app installed with the `translate` setting translates with that one instead.
1158
+ */
1159
+ export declare const translateStrings: (t: TranslateFunction, namespace?: string) => void;
1150
1160
 
1151
- export declare const translateStrings: (cb: TranslateStringsCallback< {
1152
- Yes: string;
1153
- No: string;
1154
- Close: string;
1155
- Paragraph: string;
1156
- Heading1: string;
1157
- Heading2: string;
1158
- Heading3: string;
1159
- Heading4: string;
1160
- Heading5: string;
1161
- Heading6: string;
1162
- Downloadable: string;
1163
- ArticleCategory: string;
1164
- Title: string;
1165
- Subtitle: string;
1166
- InfoBox: string;
1167
- SideQuote: string;
1168
- Marker: string;
1169
- Spoiler: string;
1170
- CodeDark: string;
1171
- CodeBright: string;
1172
- Undo: string;
1173
- Redo: string;
1174
- SelectAll: string;
1175
- Bold: string;
1176
- Italic: string;
1177
- HorizontalLine: string;
1178
- Blockquote: string;
1179
- BulletedList: string;
1180
- NumberedList: string;
1181
- Outdent: string;
1182
- Indent: string;
1183
- AlignLeft: string;
1184
- AlignCenter: string;
1185
- AlignRight: string;
1186
- AlignJustify: string;
1187
- Link: string;
1188
- LinkUrl: string;
1189
- LinkApply: string;
1190
- LinkRemove: string;
1191
- Image: string;
1192
- ImageUrl: string;
1193
- ImageUpload: string;
1194
- ImageInsert: string;
1195
- ImageDropHint: string;
1196
- ImageReplace: string;
1197
- ImageDownload: string;
1198
- FileDownload: string;
1199
- Table: string;
1200
- TableInsert: string;
1201
- TableAddRowAbove: string;
1202
- TableAddRowBelow: string;
1203
- TableDeleteRow: string;
1204
- TableAddColumnBefore: string;
1205
- TableAddColumnAfter: string;
1206
- TableDeleteColumn: string;
1207
- TableToggleHeaderRow: string;
1208
- TableDeleteTable: string;
1209
- Style: string;
1210
- MediaEmbed: string;
1211
- MediaEmbedUrl: string;
1212
- MediaEmbedInsert: string;
1213
- InvalidHexColor: string;
1214
- }>) => void;
1215
-
1216
- export declare function useBreakpoint(): ComputedRef<"xs" | "sm" | "md" | "lg" | "xl">;
1161
+ export declare function useBreakpoint(): ComputedRef<"md" | "xs" | "sm" | "lg" | "xl">;
1217
1162
 
1218
1163
  /**
1219
1164
  * Runs the `comms.touch` keep-alive interval for `<df-file>`/`<df-image>` while `value` holds a file
@@ -1226,37 +1171,42 @@ export declare function useFileTouchKeepAlive(value: Ref<string | null>, comms:
1226
1171
  clearTouchInterval: () => void;
1227
1172
  };
1228
1173
 
1229
- export declare function useInputBase<T = any>(props: BaseProps<T>, emit: BaseEmits<T>): {
1174
+ /**
1175
+ * The state and Vuetify bindings an input shares with every other input. `componentErrors` are the errors the
1176
+ * component finds in the value itself, reported where no `control` is bound; a bound control reports through its
1177
+ * own validators.
1178
+ */
1179
+ export declare function useInputBase<T = any>(props: BaseProps<T>, emit: BaseEmits<T>, componentErrors?: () => ValidationError[]): {
1230
1180
  value: WritableComputedRef<T, T>;
1231
1181
  valid: ComputedRef<boolean>;
1232
1182
  enabled: ComputedRef<boolean>;
1233
1183
  errors: ComputedRef<default_2.ValidationError[]>;
1234
- shownErrors: ComputedRef<default_2.ValidationError[]>;
1184
+ shownErrors: ComputedRef<ErrorInput[]>;
1235
1185
  visibility: ComputedRef<default_2.Visibility>;
1236
1186
  isRendered: ComputedRef<boolean>;
1237
- visibilityClass: ComputedRef< {
1238
- 'd-none': boolean;
1239
- invisible: boolean;
1187
+ visibilityClass: ComputedRef<{
1188
+ 'd-none': boolean;
1189
+ invisible: boolean;
1240
1190
  }>;
1241
1191
  label: ComputedRef<Label>;
1242
1192
  touched: Ref<boolean, boolean>;
1243
1193
  density: ComputedRef<FieldDensity>;
1244
1194
  densityClass: ComputedRef<string>;
1245
- vuetifyBindings: ComputedRef< {
1246
- name: string | undefined;
1247
- class: string;
1248
- density: VuetifyDensity;
1249
- variant: FieldVariant;
1250
- label: string;
1251
- errorMessages: string | undefined;
1252
- readonly: boolean;
1253
- disabled: boolean;
1254
- placeholder: string;
1255
- 'persistent-placeholder': boolean;
1256
- hint: string;
1257
- persistentHint: boolean;
1258
- hideDetails: boolean | "auto" | undefined;
1259
- helpText: string;
1195
+ vuetifyBindings: ComputedRef<{
1196
+ name: string | undefined;
1197
+ class: string;
1198
+ density: VuetifyDensity;
1199
+ variant: FieldVariant;
1200
+ label: string;
1201
+ errorMessages: string | undefined;
1202
+ readonly: boolean;
1203
+ disabled: boolean;
1204
+ placeholder: string;
1205
+ 'persistent-placeholder': boolean;
1206
+ hint: string;
1207
+ persistentHint: boolean;
1208
+ hideDetails: boolean | "auto" | undefined;
1209
+ helpText: string;
1260
1210
  }>;
1261
1211
  };
1262
1212
 
@@ -1267,6 +1217,12 @@ export declare function useInputBase<T = any>(props: BaseProps<T>, emit: BaseEmi
1267
1217
  */
1268
1218
  export declare function useShownErrors(element: MaybeRefOrGetter<FieldBase | undefined>): ComputedRef<ValidationError[]>;
1269
1219
 
1220
+ /**
1221
+ * `translate` bound to the settings the calling component reads, for use outside its setup and render: in an event
1222
+ * handler or a timer. Called in a component's setup.
1223
+ */
1224
+ export declare function useTranslate(): (key: Key, params?: Record<string, unknown>) => string;
1225
+
1270
1226
  /** Vuetify's own `size` prop (`v-btn`, `v-icon`, ...) also accepts an arbitrary CSS length or number, so this
1271
1227
  * keeps that but still offers the named sizes for autocomplete: `(string & {})` is a plain `string` to the type
1272
1228
  * checker (any string is still assignable) but not to a union with string literals, which is what makes an IDE
@@ -1277,12 +1233,17 @@ export declare namespace VuetifyComponents {
1277
1233
  export {
1278
1234
  VAutocomplete,
1279
1235
  VBtn,
1236
+ VBtnGroup,
1237
+ VBtnToggle,
1238
+ VCard,
1239
+ VCardActions,
1280
1240
  VCheckbox,
1281
1241
  VChip,
1282
1242
  VCombobox,
1283
1243
  VColorPicker,
1284
1244
  VConfirmEdit,
1285
1245
  VDatePicker,
1246
+ VDivider,
1286
1247
  VField,
1287
1248
  VFileInput,
1288
1249
  VRow,
@@ -1290,7 +1251,9 @@ export declare namespace VuetifyComponents {
1290
1251
  VIcon,
1291
1252
  VImg,
1292
1253
  VInput,
1254
+ VList,
1293
1255
  VListItem,
1256
+ VListItemTitle,
1294
1257
  VMenu,
1295
1258
  VNumberInput,
1296
1259
  VProgressLinear,
@@ -1317,6 +1280,24 @@ export declare interface VuetifyInputsSettings {
1317
1280
  * is synchronous and changes nothing.
1318
1281
  */
1319
1282
  shownErrors?: (error: ValidationError, control: FieldBase | undefined, shownByDefault: boolean) => boolean;
1283
+ /**
1284
+ * The content an error renders as; see `ErrorText`. Without it, an error renders as its `detail`.
1285
+ */
1286
+ errorText?: ErrorText;
1287
+ /**
1288
+ * The translation function of the library's strings, shaped like vue-i18n's `t`. Where it is given, `translate()`
1289
+ * called while a component that reads these settings sets up or renders uses it in place of the one
1290
+ * `translateStrings` set for the process. Under server-side rendering, an app per request gives each request its
1291
+ * own.
1292
+ */
1293
+ translate?: TranslateFunction;
1294
+ /** The namespace `translate` looks the library's keys up under: `${translateNamespace}.${key}`. */
1295
+ translateNamespace?: string;
1296
+ /**
1297
+ * The date-fns locale `<df-date-time>` formats and parses with in this app, in place of
1298
+ * `DateTimeLocaleConfig.dateTimeLocale`. A component's `locale` prop takes precedence.
1299
+ */
1300
+ dateTimeLocale?: MaybeRef<Locale>;
1320
1301
  }
1321
1302
 
1322
1303
  export declare const vuetifyInputsSettingsKey: unique symbol;
@@ -1337,7 +1318,7 @@ export { }
1337
1318
  */
1338
1319
  declare module '@dynamicforms/vue-forms' {
1339
1320
  interface Extras {
1340
- label?: string | Label | MdString;
1321
+ label?: RenderContentNonCallable | Label;
1341
1322
  placeholder?: string;
1342
1323
  helpText?: string;
1343
1324
  hint?: string;