@karibsen/eponyme 0.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.
- package/LICENSE +21 -0
- package/README.md +609 -0
- package/dist/eponyme.d.mts +15 -0
- package/dist/eponyme.mjs +38 -0
- package/dist/module.d.mts +26 -0
- package/dist/module.json +9 -0
- package/dist/module.mjs +154 -0
- package/dist/runtime/assets/dashboard.css +1 -0
- package/dist/runtime/components/editor/EponymeCollectionPage.d.vue.ts +9 -0
- package/dist/runtime/components/editor/EponymeCollectionPage.vue +238 -0
- package/dist/runtime/components/editor/EponymeCollectionPage.vue.d.ts +9 -0
- package/dist/runtime/components/editor/EponymeCopy.d.vue.ts +7 -0
- package/dist/runtime/components/editor/EponymeCopy.vue +28 -0
- package/dist/runtime/components/editor/EponymeCopy.vue.d.ts +7 -0
- package/dist/runtime/components/editor/EponymeFolderNav.d.vue.ts +7 -0
- package/dist/runtime/components/editor/EponymeFolderNav.vue +146 -0
- package/dist/runtime/components/editor/EponymeFolderNav.vue.d.ts +7 -0
- package/dist/runtime/components/editor/EponymeFolderPage.d.vue.ts +7 -0
- package/dist/runtime/components/editor/EponymeFolderPage.vue +62 -0
- package/dist/runtime/components/editor/EponymeFolderPage.vue.d.ts +7 -0
- package/dist/runtime/components/editor/EponymeForm.d.vue.ts +9 -0
- package/dist/runtime/components/editor/EponymeForm.vue +309 -0
- package/dist/runtime/components/editor/EponymeForm.vue.d.ts +9 -0
- package/dist/runtime/components/editor/EponymeFormPage.d.vue.ts +8 -0
- package/dist/runtime/components/editor/EponymeFormPage.vue +288 -0
- package/dist/runtime/components/editor/EponymeFormPage.vue.d.ts +8 -0
- package/dist/runtime/components/editor/EponymeHistoryDialog.d.vue.ts +14 -0
- package/dist/runtime/components/editor/EponymeHistoryDialog.vue +97 -0
- package/dist/runtime/components/editor/EponymeHistoryDialog.vue.d.ts +14 -0
- package/dist/runtime/components/editor/EponymeNavigationLink.d.vue.ts +14 -0
- package/dist/runtime/components/editor/EponymeNavigationLink.vue +80 -0
- package/dist/runtime/components/editor/EponymeNavigationLink.vue.d.ts +14 -0
- package/dist/runtime/components/editor/EponymePageNavigation.d.vue.ts +8 -0
- package/dist/runtime/components/editor/EponymePageNavigation.vue +58 -0
- package/dist/runtime/components/editor/EponymePageNavigation.vue.d.ts +8 -0
- package/dist/runtime/components/editor/EponymePreviewPanel.d.vue.ts +16 -0
- package/dist/runtime/components/editor/EponymePreviewPanel.vue +100 -0
- package/dist/runtime/components/editor/EponymePreviewPanel.vue.d.ts +16 -0
- package/dist/runtime/components/editor/EponymeSidebar.d.vue.ts +6 -0
- package/dist/runtime/components/editor/EponymeSidebar.vue +244 -0
- package/dist/runtime/components/editor/EponymeSidebar.vue.d.ts +6 -0
- package/dist/runtime/components/editor/EponymeSidebarTree.d.vue.ts +18 -0
- package/dist/runtime/components/editor/EponymeSidebarTree.vue +84 -0
- package/dist/runtime/components/editor/EponymeSidebarTree.vue.d.ts +18 -0
- package/dist/runtime/components/fields/ArrayField.d.vue.ts +19 -0
- package/dist/runtime/components/fields/ArrayField.vue +198 -0
- package/dist/runtime/components/fields/ArrayField.vue.d.ts +19 -0
- package/dist/runtime/components/fields/BooleanField.d.vue.ts +16 -0
- package/dist/runtime/components/fields/BooleanField.vue +36 -0
- package/dist/runtime/components/fields/BooleanField.vue.d.ts +16 -0
- package/dist/runtime/components/fields/CheckboxGroupField.d.vue.ts +20 -0
- package/dist/runtime/components/fields/CheckboxGroupField.vue +52 -0
- package/dist/runtime/components/fields/CheckboxGroupField.vue.d.ts +20 -0
- package/dist/runtime/components/fields/ColorField.d.vue.ts +19 -0
- package/dist/runtime/components/fields/ColorField.vue +39 -0
- package/dist/runtime/components/fields/ColorField.vue.d.ts +19 -0
- package/dist/runtime/components/fields/DateField.d.vue.ts +18 -0
- package/dist/runtime/components/fields/DateField.vue +39 -0
- package/dist/runtime/components/fields/DateField.vue.d.ts +18 -0
- package/dist/runtime/components/fields/FieldRenderer.d.vue.ts +24 -0
- package/dist/runtime/components/fields/FieldRenderer.vue +135 -0
- package/dist/runtime/components/fields/FieldRenderer.vue.d.ts +24 -0
- package/dist/runtime/components/fields/NumberField.d.vue.ts +20 -0
- package/dist/runtime/components/fields/NumberField.vue +58 -0
- package/dist/runtime/components/fields/NumberField.vue.d.ts +20 -0
- package/dist/runtime/components/fields/RadioField.d.vue.ts +20 -0
- package/dist/runtime/components/fields/RadioField.vue +44 -0
- package/dist/runtime/components/fields/RadioField.vue.d.ts +20 -0
- package/dist/runtime/components/fields/RichTextField.d.vue.ts +20 -0
- package/dist/runtime/components/fields/RichTextField.vue +176 -0
- package/dist/runtime/components/fields/RichTextField.vue.d.ts +20 -0
- package/dist/runtime/components/fields/SectionField.d.vue.ts +20 -0
- package/dist/runtime/components/fields/SectionField.vue +127 -0
- package/dist/runtime/components/fields/SectionField.vue.d.ts +20 -0
- package/dist/runtime/components/fields/SelectField.d.vue.ts +21 -0
- package/dist/runtime/components/fields/SelectField.vue +42 -0
- package/dist/runtime/components/fields/SelectField.vue.d.ts +21 -0
- package/dist/runtime/components/fields/SlugField.d.vue.ts +20 -0
- package/dist/runtime/components/fields/SlugField.vue +35 -0
- package/dist/runtime/components/fields/SlugField.vue.d.ts +20 -0
- package/dist/runtime/components/fields/TabsField.d.vue.ts +19 -0
- package/dist/runtime/components/fields/TabsField.vue +109 -0
- package/dist/runtime/components/fields/TabsField.vue.d.ts +19 -0
- package/dist/runtime/components/fields/TextField.d.vue.ts +22 -0
- package/dist/runtime/components/fields/TextField.vue +56 -0
- package/dist/runtime/components/fields/TextField.vue.d.ts +22 -0
- package/dist/runtime/components/fields/TextareaField.d.vue.ts +20 -0
- package/dist/runtime/components/fields/TextareaField.vue +47 -0
- package/dist/runtime/components/fields/TextareaField.vue.d.ts +20 -0
- package/dist/runtime/components/fields/UrlField.d.vue.ts +17 -0
- package/dist/runtime/components/fields/UrlField.vue +35 -0
- package/dist/runtime/components/fields/UrlField.vue.d.ts +17 -0
- package/dist/runtime/components/ui/EPAccordion.d.vue.ts +26 -0
- package/dist/runtime/components/ui/EPAccordion.vue +64 -0
- package/dist/runtime/components/ui/EPAccordion.vue.d.ts +26 -0
- package/dist/runtime/components/ui/EPAvatar.d.vue.ts +9 -0
- package/dist/runtime/components/ui/EPAvatar.vue +25 -0
- package/dist/runtime/components/ui/EPAvatar.vue.d.ts +9 -0
- package/dist/runtime/components/ui/EPBadge.d.vue.ts +16 -0
- package/dist/runtime/components/ui/EPBadge.vue +17 -0
- package/dist/runtime/components/ui/EPBadge.vue.d.ts +16 -0
- package/dist/runtime/components/ui/EPButton.d.vue.ts +22 -0
- package/dist/runtime/components/ui/EPButton.vue +55 -0
- package/dist/runtime/components/ui/EPButton.vue.d.ts +22 -0
- package/dist/runtime/components/ui/EPCheckbox.d.vue.ts +11 -0
- package/dist/runtime/components/ui/EPCheckbox.vue +21 -0
- package/dist/runtime/components/ui/EPCheckbox.vue.d.ts +11 -0
- package/dist/runtime/components/ui/EPColorPicker.d.vue.ts +19 -0
- package/dist/runtime/components/ui/EPColorPicker.vue +63 -0
- package/dist/runtime/components/ui/EPColorPicker.vue.d.ts +19 -0
- package/dist/runtime/components/ui/EPDialog.d.vue.ts +24 -0
- package/dist/runtime/components/ui/EPDialog.vue +54 -0
- package/dist/runtime/components/ui/EPDialog.vue.d.ts +24 -0
- package/dist/runtime/components/ui/EPDropdownMenu.d.vue.ts +25 -0
- package/dist/runtime/components/ui/EPDropdownMenu.vue +40 -0
- package/dist/runtime/components/ui/EPDropdownMenu.vue.d.ts +25 -0
- package/dist/runtime/components/ui/EPFormField.d.vue.ts +24 -0
- package/dist/runtime/components/ui/EPFormField.vue +62 -0
- package/dist/runtime/components/ui/EPFormField.vue.d.ts +24 -0
- package/dist/runtime/components/ui/EPInputText.d.vue.ts +17 -0
- package/dist/runtime/components/ui/EPInputText.vue +33 -0
- package/dist/runtime/components/ui/EPInputText.vue.d.ts +17 -0
- package/dist/runtime/components/ui/EPLinkEditor.d.vue.ts +16 -0
- package/dist/runtime/components/ui/EPLinkEditor.vue +169 -0
- package/dist/runtime/components/ui/EPLinkEditor.vue.d.ts +16 -0
- package/dist/runtime/components/ui/EPRadioButton.d.vue.ts +16 -0
- package/dist/runtime/components/ui/EPRadioButton.vue +34 -0
- package/dist/runtime/components/ui/EPRadioButton.vue.d.ts +16 -0
- package/dist/runtime/components/ui/EPSelect.d.vue.ts +21 -0
- package/dist/runtime/components/ui/EPSelect.vue +73 -0
- package/dist/runtime/components/ui/EPSelect.vue.d.ts +21 -0
- package/dist/runtime/components/ui/EPSlider.d.vue.ts +16 -0
- package/dist/runtime/components/ui/EPSlider.vue +51 -0
- package/dist/runtime/components/ui/EPSlider.vue.d.ts +16 -0
- package/dist/runtime/components/ui/EPSwitch.d.vue.ts +11 -0
- package/dist/runtime/components/ui/EPSwitch.vue +23 -0
- package/dist/runtime/components/ui/EPSwitch.vue.d.ts +11 -0
- package/dist/runtime/components/ui/EPTextarea.d.vue.ts +12 -0
- package/dist/runtime/components/ui/EPTextarea.vue +18 -0
- package/dist/runtime/components/ui/EPTextarea.vue.d.ts +12 -0
- package/dist/runtime/components/ui/EPToast.d.vue.ts +13 -0
- package/dist/runtime/components/ui/EPToast.vue +60 -0
- package/dist/runtime/components/ui/EPToast.vue.d.ts +13 -0
- package/dist/runtime/components/ui/EPTooltip.d.vue.ts +17 -0
- package/dist/runtime/components/ui/EPTooltip.vue +34 -0
- package/dist/runtime/components/ui/EPTooltip.vue.d.ts +17 -0
- package/dist/runtime/components/ui/form-field-context.d.ts +12 -0
- package/dist/runtime/components/ui/form-field-context.js +1 -0
- package/dist/runtime/composables/useEponyme.d.ts +24 -0
- package/dist/runtime/composables/useEponyme.js +63 -0
- package/dist/runtime/composables/useEponymeAuth.d.ts +16 -0
- package/dist/runtime/composables/useEponymeAuth.js +81 -0
- package/dist/runtime/composables/useEponymeCollection.d.ts +27 -0
- package/dist/runtime/composables/useEponymeCollection.js +44 -0
- package/dist/runtime/composables/useEponymeColorPresets.d.ts +5 -0
- package/dist/runtime/composables/useEponymeColorPresets.js +16 -0
- package/dist/runtime/composables/useEponymeConfig.d.ts +1 -0
- package/dist/runtime/composables/useEponymeConfig.js +4 -0
- package/dist/runtime/composables/useEponymeForm.d.ts +35 -0
- package/dist/runtime/composables/useEponymeForm.js +75 -0
- package/dist/runtime/composables/useEponymeHistory.d.ts +26 -0
- package/dist/runtime/composables/useEponymeHistory.js +24 -0
- package/dist/runtime/composables/useEponymeValidation.d.ts +21 -0
- package/dist/runtime/composables/useEponymeValidation.js +34 -0
- package/dist/runtime/fields/array.d.ts +2 -0
- package/dist/runtime/fields/array.js +3 -0
- package/dist/runtime/fields/boolean.d.ts +2 -0
- package/dist/runtime/fields/boolean.js +3 -0
- package/dist/runtime/fields/checkbox-group.d.ts +2 -0
- package/dist/runtime/fields/checkbox-group.js +3 -0
- package/dist/runtime/fields/color.d.ts +2 -0
- package/dist/runtime/fields/color.js +3 -0
- package/dist/runtime/fields/date.d.ts +3 -0
- package/dist/runtime/fields/date.js +6 -0
- package/dist/runtime/fields/email.d.ts +2 -0
- package/dist/runtime/fields/email.js +3 -0
- package/dist/runtime/fields/image.d.ts +2 -0
- package/dist/runtime/fields/image.js +3 -0
- package/dist/runtime/fields/index.d.ts +37 -0
- package/dist/runtime/fields/index.js +19 -0
- package/dist/runtime/fields/number.d.ts +2 -0
- package/dist/runtime/fields/number.js +3 -0
- package/dist/runtime/fields/radio.d.ts +2 -0
- package/dist/runtime/fields/radio.js +3 -0
- package/dist/runtime/fields/rich-text.d.ts +2 -0
- package/dist/runtime/fields/rich-text.js +3 -0
- package/dist/runtime/fields/section.d.ts +2 -0
- package/dist/runtime/fields/section.js +3 -0
- package/dist/runtime/fields/select.d.ts +2 -0
- package/dist/runtime/fields/select.js +3 -0
- package/dist/runtime/fields/slug.d.ts +2 -0
- package/dist/runtime/fields/slug.js +3 -0
- package/dist/runtime/fields/string.d.ts +2 -0
- package/dist/runtime/fields/string.js +3 -0
- package/dist/runtime/fields/tab.d.ts +2 -0
- package/dist/runtime/fields/tab.js +3 -0
- package/dist/runtime/fields/textarea.d.ts +2 -0
- package/dist/runtime/fields/textarea.js +3 -0
- package/dist/runtime/fields/url.d.ts +2 -0
- package/dist/runtime/fields/url.js +3 -0
- package/dist/runtime/middleware/eponyme-auth.d.ts +2 -0
- package/dist/runtime/middleware/eponyme-auth.js +13 -0
- package/dist/runtime/middleware/eponyme-owner.d.ts +2 -0
- package/dist/runtime/middleware/eponyme-owner.js +7 -0
- package/dist/runtime/pages/EponymeChangePasswordPage.d.vue.ts +3 -0
- package/dist/runtime/pages/EponymeChangePasswordPage.vue +118 -0
- package/dist/runtime/pages/EponymeChangePasswordPage.vue.d.ts +3 -0
- package/dist/runtime/pages/EponymeDetailPage.d.vue.ts +3 -0
- package/dist/runtime/pages/EponymeDetailPage.vue +83 -0
- package/dist/runtime/pages/EponymeDetailPage.vue.d.ts +3 -0
- package/dist/runtime/pages/EponymeIndexPage.d.vue.ts +3 -0
- package/dist/runtime/pages/EponymeIndexPage.vue +51 -0
- package/dist/runtime/pages/EponymeIndexPage.vue.d.ts +3 -0
- package/dist/runtime/pages/EponymeLoginPage.d.vue.ts +3 -0
- package/dist/runtime/pages/EponymeLoginPage.vue +102 -0
- package/dist/runtime/pages/EponymeLoginPage.vue.d.ts +3 -0
- package/dist/runtime/pages/EponymeUsersPage.d.vue.ts +3 -0
- package/dist/runtime/pages/EponymeUsersPage.vue +261 -0
- package/dist/runtime/pages/EponymeUsersPage.vue.d.ts +3 -0
- package/dist/runtime/server/api/eponyme/[name].get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme/[name].get.js +20 -0
- package/dist/runtime/server/api/eponyme/[name].patch.d.ts +11 -0
- package/dist/runtime/server/api/eponyme/[name].patch.js +20 -0
- package/dist/runtime/server/api/eponyme-auth/change-password.post.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-auth/change-password.post.js +21 -0
- package/dist/runtime/server/api/eponyme-auth/login.post.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-auth/login.post.js +12 -0
- package/dist/runtime/server/api/eponyme-auth/logout.post.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-auth/logout.post.js +13 -0
- package/dist/runtime/server/api/eponyme-auth/session.get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-auth/session.get.js +5 -0
- package/dist/runtime/server/api/eponyme-collections/[path].delete.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-collections/[path].delete.js +11 -0
- package/dist/runtime/server/api/eponyme-collections/[path].get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-collections/[path].get.js +11 -0
- package/dist/runtime/server/api/eponyme-collections/[path].post.d.ts +7 -0
- package/dist/runtime/server/api/eponyme-collections/[path].post.js +16 -0
- package/dist/runtime/server/api/eponyme-forms/[path].delete.d.ts +6 -0
- package/dist/runtime/server/api/eponyme-forms/[path].delete.js +19 -0
- package/dist/runtime/server/api/eponyme-forms/[path].get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-forms/[path].get.js +22 -0
- package/dist/runtime/server/api/eponyme-forms/[path].post.d.ts +19 -0
- package/dist/runtime/server/api/eponyme-forms/[path].post.js +36 -0
- package/dist/runtime/server/api/eponyme-history/[path].get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-history/[path].get.js +11 -0
- package/dist/runtime/server/api/eponyme-history/[path].patch.d.ts +2 -0
- package/dist/runtime/server/api/eponyme-history/[path].patch.js +18 -0
- package/dist/runtime/server/api/eponyme-sitemap.get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-sitemap.get.js +5 -0
- package/dist/runtime/server/api/eponyme-statuses.get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-statuses.get.js +7 -0
- package/dist/runtime/server/api/eponyme-users/[id]/reset-password.post.d.ts +5 -0
- package/dist/runtime/server/api/eponyme-users/[id]/reset-password.post.js +12 -0
- package/dist/runtime/server/api/eponyme-users/[id].patch.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-users/[id].patch.js +14 -0
- package/dist/runtime/server/api/eponyme-users/index.get.d.ts +4 -0
- package/dist/runtime/server/api/eponyme-users/index.get.js +7 -0
- package/dist/runtime/server/api/eponyme-users/index.post.d.ts +5 -0
- package/dist/runtime/server/api/eponyme-users/index.post.js +13 -0
- package/dist/runtime/server/plugins/eponyme-sync.d.ts +2 -0
- package/dist/runtime/server/plugins/eponyme-sync.js +14 -0
- package/dist/runtime/server/services/eponyme-auth-service.d.ts +2 -0
- package/dist/runtime/server/services/eponyme-auth-service.js +15 -0
- package/dist/runtime/server/services/eponyme-auth-store.d.ts +119 -0
- package/dist/runtime/server/services/eponyme-auth-store.js +227 -0
- package/dist/runtime/server/services/eponyme-form-service.d.ts +3 -0
- package/dist/runtime/server/services/eponyme-form-service.js +8 -0
- package/dist/runtime/server/services/eponyme-form-store.d.ts +100 -0
- package/dist/runtime/server/services/eponyme-form-store.js +109 -0
- package/dist/runtime/server/services/eponyme-service.d.ts +3 -0
- package/dist/runtime/server/services/eponyme-service.js +8 -0
- package/dist/runtime/server/services/eponyme-store.d.ts +202 -0
- package/dist/runtime/server/services/eponyme-store.js +338 -0
- package/dist/runtime/server/utils/auth.d.ts +11 -0
- package/dist/runtime/server/utils/auth.js +41 -0
- package/dist/runtime/server/utils/eponyme-form.d.ts +14 -0
- package/dist/runtime/server/utils/eponyme-form.js +6 -0
- package/dist/runtime/server/utils/eponyme-sitemap.d.ts +7 -0
- package/dist/runtime/server/utils/eponyme-sitemap.js +7 -0
- package/dist/runtime/server/utils/form-route.d.ts +14 -0
- package/dist/runtime/server/utils/form-route.js +14 -0
- package/dist/runtime/server/utils/password.d.ts +4 -0
- package/dist/runtime/server/utils/password.js +30 -0
- package/dist/runtime/types/auth.d.ts +20 -0
- package/dist/runtime/types/auth.js +7 -0
- package/dist/runtime/types/eponyme-config.d.ts +11 -0
- package/dist/runtime/types/eponyme-navigation.d.ts +6 -0
- package/dist/runtime/types/eponyme-navigation.js +0 -0
- package/dist/runtime/types/eponyme.d.ts +87 -0
- package/dist/runtime/types/eponyme.js +0 -0
- package/dist/runtime/types/field.d.ts +203 -0
- package/dist/runtime/types/field.js +0 -0
- package/dist/runtime/types/index.d.ts +3 -0
- package/dist/runtime/types/index.js +3 -0
- package/dist/runtime/types/nuxt.d.ts +11 -0
- package/dist/runtime/utils/as-record.d.ts +1 -0
- package/dist/runtime/utils/as-record.js +3 -0
- package/dist/runtime/utils/build-eponyme-schema.d.ts +22 -0
- package/dist/runtime/utils/build-eponyme-schema.js +42 -0
- package/dist/runtime/utils/changed-paths.d.ts +6 -0
- package/dist/runtime/utils/changed-paths.js +25 -0
- package/dist/runtime/utils/create-default-eponyme-data.d.ts +5 -0
- package/dist/runtime/utils/create-default-eponyme-data.js +12 -0
- package/dist/runtime/utils/field-path.d.ts +14 -0
- package/dist/runtime/utils/field-path.js +23 -0
- package/dist/runtime/utils/get-eponyme-schemas.d.ts +7 -0
- package/dist/runtime/utils/get-eponyme-schemas.js +33 -0
- package/dist/runtime/utils/get-field-default-value.d.ts +4 -0
- package/dist/runtime/utils/get-field-default-value.js +56 -0
- package/dist/runtime/utils/humanize-label.d.ts +6 -0
- package/dist/runtime/utils/humanize-label.js +3 -0
- package/dist/runtime/utils/initials.d.ts +1 -0
- package/dist/runtime/utils/initials.js +3 -0
- package/dist/runtime/utils/is-field-visible.d.ts +2 -0
- package/dist/runtime/utils/is-field-visible.js +14 -0
- package/dist/runtime/utils/normalize-hex-color.d.ts +8 -0
- package/dist/runtime/utils/normalize-hex-color.js +11 -0
- package/dist/runtime/utils/normalize-slug.d.ts +1 -0
- package/dist/runtime/utils/normalize-slug.js +4 -0
- package/dist/runtime/utils/preview.d.ts +30 -0
- package/dist/runtime/utils/preview.js +30 -0
- package/dist/runtime/utils/validate-eponyme-data.d.ts +10 -0
- package/dist/runtime/utils/validate-eponyme-data.js +204 -0
- package/dist/types.d.mts +11 -0
- package/package.json +96 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
basePath: string;
|
|
3
|
+
eponyme: string;
|
|
4
|
+
};
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
declare const _default: typeof __VLS_export;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
basePath: string;
|
|
3
|
+
folder: string;
|
|
4
|
+
};
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
declare const _default: typeof __VLS_export;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { computed } from "vue";
|
|
3
|
+
import EponymeNavigationLink from "./EponymeNavigationLink.vue";
|
|
4
|
+
import { useEponymeConfig } from "../../composables/useEponymeConfig";
|
|
5
|
+
import { getEponymeCollections, getEponymeForms, getEponymeSchemas } from "../../utils/get-eponyme-schemas";
|
|
6
|
+
const props = defineProps({
|
|
7
|
+
basePath: { type: String, required: true },
|
|
8
|
+
folder: { type: String, required: true }
|
|
9
|
+
});
|
|
10
|
+
const config = useEponymeConfig();
|
|
11
|
+
const children = computed(() => {
|
|
12
|
+
const prefix = `${props.folder}/`;
|
|
13
|
+
const unique = /* @__PURE__ */ new Map();
|
|
14
|
+
const collections = getEponymeCollections(config);
|
|
15
|
+
const forms = getEponymeForms(config);
|
|
16
|
+
for (const name of [...Object.keys(getEponymeSchemas(config)), ...Object.keys(collections), ...Object.keys(forms)]) {
|
|
17
|
+
if (!name.startsWith(prefix)) continue;
|
|
18
|
+
const [child, ...rest] = name.slice(prefix.length).split("/");
|
|
19
|
+
if (!child) continue;
|
|
20
|
+
const kind = rest.length ? "folder" : collections[name] ? "collection" : forms[name] ? "form" : unique.get(child) ?? "entry";
|
|
21
|
+
unique.set(child, kind);
|
|
22
|
+
}
|
|
23
|
+
return [...unique].map(([name, kind]) => ({ name, kind, path: `${props.folder}/${name}` }));
|
|
24
|
+
});
|
|
25
|
+
function label(name) {
|
|
26
|
+
return name.replace(/[-_]/g, " ").replace(/\b\w/g, (char) => char.toUpperCase());
|
|
27
|
+
}
|
|
28
|
+
function descriptionFor(kind) {
|
|
29
|
+
if (kind === "folder") return "Folder";
|
|
30
|
+
if (kind === "collection") return "Collection";
|
|
31
|
+
return kind === "form" ? "Form" : "Page";
|
|
32
|
+
}
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<template>
|
|
36
|
+
<section class="ep:mx-auto ep:max-w-3xl ep:px-6 ep:py-8 ep:md:px-10 ep:md:py-12">
|
|
37
|
+
<header class="ep:mb-8">
|
|
38
|
+
<p class="ep:m-0 ep:text-[11px] ep:font-semibold ep:tracking-widest ep:text-muted-ep ep:uppercase">
|
|
39
|
+
Folder
|
|
40
|
+
</p>
|
|
41
|
+
<h1 class="ep:mt-2 ep:text-3xl ep:font-semibold ep:tracking-tight ep:text-white">
|
|
42
|
+
{{ label(folder.split("/").at(-1) ?? folder) }}
|
|
43
|
+
</h1>
|
|
44
|
+
<p class="ep:mt-2 ep:text-sm ep:text-muted-ep">
|
|
45
|
+
Choose a page or open a nested folder.
|
|
46
|
+
</p>
|
|
47
|
+
</header>
|
|
48
|
+
<nav
|
|
49
|
+
class="ep:grid ep:gap-3 ep:sm:grid-cols-2"
|
|
50
|
+
:aria-label="`${label(folder)} entries`"
|
|
51
|
+
>
|
|
52
|
+
<EponymeNavigationLink
|
|
53
|
+
v-for="child in children"
|
|
54
|
+
:key="child.path"
|
|
55
|
+
:to="`${basePath}/${child.path}`"
|
|
56
|
+
:label="label(child.name)"
|
|
57
|
+
:description="descriptionFor(child.kind)"
|
|
58
|
+
variant="card"
|
|
59
|
+
/>
|
|
60
|
+
</nav>
|
|
61
|
+
</section>
|
|
62
|
+
</template>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
basePath: string;
|
|
3
|
+
folder: string;
|
|
4
|
+
};
|
|
5
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
declare const _default: typeof __VLS_export;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EponymeSchema } from '../../types/index.js';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
name: string;
|
|
4
|
+
schema: EponymeSchema;
|
|
5
|
+
readonlyFields?: string[];
|
|
6
|
+
};
|
|
7
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
8
|
+
declare const _default: typeof __VLS_export;
|
|
9
|
+
export default _default;
|
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { useRouter, useRuntimeConfig, useState } from "#app";
|
|
3
|
+
import { onKeyStroke, useEventListener } from "@vueuse/core";
|
|
4
|
+
import { computed, nextTick, onScopeDispose, ref, watch } from "vue";
|
|
5
|
+
import EponymeHistoryDialog from "./EponymeHistoryDialog.vue";
|
|
6
|
+
import EponymePreviewPanel from "./EponymePreviewPanel.vue";
|
|
7
|
+
import ArrayField from "../fields/ArrayField.vue";
|
|
8
|
+
import SectionField from "../fields/SectionField.vue";
|
|
9
|
+
import TabsField from "../fields/TabsField.vue";
|
|
10
|
+
import FieldRenderer from "../fields/FieldRenderer.vue";
|
|
11
|
+
import EPBadge from "../ui/EPBadge.vue";
|
|
12
|
+
import EPButton from "../ui/EPButton.vue";
|
|
13
|
+
import EPTooltip from "../ui/EPTooltip.vue";
|
|
14
|
+
import EPToast from "../ui/EPToast.vue";
|
|
15
|
+
import { useEponyme } from "../../composables/useEponyme";
|
|
16
|
+
import { useEponymeAuth } from "../../composables/useEponymeAuth";
|
|
17
|
+
import { useEponymeConfig } from "../../composables/useEponymeConfig";
|
|
18
|
+
import { useEponymeValidation } from "../../composables/useEponymeValidation";
|
|
19
|
+
import { getEponymeCollections } from "../../utils/get-eponyme-schemas";
|
|
20
|
+
import { isFieldVisible } from "../../utils/is-field-visible";
|
|
21
|
+
import { resolvePreviewPath } from "../../utils/preview";
|
|
22
|
+
import { childErrors, errorsAt, fieldPathId } from "../../utils/field-path";
|
|
23
|
+
const props = defineProps({
|
|
24
|
+
name: { type: String, required: true },
|
|
25
|
+
schema: { type: Object, required: true },
|
|
26
|
+
readonlyFields: { type: Array, required: false, default: () => [] }
|
|
27
|
+
});
|
|
28
|
+
const runtimeConfig = useRuntimeConfig();
|
|
29
|
+
const previewPaths = runtimeConfig.public.eponyme?.previewPaths ?? {};
|
|
30
|
+
const collectionNames = Object.keys(getEponymeCollections(useEponymeConfig()));
|
|
31
|
+
const previewPath = computed(() => resolvePreviewPath(previewPaths, collectionNames, props.name));
|
|
32
|
+
const auth = useEponymeAuth();
|
|
33
|
+
const { data: eponymeData, errors: serverErrors, pending, status, publishedAt, refresh, save: persist } = useEponyme(props.name, { version: "draft" });
|
|
34
|
+
const data = ref({});
|
|
35
|
+
const savedData = ref({});
|
|
36
|
+
const validation = useEponymeValidation(props.schema, data, savedData, { serverErrors });
|
|
37
|
+
const errors = validation.errors;
|
|
38
|
+
const dirty = computed(() => JSON.stringify(data.value) !== JSON.stringify(savedData.value));
|
|
39
|
+
const historyOpen = ref(false);
|
|
40
|
+
const previewOpen = ref(false);
|
|
41
|
+
const previewPanel = ref();
|
|
42
|
+
const entryStatuses = useState("eponyme:entry-statuses", () => ({}));
|
|
43
|
+
const publicationStatus = computed(() => status.value === "draft" ? "draft" : publishedAt.value ? "published" : "unpublished");
|
|
44
|
+
const publicationBadgeVariant = computed(() => {
|
|
45
|
+
if (publicationStatus.value === "published") return "success";
|
|
46
|
+
if (publicationStatus.value === "draft") return "warning";
|
|
47
|
+
return "neutral";
|
|
48
|
+
});
|
|
49
|
+
const toast = ref({
|
|
50
|
+
open: false,
|
|
51
|
+
title: "",
|
|
52
|
+
description: "",
|
|
53
|
+
variant: "success"
|
|
54
|
+
});
|
|
55
|
+
function label(name, configured) {
|
|
56
|
+
return configured || name.replace(/[-_]/g, " ").replace(/\b\w/g, (char) => char.toUpperCase());
|
|
57
|
+
}
|
|
58
|
+
function fieldDisabled(fieldName) {
|
|
59
|
+
return !auth.canEdit.value || props.readonlyFields.includes(fieldName);
|
|
60
|
+
}
|
|
61
|
+
watch(eponymeData, (value) => {
|
|
62
|
+
if (value) {
|
|
63
|
+
const next = cloneData(value);
|
|
64
|
+
data.value = next;
|
|
65
|
+
savedData.value = cloneData(next);
|
|
66
|
+
}
|
|
67
|
+
}, { immediate: true });
|
|
68
|
+
watch(status, (value) => {
|
|
69
|
+
entryStatuses.value = { ...entryStatuses.value, [props.name]: value };
|
|
70
|
+
}, { immediate: true });
|
|
71
|
+
function cloneData(value) {
|
|
72
|
+
return JSON.parse(JSON.stringify(value));
|
|
73
|
+
}
|
|
74
|
+
async function showToast(variant, title, description) {
|
|
75
|
+
toast.value.open = false;
|
|
76
|
+
await nextTick();
|
|
77
|
+
toast.value = { open: true, variant, title, description };
|
|
78
|
+
}
|
|
79
|
+
async function save(action = "draft") {
|
|
80
|
+
if (!auth.canEdit.value) return;
|
|
81
|
+
if (action === "publish" && !validation.validateForPublish()) {
|
|
82
|
+
await showToast("error", "Some fields need attention", "Review the highlighted fields, then try again.");
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
try {
|
|
86
|
+
const response = await persist(data.value, action);
|
|
87
|
+
if (response) {
|
|
88
|
+
savedData.value = cloneData(response);
|
|
89
|
+
validation.reset();
|
|
90
|
+
previewPanel.value?.reload();
|
|
91
|
+
await showToast(
|
|
92
|
+
"success",
|
|
93
|
+
action === "publish" ? "Changes published" : "Draft saved",
|
|
94
|
+
action === "publish" ? "The public content is now up to date." : "Your changes are saved but not public yet."
|
|
95
|
+
);
|
|
96
|
+
}
|
|
97
|
+
} catch (error) {
|
|
98
|
+
const hasValidationErrors = Object.keys(errors.value).length > 0;
|
|
99
|
+
if (error.statusCode === 409) {
|
|
100
|
+
await showToast(
|
|
101
|
+
"error",
|
|
102
|
+
"Someone else saved first",
|
|
103
|
+
"This entry changed while you were editing. Reload the page to get the latest version."
|
|
104
|
+
);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
await showToast(
|
|
108
|
+
"error",
|
|
109
|
+
hasValidationErrors ? "Some fields need attention" : action === "publish" ? "Unable to publish" : "Unable to save draft",
|
|
110
|
+
hasValidationErrors ? "Review the highlighted fields, then try again." : "An unexpected error occurred. Please try again."
|
|
111
|
+
);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
async function handleVersionRestored() {
|
|
115
|
+
await refresh();
|
|
116
|
+
await showToast("success", "Version restored", "The selected version is now the current draft.");
|
|
117
|
+
}
|
|
118
|
+
onKeyStroke("s", (event) => {
|
|
119
|
+
if (!auth.canEdit.value || event.repeat || !event.metaKey && !event.ctrlKey || pending.value) return;
|
|
120
|
+
event.preventDefault();
|
|
121
|
+
void save("draft");
|
|
122
|
+
});
|
|
123
|
+
const removeNavigationGuard = useRouter().beforeEach(() => {
|
|
124
|
+
if (auth.canEdit.value && dirty.value && !confirm("You have unsaved changes. Leave this page anyway?")) return false;
|
|
125
|
+
});
|
|
126
|
+
onScopeDispose(removeNavigationGuard);
|
|
127
|
+
useEventListener("beforeunload", (event) => {
|
|
128
|
+
if (!dirty.value) return;
|
|
129
|
+
event.preventDefault();
|
|
130
|
+
event.returnValue = "";
|
|
131
|
+
});
|
|
132
|
+
</script>
|
|
133
|
+
|
|
134
|
+
<template>
|
|
135
|
+
<section class="eponyme-form ep:mx-auto ep:max-w-3xl ep:px-6 ep:py-8 ep:md:px-10 ep:md:py-12">
|
|
136
|
+
<div class="ep:group ep:mt-2 ep:mb-8 ep:flex ep:flex-wrap ep:items-center ep:gap-3">
|
|
137
|
+
<h1 class="ep:m-0 ep:min-w-0 ep:max-w-full ep:text-3xl ep:font-semibold ep:tracking-tight ep:text-white ep:[overflow-wrap:anywhere]">
|
|
138
|
+
{{ label(name.split("/").at(-1) ?? name) }}
|
|
139
|
+
</h1>
|
|
140
|
+
<EPBadge :variant="publicationBadgeVariant">
|
|
141
|
+
{{ publicationStatus }}
|
|
142
|
+
</EPBadge>
|
|
143
|
+
<EPBadge
|
|
144
|
+
v-if="dirty"
|
|
145
|
+
variant="danger"
|
|
146
|
+
>
|
|
147
|
+
Unsaved
|
|
148
|
+
</EPBadge>
|
|
149
|
+
<EPTooltip content="History">
|
|
150
|
+
<EPButton
|
|
151
|
+
class="ep:opacity-0 ep:focus-visible:opacity-100 ep:focus-visible:outline-none ep:focus-visible:ring-2 ep:focus-visible:ring-white/30 ep:group-hover:opacity-100"
|
|
152
|
+
icon="mingcute:history-anticlockwise-line"
|
|
153
|
+
variant="ghost"
|
|
154
|
+
aria-label="Open history"
|
|
155
|
+
@click="historyOpen = true"
|
|
156
|
+
/>
|
|
157
|
+
</EPTooltip>
|
|
158
|
+
</div>
|
|
159
|
+
<p
|
|
160
|
+
v-if="!eponymeData"
|
|
161
|
+
class="ep:text-sm ep:text-muted-ep"
|
|
162
|
+
>
|
|
163
|
+
Loading…
|
|
164
|
+
</p>
|
|
165
|
+
<!-- The schema rules are the single source of truth; native bubbles would preempt them
|
|
166
|
+
with browser-locale messages and block the publish handler entirely. -->
|
|
167
|
+
<form
|
|
168
|
+
v-else
|
|
169
|
+
novalidate
|
|
170
|
+
@submit.prevent="save('publish')"
|
|
171
|
+
>
|
|
172
|
+
<div
|
|
173
|
+
class="ep:m-0 ep:min-w-0 ep:border-0 ep:p-0"
|
|
174
|
+
>
|
|
175
|
+
<template
|
|
176
|
+
v-for="(field, fieldName) in schema"
|
|
177
|
+
:key="fieldName"
|
|
178
|
+
>
|
|
179
|
+
<div
|
|
180
|
+
v-if="isFieldVisible(field.options, data)"
|
|
181
|
+
class="ep:mb-6"
|
|
182
|
+
>
|
|
183
|
+
<SectionField
|
|
184
|
+
v-if="field.type === 'section'"
|
|
185
|
+
v-model="data[fieldName]"
|
|
186
|
+
:field-name="fieldName"
|
|
187
|
+
:definition="field"
|
|
188
|
+
:errors="childErrors(errors, fieldName)"
|
|
189
|
+
:disabled="fieldDisabled(fieldName)"
|
|
190
|
+
/>
|
|
191
|
+
<TabsField
|
|
192
|
+
v-else-if="field.type === 'tabs'"
|
|
193
|
+
v-model="data[fieldName]"
|
|
194
|
+
:field-name="fieldName"
|
|
195
|
+
:definition="field"
|
|
196
|
+
:errors="childErrors(errors, fieldName)"
|
|
197
|
+
:disabled="fieldDisabled(fieldName)"
|
|
198
|
+
/>
|
|
199
|
+
<template v-else-if="field.type === 'array'">
|
|
200
|
+
<label
|
|
201
|
+
:for="fieldPathId(fieldName)"
|
|
202
|
+
class="ep:mb-1.5 ep:block ep:text-sm ep:font-medium ep:text-text-ep"
|
|
203
|
+
>
|
|
204
|
+
{{ label(fieldName, field.options.label) }}<span
|
|
205
|
+
v-if="field.options.required"
|
|
206
|
+
class="ep:text-danger-ep"
|
|
207
|
+
> *</span>
|
|
208
|
+
</label>
|
|
209
|
+
<p
|
|
210
|
+
v-if="field.options.description"
|
|
211
|
+
class="ep:mt-0 ep:mb-2 ep:text-xs ep:leading-relaxed ep:text-muted-ep"
|
|
212
|
+
>
|
|
213
|
+
{{ field.options.description }}
|
|
214
|
+
</p>
|
|
215
|
+
<ArrayField
|
|
216
|
+
v-model="data[fieldName]"
|
|
217
|
+
:field-name="fieldName"
|
|
218
|
+
:definition="field"
|
|
219
|
+
:errors="childErrors(errors, fieldName)"
|
|
220
|
+
:disabled="fieldDisabled(fieldName)"
|
|
221
|
+
/>
|
|
222
|
+
<p
|
|
223
|
+
v-for="error in errorsAt(errors, fieldName)"
|
|
224
|
+
:key="error"
|
|
225
|
+
role="alert"
|
|
226
|
+
class="ep:mt-1.5 ep:text-xs ep:text-danger-ep"
|
|
227
|
+
>
|
|
228
|
+
{{ error }}
|
|
229
|
+
</p>
|
|
230
|
+
</template>
|
|
231
|
+
<FieldRenderer
|
|
232
|
+
v-else
|
|
233
|
+
v-model="data[fieldName]"
|
|
234
|
+
:field-name="fieldName"
|
|
235
|
+
:field="field"
|
|
236
|
+
:errors="errorsAt(errors, fieldName)"
|
|
237
|
+
:disabled="fieldDisabled(fieldName)"
|
|
238
|
+
/>
|
|
239
|
+
</div>
|
|
240
|
+
</template>
|
|
241
|
+
</div>
|
|
242
|
+
<p
|
|
243
|
+
v-if="errors._form"
|
|
244
|
+
class="ep:mt-1 ep:text-xs ep:text-danger-ep"
|
|
245
|
+
>
|
|
246
|
+
{{ errors._form.join(" ") }}
|
|
247
|
+
</p>
|
|
248
|
+
<div class="ep:sticky ep:bottom-4 ep:z-20 ep:mt-8 ep:flex ep:flex-wrap ep:items-center ep:justify-between ep:gap-3 ep:rounded-xl ep:bg-theme-ep/70 ep:p-3 ep:backdrop-blur-xl">
|
|
249
|
+
<div class="ep:flex ep:flex-wrap ep:items-center ep:gap-2">
|
|
250
|
+
<EPButton
|
|
251
|
+
v-if="auth.canEdit.value"
|
|
252
|
+
type="submit"
|
|
253
|
+
size="sm"
|
|
254
|
+
variant="primary"
|
|
255
|
+
:disabled="pending"
|
|
256
|
+
:loading="pending"
|
|
257
|
+
>
|
|
258
|
+
{{ pending ? "Publishing\u2026" : "Publish" }}
|
|
259
|
+
</EPButton>
|
|
260
|
+
<EPButton
|
|
261
|
+
v-if="auth.canEdit.value"
|
|
262
|
+
size="sm"
|
|
263
|
+
:disabled="pending"
|
|
264
|
+
title="Save draft (Ctrl/Command + S)"
|
|
265
|
+
@click="save('draft')"
|
|
266
|
+
>
|
|
267
|
+
{{ pending ? "Saving\u2026" : "Save draft" }}
|
|
268
|
+
</EPButton>
|
|
269
|
+
</div>
|
|
270
|
+
<div class="ep:flex ep:flex-wrap ep:items-center ep:gap-2">
|
|
271
|
+
<EPButton
|
|
272
|
+
v-if="previewPath"
|
|
273
|
+
size="sm"
|
|
274
|
+
variant="ghost"
|
|
275
|
+
icon="mingcute:eye-2-line"
|
|
276
|
+
:disabled="pending"
|
|
277
|
+
@click="previewOpen = !previewOpen"
|
|
278
|
+
>
|
|
279
|
+
{{ previewOpen ? "Hide preview" : "Preview" }}
|
|
280
|
+
</EPButton>
|
|
281
|
+
</div>
|
|
282
|
+
</div>
|
|
283
|
+
</form>
|
|
284
|
+
<ClientOnly>
|
|
285
|
+
<EponymePreviewPanel
|
|
286
|
+
v-if="previewPath"
|
|
287
|
+
ref="previewPanel"
|
|
288
|
+
:open="previewOpen"
|
|
289
|
+
:name="name"
|
|
290
|
+
:path="previewPath"
|
|
291
|
+
@update:open="previewOpen = $event"
|
|
292
|
+
/>
|
|
293
|
+
<EponymeHistoryDialog
|
|
294
|
+
:open="historyOpen"
|
|
295
|
+
:name="name"
|
|
296
|
+
:can-restore="auth.canEdit.value"
|
|
297
|
+
@update:open="historyOpen = $event"
|
|
298
|
+
@restored="handleVersionRestored"
|
|
299
|
+
/>
|
|
300
|
+
<EPToast
|
|
301
|
+
:open="toast.open"
|
|
302
|
+
:title="toast.title"
|
|
303
|
+
:description="toast.description"
|
|
304
|
+
:variant="toast.variant"
|
|
305
|
+
@update:open="toast.open = $event"
|
|
306
|
+
/>
|
|
307
|
+
</ClientOnly>
|
|
308
|
+
</section>
|
|
309
|
+
</template>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EponymeSchema } from '../../types/index.js';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
name: string;
|
|
4
|
+
schema: EponymeSchema;
|
|
5
|
+
readonlyFields?: string[];
|
|
6
|
+
};
|
|
7
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
8
|
+
declare const _default: typeof __VLS_export;
|
|
9
|
+
export default _default;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { EponymeFormDefinitionBase } from '../../types/index.js';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
name: string;
|
|
4
|
+
definition: EponymeFormDefinitionBase;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
7
|
+
declare const _default: typeof __VLS_export;
|
|
8
|
+
export default _default;
|