@dskripchenko/laravel-admin 1.1.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 (163) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +226 -0
  3. package/dist/.gitkeep +0 -0
  4. package/dist/api/bootstrap.d.ts +38 -0
  5. package/dist/api/bootstrap.test.d.ts +1 -0
  6. package/dist/api/client.d.ts +30 -0
  7. package/dist/api/client.test.d.ts +1 -0
  8. package/dist/api/envelope.d.ts +24 -0
  9. package/dist/api/envelope.test.d.ts +1 -0
  10. package/dist/api/errors.d.ts +40 -0
  11. package/dist/api/errors.test.d.ts +1 -0
  12. package/dist/components/AdminApp.vue.d.ts +2 -0
  13. package/dist/components/ForbiddenPage.vue.d.ts +2 -0
  14. package/dist/components/HomePage.vue.d.ts +2 -0
  15. package/dist/components/NotFoundPage.vue.d.ts +2 -0
  16. package/dist/components/SettingsPage.vue.d.ts +2 -0
  17. package/dist/components/UnknownScreenPage.vue.d.ts +2 -0
  18. package/dist/components/auth/LoginForm.test.d.ts +1 -0
  19. package/dist/components/auth/LoginForm.vue.d.ts +17 -0
  20. package/dist/components/auth/LoginPage.test.d.ts +1 -0
  21. package/dist/components/auth/LoginPage.vue.d.ts +26 -0
  22. package/dist/components/auth/TwoFactorForm.test.d.ts +1 -0
  23. package/dist/components/auth/TwoFactorForm.vue.d.ts +8 -0
  24. package/dist/components/auth/index.d.ts +6 -0
  25. package/dist/components/createComponentRegistry.d.ts +22 -0
  26. package/dist/components/dashboard/BarChartWidget.vue.d.ts +18 -0
  27. package/dist/components/dashboard/DashboardPage.test.d.ts +1 -0
  28. package/dist/components/dashboard/DashboardPage.vue.d.ts +28 -0
  29. package/dist/components/dashboard/DonutChartWidget.vue.d.ts +13 -0
  30. package/dist/components/dashboard/GaugeWidget.vue.d.ts +29 -0
  31. package/dist/components/dashboard/HeatmapWidget.vue.d.ts +18 -0
  32. package/dist/components/dashboard/MarkdownWidget.vue.d.ts +8 -0
  33. package/dist/components/dashboard/RecentTableWidget.vue.d.ts +12 -0
  34. package/dist/components/dashboard/StatWidget.vue.d.ts +22 -0
  35. package/dist/components/dashboard/UnknownWidget.vue.d.ts +5 -0
  36. package/dist/components/dashboard/WidgetRenderer.vue.d.ts +10 -0
  37. package/dist/components/dashboard/builtin.d.ts +4 -0
  38. package/dist/components/dashboard/index.d.ts +16 -0
  39. package/dist/components/dashboard/registry.d.ts +25 -0
  40. package/dist/components/dashboard/registry.test.d.ts +1 -0
  41. package/dist/components/fields/CheckboxField.vue.d.ts +16 -0
  42. package/dist/components/fields/DateField.vue.d.ts +25 -0
  43. package/dist/components/fields/NumberField.vue.d.ts +24 -0
  44. package/dist/components/fields/SelectField.vue.d.ts +28 -0
  45. package/dist/components/fields/TextAreaField.vue.d.ts +20 -0
  46. package/dist/components/fields/TextField.vue.d.ts +22 -0
  47. package/dist/components/fields/UnknownField.vue.d.ts +6 -0
  48. package/dist/components/fields/fields.test.d.ts +1 -0
  49. package/dist/components/fields/wysiwyg/quill/QuillField.vue.d.ts +26 -0
  50. package/dist/components/fields/wysiwyg/quill/index.d.ts +12 -0
  51. package/dist/components/fields/wysiwyg/tinymce/TinymceField.vue.d.ts +31 -0
  52. package/dist/components/fields/wysiwyg/tinymce/index.d.ts +12 -0
  53. package/dist/components/gallery/FieldGalleryPage.test.d.ts +1 -0
  54. package/dist/components/gallery/FieldGalleryPage.vue.d.ts +2 -0
  55. package/dist/components/gallery/index.d.ts +1 -0
  56. package/dist/components/import/ImportWizardPage.test.d.ts +1 -0
  57. package/dist/components/import/ImportWizardPage.vue.d.ts +59 -0
  58. package/dist/components/import/index.d.ts +1 -0
  59. package/dist/components/infolist/BadgeEntry.vue.d.ts +18 -0
  60. package/dist/components/infolist/IconEntry.vue.d.ts +22 -0
  61. package/dist/components/infolist/InfolistRenderer.test.d.ts +1 -0
  62. package/dist/components/infolist/InfolistRenderer.vue.d.ts +11 -0
  63. package/dist/components/infolist/KeyValueEntry.vue.d.ts +11 -0
  64. package/dist/components/infolist/TextEntry.vue.d.ts +17 -0
  65. package/dist/components/infolist/UnknownEntry.vue.d.ts +6 -0
  66. package/dist/components/infolist/builtin.d.ts +4 -0
  67. package/dist/components/infolist/index.d.ts +13 -0
  68. package/dist/components/infolist/recordContext.d.ts +9 -0
  69. package/dist/components/infolist/registry.d.ts +19 -0
  70. package/dist/components/infolist/registry.test.d.ts +1 -0
  71. package/dist/components/layouts/ColumnsLayout.vue.d.ts +13 -0
  72. package/dist/components/layouts/RowsLayout.vue.d.ts +10 -0
  73. package/dist/components/layouts/SectionLayout.vue.d.ts +11 -0
  74. package/dist/components/layouts/TabsLayout.vue.d.ts +22 -0
  75. package/dist/components/notifications/NotificationsDrawer.test.d.ts +1 -0
  76. package/dist/components/notifications/NotificationsDrawer.vue.d.ts +13 -0
  77. package/dist/components/notifications/index.d.ts +1 -0
  78. package/dist/components/profile/ProfilePage.test.d.ts +1 -0
  79. package/dist/components/profile/ProfilePage.vue.d.ts +50 -0
  80. package/dist/components/profile/index.d.ts +1 -0
  81. package/dist/components/render/FieldRenderer.test.d.ts +1 -0
  82. package/dist/components/render/FieldRenderer.vue.d.ts +9 -0
  83. package/dist/components/render/LayoutRenderer.test.d.ts +1 -0
  84. package/dist/components/render/LayoutRenderer.vue.d.ts +10 -0
  85. package/dist/components/render/builtin.d.ts +9 -0
  86. package/dist/components/render/formState.d.ts +36 -0
  87. package/dist/components/render/formState.test.d.ts +1 -0
  88. package/dist/components/render/index.d.ts +23 -0
  89. package/dist/components/render/registry.d.ts +35 -0
  90. package/dist/components/render/registry.test.d.ts +1 -0
  91. package/dist/components/resource/ResourceFormPage.test.d.ts +1 -0
  92. package/dist/components/resource/ResourceFormPage.vue.d.ts +13 -0
  93. package/dist/components/resource/ResourceIndexPage.test.d.ts +1 -0
  94. package/dist/components/resource/ResourceIndexPage.vue.d.ts +44 -0
  95. package/dist/components/resource/ResourceViewPage.test.d.ts +1 -0
  96. package/dist/components/resource/ResourceViewPage.vue.d.ts +13 -0
  97. package/dist/components/resource/index.d.ts +6 -0
  98. package/dist/components/shell/AdminShell.vue.d.ts +35 -0
  99. package/dist/components/shell/AdminSidebar.test.d.ts +1 -0
  100. package/dist/components/shell/AdminSidebar.vue.d.ts +27 -0
  101. package/dist/components/shell/AdminTopBar.test.d.ts +1 -0
  102. package/dist/components/shell/AdminTopBar.vue.d.ts +33 -0
  103. package/dist/components/shell/index.d.ts +18 -0
  104. package/dist/components/shell/widgets/LocaleSwitcher.test.d.ts +1 -0
  105. package/dist/components/shell/widgets/LocaleSwitcher.vue.d.ts +2 -0
  106. package/dist/components/shell/widgets/NotificationBell.vue.d.ts +2 -0
  107. package/dist/components/shell/widgets/ThemeToggle.test.d.ts +1 -0
  108. package/dist/components/shell/widgets/ThemeToggle.vue.d.ts +2 -0
  109. package/dist/components/shell/widgets/UserMenu.test.d.ts +1 -0
  110. package/dist/components/shell/widgets/UserMenu.vue.d.ts +2 -0
  111. package/dist/createAdminApp.d.ts +85 -0
  112. package/dist/createAdminApp.test.d.ts +1 -0
  113. package/dist/formState-DGNcH1XQ.js +40 -0
  114. package/dist/formState-DGNcH1XQ.js.map +1 -0
  115. package/dist/formState-GlJBphEn.cjs +2 -0
  116. package/dist/formState-GlJBphEn.cjs.map +1 -0
  117. package/dist/index.cjs +2 -0
  118. package/dist/index.cjs.map +1 -0
  119. package/dist/index.d.ts +62 -0
  120. package/dist/index.mjs +4345 -0
  121. package/dist/index.mjs.map +1 -0
  122. package/dist/quill.cjs +2 -0
  123. package/dist/quill.cjs.map +1 -0
  124. package/dist/quill.mjs +71 -0
  125. package/dist/quill.mjs.map +1 -0
  126. package/dist/router/builder.d.ts +52 -0
  127. package/dist/router/builder.test.d.ts +1 -0
  128. package/dist/router/guards.d.ts +56 -0
  129. package/dist/router/guards.test.d.ts +1 -0
  130. package/dist/router/index.d.ts +63 -0
  131. package/dist/router/index.test.d.ts +1 -0
  132. package/dist/stores/auth.d.ts +142 -0
  133. package/dist/stores/auth.test.d.ts +1 -0
  134. package/dist/stores/index.d.ts +21 -0
  135. package/dist/stores/locale.d.ts +29 -0
  136. package/dist/stores/locale.test.d.ts +1 -0
  137. package/dist/stores/manifest.d.ts +515 -0
  138. package/dist/stores/manifest.test.d.ts +1 -0
  139. package/dist/stores/menu.d.ts +215 -0
  140. package/dist/stores/menu.test.d.ts +1 -0
  141. package/dist/stores/notifications.d.ts +137 -0
  142. package/dist/stores/notifications.test.d.ts +1 -0
  143. package/dist/stores/registry.d.ts +16 -0
  144. package/dist/stores/registry.test.d.ts +1 -0
  145. package/dist/stores/resourceForm.d.ts +91 -0
  146. package/dist/stores/resourceForm.test.d.ts +1 -0
  147. package/dist/stores/resourceIndex.d.ts +149 -0
  148. package/dist/stores/resourceIndex.test.d.ts +1 -0
  149. package/dist/stores/theme.d.ts +29 -0
  150. package/dist/stores/theme.test.d.ts +1 -0
  151. package/dist/style.css +1 -0
  152. package/dist/tinymce.cjs +2 -0
  153. package/dist/tinymce.cjs.map +1 -0
  154. package/dist/tinymce.mjs +80 -0
  155. package/dist/tinymce.mjs.map +1 -0
  156. package/dist/types/bootstrap.d.ts +50 -0
  157. package/package.json +162 -0
  158. package/resources/fonts/InterDisplay-Bold.woff2 +0 -0
  159. package/resources/fonts/InterDisplay-ExtraBold.woff2 +0 -0
  160. package/resources/fonts/InterDisplay-SemiBold.woff2 +0 -0
  161. package/resources/fonts/InterVariable-Italic.woff2 +0 -0
  162. package/resources/fonts/InterVariable.woff2 +0 -0
  163. package/resources/fonts/fonts.css +69 -0
