@omnitend/dashboard-for-laravel 0.16.4 → 0.18.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/components/base/DButton.vue.d.ts +57 -2
- package/dist/components/extended/DXField.vue.d.ts +75 -25
- package/dist/components/extended/DXForm.vue.d.ts +23 -1
- package/dist/components/extended/DXRepeater.vue.d.ts +16 -0
- package/dist/dashboard-for-laravel.js +10611 -10154
- package/dist/dashboard-for-laravel.js.map +1 -1
- package/dist/dashboard-for-laravel.umd.cjs +6 -6
- package/dist/dashboard-for-laravel.umd.cjs.map +1 -1
- package/dist/style.css +5 -1
- package/dist/types/index.d.ts +50 -1
- package/docs/public/api-reference.json +172 -4
- package/docs/public/docs-map.md +1 -1
- package/package.json +2 -1
- package/resources/css/theme.scss +28 -0
- package/resources/js/components/base/DButton.vue +170 -6
- package/resources/js/components/extended/DXField.vue +154 -7
- package/resources/js/components/extended/DXForm.vue +206 -80
- package/resources/js/components/extended/DXRepeater.vue +270 -4
- package/resources/js/components/extended/DXTable.vue +6 -7
- package/resources/js/types/index.ts +52 -1
|
@@ -11,13 +11,68 @@ interface Props {
|
|
|
11
11
|
* bootstrap-vue-next 0.45 removed the no-op `'md'` value from `Size`.
|
|
12
12
|
*/
|
|
13
13
|
size?: Size;
|
|
14
|
+
/**
|
|
15
|
+
* Disable the button. Combined with `loading` — either one disables it.
|
|
16
|
+
*/
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Show an in-flight state: the button is disabled immediately and, after
|
|
20
|
+
* `spinnerDelay`, a trailing spinner appears (and the label swaps to
|
|
21
|
+
* `loadingText` if given).
|
|
22
|
+
*
|
|
23
|
+
* Diverges from bvn: `BButton` has a native `loading`/`loadingText` that
|
|
24
|
+
* shows its spinner immediately. We intercept both and render our own
|
|
25
|
+
* anti-flash spinner instead, so bvn's native loading never fires. See
|
|
26
|
+
* DIVERGENCES.md.
|
|
27
|
+
* @default false
|
|
28
|
+
*/
|
|
29
|
+
loading?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Label shown in place of the default slot while the spinner is visible.
|
|
32
|
+
* Omit to keep the original label alongside the spinner. (See `loading` re:
|
|
33
|
+
* the bvn divergence.)
|
|
34
|
+
*/
|
|
35
|
+
loadingText?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Leading Bootstrap Icons glyph name, rendered as `<i class="bi bi-{icon}">`.
|
|
38
|
+
* e.g. `icon="save"`. Hidden while the loading spinner is visible.
|
|
39
|
+
*
|
|
40
|
+
* Diverges from bvn: `BButton`'s native `icon` is a `boolean` (icon-button
|
|
41
|
+
* styling mode). We redefine it as a glyph-name `string`, so bvn's boolean
|
|
42
|
+
* icon mode is unreachable through `DButton`. See DIVERGENCES.md.
|
|
43
|
+
*/
|
|
44
|
+
icon?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Full-width button (BS5 `w-100` idiom, replacing the dropped `.btn-block`).
|
|
47
|
+
* @default false
|
|
48
|
+
*/
|
|
49
|
+
block?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Anti-flash: how long (ms) `loading` must stay true before the spinner is
|
|
52
|
+
* shown, so fast actions never flicker one in.
|
|
53
|
+
* @default 500
|
|
54
|
+
*/
|
|
55
|
+
spinnerDelay?: number;
|
|
56
|
+
/**
|
|
57
|
+
* Anti-flash: minimum time (ms) the spinner stays visible once shown, so a
|
|
58
|
+
* loading state that clears quickly doesn't strobe it away.
|
|
59
|
+
* @default 100
|
|
60
|
+
*/
|
|
61
|
+
minSpinnerTime?: number;
|
|
14
62
|
}
|
|
15
|
-
declare var
|
|
63
|
+
declare var __VLS_6: {}, __VLS_12: string, __VLS_13: any;
|
|
16
64
|
type __VLS_Slots = {} & {
|
|
17
|
-
[K in NonNullable<typeof
|
|
65
|
+
[K in NonNullable<typeof __VLS_12>]?: (props: typeof __VLS_13) => any;
|
|
66
|
+
} & {
|
|
67
|
+
default?: (props: typeof __VLS_6) => any;
|
|
18
68
|
};
|
|
19
69
|
declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
20
70
|
variant: ButtonVariant | LinkVariant | null;
|
|
71
|
+
disabled: boolean;
|
|
72
|
+
loading: boolean;
|
|
73
|
+
block: boolean;
|
|
74
|
+
spinnerDelay: number;
|
|
75
|
+
minSpinnerTime: number;
|
|
21
76
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
77
|
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
23
78
|
export default _default;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { UseFormReturn } from "../../composables/useForm";
|
|
2
|
-
import type { FieldDefinition } from "../../types";
|
|
2
|
+
import type { FieldDefinition, LabelCols } from "../../types";
|
|
3
3
|
interface Props {
|
|
4
4
|
/** Field definition to render */
|
|
5
5
|
field: FieldDefinition;
|
|
@@ -15,6 +15,22 @@ interface Props {
|
|
|
15
15
|
keyPath?: string;
|
|
16
16
|
/** Error key for validation lookups (defaults to keyPath/field.key). */
|
|
17
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 label entirely (only affects the
|
|
29
|
+
* standard labelled-field branch). Used by DXRepeater's `table` layout,
|
|
30
|
+
* where a column header already names the field and a per-row label
|
|
31
|
+
* would waste space in the cell.
|
|
32
|
+
*/
|
|
33
|
+
hideLabel?: boolean;
|
|
18
34
|
}
|
|
19
35
|
declare function setValue(value: any): void;
|
|
20
36
|
declare var __VLS_1: {
|
|
@@ -22,78 +38,112 @@ declare var __VLS_1: {
|
|
|
22
38
|
model: any;
|
|
23
39
|
value: any;
|
|
24
40
|
update: typeof setValue;
|
|
25
|
-
},
|
|
41
|
+
}, __VLS_9: {
|
|
42
|
+
field: FieldDefinition;
|
|
43
|
+
model: any;
|
|
44
|
+
value: any;
|
|
45
|
+
update: typeof setValue;
|
|
46
|
+
}, __VLS_20: {
|
|
47
|
+
field: FieldDefinition;
|
|
48
|
+
model: any;
|
|
49
|
+
}, __VLS_25: {
|
|
50
|
+
field: FieldDefinition;
|
|
51
|
+
model: any;
|
|
52
|
+
}, __VLS_30: {
|
|
53
|
+
field: FieldDefinition;
|
|
54
|
+
model: any;
|
|
55
|
+
value: any;
|
|
56
|
+
update: typeof setValue;
|
|
57
|
+
}, __VLS_41: {
|
|
58
|
+
field: FieldDefinition;
|
|
59
|
+
model: any;
|
|
60
|
+
}, __VLS_46: {
|
|
61
|
+
field: FieldDefinition;
|
|
62
|
+
model: any;
|
|
63
|
+
}, __VLS_57: {
|
|
26
64
|
field: FieldDefinition;
|
|
27
65
|
model: any;
|
|
28
66
|
value: any;
|
|
29
67
|
update: typeof setValue;
|
|
30
|
-
},
|
|
68
|
+
}, __VLS_68: {
|
|
31
69
|
field: FieldDefinition;
|
|
32
70
|
model: any;
|
|
33
|
-
},
|
|
71
|
+
}, __VLS_73: {
|
|
34
72
|
field: FieldDefinition;
|
|
35
73
|
model: any;
|
|
36
|
-
},
|
|
74
|
+
}, __VLS_78: {
|
|
37
75
|
field: FieldDefinition;
|
|
38
76
|
model: any;
|
|
39
77
|
value: any;
|
|
40
78
|
update: typeof setValue;
|
|
41
|
-
},
|
|
79
|
+
}, __VLS_89: {
|
|
42
80
|
field: FieldDefinition;
|
|
43
81
|
model: any;
|
|
44
|
-
},
|
|
82
|
+
}, __VLS_94: {
|
|
45
83
|
field: FieldDefinition;
|
|
46
84
|
model: any;
|
|
47
|
-
},
|
|
85
|
+
}, __VLS_109: {
|
|
48
86
|
row: any;
|
|
49
87
|
index: number;
|
|
50
88
|
fields: FieldDefinition[];
|
|
51
89
|
remove: () => void;
|
|
52
90
|
path: string;
|
|
53
|
-
},
|
|
91
|
+
}, __VLS_111: {
|
|
54
92
|
field: FieldDefinition;
|
|
55
93
|
model: any;
|
|
56
|
-
},
|
|
94
|
+
}, __VLS_116: {
|
|
57
95
|
field: FieldDefinition;
|
|
58
96
|
model: any;
|
|
59
|
-
},
|
|
97
|
+
}, __VLS_127: {
|
|
60
98
|
field: FieldDefinition;
|
|
61
99
|
model: any;
|
|
62
100
|
value: any;
|
|
63
101
|
update: typeof setValue;
|
|
64
|
-
},
|
|
102
|
+
}, __VLS_173: {
|
|
65
103
|
field: FieldDefinition;
|
|
66
104
|
model: any;
|
|
67
|
-
},
|
|
105
|
+
}, __VLS_178: {
|
|
68
106
|
field: FieldDefinition;
|
|
69
107
|
model: any;
|
|
70
108
|
};
|
|
71
109
|
type __VLS_Slots = {} & {
|
|
72
110
|
span?: (props: typeof __VLS_1) => any;
|
|
73
111
|
} & {
|
|
74
|
-
value?: (props: typeof
|
|
112
|
+
value?: (props: typeof __VLS_9) => any;
|
|
113
|
+
} & {
|
|
114
|
+
info?: (props: typeof __VLS_20) => any;
|
|
115
|
+
} & {
|
|
116
|
+
hint?: (props: typeof __VLS_25) => any;
|
|
117
|
+
} & {
|
|
118
|
+
value?: (props: typeof __VLS_30) => any;
|
|
119
|
+
} & {
|
|
120
|
+
info?: (props: typeof __VLS_41) => any;
|
|
121
|
+
} & {
|
|
122
|
+
hint?: (props: typeof __VLS_46) => any;
|
|
123
|
+
} & {
|
|
124
|
+
value?: (props: typeof __VLS_57) => any;
|
|
75
125
|
} & {
|
|
76
|
-
info?: (props: typeof
|
|
126
|
+
info?: (props: typeof __VLS_68) => any;
|
|
77
127
|
} & {
|
|
78
|
-
hint?: (props: typeof
|
|
128
|
+
hint?: (props: typeof __VLS_73) => any;
|
|
79
129
|
} & {
|
|
80
|
-
value?: (props: typeof
|
|
130
|
+
value?: (props: typeof __VLS_78) => any;
|
|
81
131
|
} & {
|
|
82
|
-
info?: (props: typeof
|
|
132
|
+
info?: (props: typeof __VLS_89) => any;
|
|
83
133
|
} & {
|
|
84
|
-
hint?: (props: typeof
|
|
134
|
+
hint?: (props: typeof __VLS_94) => any;
|
|
85
135
|
} & {
|
|
86
|
-
'repeater-row'?: (props: typeof
|
|
136
|
+
'repeater-row'?: (props: typeof __VLS_109) => any;
|
|
87
137
|
} & {
|
|
88
|
-
info?: (props: typeof
|
|
138
|
+
info?: (props: typeof __VLS_111) => any;
|
|
89
139
|
} & {
|
|
90
|
-
hint?: (props: typeof
|
|
140
|
+
hint?: (props: typeof __VLS_116) => any;
|
|
91
141
|
} & {
|
|
92
|
-
value?: (props: typeof
|
|
142
|
+
value?: (props: typeof __VLS_127) => any;
|
|
93
143
|
} & {
|
|
94
|
-
info?: (props: typeof
|
|
144
|
+
info?: (props: typeof __VLS_173) => any;
|
|
95
145
|
} & {
|
|
96
|
-
hint?: (props: typeof
|
|
146
|
+
hint?: (props: typeof __VLS_178) => any;
|
|
97
147
|
};
|
|
98
148
|
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>;
|
|
99
149
|
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { UseFormReturn } from "../../composables/useForm";
|
|
2
2
|
import type { DefineFormReturn } from "../../composables/defineForm";
|
|
3
|
-
import type { FieldDefinition, FormTab } from "../../types";
|
|
3
|
+
import type { FieldDefinition, FormTab, LabelCols } from "../../types";
|
|
4
4
|
interface Props {
|
|
5
5
|
/**
|
|
6
6
|
* Form instance — either a raw `useForm` return or a `defineForm`
|
|
@@ -26,6 +26,26 @@ interface Props {
|
|
|
26
26
|
showSubmit?: boolean;
|
|
27
27
|
/** Auto-switch to the first tab containing a validation error. */
|
|
28
28
|
autoErrorTab?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Wrap the form in a card for a visual boundary (mirrors DXTable's
|
|
31
|
+
* `card` prop). Tabbed forms render the tab nav as a BS5
|
|
32
|
+
* card-header-tabs instead of double-wrapping. Off by default since
|
|
33
|
+
* DXForm is commonly embedded in a page card or modal already.
|
|
34
|
+
*/
|
|
35
|
+
card?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Form-wide field layout: "vertical" (default, label above input) or
|
|
38
|
+
* "horizontal" (label left, input right). Overridable per-field via
|
|
39
|
+
* `field.layout`. A field with `span: true` always renders full-width,
|
|
40
|
+
* regardless of layout.
|
|
41
|
+
*/
|
|
42
|
+
layout?: "vertical" | "horizontal";
|
|
43
|
+
/**
|
|
44
|
+
* Label column width for horizontal layout (mirrors BFormGroup's
|
|
45
|
+
* `labelCols`/`labelCols*` props). Overridable per-field via
|
|
46
|
+
* `field.labelCols`. Ignored when `layout` is "vertical".
|
|
47
|
+
*/
|
|
48
|
+
labelCols?: LabelCols;
|
|
29
49
|
}
|
|
30
50
|
type __VLS_Props = Props;
|
|
31
51
|
type __VLS_Slots = Record<string, (props: any) => any>;
|
|
@@ -43,6 +63,8 @@ declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps,
|
|
|
43
63
|
onSubmit?: (() => any) | undefined;
|
|
44
64
|
"onUpdate:activeTab"?: ((value: number) => any) | undefined;
|
|
45
65
|
}>, {
|
|
66
|
+
card: boolean;
|
|
67
|
+
layout: "vertical" | "horizontal";
|
|
46
68
|
submitText: string;
|
|
47
69
|
submitLoadingText: string;
|
|
48
70
|
showSubmit: boolean;
|
|
@@ -16,9 +16,25 @@ declare var __VLS_1: {
|
|
|
16
16
|
fields: FieldDefinition[];
|
|
17
17
|
remove: () => void;
|
|
18
18
|
path: string;
|
|
19
|
+
}, __VLS_24: {
|
|
20
|
+
row: any;
|
|
21
|
+
index: number;
|
|
22
|
+
fields: FieldDefinition[];
|
|
23
|
+
remove: () => void;
|
|
24
|
+
path: string;
|
|
25
|
+
}, __VLS_43: {
|
|
26
|
+
row: any;
|
|
27
|
+
index: number;
|
|
28
|
+
fields: FieldDefinition[];
|
|
29
|
+
remove: () => void;
|
|
30
|
+
path: string;
|
|
19
31
|
};
|
|
20
32
|
type __VLS_Slots = {} & {
|
|
21
33
|
row?: (props: typeof __VLS_1) => any;
|
|
34
|
+
} & {
|
|
35
|
+
row?: (props: typeof __VLS_24) => any;
|
|
36
|
+
} & {
|
|
37
|
+
row?: (props: typeof __VLS_43) => any;
|
|
22
38
|
};
|
|
23
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>;
|
|
24
40
|
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|