@dskripchenko/laravel-admin 1.31.3 → 1.33.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/README.md +9 -27
- package/dist/.vite/manifest.json +11 -0
- package/dist/app.d.ts +13 -0
- package/dist/assets/app-C5UPrfEf.css +1 -0
- package/dist/assets/app-POyU3uzR.js +29 -0
- package/dist/components/ScreenPage.test.d.ts +1 -0
- package/dist/components/actions/AdminActionButton.vue.d.ts +25 -0
- package/dist/components/actions/AdminActionDialogs.vue.d.ts +6 -0
- package/dist/components/actions/AdminActionForm.vue.d.ts +8 -0
- package/dist/components/actions/AdminActionMenuItems.vue.d.ts +14 -0
- package/dist/components/dashboard/BarChartWidget.vue.d.ts +3 -0
- package/dist/components/dashboard/CartesianChartWidget.vue.d.ts +21 -0
- package/dist/components/dashboard/ChartLegend.vue.d.ts +14 -0
- package/dist/components/dashboard/ChartTooltip.vue.d.ts +15 -0
- package/dist/components/dashboard/ChartWidget.test.d.ts +1 -0
- package/dist/components/dashboard/ChartWidget.vue.d.ts +9 -7
- package/dist/components/dashboard/HeatmapWidget.vue.d.ts +1 -1
- package/dist/components/dashboard/RadarChartWidget.vue.d.ts +15 -0
- package/dist/components/dashboard/chartGeometry.d.ts +62 -0
- package/dist/components/dashboard/chartTypes.d.ts +8 -0
- package/dist/components/dashboard/useChartSize.d.ts +14 -0
- package/dist/components/fields/CascaderField.vue.d.ts +32 -0
- package/dist/components/fields/CodeField.vue.d.ts +28 -0
- package/dist/components/fields/ColorField.vue.d.ts +23 -0
- package/dist/components/fields/DateRangeField.vue.d.ts +24 -0
- package/dist/components/fields/GroupField.vue.d.ts +21 -0
- package/dist/components/fields/HiddenField.vue.d.ts +8 -0
- package/dist/components/fields/LabelField.vue.d.ts +14 -0
- package/dist/components/fields/MarkdownField.vue.d.ts +29 -0
- package/dist/components/fields/MorphSwitcherField.vue.d.ts +23 -0
- package/dist/components/fields/RadioField.vue.d.ts +21 -0
- package/dist/components/fields/RatingField.vue.d.ts +23 -0
- package/dist/components/fields/SliderField.vue.d.ts +24 -0
- package/dist/components/fields/TimeField.vue.d.ts +26 -0
- package/dist/components/fields/TreeSelectField.vue.d.ts +26 -0
- package/dist/components/fields/WysiwygField.vue.d.ts +1 -1
- package/dist/components/fields/pickerFields.test.d.ts +1 -0
- package/dist/components/fields/support/color.d.ts +18 -0
- package/dist/components/fields/support/dateRange.d.ts +9 -0
- package/dist/components/fields/support/markdown.d.ts +14 -0
- package/dist/components/fields/support/support.test.d.ts +1 -0
- package/dist/components/fields/support/tree.d.ts +23 -0
- package/dist/components/infolist/CascaderEntry.vue.d.ts +21 -0
- package/dist/components/infolist/CodeEntry.vue.d.ts +17 -0
- package/dist/components/infolist/ColorEntry.vue.d.ts +15 -0
- package/dist/components/infolist/DateRangeEntry.vue.d.ts +11 -0
- package/dist/components/infolist/FieldEntry.vue.d.ts +19 -0
- package/dist/components/infolist/GroupEntry.vue.d.ts +19 -0
- package/dist/components/infolist/HiddenEntry.vue.d.ts +2 -0
- package/dist/components/infolist/ImageEntry.vue.d.ts +21 -0
- package/dist/components/infolist/MapEntry.vue.d.ts +17 -0
- package/dist/components/infolist/MarkdownEntry.vue.d.ts +11 -0
- package/dist/components/infolist/MorphEntry.vue.d.ts +19 -0
- package/dist/components/infolist/OptionEntry.vue.d.ts +13 -0
- package/dist/components/infolist/RatingEntry.vue.d.ts +19 -0
- package/dist/components/infolist/RelationEntry.vue.d.ts +17 -0
- package/dist/components/infolist/TreeSelectEntry.vue.d.ts +15 -0
- package/dist/components/infolist/entryValue.d.ts +10 -0
- package/dist/components/infolist/viewEntries.test.d.ts +1 -0
- package/dist/components/layouts/AccordionLayout.vue.d.ts +16 -0
- package/dist/components/layouts/AuditTrailLayout.vue.d.ts +13 -0
- package/dist/components/layouts/DrawerLayout.vue.d.ts +25 -0
- package/dist/components/layouts/InfolistLayout.vue.d.ts +12 -0
- package/dist/components/layouts/ModalLayout.vue.d.ts +22 -0
- package/dist/components/layouts/StepLayout.vue.d.ts +12 -0
- package/dist/components/layouts/ViewLayout.vue.d.ts +7 -0
- package/dist/components/layouts/WizardLayout.vue.d.ts +20 -0
- package/dist/components/layouts/WrapperLayout.vue.d.ts +12 -0
- package/dist/components/layouts/layouts.test.d.ts +1 -0
- package/dist/components/layouts/overlay.d.ts +29 -0
- package/dist/components/layouts/wizard.d.ts +39 -0
- package/dist/components/layouts/wizard.test.d.ts +1 -0
- package/dist/components/render/backendParity.test.d.ts +1 -0
- package/dist/components/render/formState.d.ts +11 -0
- package/dist/components/render/index.d.ts +10 -0
- package/dist/components/render/screenContext.d.ts +75 -0
- package/dist/components/render/screenContext.test.d.ts +1 -0
- package/dist/components/resource/AuditTimeline.vue.d.ts +5 -1
- package/dist/components/resource/ResourceIndexPage.vue.d.ts +5 -5
- package/dist/components/resource/ResourceViewPage.vue.d.ts +2 -2
- package/dist/composables/useActionRunner.d.ts +112 -0
- package/dist/composables/useActionRunner.test.d.ts +1 -0
- package/dist/formState-DVU2igtT.js +76 -0
- package/dist/formState-DVU2igtT.js.map +1 -0
- package/dist/formState-DqHe1Jgd.cjs +2 -0
- package/dist/formState-DqHe1Jgd.cjs.map +1 -0
- package/dist/index.cjs +19 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.mjs +18826 -15285
- package/dist/index.mjs.map +1 -1
- package/dist/quill.cjs +1 -1
- package/dist/quill.mjs +1 -1
- package/dist/source-hash.txt +1 -0
- package/dist/stores/screen.d.ts +3 -5
- package/dist/stores/toast.d.ts +21 -0
- package/dist/stores/toast.test.d.ts +1 -0
- package/dist/style.css +1 -1
- package/dist/tinymce.cjs +1 -1
- package/dist/tinymce.mjs +1 -1
- package/package.json +3 -2
- package/dist/.gitkeep +0 -0
- package/dist/formState-DeRZBwWH.js +0 -41
- package/dist/formState-DeRZBwWH.js.map +0 -1
- package/dist/formState-yUTD6wAR.cjs +0 -2
- package/dist/formState-yUTD6wAR.cjs.map +0 -1
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Colour conversions between the formats ColorPicker can store — hex, rgb()
|
|
3
|
+
* and hsl() — and the hex that UidColorPicker works with.
|
|
4
|
+
*/
|
|
5
|
+
export type ColorFormat = 'hex' | 'rgb' | 'hsl';
|
|
6
|
+
export interface Rgba {
|
|
7
|
+
r: number;
|
|
8
|
+
g: number;
|
|
9
|
+
b: number;
|
|
10
|
+
/** 0..1 */
|
|
11
|
+
a: number;
|
|
12
|
+
}
|
|
13
|
+
/** Parses hex (3/4/6/8 digits), rgb()/rgba() and hsl()/hsla(); null when unrecognised. */
|
|
14
|
+
export declare function parseColor(input: unknown): Rgba | null;
|
|
15
|
+
/** Formats a colour; the alpha channel is written only when it is below 1. */
|
|
16
|
+
export declare function formatColor(c: Rgba, format?: ColorFormat): string;
|
|
17
|
+
/** Any supported colour string as the hex UidColorPicker understands. */
|
|
18
|
+
export declare function toHex(input: unknown): string | null;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The value of Field\DateRange: `{from, to}` as the backend stores it; a
|
|
3
|
+
* `[from, to]` pair or `{start, end}` from a host is read as well.
|
|
4
|
+
*/
|
|
5
|
+
export interface DateRangeValue {
|
|
6
|
+
start: string | null;
|
|
7
|
+
end: string | null;
|
|
8
|
+
}
|
|
9
|
+
export declare function readDateRange(raw: unknown): DateRangeValue;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A small, dependency-free markdown → HTML renderer for previews.
|
|
3
|
+
*
|
|
4
|
+
* It covers the everyday subset — headings, paragraphs, emphasis, inline code,
|
|
5
|
+
* fenced code, links, images, block quotes, lists and rules — which is what a
|
|
6
|
+
* description or a note in an admin form usually holds. A host that needs the
|
|
7
|
+
* full CommonMark grammar registers its own `markdown` field or entry.
|
|
8
|
+
*
|
|
9
|
+
* Safety: the source is HTML-escaped BEFORE any markup is produced, so raw
|
|
10
|
+
* HTML in the markdown is shown as text, never executed; link and image URLs
|
|
11
|
+
* are limited to http(s), mailto, relative and anchor targets.
|
|
12
|
+
*/
|
|
13
|
+
export declare function escapeHtml(text: string): string;
|
|
14
|
+
export declare function renderMarkdown(source: string | null | undefined): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The option trees TreeSelect and Cascader serialize:
|
|
3
|
+
* [{ value, label, children?: [...] }, ...]
|
|
4
|
+
*/
|
|
5
|
+
export type OptionValue = string | number;
|
|
6
|
+
export interface OptionTreeItem {
|
|
7
|
+
value: OptionValue;
|
|
8
|
+
label: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
children?: OptionTreeItem[];
|
|
11
|
+
}
|
|
12
|
+
export interface FlatOption {
|
|
13
|
+
value: OptionValue;
|
|
14
|
+
label: string;
|
|
15
|
+
}
|
|
16
|
+
/** Keeps only well-formed items: the payload comes from the host's arrays. */
|
|
17
|
+
export declare function normalizeTree(raw: unknown): OptionTreeItem[];
|
|
18
|
+
/** The labels from the root down to the node with `value`; null when absent. */
|
|
19
|
+
export declare function findLabelPath(tree: OptionTreeItem[], value: unknown): string[] | null;
|
|
20
|
+
/** The labels of a cascader path: one value per level. */
|
|
21
|
+
export declare function cascaderLabels(tree: OptionTreeItem[], path: unknown[]): string[];
|
|
22
|
+
/** A flat options list ([{value, label}]) — the label of a value, or the value itself. */
|
|
23
|
+
export declare function optionLabel(options: unknown, value: unknown): string;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
tree?: unknown;
|
|
5
|
+
levels?: Array<{
|
|
6
|
+
options?: unknown;
|
|
7
|
+
}> | null;
|
|
8
|
+
separator?: string;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
}
|
|
11
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
12
|
+
value: undefined;
|
|
13
|
+
name: string;
|
|
14
|
+
placeholder: string;
|
|
15
|
+
tree: never[];
|
|
16
|
+
separator: string;
|
|
17
|
+
levels: Array<{
|
|
18
|
+
options?: unknown;
|
|
19
|
+
}> | null;
|
|
20
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
21
|
+
export default _default;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
language?: string | null;
|
|
5
|
+
lineNumbers?: boolean;
|
|
6
|
+
height?: number | string | null;
|
|
7
|
+
placeholder?: string;
|
|
8
|
+
}
|
|
9
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
10
|
+
value: undefined;
|
|
11
|
+
height: number | string | null;
|
|
12
|
+
name: string;
|
|
13
|
+
placeholder: string;
|
|
14
|
+
language: string | null;
|
|
15
|
+
lineNumbers: boolean;
|
|
16
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
17
|
+
export default _default;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: string | null;
|
|
4
|
+
showValue?: boolean;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
meta?: Record<string, unknown>;
|
|
7
|
+
}
|
|
8
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
9
|
+
value: string | null;
|
|
10
|
+
meta: Record<string, unknown>;
|
|
11
|
+
name: string;
|
|
12
|
+
placeholder: string;
|
|
13
|
+
showValue: boolean;
|
|
14
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
15
|
+
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
placeholder?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
7
|
+
value: undefined;
|
|
8
|
+
name: string;
|
|
9
|
+
placeholder: string;
|
|
10
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
+
export default _default;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
interface SerializedField {
|
|
2
|
+
type: string;
|
|
3
|
+
name?: string;
|
|
4
|
+
label?: string | null;
|
|
5
|
+
options?: unknown;
|
|
6
|
+
attributes?: Record<string, unknown>;
|
|
7
|
+
}
|
|
8
|
+
interface Props {
|
|
9
|
+
name?: string;
|
|
10
|
+
label?: string;
|
|
11
|
+
value?: unknown;
|
|
12
|
+
field: SerializedField;
|
|
13
|
+
}
|
|
14
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
15
|
+
value: undefined;
|
|
16
|
+
label: string;
|
|
17
|
+
name: string;
|
|
18
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
|
+
export default _default;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
interface ChildField {
|
|
2
|
+
type: string;
|
|
3
|
+
name: string;
|
|
4
|
+
label?: string | null;
|
|
5
|
+
[key: string]: unknown;
|
|
6
|
+
}
|
|
7
|
+
interface Props {
|
|
8
|
+
name?: string;
|
|
9
|
+
value?: unknown;
|
|
10
|
+
fields?: ChildField[];
|
|
11
|
+
layout?: 'rows' | 'columns' | 'inline';
|
|
12
|
+
}
|
|
13
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
14
|
+
value: undefined;
|
|
15
|
+
name: string;
|
|
16
|
+
fields: ChildField[];
|
|
17
|
+
layout: "rows" | "columns" | "inline";
|
|
18
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
|
+
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
export default _default;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
label?: string;
|
|
4
|
+
value?: unknown;
|
|
5
|
+
width?: number | null;
|
|
6
|
+
height?: number | null;
|
|
7
|
+
rounded?: boolean;
|
|
8
|
+
clickToZoom?: boolean;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
}
|
|
11
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
12
|
+
value: undefined;
|
|
13
|
+
label: string;
|
|
14
|
+
height: number | null;
|
|
15
|
+
name: string;
|
|
16
|
+
width: number | null;
|
|
17
|
+
placeholder: string;
|
|
18
|
+
rounded: boolean;
|
|
19
|
+
clickToZoom: boolean;
|
|
20
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
21
|
+
export default _default;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
latColumn?: string | null;
|
|
5
|
+
lngColumn?: string | null;
|
|
6
|
+
zoom?: number;
|
|
7
|
+
placeholder?: string;
|
|
8
|
+
}
|
|
9
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
10
|
+
value: undefined;
|
|
11
|
+
name: string;
|
|
12
|
+
placeholder: string;
|
|
13
|
+
latColumn: string | null;
|
|
14
|
+
lngColumn: string | null;
|
|
15
|
+
zoom: number;
|
|
16
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
17
|
+
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: string | null;
|
|
4
|
+
placeholder?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
7
|
+
value: string | null;
|
|
8
|
+
name: string;
|
|
9
|
+
placeholder: string;
|
|
10
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
+
export default _default;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
morphTypes?: Record<string, {
|
|
5
|
+
label?: string;
|
|
6
|
+
options?: unknown;
|
|
7
|
+
}> | null;
|
|
8
|
+
placeholder?: string;
|
|
9
|
+
}
|
|
10
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
11
|
+
value: undefined;
|
|
12
|
+
name: string;
|
|
13
|
+
placeholder: string;
|
|
14
|
+
morphTypes: Record<string, {
|
|
15
|
+
label?: string;
|
|
16
|
+
options?: unknown;
|
|
17
|
+
}> | null;
|
|
18
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
|
+
export default _default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
options?: unknown;
|
|
5
|
+
placeholder?: string;
|
|
6
|
+
}
|
|
7
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
8
|
+
options: never[];
|
|
9
|
+
value: undefined;
|
|
10
|
+
name: string;
|
|
11
|
+
placeholder: string;
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
export default _default;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
label?: string;
|
|
4
|
+
value?: number | string | null;
|
|
5
|
+
count?: number;
|
|
6
|
+
half?: boolean;
|
|
7
|
+
icon?: string | null;
|
|
8
|
+
placeholder?: string;
|
|
9
|
+
}
|
|
10
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
11
|
+
value: number | string | null;
|
|
12
|
+
icon: string | null;
|
|
13
|
+
label: string;
|
|
14
|
+
name: string;
|
|
15
|
+
placeholder: string;
|
|
16
|
+
count: number;
|
|
17
|
+
half: boolean;
|
|
18
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
19
|
+
export default _default;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
relation?: string | null;
|
|
5
|
+
displayColumn?: string | null;
|
|
6
|
+
linkTo?: string | null;
|
|
7
|
+
placeholder?: string;
|
|
8
|
+
}
|
|
9
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
10
|
+
value: undefined;
|
|
11
|
+
name: string;
|
|
12
|
+
placeholder: string;
|
|
13
|
+
linkTo: string | null;
|
|
14
|
+
relation: string | null;
|
|
15
|
+
displayColumn: string | null;
|
|
16
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
17
|
+
export default _default;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
name?: string;
|
|
3
|
+
value?: unknown;
|
|
4
|
+
tree?: unknown;
|
|
5
|
+
separator?: string;
|
|
6
|
+
placeholder?: string;
|
|
7
|
+
}
|
|
8
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
9
|
+
value: undefined;
|
|
10
|
+
name: string;
|
|
11
|
+
placeholder: string;
|
|
12
|
+
tree: never[];
|
|
13
|
+
separator: string;
|
|
14
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
15
|
+
export default _default;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The value an entry displays: the explicit `value` prop when the node carries
|
|
3
|
+
* one, otherwise `record[name]` from the provided record.
|
|
4
|
+
*/
|
|
5
|
+
import { type ComputedRef } from 'vue';
|
|
6
|
+
export declare function useEntryValue(props: {
|
|
7
|
+
name?: string;
|
|
8
|
+
value?: unknown;
|
|
9
|
+
}): ComputedRef<unknown>;
|
|
10
|
+
export declare const isEmpty: (v: unknown) => boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { LayoutNode } from '../render/LayoutRenderer.vue';
|
|
2
|
+
export interface AccordionSection {
|
|
3
|
+
title: string;
|
|
4
|
+
defaultOpen?: boolean;
|
|
5
|
+
children?: LayoutNode[];
|
|
6
|
+
items?: LayoutNode[];
|
|
7
|
+
}
|
|
8
|
+
interface Props {
|
|
9
|
+
sections?: AccordionSection[];
|
|
10
|
+
multi?: boolean;
|
|
11
|
+
}
|
|
12
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
13
|
+
sections: AccordionSection[];
|
|
14
|
+
multi: boolean;
|
|
15
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
16
|
+
export default _default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
subjectType?: string | null;
|
|
3
|
+
idStateKey?: string | null;
|
|
4
|
+
limit?: number | null;
|
|
5
|
+
permission?: string | null;
|
|
6
|
+
}
|
|
7
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
8
|
+
permission: string | null;
|
|
9
|
+
limit: number | null;
|
|
10
|
+
subjectType: string | null;
|
|
11
|
+
idStateKey: string | null;
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
export default _default;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { LayoutNode } from '../render/LayoutRenderer.vue';
|
|
2
|
+
import type { ScreenActionLike } from '../render/screenContext';
|
|
3
|
+
interface Props {
|
|
4
|
+
id?: string | null;
|
|
5
|
+
items?: LayoutNode[];
|
|
6
|
+
title?: string | null;
|
|
7
|
+
/** 'left' | 'right' | 'top' | 'bottom'. */
|
|
8
|
+
position?: string | null;
|
|
9
|
+
/** sm | md | lg | xl or a CSS length: a side drawer's width, a bottom one's height. */
|
|
10
|
+
size?: string | null;
|
|
11
|
+
dismissable?: boolean;
|
|
12
|
+
footer?: ScreenActionLike[];
|
|
13
|
+
open?: boolean;
|
|
14
|
+
}
|
|
15
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
16
|
+
id: string | null;
|
|
17
|
+
size: string | null;
|
|
18
|
+
footer: ScreenActionLike[];
|
|
19
|
+
title: string | null;
|
|
20
|
+
items: LayoutNode[];
|
|
21
|
+
open: boolean;
|
|
22
|
+
position: string | null;
|
|
23
|
+
dismissable: boolean;
|
|
24
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
25
|
+
export default _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { InfolistNode } from '../infolist/InfolistRenderer.vue';
|
|
2
|
+
interface Props {
|
|
3
|
+
items?: InfolistNode[];
|
|
4
|
+
layout?: 'rows' | 'columns' | 'grid' | string | null;
|
|
5
|
+
columns?: number | null;
|
|
6
|
+
}
|
|
7
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
8
|
+
items: InfolistNode[];
|
|
9
|
+
columns: number | null;
|
|
10
|
+
layout: "rows" | "columns" | "grid" | string | null;
|
|
11
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
|
+
export default _default;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { LayoutNode } from '../render/LayoutRenderer.vue';
|
|
2
|
+
import type { ScreenActionLike } from '../render/screenContext';
|
|
3
|
+
interface Props {
|
|
4
|
+
id?: string | null;
|
|
5
|
+
items?: LayoutNode[];
|
|
6
|
+
title?: string | null;
|
|
7
|
+
/** 'sm' | 'md' | 'lg' | 'xl' | 'full'. */
|
|
8
|
+
size?: string | null;
|
|
9
|
+
dismissable?: boolean;
|
|
10
|
+
footer?: ScreenActionLike[];
|
|
11
|
+
open?: boolean;
|
|
12
|
+
}
|
|
13
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
14
|
+
id: string | null;
|
|
15
|
+
size: string | null;
|
|
16
|
+
footer: ScreenActionLike[];
|
|
17
|
+
title: string | null;
|
|
18
|
+
items: LayoutNode[];
|
|
19
|
+
open: boolean;
|
|
20
|
+
dismissable: boolean;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
export default _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { LayoutNode } from '../render/LayoutRenderer.vue';
|
|
2
|
+
interface Props {
|
|
3
|
+
items?: LayoutNode[];
|
|
4
|
+
title?: string | null;
|
|
5
|
+
description?: string | null;
|
|
6
|
+
}
|
|
7
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
8
|
+
title: string | null;
|
|
9
|
+
items: LayoutNode[];
|
|
10
|
+
description: string | null;
|
|
11
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
component?: string | null;
|
|
3
|
+
}
|
|
4
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
5
|
+
component: string | null;
|
|
6
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { LayoutNode } from '../render/LayoutRenderer.vue';
|
|
2
|
+
export interface WizardStepNode extends Record<string, unknown> {
|
|
3
|
+
title?: string;
|
|
4
|
+
description?: string | null;
|
|
5
|
+
rules?: Record<string, string[] | string>;
|
|
6
|
+
items?: LayoutNode[];
|
|
7
|
+
}
|
|
8
|
+
interface Props {
|
|
9
|
+
items?: WizardStepNode[];
|
|
10
|
+
submitMethod?: string | null;
|
|
11
|
+
freeForm?: boolean;
|
|
12
|
+
persistKey?: string | null;
|
|
13
|
+
}
|
|
14
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
15
|
+
items: WizardStepNode[];
|
|
16
|
+
submitMethod: string | null;
|
|
17
|
+
freeForm: boolean;
|
|
18
|
+
persistKey: string | null;
|
|
19
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
20
|
+
export default _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { LayoutNode } from '../render/LayoutRenderer.vue';
|
|
2
|
+
interface Props {
|
|
3
|
+
items?: LayoutNode[];
|
|
4
|
+
tag?: string | null;
|
|
5
|
+
className?: string | null;
|
|
6
|
+
}
|
|
7
|
+
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
8
|
+
items: LayoutNode[];
|
|
9
|
+
tag: string | null;
|
|
10
|
+
className: string | null;
|
|
11
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
12
|
+
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the Modal and Drawer layouts share: the open state and the footer.
|
|
3
|
+
*
|
|
4
|
+
* The open state lives in the screen context, keyed by the layout's id, so an
|
|
5
|
+
* action anywhere on the screen can open the overlay (`Action::opens($id)` on
|
|
6
|
+
* the backend). Outside a screen the overlay falls back to a local flag.
|
|
7
|
+
*
|
|
8
|
+
* A non-dismissable overlay ignores every close request coming from the UI kit
|
|
9
|
+
* (the cross, the overlay click, Escape); only its own footer actions — a
|
|
10
|
+
* successful method, or an action named `close`/`cancel` — close it.
|
|
11
|
+
*/
|
|
12
|
+
import { type ComputedRef, type WritableComputedRef } from 'vue';
|
|
13
|
+
import { type ScreenActionLike } from '../render/screenContext';
|
|
14
|
+
export interface OverlayProps {
|
|
15
|
+
id?: string | null;
|
|
16
|
+
/** Open on first render — for an overlay that has no trigger. */
|
|
17
|
+
open?: boolean;
|
|
18
|
+
dismissable?: boolean;
|
|
19
|
+
footer?: ScreenActionLike[];
|
|
20
|
+
}
|
|
21
|
+
export type OverlayButtonVariant = 'primary' | 'danger' | 'secondary';
|
|
22
|
+
export interface Overlay {
|
|
23
|
+
model: WritableComputedRef<boolean>;
|
|
24
|
+
running: ComputedRef<boolean>;
|
|
25
|
+
close: () => void;
|
|
26
|
+
onFooterClick: (action: ScreenActionLike) => Promise<void>;
|
|
27
|
+
variantOf: (action: ScreenActionLike) => OverlayButtonVariant;
|
|
28
|
+
}
|
|
29
|
+
export declare function useOverlay(props: OverlayProps): Overlay;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The pieces of the Wizard layout that are not about rendering: finding the
|
|
3
|
+
* fields of a step, checking them against the rules before moving on, and
|
|
4
|
+
* keeping the progress in localStorage.
|
|
5
|
+
*
|
|
6
|
+
* The client-side check is a convenience, not the authority: it knows the
|
|
7
|
+
* common Laravel rules (required, email, numeric, integer, min, max, in) and
|
|
8
|
+
* lets everything else through to the server, which validates again on submit.
|
|
9
|
+
*/
|
|
10
|
+
export interface WizardField {
|
|
11
|
+
name: string;
|
|
12
|
+
type: string;
|
|
13
|
+
label: string;
|
|
14
|
+
rules: string[];
|
|
15
|
+
}
|
|
16
|
+
/** Normalizes a rules value — a list, a pipe string or nothing — to a flat list. */
|
|
17
|
+
export declare function normalizeRules(value: unknown): string[];
|
|
18
|
+
/**
|
|
19
|
+
* The fields of a subtree, in order. A field's own nested fields (a repeater's
|
|
20
|
+
* rows) are its business, so the walk stops at a field.
|
|
21
|
+
*/
|
|
22
|
+
export declare function collectFields(nodes: unknown): WizardField[];
|
|
23
|
+
/** The messages for one value against its rules; an empty list means valid. */
|
|
24
|
+
export declare function validateValue(value: unknown, rules: string[], label: string): string[];
|
|
25
|
+
/**
|
|
26
|
+
* Checks a step: its fields' own rules plus the step's `rules` map
|
|
27
|
+
* (`Step::rules(['email' => ['required', 'email']])`). Returns the errors keyed
|
|
28
|
+
* by field name — empty when the step may be left.
|
|
29
|
+
*/
|
|
30
|
+
export declare function validateStep(fields: WizardField[], stepRules: unknown, getValue: (name: string) => unknown): Record<string, string[]>;
|
|
31
|
+
export interface WizardProgress {
|
|
32
|
+
step: number;
|
|
33
|
+
values: Record<string, unknown>;
|
|
34
|
+
}
|
|
35
|
+
export declare function persistableFields(fields: WizardField[]): WizardField[];
|
|
36
|
+
export declare function storageKey(persistKey: string): string;
|
|
37
|
+
export declare function loadProgress(persistKey: string): WizardProgress | null;
|
|
38
|
+
export declare function saveProgress(persistKey: string, progress: WizardProgress): void;
|
|
39
|
+
export declare function clearProgress(persistKey: string): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -39,3 +39,14 @@ export declare function provideFormState(initial?: Record<string, unknown>, init
|
|
|
39
39
|
export declare function useFormState(): FormStateContext;
|
|
40
40
|
/** The optional form: null when there is none. */
|
|
41
41
|
export declare function tryUseFormState(): FormStateContext | null;
|
|
42
|
+
/**
|
|
43
|
+
* Provides a form context scoped to one object-valued field of `parent` — the
|
|
44
|
+
* backend's Field\Group, whose state is `{city: ..., street: ...}` under its
|
|
45
|
+
* own name.
|
|
46
|
+
*
|
|
47
|
+
* Unlike NestedFieldsGroup this keeps no copy: every read and write goes to
|
|
48
|
+
* `parent.state[name]`, and the errors are the parent's `name.child` keys —
|
|
49
|
+
* the shape Laravel's validator reports them in — seen without the prefix.
|
|
50
|
+
* Scopes nest: a group inside a group prefixes twice.
|
|
51
|
+
*/
|
|
52
|
+
export declare function provideScopedFormState(parent: FormStateContext, name: string): FormStateContext;
|
|
@@ -10,6 +10,8 @@ export type { ComponentBundle } from './registry';
|
|
|
10
10
|
export { registerBuiltinComponents } from './builtin';
|
|
11
11
|
export { provideFormState, useFormState, tryUseFormState, } from './formState';
|
|
12
12
|
export type { FormStateContext } from './formState';
|
|
13
|
+
export { createScreenContext, provideScreenContext, useScreenContext, } from './screenContext';
|
|
14
|
+
export type { ScreenContext, ScreenContextOptions, ScreenActionLike } from './screenContext';
|
|
13
15
|
export { default as TextField } from '../fields/TextField.vue';
|
|
14
16
|
export { default as TextAreaField } from '../fields/TextAreaField.vue';
|
|
15
17
|
export { default as NumberField } from '../fields/NumberField.vue';
|
|
@@ -22,3 +24,11 @@ export { default as RowsLayout } from '../layouts/RowsLayout.vue';
|
|
|
22
24
|
export { default as ColumnsLayout } from '../layouts/ColumnsLayout.vue';
|
|
23
25
|
export { default as SectionLayout } from '../layouts/SectionLayout.vue';
|
|
24
26
|
export { default as TabsLayout } from '../layouts/TabsLayout.vue';
|
|
27
|
+
export { default as AccordionLayout } from '../layouts/AccordionLayout.vue';
|
|
28
|
+
export { default as WizardLayout } from '../layouts/WizardLayout.vue';
|
|
29
|
+
export { default as ModalLayout } from '../layouts/ModalLayout.vue';
|
|
30
|
+
export { default as DrawerLayout } from '../layouts/DrawerLayout.vue';
|
|
31
|
+
export { default as ViewLayout } from '../layouts/ViewLayout.vue';
|
|
32
|
+
export { default as WrapperLayout } from '../layouts/WrapperLayout.vue';
|
|
33
|
+
export { default as InfolistLayout } from '../layouts/InfolistLayout.vue';
|
|
34
|
+
export { default as AuditTrailLayout } from '../layouts/AuditTrailLayout.vue';
|