@@ -0,0 +1,12 @@
1
+ import { type UidTableColumn } from '@dskripchenko/ui';
2
+ interface Props {
3
+ title?: string;
4
+ columns: UidTableColumn[];
5
+ rows: Record<string, unknown>[];
6
+ emptyText?: string;
7
+ }
8
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
9
+ title: string;
10
+ emptyText: string;
11
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ export default _default;
@@ -0,0 +1,22 @@
1
+ type SemanticTone = 'neutral' | 'positive' | 'negative' | 'warning' | 'info';
2
+ interface Props {
3
+ title?: string;
4
+ value?: number | string;
5
+ prefix?: string;
6
+ suffix?: string;
7
+ trend?: number;
8
+ precision?: number;
9
+ tone?: SemanticTone;
10
+ loading?: boolean;
11
+ }
12
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
13
+ value: number | string;
14
+ title: string;
15
+ loading: boolean;
16
+ prefix: string;
17
+ suffix: string;
18
+ trend: number;
19
+ precision: number;
20
+ tone: SemanticTone;
21
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
22
+ export default _default;
@@ -0,0 +1,5 @@
1
+ interface Props {
2
+ type: string;
3
+ }
4
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
5
+ export default _default;
@@ -0,0 +1,10 @@
1
+ export interface WidgetNode extends Record<string, unknown> {
2
+ type: string;
3
+ /** Сколько колонок занимает в 12-grid (1..12). */
4
+ span?: number;
5
+ }
6
+ interface Props {
7
+ node: WidgetNode;
8
+ }
9
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ export default _default;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Default-bundle с минимальным набором builtin widget-типов.
3
+ */
4
+ export declare function registerBuiltinWidgets(): void;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Public exports dashboard-системы.
3
+ */
4
+ export { default as DashboardPage } from './DashboardPage.vue';
5
+ export { default as WidgetRenderer } from './WidgetRenderer.vue';
6
+ export type { WidgetNode } from './WidgetRenderer.vue';
7
+ export { default as StatWidget } from './StatWidget.vue';
8
+ export { default as BarChartWidget } from './BarChartWidget.vue';
9
+ export { default as DonutChartWidget } from './DonutChartWidget.vue';
10
+ export { default as RecentTableWidget } from './RecentTableWidget.vue';
11
+ export { default as HeatmapWidget } from './HeatmapWidget.vue';
12
+ export { default as GaugeWidget } from './GaugeWidget.vue';
13
+ export { default as MarkdownWidget } from './MarkdownWidget.vue';
14
+ export { default as UnknownWidget } from './UnknownWidget.vue';
15
+ export { registerWidget, registerWidgets, getWidget, hasWidget, listWidgets, clearWidgetRegistry, } from './registry';
16
+ export { registerBuiltinWidgets } from './builtin';
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Реестр dashboard widget-компонентов.
3
+ *
4
+ * Manifest узлы dashboard выглядят так:
5
+ * {
6
+ * slug: 'main',
7
+ * label: 'Главный',
8
+ * widgets: [
9
+ * { type: 'stat', name: 'total', title: 'Всего', value: 1284,
10
+ * span: 3, trend: 12 },
11
+ * { type: 'bar-chart', span: 8, ... },
12
+ * { type: 'recent-table', span: 8, columns: [...], rows: [...] },
13
+ * ]
14
+ * }
15
+ *
16
+ * Host регистрирует кастомные widget'ы через `registerWidget()` /
17
+ * `registerWidgets()` bundle.
18
+ */
19
+ import type { Component } from 'vue';
20
+ export declare const registerWidget: (type: string, value: Component) => void;
21
+ export declare const getWidget: (type: string) => Component | null;
22
+ export declare const hasWidget: (type: string) => boolean;
23
+ export declare const listWidgets: () => string[];
24
+ export declare const clearWidgetRegistry: () => void;
25
+ export declare const registerWidgets: (bundle: Record<string, Component>) => void;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,16 @@
1
+ interface Props {
2
+ name: string;
3
+ label?: string | null;
4
+ help?: string | null;
5
+ required?: boolean;
6
+ inlineLabel?: string | null;
7
+ disabled?: boolean;
8
+ }
9
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
10
+ label: string | null;
11
+ disabled: boolean;
12
+ required: boolean;
13
+ help: string | null;
14
+ inlineLabel: string | null;
15
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
+ export default _default;
@@ -0,0 +1,25 @@
1
+ interface Props {
2
+ name: string;
3
+ label?: string | null;
4
+ help?: string | null;
5
+ required?: boolean;
6
+ /**
7
+ * Тип input'а: 'date' (default), 'datetime-local', 'time'.
8
+ * UidDatePicker внутри обрабатывает формат через свои props; для совместимости
9
+ * со старым API оставляем prop.
10
+ */
11
+ inputType?: 'date' | 'datetime-local' | 'time';
12
+ min?: string | null;
13
+ max?: string | null;
14
+ disabled?: boolean;
15
+ }
16
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
17
+ label: string | null;
18
+ disabled: boolean;
19
+ required: boolean;
20
+ min: string | null;
21
+ max: string | null;
22
+ help: string | null;
23
+ inputType: "date" | "datetime-local" | "time";
24
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
25
+ export default _default;
@@ -0,0 +1,24 @@
1
+ interface Props {
2
+ name: string;
3
+ label?: string | null;
4
+ help?: string | null;
5
+ required?: boolean;
6
+ placeholder?: string | null;
7
+ min?: number | null;
8
+ max?: number | null;
9
+ step?: number | null;
10
+ disabled?: boolean;
11
+ readonly?: boolean;
12
+ }
13
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
14
+ label: string | null;
15
+ disabled: boolean;
16
+ placeholder: string | null;
17
+ step: number | null;
18
+ required: boolean;
19
+ readonly: boolean;
20
+ min: number | null;
21
+ max: number | null;
22
+ help: string | null;
23
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
24
+ export default _default;
@@ -0,0 +1,28 @@
1
+ export interface SelectOption {
2
+ value: string | number;
3
+ label: string;
4
+ disabled?: boolean;
5
+ }
6
+ interface Props {
7
+ name: string;
8
+ options: SelectOption[];
9
+ label?: string | null;
10
+ help?: string | null;
11
+ required?: boolean;
12
+ placeholder?: string | null;
13
+ disabled?: boolean;
14
+ searchable?: boolean;
15
+ clearable?: boolean;
16
+ size?: 'sm' | 'md' | 'lg';
17
+ }
18
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
19
+ label: string | null;
20
+ disabled: boolean;
21
+ placeholder: string | null;
22
+ size: "sm" | "md" | "lg";
23
+ searchable: boolean;
24
+ required: boolean;
25
+ clearable: boolean;
26
+ help: string | null;
27
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
28
+ export default _default;
@@ -0,0 +1,20 @@
1
+ interface Props {
2
+ name: string;
3
+ label?: string | null;
4
+ help?: string | null;
5
+ required?: boolean;
6
+ placeholder?: string | null;
7
+ rows?: number;
8
+ disabled?: boolean;
9
+ readonly?: boolean;
10
+ }
11
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
12
+ label: string | null;
13
+ disabled: boolean;
14
+ placeholder: string | null;
15
+ required: boolean;
16
+ readonly: boolean;
17
+ rows: number;
18
+ help: string | null;
19
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
20
+ export default _default;
@@ -0,0 +1,22 @@
1
+ interface Props {
2
+ name: string;
3
+ label?: string | null;
4
+ help?: string | null;
5
+ required?: boolean;
6
+ placeholder?: string | null;
7
+ inputType?: 'text' | 'email' | 'url' | 'password' | 'tel' | 'search';
8
+ disabled?: boolean;
9
+ readonly?: boolean;
10
+ autocomplete?: string | null;
11
+ }
12
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
13
+ label: string | null;
14
+ disabled: boolean;
15
+ placeholder: string | null;
16
+ required: boolean;
17
+ readonly: boolean;
18
+ autocomplete: string | null;
19
+ help: string | null;
20
+ inputType: "text" | "email" | "url" | "password" | "tel" | "search";
21
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
22
+ export default _default;
@@ -0,0 +1,6 @@
1
+ interface Props {
2
+ type: string;
3
+ name?: string;
4
+ }
5
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ export default _default;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,26 @@
1
+ interface Props {
2
+ name: string;
3
+ label?: string | null;
4
+ help?: string | null;
5
+ required?: boolean;
6
+ placeholder?: string | null;
7
+ /**
8
+ * Quill toolbar config — string или array. См. https://quilljs.com/docs/modules/toolbar/.
9
+ */
10
+ toolbar?: string | unknown[];
11
+ /**
12
+ * Имя темы Quill ('snow' default | 'bubble' | 'core').
13
+ */
14
+ theme?: 'snow' | 'bubble' | 'core';
15
+ disabled?: boolean;
16
+ }
17
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
18
+ label: string | null;
19
+ disabled: boolean;
20
+ placeholder: string | null;
21
+ theme: "snow" | "bubble" | "core";
22
+ required: boolean;
23
+ toolbar: string | unknown[];
24
+ help: string | null;
25
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
26
+ export default _default;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Public exports для subpath @dskripchenko/laravel-admin/quill.
3
+ *
4
+ * Host подключает через:
5
+ *
6
+ * import { registerField } from '@dskripchenko/laravel-admin'
7
+ * import { QuillField } from '@dskripchenko/laravel-admin/quill'
8
+ * registerField('wysiwyg', QuillField)
9
+ *
10
+ * @vueup/vue-quill и quill — peer-deps, host устанавливает их вручную.
11
+ */
12
+ export { default as QuillField } from './QuillField.vue';
@@ -0,0 +1,31 @@
1
+ interface Props {
2
+ name: string;
3
+ label?: string | null;
4
+ help?: string | null;
5
+ required?: boolean;
6
+ /**
7
+ * Конфиг TinyMCE init (height/plugins/toolbar/menubar/language/...).
8
+ * Объединяется с host-default'ами на frontend'е.
9
+ */
10
+ init?: Record<string, unknown>;
11
+ /**
12
+ * License key для TinyMCE 7+. null = self-hosted GPL flow.
13
+ */
14
+ apiKey?: string | null;
15
+ /**
16
+ * URL-handler для image upload'ов. См. images_upload_handler в TinyMCE
17
+ * docs. По умолчанию использует core admin upload endpoint.
18
+ */
19
+ imageUploadUrl?: string;
20
+ disabled?: boolean;
21
+ }
22
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
23
+ label: string | null;
24
+ disabled: boolean;
25
+ required: boolean;
26
+ help: string | null;
27
+ init: Record<string, unknown>;
28
+ apiKey: string | null;
29
+ imageUploadUrl: string;
30
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
31
+ export default _default;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Public exports для subpath @dskripchenko/laravel-admin/tinymce.
3
+ *
4
+ * Host подключает через:
5
+ *
6
+ * import { registerField } from '@dskripchenko/laravel-admin'
7
+ * import { TinymceField } from '@dskripchenko/laravel-admin/tinymce'
8
+ * registerField('wysiwyg', TinymceField)
9
+ *
10
+ * @tinymce/tinymce-vue и tinymce — peer-deps, host устанавливает их вручную.
11
+ */
12
+ export { default as TinymceField } from './TinymceField.vue';
@@ -0,0 +1 @@
1
+ export {};
@@ -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 @@
1
+ export { default as FieldGalleryPage } from './FieldGalleryPage.vue';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,59 @@
1
+ import { type UidTableColumn } from '@dskripchenko/ui';
2
+ interface ColumnHeader {
3
+ key: string;
4
+ label: string;
5
+ sample?: string;
6
+ }
7
+ interface Mapping {
8
+ /** Header из файла. */
9
+ source: string;
10
+ /** Field-name в ресурсе либо null = пропустить. */
11
+ target: string | null;
12
+ }
13
+ interface PreviewRow extends Record<string, unknown> {
14
+ __warning?: string | null;
15
+ }
16
+ interface ImportProgress {
17
+ created: number;
18
+ updated: number;
19
+ errors: number;
20
+ total: number;
21
+ }
22
+ interface Props {
23
+ /** Заголовок страницы. */
24
+ title?: string;
25
+ /** Опции для select'а target field'а на step 2. */
26
+ fieldOptions: Array<{
27
+ value: string;
28
+ label: string;
29
+ }>;
30
+ /** Headers + sample из uploaded file (host передаёт после step 1). */
31
+ headers?: ColumnHeader[];
32
+ /** Preview rows с warning'ами (host передаёт после step 2 submit). */
33
+ preview?: PreviewRow[];
34
+ /** Preview-table columns (host передаёт). */
35
+ previewColumns?: UidTableColumn[];
36
+ /** Финальная сводка импорта. */
37
+ progress?: ImportProgress | null;
38
+ /** Внешне controlled-mode current step (опц.). */
39
+ step?: number;
40
+ }
41
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
42
+ cancel: () => any;
43
+ "file-uploaded": (file: File) => any;
44
+ "mapping-submit": (mapping: Mapping[]) => any;
45
+ "run-import": () => any;
46
+ }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
47
+ onCancel?: (() => any) | undefined;
48
+ "onFile-uploaded"?: ((file: File) => any) | undefined;
49
+ "onMapping-submit"?: ((mapping: Mapping[]) => any) | undefined;
50
+ "onRun-import"?: (() => any) | undefined;
51
+ }>, {
52
+ headers: ColumnHeader[];
53
+ progress: ImportProgress | null;
54
+ title: string;
55
+ step: number;
56
+ preview: PreviewRow[];
57
+ previewColumns: UidTableColumn[];
58
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
59
+ export default _default;
@@ -0,0 +1 @@
1
+ export { default as ImportWizardPage } from './ImportWizardPage.vue';
@@ -0,0 +1,18 @@
1
+ type BadgeVariant = 'default' | 'success' | 'warning' | 'danger' | 'info';
2
+ interface Props {
3
+ name?: string;
4
+ label?: string;
5
+ value?: string | null;
6
+ /** map value → variant. Если не задан — default. */
7
+ map?: Record<string, BadgeVariant>;
8
+ /** Принудительный variant. */
9
+ variant?: BadgeVariant;
10
+ }
11
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
12
+ map: Record<string, BadgeVariant>;
13
+ value: string | null;
14
+ label: string;
15
+ variant: BadgeVariant;
16
+ name: string;
17
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
+ export default _default;
@@ -0,0 +1,22 @@
1
+ interface Props {
2
+ name?: string;
3
+ label?: string;
4
+ value?: boolean | null;
5
+ /** Имя icon'и для true (lucide-key, например 'check-circle-2'). */
6
+ trueIcon?: string;
7
+ /** Имя icon'и для false. */
8
+ falseIcon?: string;
9
+ /** Текстовые подписи. */
10
+ trueLabel?: string;
11
+ falseLabel?: string;
12
+ }
13
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
14
+ value: boolean | null;
15
+ label: string;
16
+ name: string;
17
+ trueIcon: string;
18
+ falseIcon: string;
19
+ trueLabel: string;
20
+ falseLabel: string;
21
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
22
+ export default _default;
@@ -0,0 +1,11 @@
1
+ export interface InfolistNode extends Record<string, unknown> {
2
+ type: string;
3
+ /** Hint: 'entry' либо 'layout'. */
4
+ kind?: 'entry' | 'layout';
5
+ items?: InfolistNode[];
6
+ }
7
+ interface Props {
8
+ node: InfolistNode;
9
+ }
10
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ export default _default;
@@ -0,0 +1,11 @@
1
+ interface Props {
2
+ name?: string;
3
+ label?: string;
4
+ value?: Record<string, unknown>;
5
+ }
6
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
7
+ value: Record<string, unknown>;
8
+ label: string;
9
+ name: string;
10
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ export default _default;
@@ -0,0 +1,17 @@
1
+ interface Props {
2
+ name?: string;
3
+ label?: string;
4
+ value?: string | number | null;
5
+ /** Заместитель пустого значения. */
6
+ placeholder?: string;
7
+ /** Применить mono-font (например для ID/UUID). */
8
+ mono?: boolean;
9
+ }
10
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
11
+ value: string | number | null;
12
+ label: string;
13
+ placeholder: string;
14
+ name: string;
15
+ mono: boolean;
16
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
+ export default _default;
@@ -0,0 +1,6 @@
1
+ interface Props {
2
+ type: string;
3
+ name?: string;
4
+ }
5
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ export default _default;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Default-bundle с минимальным набором builtin infolist-entry'ев.
3
+ */
4
+ export declare function registerBuiltinInfolistEntries(): void;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Public exports infolist-системы.
3
+ */
4
+ export { default as InfolistRenderer } from './InfolistRenderer.vue';
5
+ export type { InfolistNode } from './InfolistRenderer.vue';
6
+ export { default as TextEntry } from './TextEntry.vue';
7
+ export { default as BadgeEntry } from './BadgeEntry.vue';
8
+ export { default as IconEntry } from './IconEntry.vue';
9
+ export { default as KeyValueEntry } from './KeyValueEntry.vue';
10
+ export { default as UnknownEntry } from './UnknownEntry.vue';
11
+ export { registerInfolistEntry, registerInfolistEntries, getInfolistEntry, hasInfolistEntry, listInfolistEntries, clearInfolistRegistry, } from './registry';
12
+ export { registerBuiltinInfolistEntries } from './builtin';
13
+ export { provideRecord, useRecord, tryUseRecord, } from './recordContext';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Composable для read-only record-контекста, передаваемого Infolist'ом.
3
+ *
4
+ * Контейнер (ResourceViewPage) вызывает `provideRecord(record)`, entry-
5
+ * компоненты — `useRecord()` для чтения значения.
6
+ */
7
+ export declare function provideRecord(record: Record<string, unknown>): void;
8
+ export declare function useRecord(): Record<string, unknown>;
9
+ export declare function tryUseRecord(): Record<string, unknown> | null;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Реестр infolist-entry-компонентов.
3
+ *
4
+ * Аналог field-registry, но для read-only display'я. Узлы манифеста имеют
5
+ * форму:
6
+ * { type: 'text', name: 'title', label: 'Заголовок', value?: '...' }
7
+ * либо без явного `value` — тогда entry извлекает `record[name]` из
8
+ * provide'нутого `record`.
9
+ *
10
+ * Host регистрирует кастомные entry через `registerInfolistEntry()` /
11
+ * `registerInfolistEntries()` bundle.
12
+ */
13
+ import type { Component } from 'vue';
14
+ export declare const registerInfolistEntry: (type: string, value: Component) => void;
15
+ export declare const getInfolistEntry: (type: string) => Component | null;
16
+ export declare const hasInfolistEntry: (type: string) => boolean;
17
+ export declare const listInfolistEntries: () => string[];
18
+ export declare const clearInfolistRegistry: () => void;
19
+ export declare const registerInfolistEntries: (bundle: Record<string, Component>) => void;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,13 @@
1
+ import type { LayoutNode } from '../render/LayoutRenderer.vue';
2
+ interface Props {
3
+ items: LayoutNode[];
4
+ /** Зазор между ячейками (CSS, token или px). */
5
+ gap?: string;
6
+ /** Сколько колонок в гриде (default 12). */
7
+ cols?: number;
8
+ }
9
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
10
+ gap: string;
11
+ cols: number;
12
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import type { LayoutNode } from '../render/LayoutRenderer.vue';
2
+ interface Props {
3
+ items: LayoutNode[];
4
+ /** CSS-зазор между элементами (token либо px), по умолчанию --uid-space-md. */
5
+ gap?: string;
6
+ }
7
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
8
+ gap: string;
9
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ export default _default;
@@ -0,0 +1,11 @@
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
+ description: string | null;
10
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ export default _default;