@omnitend/dashboard-for-laravel 0.38.0 → 0.40.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.
Files changed (110) hide show
  1. package/dist/dashboard-for-laravel.js +3841 -3804
  2. package/dist/dashboard-for-laravel.js.map +1 -1
  3. package/dist/dashboard-for-laravel.umd.cjs +5 -5
  4. package/dist/dashboard-for-laravel.umd.cjs.map +1 -1
  5. package/dist/style.css +2 -2
  6. package/docs/public/api-reference.json +25 -6
  7. package/docs/public/docs-map.md +1 -1
  8. package/package.json +1 -1
  9. package/resources/css/theme.scss +5 -1
  10. package/resources/js/components/extended/DXCurrencyInput.vue +23 -1
  11. package/resources/js/components/extended/DXSwitch.vue +6 -4
  12. package/resources/js/components/extended/DXTable.vue +44 -4
  13. package/resources/js/composables/useResourceEditor.ts +102 -21
  14. package/dist/charts.d.ts +0 -19
  15. package/dist/components/base/DAccordion.vue.d.ts +0 -12
  16. package/dist/components/base/DAccordionItem.vue.d.ts +0 -12
  17. package/dist/components/base/DAlert.vue.d.ts +0 -17
  18. package/dist/components/base/DAspect.vue.d.ts +0 -12
  19. package/dist/components/base/DAutocomplete.vue.d.ts +0 -32
  20. package/dist/components/base/DAvatar.vue.d.ts +0 -12
  21. package/dist/components/base/DBadge.vue.d.ts +0 -12
  22. package/dist/components/base/DBreadcrumb.vue.d.ts +0 -12
  23. package/dist/components/base/DButton.vue.d.ts +0 -88
  24. package/dist/components/base/DButtonGroup.vue.d.ts +0 -12
  25. package/dist/components/base/DButtonToolbar.vue.d.ts +0 -12
  26. package/dist/components/base/DCard.vue.d.ts +0 -12
  27. package/dist/components/base/DCol.vue.d.ts +0 -12
  28. package/dist/components/base/DCollapse.vue.d.ts +0 -12
  29. package/dist/components/base/DContainer.vue.d.ts +0 -12
  30. package/dist/components/base/DDropdown.vue.d.ts +0 -12
  31. package/dist/components/base/DDropdownDivider.vue.d.ts +0 -2
  32. package/dist/components/base/DDropdownItem.vue.d.ts +0 -12
  33. package/dist/components/base/DForm.vue.d.ts +0 -12
  34. package/dist/components/base/DFormCheckbox.vue.d.ts +0 -12
  35. package/dist/components/base/DFormCheckboxGroup.vue.d.ts +0 -12
  36. package/dist/components/base/DFormGroup.vue.d.ts +0 -12
  37. package/dist/components/base/DFormInput.vue.d.ts +0 -2
  38. package/dist/components/base/DFormInvalidFeedback.vue.d.ts +0 -12
  39. package/dist/components/base/DFormOtp.vue.d.ts +0 -12
  40. package/dist/components/base/DFormRadio.vue.d.ts +0 -12
  41. package/dist/components/base/DFormRadioGroup.vue.d.ts +0 -12
  42. package/dist/components/base/DFormSelect.vue.d.ts +0 -27
  43. package/dist/components/base/DFormSpinbutton.vue.d.ts +0 -12
  44. package/dist/components/base/DFormTags.vue.d.ts +0 -12
  45. package/dist/components/base/DFormText.vue.d.ts +0 -12
  46. package/dist/components/base/DFormTextarea.vue.d.ts +0 -2
  47. package/dist/components/base/DImage.vue.d.ts +0 -12
  48. package/dist/components/base/DInputGroup.vue.d.ts +0 -12
  49. package/dist/components/base/DLink.vue.d.ts +0 -12
  50. package/dist/components/base/DListGroup.vue.d.ts +0 -12
  51. package/dist/components/base/DListGroupItem.vue.d.ts +0 -12
  52. package/dist/components/base/DModal.vue.d.ts +0 -12
  53. package/dist/components/base/DNav.vue.d.ts +0 -12
  54. package/dist/components/base/DNavItem.vue.d.ts +0 -12
  55. package/dist/components/base/DNavbar.vue.d.ts +0 -12
  56. package/dist/components/base/DNavbarBrand.vue.d.ts +0 -12
  57. package/dist/components/base/DNavbarNav.vue.d.ts +0 -12
  58. package/dist/components/base/DNavbarToggle.vue.d.ts +0 -12
  59. package/dist/components/base/DOffcanvas.vue.d.ts +0 -12
  60. package/dist/components/base/DOverlay.vue.d.ts +0 -12
  61. package/dist/components/base/DPagination.vue.d.ts +0 -2
  62. package/dist/components/base/DPlaceholder.vue.d.ts +0 -12
  63. package/dist/components/base/DPopover.vue.d.ts +0 -12
  64. package/dist/components/base/DProgress.vue.d.ts +0 -12
  65. package/dist/components/base/DRow.vue.d.ts +0 -12
  66. package/dist/components/base/DSpinner.vue.d.ts +0 -2
  67. package/dist/components/base/DTable.vue.d.ts +0 -34
  68. package/dist/components/base/DTabs.vue.d.ts +0 -12
  69. package/dist/components/base/DToast.vue.d.ts +0 -12
  70. package/dist/components/base/DToaster.vue.d.ts +0 -12
  71. package/dist/components/base/DTooltip.vue.d.ts +0 -12
  72. package/dist/components/charts/DXBarChart.vue.d.ts +0 -7
  73. package/dist/components/charts/DXDoughnutChart.vue.d.ts +0 -24
  74. package/dist/components/charts/DXLineChart.vue.d.ts +0 -7
  75. package/dist/components/charts/chartTheme.d.ts +0 -59
  76. package/dist/components/charts/useThemedChart.d.ts +0 -40
  77. package/dist/components/extended/DXBasicForm.vue.d.ts +0 -10
  78. package/dist/components/extended/DXChoiceField.vue.d.ts +0 -26
  79. package/dist/components/extended/DXCurrencyInput.vue.d.ts +0 -27
  80. package/dist/components/extended/DXDashboard.vue.d.ts +0 -105
  81. package/dist/components/extended/DXDashboardNavbar.vue.d.ts +0 -86
  82. package/dist/components/extended/DXDashboardSidebar.vue.d.ts +0 -61
  83. package/dist/components/extended/DXField.vue.d.ts +0 -86
  84. package/dist/components/extended/DXFieldLabel.vue.d.ts +0 -18
  85. package/dist/components/extended/DXFieldShell.vue.d.ts +0 -73
  86. package/dist/components/extended/DXForm.vue.d.ts +0 -112
  87. package/dist/components/extended/DXFormField.vue.d.ts +0 -41
  88. package/dist/components/extended/DXNumericField.vue.d.ts +0 -23
  89. package/dist/components/extended/DXRepeater.vue.d.ts +0 -46
  90. package/dist/components/extended/DXRepeaterCards.vue.d.ts +0 -45
  91. package/dist/components/extended/DXStatCard.vue.d.ts +0 -56
  92. package/dist/components/extended/DXSwitch.vue.d.ts +0 -46
  93. package/dist/components/extended/DXTable.vue.d.ts +0 -466
  94. package/dist/components/extended/DXTableEditorModal.vue.d.ts +0 -100
  95. package/dist/components/extended/DXTablePagination.vue.d.ts +0 -50
  96. package/dist/components/extended/DXTableShell.vue.d.ts +0 -24
  97. package/dist/components/extended/DXUserAvatar.vue.d.ts +0 -40
  98. package/dist/components/extended/dxFieldContext.d.ts +0 -11
  99. package/dist/composables/defineForm.d.ts +0 -41
  100. package/dist/composables/useAsyncOptions.d.ts +0 -20
  101. package/dist/composables/useContainerWidth.d.ts +0 -96
  102. package/dist/composables/useForm.d.ts +0 -46
  103. package/dist/composables/useResourceEditor.d.ts +0 -75
  104. package/dist/composables/useToast.d.ts +0 -2
  105. package/dist/index.d.ts +0 -93
  106. package/dist/types/index.d.ts +0 -477
  107. package/dist/types/navigation.d.ts +0 -43
  108. package/dist/utils/api.d.ts +0 -30
  109. package/dist/utils/formSchema.d.ts +0 -59
  110. package/dist/utils/objectPath.d.ts +0 -18
@@ -1,86 +0,0 @@
1
- import type { UseFormReturn } from "../../composables/useForm";
2
- import type { FieldDefinition, FieldOption, LabelCols } from "../../types";
3
- interface Props {
4
- /** Field definition to render */
5
- field: FieldDefinition;
6
- /** Form instance owning the field's data and errors */
7
- form: UseFormReturn<any>;
8
- /**
9
- * Model passed to predicates (label/hint/when/disabled/readonly).
10
- * Defaults to the live form data; a parent may widen it (e.g. a table
11
- * merging the original row).
12
- */
13
- model?: any;
14
- /** Dot path into form.data for the value (defaults to field.key). */
15
- keyPath?: string;
16
- /** Error key for validation lookups (defaults to keyPath/field.key). */
17
- errorKey?: string;
18
- /**
19
- * Field layout: "vertical" (default, label above input) or "horizontal"
20
- * (label left, input right). Normally set by DXForm (form-level, with
21
- * `field.layout` taking precedence); pass directly when using DXField
22
- * standalone.
23
- */
24
- layout?: "vertical" | "horizontal";
25
- /** Label column width for horizontal layout (mirrors BFormGroup). */
26
- labelCols?: LabelCols;
27
- /**
28
- * Skip rendering the field's own (outer) label. Applies to the standard
29
- * labelled-field branch and to the checkbox/switch/repeater branches. In
30
- * horizontal layout no label column is reserved either, so the control
31
- * spans the full width (a switch/checkbox self-label then lines up with
32
- * sibling row labels). Used by DXRepeater's `table` layout (a column
33
- * header already names the field) and by consumers hiding the redundant
34
- * row label on a switch/checkbox, which render their own label inside the
35
- * control (#78).
36
- */
37
- hideLabel?: boolean;
38
- }
39
- declare function setValue(value: any): void;
40
- declare var __VLS_1: {
41
- field: FieldDefinition;
42
- model: any;
43
- value: any;
44
- update: typeof setValue;
45
- }, __VLS_6: {
46
- field: FieldDefinition;
47
- model: any;
48
- }, __VLS_8: {
49
- field: FieldDefinition;
50
- model: any;
51
- }, __VLS_10: {
52
- field: FieldDefinition;
53
- model: any;
54
- value: any;
55
- update: typeof setValue;
56
- }, __VLS_52: {
57
- option: FieldOption;
58
- on: boolean;
59
- }, __VLS_64: {
60
- row: any;
61
- index: number;
62
- fields: FieldDefinition[];
63
- remove: () => void;
64
- path: string;
65
- };
66
- type __VLS_Slots = {} & {
67
- span?: (props: typeof __VLS_1) => any;
68
- } & {
69
- hint?: (props: typeof __VLS_6) => any;
70
- } & {
71
- info?: (props: typeof __VLS_8) => any;
72
- } & {
73
- value?: (props: typeof __VLS_10) => any;
74
- } & {
75
- 'switch-list-item'?: (props: typeof __VLS_52) => any;
76
- } & {
77
- 'repeater-row'?: (props: typeof __VLS_64) => any;
78
- };
79
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
80
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
81
- export default _default;
82
- type __VLS_WithSlots<T, S> = T & {
83
- new (): {
84
- $slots: S;
85
- };
86
- };
@@ -1,18 +0,0 @@
1
- interface Props {
2
- /** Visible label text. */
3
- label: string;
4
- /** Optional help text revealed in a popover from an info affordance. */
5
- info?: string;
6
- }
7
- declare var __VLS_8: {};
8
- type __VLS_Slots = {} & {
9
- popover?: (props: typeof __VLS_8) => any;
10
- };
11
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
13
- export default _default;
14
- type __VLS_WithSlots<T, S> = T & {
15
- new (): {
16
- $slots: S;
17
- };
18
- };
@@ -1,73 +0,0 @@
1
- import type { UseFormReturn } from "../../composables/useForm";
2
- import type { FieldDefinition } from "../../types";
3
- interface Props {
4
- /** The field definition (for `field.help` and slot props). */
5
- field: FieldDefinition;
6
- /** Form instance owning the field's errors. */
7
- form: UseFormReturn<any>;
8
- /** Error key for validation lookups. */
9
- errorKey: string;
10
- /** Model passed to `hint`/`info` slot props. */
11
- model?: any;
12
- /**
13
- * Layout shape. `group` = DFormGroup root with a label column; `plain` =
14
- * plain div, the control owning its own inline label/heading.
15
- */
16
- mode: "group" | "plain";
17
- /** Wrapper class (`field.class || 'mb-3'`). */
18
- wrapperClass?: string;
19
- /** BFormGroup attrs (horizontal label-cols etc.); group mode only. */
20
- groupAttrs?: Record<string, any>;
21
- /** Resolved label text (group mode). Always supplied by DXField. */
22
- label: string;
23
- /** Resolved info text for the label popover (group mode). */
24
- info?: string;
25
- /** Skip the label column entirely (group mode). */
26
- hideLabel?: boolean;
27
- /**
28
- * Whether the hint sits in the label column (horizontal) rather than below
29
- * the control. Group mode only; plain mode always renders the hint below.
30
- */
31
- hintInLabel?: boolean;
32
- /** Resolved hint text (fallback when no `hint` slot is supplied). */
33
- resolvedHint?: string;
34
- }
35
- declare var __VLS_8: {
36
- field: FieldDefinition;
37
- model: any;
38
- }, __VLS_10: {}, __VLS_15: {
39
- field: FieldDefinition;
40
- model: any;
41
- }, __VLS_20: {
42
- field: FieldDefinition;
43
- model: any;
44
- }, __VLS_25: {}, __VLS_30: {
45
- field: FieldDefinition;
46
- model: any;
47
- }, __VLS_35: {
48
- field: FieldDefinition;
49
- model: any;
50
- };
51
- type __VLS_Slots = {} & {
52
- hint?: (props: typeof __VLS_8) => any;
53
- } & {
54
- default?: (props: typeof __VLS_10) => any;
55
- } & {
56
- info?: (props: typeof __VLS_15) => any;
57
- } & {
58
- hint?: (props: typeof __VLS_20) => any;
59
- } & {
60
- default?: (props: typeof __VLS_25) => any;
61
- } & {
62
- info?: (props: typeof __VLS_30) => any;
63
- } & {
64
- hint?: (props: typeof __VLS_35) => any;
65
- };
66
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
67
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
68
- export default _default;
69
- type __VLS_WithSlots<T, S> = T & {
70
- new (): {
71
- $slots: S;
72
- };
73
- };
@@ -1,112 +0,0 @@
1
- import type { UseFormReturn } from "../../composables/useForm";
2
- import type { DefineFormReturn } from "../../composables/defineForm";
3
- import type { FieldDefinition, FormTab, LabelCols } from "../../types";
4
- interface Props {
5
- /**
6
- * Form instance — either a raw `useForm` return or a `defineForm`
7
- * return (`{ form, fields }`). With the latter, `fields` may be
8
- * omitted and is taken from the form object.
9
- */
10
- form: UseFormReturn<any> | DefineFormReturn<any>;
11
- /** Field definitions (optional when `form` is a defineForm return). */
12
- fields?: FieldDefinition[];
13
- /** Tab definitions. When omitted, a flat single-column form renders. */
14
- tabs?: FormTab[];
15
- /**
16
- * Extra context merged under the live form data when evaluating
17
- * predicates (label/hint/when/disabled). E.g. a table passes the
18
- * original row so predicates can read non-edited columns.
19
- */
20
- context?: Record<string, any>;
21
- /** Submit button text */
22
- submitText?: string;
23
- /** Submit button loading text */
24
- submitLoadingText?: string;
25
- /** Show the submit button */
26
- showSubmit?: boolean;
27
- /** Auto-switch to the first tab containing a validation error. */
28
- autoErrorTab?: boolean;
29
- /**
30
- * Wrap the form in a card for a visual boundary (mirrors DXTable's
31
- * `card` prop). Off by default since DXForm is commonly embedded in a
32
- * page card or modal already. Tabbed forms are wrapped by default
33
- * regardless — see `cardTabs`; setting `card` also forces the tabbed
34
- * card on even when `cardTabs` is disabled.
35
- */
36
- card?: boolean;
37
- /**
38
- * Wrap a TABBED form's content in a card panel so the active tab reads
39
- * as a finished panel connected to the tab strip (the standard
40
- * Bootstrap card-with-tabs pattern) rather than floating on the bare
41
- * page background (#159). On by default. Set `false` for bare tabs
42
- * (e.g. inside a modal that already provides a boundary). Ignored for
43
- * flat (non-tabbed) forms — use `card` for those.
44
- */
45
- cardTabs?: boolean;
46
- /**
47
- * Form-wide field layout:
48
- *
49
- * - `"vertical"` (default) — label above input, always.
50
- * - `"horizontal"` — label left, input right, always.
51
- * - `"auto"` — horizontal when the form's **own container** is at least
52
- * `layoutThreshold` px wide, vertical below that. Container-driven, not
53
- * viewport-driven: a page narrowed by the dashboard sidebar, or a form
54
- * inside a modal, stacks even though the window is wide (which no
55
- * Bootstrap media query can see).
56
- *
57
- * Overridable per-field via `field.layout`. A field with `span: true`
58
- * always renders full-width, regardless of layout.
59
- */
60
- layout?: "vertical" | "horizontal" | "auto";
61
- /**
62
- * Container width (px) at or above which `layout: "auto"` goes horizontal.
63
- * Ignored for the explicit `"vertical"`/`"horizontal"` layouts.
64
- *
65
- * Default 640, measured rather than guessed: with the default 3-column
66
- * label the label's text area is `containerWidth / 4 - 18` px, so 640 gives
67
- * it 142px — enough for a ~20-character label ("Unit price (ex VAT)"
68
- * measures 128px at the theme's label font) to stay on one line, with the
69
- * control column still 474px. Below ~584px that label starts wrapping,
70
- * which is the cramped-label symptom this exists to avoid. Raise it if your
71
- * labels run longer, or lower `labelCols` instead.
72
- */
73
- layoutThreshold?: number;
74
- /**
75
- * Label column width for horizontal layout (mirrors BFormGroup's
76
- * `labelCols`/`labelCols*` props). Overridable per-field via
77
- * `field.labelCols`. Ignored when `layout` is "vertical".
78
- */
79
- labelCols?: LabelCols;
80
- }
81
- type __VLS_Props = Props;
82
- type __VLS_Slots = Record<string, (props: any) => any>;
83
- declare function goToErrorTab(): void;
84
- type __VLS_PublicProps = __VLS_Props & {
85
- /** v-model for the active tab index. */
86
- "activeTab"?: number;
87
- };
88
- declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, {
89
- goToErrorTab: typeof goToErrorTab;
90
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
91
- submit: () => any;
92
- "update:activeTab": (value: number) => any;
93
- }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
94
- onSubmit?: (() => any) | undefined;
95
- "onUpdate:activeTab"?: ((value: number) => any) | undefined;
96
- }>, {
97
- layout: "vertical" | "horizontal" | "auto";
98
- card: boolean;
99
- submitText: string;
100
- submitLoadingText: string;
101
- showSubmit: boolean;
102
- autoErrorTab: boolean;
103
- cardTabs: boolean;
104
- layoutThreshold: number;
105
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
106
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
107
- export default _default;
108
- type __VLS_WithSlots<T, S> = T & {
109
- new (): {
110
- $slots: S;
111
- };
112
- };
@@ -1,41 +0,0 @@
1
- import type { UseFormReturn } from "../../composables/useForm";
2
- import type { FieldDefinition, LabelCols } from "../../types";
3
- interface Props {
4
- /** The field to render. */
5
- field: FieldDefinition;
6
- /** The resolved form instance (state, errors, submit helpers). */
7
- form: UseFormReturn<any>;
8
- /** Live form data merged with context, for slot bindings/predicates. */
9
- model: Record<string, any>;
10
- /** Form-level layout; overridden per-field by `field.layout`. */
11
- layout?: "vertical" | "horizontal";
12
- /** Form-level label column width; overridden per-field by `field.labelCols`. */
13
- labelCols?: LabelCols;
14
- }
15
- declare var __VLS_2: `field(${string})`, __VLS_3: {
16
- field: FieldDefinition;
17
- model: Record<string, any>;
18
- }, __VLS_6: `field-before(${string})`, __VLS_7: {
19
- field: FieldDefinition;
20
- model: Record<string, any>;
21
- }, __VLS_13: string, __VLS_14: any, __VLS_17: `field-after(${string})`, __VLS_18: {
22
- field: FieldDefinition;
23
- model: Record<string, any>;
24
- };
25
- type __VLS_Slots = {} & {
26
- [K in NonNullable<typeof __VLS_2>]?: (props: typeof __VLS_3) => any;
27
- } & {
28
- [K in NonNullable<typeof __VLS_6>]?: (props: typeof __VLS_7) => any;
29
- } & {
30
- [K in NonNullable<typeof __VLS_13>]?: (props: typeof __VLS_14) => any;
31
- } & {
32
- [K in NonNullable<typeof __VLS_17>]?: (props: typeof __VLS_18) => any;
33
- };
34
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
35
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
36
- export default _default;
37
- type __VLS_WithSlots<T, S> = T & {
38
- new (): {
39
- $slots: S;
40
- };
41
- };
@@ -1,23 +0,0 @@
1
- import type { FieldDefinition } from "../../types";
2
- interface Props {
3
- /** Field definition (type currency/percentage/number + numeric options). */
4
- field: FieldDefinition;
5
- /** Current model value. */
6
- modelValue: any;
7
- /** Validation state passed to the control. */
8
- state?: boolean | null;
9
- /** Disabled state (`isDisabled`). */
10
- isDisabled?: boolean;
11
- /** Readonly state (`isReadonly`). */
12
- isReadonly?: boolean;
13
- /** Plaintext (display-only) state (`isPlaintext`). */
14
- isPlaintext?: boolean;
15
- /** Escape-hatch input props, already guard-merged by DXField. */
16
- inputProps?: Record<string, any>;
17
- }
18
- declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
19
- "update:modelValue": (value: any) => any;
20
- }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
21
- "onUpdate:modelValue"?: ((value: any) => any) | undefined;
22
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
23
- export default _default;
@@ -1,46 +0,0 @@
1
- import type { UseFormReturn } from "../../composables/useForm";
2
- import type { FieldDefinition } from "../../types";
3
- interface Props {
4
- /** Form instance owning the repeater array */
5
- form: UseFormReturn<any>;
6
- /** The repeater field definition (provides sub-fields, limits, labels) */
7
- field: FieldDefinition;
8
- /** Dot path into form.data for the array (defaults to field.key) */
9
- keyPath?: string;
10
- /** Model passed to predicates from the parent context */
11
- model?: any;
12
- }
13
- declare var __VLS_1: {
14
- row: any;
15
- index: number;
16
- fields: FieldDefinition[];
17
- remove: () => void;
18
- path: string;
19
- }, __VLS_27: {
20
- row: any;
21
- index: number;
22
- fields: FieldDefinition[];
23
- remove: () => void;
24
- path: string;
25
- }, __VLS_32: {
26
- row: any;
27
- index: number;
28
- fields: FieldDefinition[];
29
- remove: () => void;
30
- path: string;
31
- };
32
- type __VLS_Slots = {} & {
33
- row?: (props: typeof __VLS_1) => any;
34
- } & {
35
- row?: (props: typeof __VLS_27) => any;
36
- } & {
37
- row?: (props: typeof __VLS_32) => any;
38
- };
39
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
40
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
41
- export default _default;
42
- type __VLS_WithSlots<T, S> = T & {
43
- new (): {
44
- $slots: S;
45
- };
46
- };
@@ -1,45 +0,0 @@
1
- import type { UseFormReturn } from "../../composables/useForm";
2
- import type { FieldDefinition } from "../../types";
3
- interface Props {
4
- /** Rows shown in the UI, each paired with its real (unfiltered) array index. */
5
- visibleRows: Array<{
6
- row: any;
7
- index: number;
8
- }>;
9
- /** Sub-field definitions for a row. */
10
- subFields: FieldDefinition[];
11
- /** Form instance owning the repeater array. */
12
- form: UseFormReturn<any>;
13
- /** The repeater field definition (for `showRowIndex` and `addLabel`). */
14
- field: FieldDefinition;
15
- /** Minimum rows — the Remove button disables at this count. */
16
- minItems: number;
17
- /** Maximum rows — the Add button disables at this count. */
18
- maxItems: number | undefined;
19
- /** Stable v-for key for a row (owned by DXRepeater — row identity, not index). */
20
- rowKey: (row: any, fallbackPosition: number) => string | number;
21
- /** Dot path into form.data for a row at the given true index. */
22
- rowPath: (index: number) => string;
23
- /** Remove the row at the given true index (respects minItems / soft-delete). */
24
- removeRow: (index: number) => void;
25
- /** Append a fresh row (respects maxItems). */
26
- addRow: () => void;
27
- }
28
- declare var __VLS_1: {
29
- row: any;
30
- index: number;
31
- fields: FieldDefinition[];
32
- remove: () => void;
33
- path: string;
34
- };
35
- type __VLS_Slots = {} & {
36
- row?: (props: typeof __VLS_1) => any;
37
- };
38
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
39
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
40
- export default _default;
41
- type __VLS_WithSlots<T, S> = T & {
42
- new (): {
43
- $slots: S;
44
- };
45
- };
@@ -1,56 +0,0 @@
1
- type StatFormat = "number" | "currency" | "percent";
2
- type DeltaDirection = "up" | "down" | "neutral";
3
- interface Props {
4
- /** Metric label, e.g. "Revenue". */
5
- title: string;
6
- /** Optional secondary line under the title, e.g. "This week". */
7
- subtitle?: string;
8
- /** The metric value. Numbers are formatted per `format`; strings pass through. */
9
- value: string | number;
10
- /** How to format a numeric `value` (default: plain number with grouping). */
11
- format?: StatFormat;
12
- /** Currency symbol for `format: "currency"` (default "£"). */
13
- currencySymbol?: string;
14
- /** Decimal places (default: 2 for currency, 0 otherwise). */
15
- precision?: number;
16
- /** Locale for number grouping/formatting (default: the runtime's). */
17
- locale?: string;
18
- /** Change versus a comparison period. Its sign drives the arrow/colour. */
19
- delta?: number;
20
- /** How to format the delta (default "percent"). */
21
- deltaFormat?: StatFormat;
22
- /** Force the delta direction instead of deriving it from `delta`'s sign. */
23
- deltaDirection?: DeltaDirection;
24
- /** Caption beside the delta, e.g. "vs last week". */
25
- deltaLabel?: string;
26
- /**
27
- * Invert the delta colour: by default an up delta is positive (success/green)
28
- * and a down delta negative (danger/red). Set for metrics where down is good
29
- * (costs, bounce rate, …).
30
- */
31
- invertDelta?: boolean;
32
- }
33
- declare var __VLS_5: {}, __VLS_7: {
34
- formatted: string;
35
- value: string | number;
36
- }, __VLS_12: {};
37
- type __VLS_Slots = {} & {
38
- icon?: (props: typeof __VLS_5) => any;
39
- } & {
40
- value?: (props: typeof __VLS_7) => any;
41
- } & {
42
- trend?: (props: typeof __VLS_12) => any;
43
- };
44
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
45
- currencySymbol: string;
46
- format: StatFormat;
47
- deltaFormat: StatFormat;
48
- invertDelta: boolean;
49
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
50
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
51
- export default _default;
52
- type __VLS_WithSlots<T, S> = T & {
53
- new (): {
54
- $slots: S;
55
- };
56
- };
@@ -1,46 +0,0 @@
1
- interface Props {
2
- /** Whether the switch is on. */
3
- modelValue?: boolean;
4
- /** Static text beside the toggle; the fallback when no contextual text applies. */
5
- label?: string;
6
- /** Text shown when on — overrides `label` in the on state (e.g. "Product is current"). */
7
- textWhenTrue?: string;
8
- /** Text shown when off — overrides `label` in the off state (e.g. "Product is not current"). */
9
- textWhenFalse?: string;
10
- /**
11
- * On-state colour. `"success"` (default) reads the house green-on / red-off
12
- * style — an active/enabled/good switch ("Product is current", "Stock is
13
- * tracked", "Visible"). `"neutral"` is for semantically-mixed switches
14
- * ("contains alcohol", an allergen toggle, "hidden on web shop") that
15
- * shouldn't imply good/bad — it uses the brand primary on / grey off (#158).
16
- */
17
- onVariant?: "success" | "neutral";
18
- /**
19
- * `"sm"` renders a compact box (~31px vs the default ~35px input height) for
20
- * dense rows that repeat the switch per item (a per-line visibility toggle in
21
- * a modal). Omit for the standard size, which matches the `.form-control`
22
- * height so a switch lines up with inputs beside it.
23
- */
24
- size?: "sm";
25
- }
26
- declare var __VLS_4: {
27
- on: boolean;
28
- };
29
- type __VLS_Slots = {} & {
30
- default?: (props: typeof __VLS_4) => any;
31
- };
32
- declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
33
- "update:modelValue": (value: boolean) => any;
34
- }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
35
- "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
36
- }>, {
37
- modelValue: boolean;
38
- onVariant: "success" | "neutral";
39
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
40
- declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
41
- export default _default;
42
- type __VLS_WithSlots<T, S> = T & {
43
- new (): {
44
- $slots: S;
45
- };
46
- };