@kywi-software/core 0.2.0 → 0.3.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 +57 -2
- package/dist/admin/app.d.ts +10 -1
- package/dist/admin/app.d.ts.map +1 -1
- package/dist/admin/app.js +2 -2
- package/dist/admin/app.js.map +1 -1
- package/dist/admin/approval-queue.d.ts +3 -1
- package/dist/admin/approval-queue.d.ts.map +1 -1
- package/dist/admin/approval-queue.js +2 -2
- package/dist/admin/approval-queue.js.map +1 -1
- package/dist/admin/audience-list.d.ts.map +1 -1
- package/dist/admin/audience-list.js +9 -1
- package/dist/admin/audience-list.js.map +1 -1
- package/dist/admin/chrome.d.ts +7 -1
- package/dist/admin/chrome.d.ts.map +1 -1
- package/dist/admin/chrome.js +2 -1
- package/dist/admin/chrome.js.map +1 -1
- package/dist/admin/content-editor-api.d.ts +27 -1
- package/dist/admin/content-editor-api.d.ts.map +1 -1
- package/dist/admin/content-editor-api.js +60 -2
- package/dist/admin/content-editor-api.js.map +1 -1
- package/dist/admin/content-form.d.ts +62 -6
- package/dist/admin/content-form.d.ts.map +1 -1
- package/dist/admin/content-form.js +118 -13
- package/dist/admin/content-form.js.map +1 -1
- package/dist/admin/content-permissions-tab.d.ts +13 -0
- package/dist/admin/content-permissions-tab.d.ts.map +1 -0
- package/dist/admin/content-permissions-tab.js +90 -0
- package/dist/admin/content-permissions-tab.js.map +1 -0
- package/dist/admin/context.d.ts +8 -0
- package/dist/admin/context.d.ts.map +1 -1
- package/dist/admin/context.js.map +1 -1
- package/dist/admin/feed-builder.d.ts.map +1 -1
- package/dist/admin/feed-builder.js +20 -1
- package/dist/admin/feed-builder.js.map +1 -1
- package/dist/admin/field-components.d.ts.map +1 -1
- package/dist/admin/field-components.js +26 -1
- package/dist/admin/field-components.js.map +1 -1
- package/dist/admin/form-builder.js +6 -1
- package/dist/admin/form-builder.js.map +1 -1
- package/dist/admin/form-helpers.d.ts.map +1 -1
- package/dist/admin/form-helpers.js +2 -0
- package/dist/admin/form-helpers.js.map +1 -1
- package/dist/admin/kywi-logo.d.ts +21 -0
- package/dist/admin/kywi-logo.d.ts.map +1 -0
- package/dist/admin/kywi-logo.js +123 -0
- package/dist/admin/kywi-logo.js.map +1 -0
- package/dist/admin/layout-editor/component-actions.d.ts +18 -0
- package/dist/admin/layout-editor/component-actions.d.ts.map +1 -1
- package/dist/admin/layout-editor/component-actions.js +19 -0
- package/dist/admin/layout-editor/component-actions.js.map +1 -1
- package/dist/admin/layout-editor/component-picker-field.d.ts +20 -0
- package/dist/admin/layout-editor/component-picker-field.d.ts.map +1 -0
- package/dist/admin/layout-editor/component-picker-field.js +16 -0
- package/dist/admin/layout-editor/component-picker-field.js.map +1 -0
- package/dist/admin/layout-editor/drag-utils.d.ts +48 -0
- package/dist/admin/layout-editor/drag-utils.d.ts.map +1 -1
- package/dist/admin/layout-editor/drag-utils.js +43 -0
- package/dist/admin/layout-editor/drag-utils.js.map +1 -1
- package/dist/admin/layout-editor/editor-canvas.d.ts +9 -1
- package/dist/admin/layout-editor/editor-canvas.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-canvas.js +41 -15
- package/dist/admin/layout-editor/editor-canvas.js.map +1 -1
- package/dist/admin/layout-editor/editor-state.d.ts +9 -1
- package/dist/admin/layout-editor/editor-state.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-state.js +34 -0
- package/dist/admin/layout-editor/editor-state.js.map +1 -1
- package/dist/admin/layout-editor/editor.css +83 -0
- package/dist/admin/layout-editor/form-picker-field.d.ts +17 -0
- package/dist/admin/layout-editor/form-picker-field.d.ts.map +1 -0
- package/dist/admin/layout-editor/form-picker-field.js +35 -0
- package/dist/admin/layout-editor/form-picker-field.js.map +1 -0
- package/dist/admin/layout-editor/layout-editor.d.ts.map +1 -1
- package/dist/admin/layout-editor/layout-editor.js +95 -28
- package/dist/admin/layout-editor/layout-editor.js.map +1 -1
- package/dist/admin/layout-editor/mode-toggle.d.ts.map +1 -1
- package/dist/admin/layout-editor/mode-toggle.js +1 -1
- package/dist/admin/layout-editor/mode-toggle.js.map +1 -1
- package/dist/admin/layout-editor/module-overlay.d.ts +10 -1
- package/dist/admin/layout-editor/module-overlay.d.ts.map +1 -1
- package/dist/admin/layout-editor/module-overlay.js +3 -3
- package/dist/admin/layout-editor/module-overlay.js.map +1 -1
- package/dist/admin/layout-editor/props-panel.d.ts +10 -1
- package/dist/admin/layout-editor/props-panel.d.ts.map +1 -1
- package/dist/admin/layout-editor/props-panel.js +25 -2
- package/dist/admin/layout-editor/props-panel.js.map +1 -1
- package/dist/admin/layout-editor/section-insert-line.d.ts.map +1 -1
- package/dist/admin/layout-editor/section-insert-line.js +1 -1
- package/dist/admin/layout-editor/section-insert-line.js.map +1 -1
- package/dist/admin/layout-editor/section-overlay.d.ts.map +1 -1
- package/dist/admin/layout-editor/section-overlay.js +1 -1
- package/dist/admin/layout-editor/section-overlay.js.map +1 -1
- package/dist/admin/layout-editor/section-template-picker.d.ts +9 -1
- package/dist/admin/layout-editor/section-template-picker.d.ts.map +1 -1
- package/dist/admin/layout-editor/section-template-picker.js +45 -2
- package/dist/admin/layout-editor/section-template-picker.js.map +1 -1
- package/dist/admin/registry.d.ts.map +1 -1
- package/dist/admin/registry.js +11 -0
- package/dist/admin/registry.js.map +1 -1
- package/dist/admin/server.d.ts +15 -2
- package/dist/admin/server.d.ts.map +1 -1
- package/dist/admin/server.js +37 -1
- package/dist/admin/server.js.map +1 -1
- package/dist/admin/shell.d.ts.map +1 -1
- package/dist/admin/shell.js +62 -3
- package/dist/admin/shell.js.map +1 -1
- package/dist/admin/styles/admin.css +105 -27
- package/dist/admin/surface-matcher.d.ts +27 -0
- package/dist/admin/surface-matcher.d.ts.map +1 -1
- package/dist/admin/surface-matcher.js +11 -0
- package/dist/admin/surface-matcher.js.map +1 -1
- package/dist/admin/surfaces/approvals/approvals-data.d.ts +29 -9
- package/dist/admin/surfaces/approvals/approvals-data.d.ts.map +1 -1
- package/dist/admin/surfaces/approvals/approvals-data.js +65 -22
- package/dist/admin/surfaces/approvals/approvals-data.js.map +1 -1
- package/dist/admin/surfaces/approvals/approvals-index.d.ts.map +1 -1
- package/dist/admin/surfaces/approvals/approvals-index.js +47 -14
- package/dist/admin/surfaces/approvals/approvals-index.js.map +1 -1
- package/dist/admin/surfaces/content/content-edit.d.ts.map +1 -1
- package/dist/admin/surfaces/content/content-edit.js +34 -8
- package/dist/admin/surfaces/content/content-edit.js.map +1 -1
- package/dist/admin/surfaces/content/content-index.d.ts.map +1 -1
- package/dist/admin/surfaces/content/content-index.js +29 -2
- package/dist/admin/surfaces/content/content-index.js.map +1 -1
- package/dist/admin/surfaces/content/content-new.d.ts.map +1 -1
- package/dist/admin/surfaces/content/content-new.js +6 -4
- package/dist/admin/surfaces/content/content-new.js.map +1 -1
- package/dist/admin/surfaces/contentTree/content-tree.d.ts.map +1 -1
- package/dist/admin/surfaces/contentTree/content-tree.js +25 -2
- package/dist/admin/surfaces/contentTree/content-tree.js.map +1 -1
- package/dist/admin/surfaces/contentTypes/content-types-designer.d.ts.map +1 -1
- package/dist/admin/surfaces/contentTypes/content-types-designer.js +78 -47
- package/dist/admin/surfaces/contentTypes/content-types-designer.js.map +1 -1
- package/dist/admin/surfaces/feeds/feed-editor.d.ts.map +1 -1
- package/dist/admin/surfaces/feeds/feed-editor.js +21 -4
- package/dist/admin/surfaces/feeds/feed-editor.js.map +1 -1
- package/dist/admin/surfaces/layouts/layout-editor-client.d.ts.map +1 -1
- package/dist/admin/surfaces/layouts/layout-editor-client.js +7 -4
- package/dist/admin/surfaces/layouts/layout-editor-client.js.map +1 -1
- package/dist/admin/surfaces/login.d.ts.map +1 -1
- package/dist/admin/surfaces/login.js +2 -1
- package/dist/admin/surfaces/login.js.map +1 -1
- package/dist/admin/surfaces/media/media-client.d.ts.map +1 -1
- package/dist/admin/surfaces/media/media-client.js +10 -2
- package/dist/admin/surfaces/media/media-client.js.map +1 -1
- package/dist/admin/surfaces/settings/settings-site.d.ts.map +1 -1
- package/dist/admin/surfaces/settings/settings-site.js +39 -2
- package/dist/admin/surfaces/settings/settings-site.js.map +1 -1
- package/dist/admin/surfaces/settings/settings-sites.js +18 -0
- package/dist/admin/surfaces/settings/settings-sites.js.map +1 -1
- package/dist/admin/surfaces/trash/trash-index.d.ts.map +1 -1
- package/dist/admin/surfaces/trash/trash-index.js +45 -8
- package/dist/admin/surfaces/trash/trash-index.js.map +1 -1
- package/dist/admin/surfaces/users/users-data.d.ts +11 -0
- package/dist/admin/surfaces/users/users-data.d.ts.map +1 -1
- package/dist/admin/surfaces/users/users-data.js +20 -1
- package/dist/admin/surfaces/users/users-data.js.map +1 -1
- package/dist/admin/surfaces/webServices/web-services-data.d.ts +11 -1
- package/dist/admin/surfaces/webServices/web-services-data.d.ts.map +1 -1
- package/dist/admin/surfaces/webServices/web-services-data.js +13 -0
- package/dist/admin/surfaces/webServices/web-services-data.js.map +1 -1
- package/dist/admin/surfaces/webServices/webhooks.d.ts +3 -0
- package/dist/admin/surfaces/webServices/webhooks.d.ts.map +1 -0
- package/dist/admin/surfaces/webServices/webhooks.js +69 -0
- package/dist/admin/surfaces/webServices/webhooks.js.map +1 -0
- package/dist/admin/webhook-manager.d.ts +32 -0
- package/dist/admin/webhook-manager.d.ts.map +1 -0
- package/dist/admin/webhook-manager.js +62 -0
- package/dist/admin/webhook-manager.js.map +1 -0
- package/dist/api/admin-features-routes.d.ts.map +1 -1
- package/dist/api/admin-features-routes.js +30 -0
- package/dist/api/admin-features-routes.js.map +1 -1
- package/dist/api/api-key-routes.d.ts.map +1 -1
- package/dist/api/api-key-routes.js +6 -1
- package/dist/api/api-key-routes.js.map +1 -1
- package/dist/api/auth.d.ts +8 -0
- package/dist/api/auth.d.ts.map +1 -1
- package/dist/api/auth.js +11 -1
- package/dist/api/auth.js.map +1 -1
- package/dist/api/comment-routes.d.ts.map +1 -1
- package/dist/api/comment-routes.js +102 -47
- package/dist/api/comment-routes.js.map +1 -1
- package/dist/api/config-routes.d.ts +10 -2
- package/dist/api/config-routes.d.ts.map +1 -1
- package/dist/api/config-routes.js +46 -25
- package/dist/api/config-routes.js.map +1 -1
- package/dist/api/content-routes.d.ts.map +1 -1
- package/dist/api/content-routes.js +41 -0
- package/dist/api/content-routes.js.map +1 -1
- package/dist/api/content-schemas.d.ts.map +1 -1
- package/dist/api/content-schemas.js +34 -1
- package/dist/api/content-schemas.js.map +1 -1
- package/dist/api/content-type-routes.d.ts.map +1 -1
- package/dist/api/content-type-routes.js +58 -3
- package/dist/api/content-type-routes.js.map +1 -1
- package/dist/api/feed-routes.d.ts +180 -0
- package/dist/api/feed-routes.d.ts.map +1 -1
- package/dist/api/feed-routes.js +10 -2
- package/dist/api/feed-routes.js.map +1 -1
- package/dist/api/form-routes.d.ts +6 -0
- package/dist/api/form-routes.d.ts.map +1 -1
- package/dist/api/form-routes.js +93 -14
- package/dist/api/form-routes.js.map +1 -1
- package/dist/api/graphql/resolvers.d.ts +4 -4
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +12 -1
- package/dist/api/index.js.map +1 -1
- package/dist/api/media-routes.d.ts.map +1 -1
- package/dist/api/media-routes.js +18 -1
- package/dist/api/media-routes.js.map +1 -1
- package/dist/api/webhook-routes.d.ts.map +1 -1
- package/dist/api/webhook-routes.js +19 -2
- package/dist/api/webhook-routes.js.map +1 -1
- package/dist/api/workflow-routes.d.ts.map +1 -1
- package/dist/api/workflow-routes.js +163 -4
- package/dist/api/workflow-routes.js.map +1 -1
- package/dist/auth/roles.d.ts +28 -0
- package/dist/auth/roles.d.ts.map +1 -1
- package/dist/auth/roles.js +49 -0
- package/dist/auth/roles.js.map +1 -1
- package/dist/config/reserved-field-names.d.ts +29 -0
- package/dist/config/reserved-field-names.d.ts.map +1 -0
- package/dist/config/reserved-field-names.js +59 -0
- package/dist/config/reserved-field-names.js.map +1 -0
- package/dist/config/types.d.ts +31 -2
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/db/analytics-queries.d.ts +1 -1
- package/dist/db/api-key-queries.d.ts +7 -2
- package/dist/db/api-key-queries.d.ts.map +1 -1
- package/dist/db/api-key-queries.js +8 -2
- package/dist/db/api-key-queries.js.map +1 -1
- package/dist/db/apply-snapshot.d.ts +58 -0
- package/dist/db/apply-snapshot.d.ts.map +1 -0
- package/dist/db/apply-snapshot.js +142 -0
- package/dist/db/apply-snapshot.js.map +1 -0
- package/dist/db/audit-queries.d.ts +3 -3
- package/dist/db/category-queries.d.ts +3 -3
- package/dist/db/changeset-audit-queries.d.ts +2 -2
- package/dist/db/changeset-queries.d.ts +5 -5
- package/dist/db/changeset-queries.d.ts.map +1 -1
- package/dist/db/changeset-queries.js +24 -7
- package/dist/db/changeset-queries.js.map +1 -1
- package/dist/db/content-queries.d.ts +6 -0
- package/dist/db/content-queries.d.ts.map +1 -1
- package/dist/db/content-queries.js +8 -0
- package/dist/db/content-queries.js.map +1 -1
- package/dist/db/content-type-queries.d.ts +20 -0
- package/dist/db/content-type-queries.d.ts.map +1 -1
- package/dist/db/content-type-queries.js +32 -0
- package/dist/db/content-type-queries.js.map +1 -1
- package/dist/db/dashboard-queries.d.ts.map +1 -1
- package/dist/db/dashboard-queries.js +5 -1
- package/dist/db/dashboard-queries.js.map +1 -1
- package/dist/db/dynamic-schema.d.ts.map +1 -1
- package/dist/db/dynamic-schema.js +2 -0
- package/dist/db/dynamic-schema.js.map +1 -1
- package/dist/db/extension-queries.d.ts +8 -8
- package/dist/db/feed-queries.d.ts +3 -3
- package/dist/db/index.d.ts +3 -0
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +7 -0
- package/dist/db/index.js.map +1 -1
- package/dist/db/media-queries.d.ts +31 -7
- package/dist/db/media-queries.d.ts.map +1 -1
- package/dist/db/media-queries.js +13 -1
- package/dist/db/media-queries.js.map +1 -1
- package/dist/db/membership-dedupe.d.ts +26 -0
- package/dist/db/membership-dedupe.d.ts.map +1 -0
- package/dist/db/membership-dedupe.js +68 -0
- package/dist/db/membership-dedupe.js.map +1 -0
- package/dist/db/revision-queries.d.ts +122 -0
- package/dist/db/revision-queries.d.ts.map +1 -0
- package/dist/db/revision-queries.js +213 -0
- package/dist/db/revision-queries.js.map +1 -0
- package/dist/db/schema-apply.d.ts +8 -0
- package/dist/db/schema-apply.d.ts.map +1 -1
- package/dist/db/schema-apply.js +17 -0
- package/dist/db/schema-apply.js.map +1 -1
- package/dist/db/schema-field-queries.d.ts +2 -0
- package/dist/db/schema-field-queries.d.ts.map +1 -1
- package/dist/db/schema-field-queries.js +4 -0
- package/dist/db/schema-field-queries.js.map +1 -1
- package/dist/db/site-plugin-queries.d.ts +2 -2
- package/dist/db/user-queries.d.ts +12 -0
- package/dist/db/user-queries.d.ts.map +1 -1
- package/dist/db/user-queries.js +18 -4
- package/dist/db/user-queries.js.map +1 -1
- package/dist/db/version-queries.d.ts +37 -0
- package/dist/db/version-queries.d.ts.map +1 -1
- package/dist/db/version-queries.js +36 -0
- package/dist/db/version-queries.js.map +1 -1
- package/dist/db/webhook-queries.d.ts +27 -5
- package/dist/db/webhook-queries.d.ts.map +1 -1
- package/dist/db/webhook-queries.js +17 -0
- package/dist/db/webhook-queries.js.map +1 -1
- package/dist/db/workflow-queries.d.ts +2 -2
- package/dist/experiments/schema.d.ts +1 -1
- package/dist/hooks/index.d.ts +1 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/webhook-retry.d.ts +22 -1
- package/dist/hooks/webhook-retry.d.ts.map +1 -1
- package/dist/hooks/webhook-retry.js +38 -1
- package/dist/hooks/webhook-retry.js.map +1 -1
- package/dist/host/index.d.ts +28 -0
- package/dist/host/index.d.ts.map +1 -1
- package/dist/host/index.js +56 -1
- package/dist/host/index.js.map +1 -1
- package/dist/layout/comments-module.d.ts +18 -0
- package/dist/layout/comments-module.d.ts.map +1 -0
- package/dist/layout/comments-module.js +130 -0
- package/dist/layout/comments-module.js.map +1 -0
- package/dist/layout/feed-hydration.d.ts +75 -0
- package/dist/layout/feed-hydration.d.ts.map +1 -0
- package/dist/layout/feed-hydration.js +158 -0
- package/dist/layout/feed-hydration.js.map +1 -0
- package/dist/layout/index.d.ts +2 -1
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +2 -1
- package/dist/layout/index.js.map +1 -1
- package/dist/layout/module-render-context.d.ts +13 -0
- package/dist/layout/module-render-context.d.ts.map +1 -0
- package/dist/layout/module-render-context.js +15 -0
- package/dist/layout/module-render-context.js.map +1 -0
- package/dist/layout/modules-extended.d.ts.map +1 -1
- package/dist/layout/modules-extended.js +92 -13
- package/dist/layout/modules-extended.js.map +1 -1
- package/dist/layout/registry.d.ts.map +1 -1
- package/dist/layout/registry.js +22 -6
- package/dist/layout/registry.js.map +1 -1
- package/dist/layout/renderer.d.ts +17 -1
- package/dist/layout/renderer.d.ts.map +1 -1
- package/dist/layout/renderer.js +11 -4
- package/dist/layout/renderer.js.map +1 -1
- package/dist/nav/index.d.ts +1 -0
- package/dist/nav/index.d.ts.map +1 -1
- package/dist/nav/index.js +4 -0
- package/dist/nav/index.js.map +1 -1
- package/dist/nav/url-resolver.d.ts +10 -2
- package/dist/nav/url-resolver.d.ts.map +1 -1
- package/dist/nav/url-resolver.js +17 -3
- package/dist/nav/url-resolver.js.map +1 -1
- package/dist/schema/base.d.ts +37 -1
- package/dist/schema/base.d.ts.map +1 -1
- package/dist/schema/base.js +20 -2
- package/dist/schema/base.js.map +1 -1
- package/dist/schema/generate.d.ts +8 -0
- package/dist/schema/generate.d.ts.map +1 -1
- package/dist/schema/generate.js +7 -4
- package/dist/schema/generate.js.map +1 -1
- package/dist/schema/mapper.d.ts.map +1 -1
- package/dist/schema/mapper.js +2 -0
- package/dist/schema/mapper.js.map +1 -1
- package/dist/schema/mysql-tables.d.ts +34 -0
- package/dist/schema/mysql-tables.d.ts.map +1 -1
- package/dist/schema/mysql-tables.js +14 -2
- package/dist/schema/mysql-tables.js.map +1 -1
- package/dist/server.d.ts +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +1 -0
- package/dist/server.js.map +1 -1
- package/dist/site/styles.css +384 -0
- package/package.json +2 -1
|
@@ -2,64 +2,60 @@
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
3
|
/**
|
|
4
4
|
* `contentTypes.designer` surface — the visual content-type field designer,
|
|
5
|
-
* ported verbatim from
|
|
6
|
-
* (0.2.0 T12).
|
|
7
|
-
*
|
|
8
|
-
* `
|
|
9
|
-
* `useAdminContext().
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
5
|
+
* originally ported verbatim from
|
|
6
|
+
* `apps/reference/app/admin/content-types/[type]/page.tsx` (0.2.0 T12).
|
|
7
|
+
* Wiring substitutions (plan §1.3): `useParams().type` → `props.params.type`;
|
|
8
|
+
* `adminFetch` → `useAdminContext().fetch`; `useRouter().push` →
|
|
9
|
+
* `useAdminContext().navigate`; `LoadingState`/`ErrorState` are the canonical
|
|
10
|
+
* core primitives. The field add/edit/delete/reorder CRUD and the "Apply
|
|
11
|
+
* Schema Changes" flow are preserved. `AdminShellWrapper` is gone — chrome is
|
|
12
|
+
* rendered once by `KywiAdminApp` (T14).
|
|
13
|
+
*
|
|
14
|
+
* UAT 0.2.1 fixes (kywi-cms#10, #11, #12): the local `PreviewField` helper
|
|
15
|
+
* (a hand-rolled approximation of each field widget) is replaced with the
|
|
16
|
+
* real `FieldRenderer` so the preview always matches the instance editor
|
|
17
|
+
* exactly, including the base-type built-ins (Title/Slug/Body/Featured
|
|
18
|
+
* Image) it previously omitted; field names that collide with a built-in are
|
|
19
|
+
* now rejected client- and server-side; `relationship` fields get a target
|
|
20
|
+
* "Related type" picker; `url`/`email` field types were added; and a type's
|
|
21
|
+
* Title requirement is now toggleable ("Type settings").
|
|
14
22
|
*/
|
|
15
23
|
import { useCallback, useEffect, useState } from 'react';
|
|
16
24
|
import { useAdminContext } from '../../context.js';
|
|
17
25
|
import { LoadingState, ErrorState } from '../../primitives.js';
|
|
26
|
+
import { FieldRenderer } from '../../field-components.js';
|
|
27
|
+
import { isReservedFieldName } from '../../../config/reserved-field-names.js';
|
|
18
28
|
const FIELD_TYPES = [
|
|
19
29
|
'text', 'richText', 'textarea', 'select', 'multiSelect',
|
|
20
30
|
'boolean', 'number', 'json', 'date', 'relationship', 'image', 'file', 'color', 'slug', 'group',
|
|
31
|
+
'url', 'email',
|
|
21
32
|
];
|
|
22
|
-
const STRING_LIKE = new Set(['text', 'richText', 'textarea', 'slug', 'color', 'select']);
|
|
33
|
+
const STRING_LIKE = new Set(['text', 'richText', 'textarea', 'slug', 'color', 'select', 'url', 'email']);
|
|
23
34
|
const OPTION_TYPES = new Set(['select', 'multiSelect']);
|
|
24
35
|
const emptyForm = {
|
|
25
36
|
name: '', label: '', type: 'text', options: '',
|
|
26
37
|
required: false,
|
|
27
38
|
min: '', max: '', minLength: '', maxLength: '', pattern: '',
|
|
39
|
+
relatedType: '',
|
|
28
40
|
};
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
case 'multiSelect':
|
|
48
|
-
control = (_jsx("div", { style: { display: 'flex', gap: '0.4rem', flexWrap: 'wrap' }, children: (field.options ?? []).map((o) => _jsx("span", { className: "kywi-tag", children: o }, o)) }));
|
|
49
|
-
break;
|
|
50
|
-
case 'richText':
|
|
51
|
-
case 'textarea':
|
|
52
|
-
case 'json':
|
|
53
|
-
case 'group':
|
|
54
|
-
control = _jsx("textarea", { rows: 2, ...common });
|
|
55
|
-
break;
|
|
56
|
-
case 'color':
|
|
57
|
-
control = _jsx("input", { type: "text", placeholder: "#000000", ...common });
|
|
58
|
-
break;
|
|
59
|
-
default:
|
|
60
|
-
control = _jsx("input", { type: "text", ...common });
|
|
61
|
-
}
|
|
62
|
-
return (_jsxs("div", { className: "kywi-form-field", children: [_jsxs("label", { className: "kywi-label", htmlFor: id, children: [field.label, field.required && _jsx("span", { style: { color: '#dc2626' }, children: " *" })] }), control] }));
|
|
41
|
+
/** Synthetic FieldDefinition for a built-in (Body / Featured Image) so the
|
|
42
|
+
* preview panel can render it through the exact same `FieldRenderer` the real
|
|
43
|
+
* instance editor uses (kywi-cms#11) instead of a hand-rolled approximation. */
|
|
44
|
+
const BODY_PREVIEW_FIELD = { name: 'body', type: 'richText', label: 'Body' };
|
|
45
|
+
const FEATURED_IMAGE_PREVIEW_FIELD = { name: 'featuredImageId', type: 'image', label: 'Featured Image' };
|
|
46
|
+
/** Map a designer `FieldRow` to the `FieldDefinition` shape `FieldRenderer`
|
|
47
|
+
* expects, so the preview renders the exact widget the real editor will
|
|
48
|
+
* (kywi-cms#11) — including a real media picker for `image`, not a textbox. */
|
|
49
|
+
function toFieldDefinition(f) {
|
|
50
|
+
return {
|
|
51
|
+
name: f.name,
|
|
52
|
+
type: f.type,
|
|
53
|
+
label: f.label,
|
|
54
|
+
...(f.required !== undefined && { required: f.required }),
|
|
55
|
+
...(f.options !== undefined && { options: f.options }),
|
|
56
|
+
...(f.validation !== undefined && { validation: f.validation }),
|
|
57
|
+
...(f.relatedType !== undefined && { relatedType: f.relatedType }),
|
|
58
|
+
};
|
|
63
59
|
}
|
|
64
60
|
// ── Surface ──────────────────────────────────────────────────────────────────
|
|
65
61
|
export default function ContentTypesDesignerSurface({ params }) {
|
|
@@ -67,6 +63,9 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
67
63
|
const typeName = params.type ?? '';
|
|
68
64
|
const [meta, setMeta] = useState(null);
|
|
69
65
|
const [fields, setFields] = useState([]);
|
|
66
|
+
// Every content type (config + admin) — feeds the relationship field's
|
|
67
|
+
// "Related type" picker (kywi-cms#12).
|
|
68
|
+
const [availableTypes, setAvailableTypes] = useState([]);
|
|
70
69
|
const [loading, setLoading] = useState(true);
|
|
71
70
|
const [error, setError] = useState(null);
|
|
72
71
|
const [form, setForm] = useState(emptyForm);
|
|
@@ -88,6 +87,7 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
88
87
|
if (tRes.ok) {
|
|
89
88
|
const list = ((await tRes.json()).data ?? []);
|
|
90
89
|
setMeta(list.find((t) => t.name === typeName) ?? null);
|
|
90
|
+
setAvailableTypes(list);
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
catch (e) {
|
|
@@ -117,6 +117,7 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
117
117
|
minLength: field.validation?.minLength?.toString() ?? '',
|
|
118
118
|
maxLength: field.validation?.maxLength?.toString() ?? '',
|
|
119
119
|
pattern: field.validation?.pattern ?? '',
|
|
120
|
+
relatedType: field.relatedType ?? '',
|
|
120
121
|
});
|
|
121
122
|
}
|
|
122
123
|
function buildPayload() {
|
|
@@ -129,6 +130,9 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
129
130
|
if (OPTION_TYPES.has(form.type) && form.options.trim()) {
|
|
130
131
|
payload.options = form.options.split(',').map((s) => s.trim()).filter(Boolean);
|
|
131
132
|
}
|
|
133
|
+
if (form.type === 'relationship' && form.relatedType.trim()) {
|
|
134
|
+
payload.relatedType = form.relatedType.trim();
|
|
135
|
+
}
|
|
132
136
|
const v = {};
|
|
133
137
|
if (form.type === 'number') {
|
|
134
138
|
if (form.min !== '')
|
|
@@ -150,8 +154,19 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
150
154
|
}
|
|
151
155
|
async function handleSubmitField(e) {
|
|
152
156
|
e.preventDefault();
|
|
153
|
-
setSaving(true);
|
|
154
157
|
setFormError(null);
|
|
158
|
+
// Client-side collision guard (kywi-cms#10): every base-`content` type
|
|
159
|
+
// ships built-in fields (Title/Slug/Body/Featured Image, plus every
|
|
160
|
+
// Publishing/Navigation/SEO/etc. control) that live in the same flat
|
|
161
|
+
// values object as custom fields in the real editor — a same-named custom
|
|
162
|
+
// field would silently share (and corrupt) that value. Renaming isn't
|
|
163
|
+
// supported (the Name input is disabled while editing), so this only
|
|
164
|
+
// needs to guard field creation.
|
|
165
|
+
if (!editing && isReservedFieldName(form.name)) {
|
|
166
|
+
setFormError(`"${form.name}" is a built-in field name (Title, Slug, Body, Featured Image, etc.) and can't be reused for a custom field.`);
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
setSaving(true);
|
|
155
170
|
try {
|
|
156
171
|
const payload = buildPayload();
|
|
157
172
|
const url = editing
|
|
@@ -172,6 +187,16 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
172
187
|
setSaving(false);
|
|
173
188
|
}
|
|
174
189
|
}
|
|
190
|
+
async function handleToggleTitleRequired(next) {
|
|
191
|
+
if (!meta || meta.source !== 'admin')
|
|
192
|
+
return;
|
|
193
|
+
const res = await adminFetch(`/api/v1/content-types/${typeName}`, {
|
|
194
|
+
method: 'PUT',
|
|
195
|
+
body: JSON.stringify({ titleRequired: next }),
|
|
196
|
+
});
|
|
197
|
+
if (res.ok)
|
|
198
|
+
await load();
|
|
199
|
+
}
|
|
175
200
|
async function handleDelete(name) {
|
|
176
201
|
if (!confirm(`Delete field "${name}"? The database column is left in place until removed manually.`))
|
|
177
202
|
return;
|
|
@@ -239,7 +264,9 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
239
264
|
}
|
|
240
265
|
const adminFields = fields.filter((f) => f.source === 'admin');
|
|
241
266
|
const stringLike = STRING_LIKE.has(form.type);
|
|
242
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "kywi-admin-page-header", style: { display: 'flex', alignItems: 'center', gap: '1rem', flexWrap: 'wrap' }, children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-ghost kywi-btn-sm", onClick: () => navigate('/admin/content-types'), children: "\u2190 Content Types" }), _jsxs("h1", { style: { margin: 0 }, children: [meta?.label ?? typeName, meta && (_jsx("span", { className: "kywi-admin-status-badge", style: { marginLeft: '0.6rem', fontSize: '0.7rem' }, "data-source": meta.source, children: meta.source }))] }), meta?.source === 'admin' && (_jsx("button", { type: "button", className: "kywi-btn kywi-btn-danger kywi-btn-sm", style: { marginLeft: 'auto' }, onClick: handleDeleteType, children: "Delete type" }))] }), loading ? (_jsx(LoadingState, { label: "Loading designer\u2026" })) : error ? (_jsx(ErrorState, { message: error, onRetry: load })) : (_jsxs("div", { className: "kywi-designer-grid", style: { display: 'grid', gridTemplateColumns: 'minmax(0, 1.3fr) minmax(0, 1fr)', gap: 'var(--kywi-space-6, 1.5rem)', alignItems: 'start' }, children: [_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 'var(--kywi-space-5, 1.25rem)' }, children: [_jsxs("section", { className: "kywi-admin-settings-section", "aria-label": "
|
|
267
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "kywi-admin-page-header", style: { display: 'flex', alignItems: 'center', gap: '1rem', flexWrap: 'wrap' }, children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-ghost kywi-btn-sm", onClick: () => navigate('/admin/content-types'), children: "\u2190 Content Types" }), _jsxs("h1", { style: { margin: 0 }, children: [meta?.label ?? typeName, meta && (_jsx("span", { className: "kywi-admin-status-badge", style: { marginLeft: '0.6rem', fontSize: '0.7rem' }, "data-source": meta.source, children: meta.source }))] }), meta?.source === 'admin' && (_jsx("button", { type: "button", className: "kywi-btn kywi-btn-danger kywi-btn-sm", style: { marginLeft: 'auto' }, onClick: handleDeleteType, children: "Delete type" }))] }), loading ? (_jsx(LoadingState, { label: "Loading designer\u2026" })) : error ? (_jsx(ErrorState, { message: error, onRetry: load })) : (_jsxs("div", { className: "kywi-designer-grid", style: { display: 'grid', gridTemplateColumns: 'minmax(0, 1.3fr) minmax(0, 1fr)', gap: 'var(--kywi-space-6, 1.5rem)', alignItems: 'start' }, children: [_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 'var(--kywi-space-5, 1.25rem)' }, children: [_jsxs("section", { className: "kywi-admin-settings-section", "aria-label": "Type settings", children: [_jsx("h2", { className: "kywi-admin-settings-section-title", children: "Type settings" }), _jsxs("label", { className: "kywi-checkbox-label", style: { display: 'flex', gap: '0.5rem', alignItems: 'center' }, children: [_jsx("input", { type: "checkbox", className: "kywi-checkbox", checked: meta?.titleRequired ?? true, disabled: meta?.source !== 'admin', onChange: (e) => handleToggleTitleRequired(e.target.checked) }), "Require Title"] }), _jsx("p", { className: "kywi-field-hint", style: { marginTop: '0.25rem' }, children: meta?.source === 'admin'
|
|
268
|
+
? 'Uncheck for models with no natural title (e.g. a testimonial or FAQ) — Title becomes optional in the instance editor.'
|
|
269
|
+
: 'Locked — defined in kywi.config.ts.' })] }), _jsxs("section", { className: "kywi-admin-settings-section", "aria-label": "Fields", children: [_jsx("h2", { className: "kywi-admin-settings-section-title", children: "Fields" }), _jsxs("p", { className: "kywi-field-hint", style: { marginTop: '-0.25rem' }, children: [_jsx("strong", { children: "config" }), " fields are locked (defined in ", _jsx("code", { children: "kywi.config.ts" }), ").", _jsx("strong", { children: " admin" }), " fields are editable and require \u201CApply Schema Changes\u201D to alter the database."] }), fields.length === 0 ? (_jsx("div", { className: "kywi-admin-empty-state", children: "No fields yet. Add one below." })) : (_jsx("div", { className: "kywi-table-scroll", style: { overflowX: 'auto' }, children: _jsxs("table", { className: "kywi-admin-table", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { style: { width: 64 }, children: "Order" }), _jsx("th", { children: "Name" }), _jsx("th", { children: "Type" }), _jsx("th", { children: "Rules" }), _jsx("th", { children: "Source" }), _jsx("th", { style: { textAlign: 'right' }, children: "Actions" })] }) }), _jsx("tbody", { children: fields.map((f) => {
|
|
243
270
|
const rules = [];
|
|
244
271
|
if (f.required)
|
|
245
272
|
rules.push('required');
|
|
@@ -253,8 +280,12 @@ export default function ContentTypesDesignerSurface({ params }) {
|
|
|
253
280
|
rules.push(`≤${f.validation.maxLength} ch`);
|
|
254
281
|
if (f.validation?.pattern)
|
|
255
282
|
rules.push('pattern');
|
|
283
|
+
if (f.type === 'relationship' && f.relatedType)
|
|
284
|
+
rules.push(`→ ${f.relatedType}`);
|
|
256
285
|
const adminIdx = adminFields.findIndex((a) => a.name === f.name);
|
|
257
286
|
return (_jsxs("tr", { children: [_jsx("td", { children: f.source === 'admin' && (_jsxs("span", { style: { display: 'inline-flex', gap: 2 }, children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-ghost kywi-btn-xs", "aria-label": `Move ${f.name} up`, disabled: adminIdx <= 0, onClick: () => handleReorder(f.name, -1), children: "\u2191" }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-ghost kywi-btn-xs", "aria-label": `Move ${f.name} down`, disabled: adminIdx >= adminFields.length - 1, onClick: () => handleReorder(f.name, 1), children: "\u2193" })] })) }), _jsxs("td", { children: [_jsx("code", { children: f.name }), _jsx("div", { style: { fontSize: '0.75rem', color: 'var(--kywi-text-muted)' }, children: f.label })] }), _jsx("td", { children: f.type }), _jsx("td", { style: { fontSize: '0.78rem', color: 'var(--kywi-text-muted)' }, children: rules.join(', ') || '—' }), _jsx("td", { children: _jsx("span", { className: "kywi-admin-status-badge", "data-source": f.source, children: f.source }) }), _jsx("td", { style: { textAlign: 'right', whiteSpace: 'nowrap' }, children: f.source === 'admin' ? (_jsxs(_Fragment, { children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-ghost kywi-btn-xs", onClick: () => startEdit(f), children: "Edit" }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-danger kywi-btn-xs", onClick: () => handleDelete(f.name), children: "Delete" })] })) : (_jsx("span", { title: "Locked \u2014 defined in kywi.config.ts", style: { color: 'var(--kywi-text-muted)' }, children: "\uD83D\uDD12" })) })] }, f.name));
|
|
258
|
-
}) })] }) }))] }), _jsxs("section", { className: "kywi-admin-settings-section", "aria-label": editing ? 'Edit field' : 'Add field', children: [_jsx("h2", { className: "kywi-admin-settings-section-title", children: editing ? `Edit field: ${editing}` : 'Add field' }), formError && _jsx(ErrorState, { message: formError }), _jsxs("form", { onSubmit: handleSubmitField, children: [_jsxs("div", { style: { display: 'grid', gridTemplateColumns: 'repeat(auto-fit, minmax(160px, 1fr))', gap: '0.75rem' }, children: [_jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "field-name", children: "Name (camelCase)" }), _jsx("input", { id: "field-name", className: "kywi-input", value: form.name, required: true, disabled: !!editing, pattern: "^[a-zA-Z][a-zA-Z0-9]*$", title: "camelCase alphanumeric, starting with a letter", onChange: (e) => setForm((p) => ({ ...p, name: e.target.value })) })] }), _jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "field-label", children: "Label" }), _jsx("input", { id: "field-label", className: "kywi-input", value: form.label, required: true, onChange: (e) => setForm((p) => ({ ...p, label: e.target.value })) })] }), _jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "field-type", children: "Type" }), _jsx("select", { id: "field-type", className: "kywi-select", value: form.type, onChange: (e) => setForm((p) => ({ ...p, type: e.target.value })), children: FIELD_TYPES.map((t) => _jsx("option", { value: t, children: t }, t)) })] })] }), OPTION_TYPES.has(form.type) && (_jsxs("div", { className: "kywi-form-field", style: { marginTop: '0.75rem' }, children: [_jsx("label", { className: "kywi-label", htmlFor: "field-options", children: "Options (comma-separated)" }), _jsx("input", { id: "field-options", className: "kywi-input", value: form.options, placeholder: "one, two, three", onChange: (e) => setForm((p) => ({ ...p, options: e.target.value })) })] })),
|
|
287
|
+
}) })] }) }))] }), _jsxs("section", { className: "kywi-admin-settings-section", "aria-label": editing ? 'Edit field' : 'Add field', children: [_jsx("h2", { className: "kywi-admin-settings-section-title", children: editing ? `Edit field: ${editing}` : 'Add field' }), formError && _jsx(ErrorState, { message: formError }), _jsxs("form", { onSubmit: handleSubmitField, children: [_jsxs("div", { style: { display: 'grid', gridTemplateColumns: 'repeat(auto-fit, minmax(160px, 1fr))', gap: '0.75rem' }, children: [_jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "field-name", children: "Name (camelCase)" }), _jsx("input", { id: "field-name", className: "kywi-input", value: form.name, required: true, disabled: !!editing, pattern: "^[a-zA-Z][a-zA-Z0-9]*$", title: "camelCase alphanumeric, starting with a letter", onChange: (e) => setForm((p) => ({ ...p, name: e.target.value })) })] }), _jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "field-label", children: "Label" }), _jsx("input", { id: "field-label", className: "kywi-input", value: form.label, required: true, onChange: (e) => setForm((p) => ({ ...p, label: e.target.value })) })] }), _jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "field-type", children: "Type" }), _jsx("select", { id: "field-type", className: "kywi-select", value: form.type, onChange: (e) => setForm((p) => ({ ...p, type: e.target.value })), children: FIELD_TYPES.map((t) => _jsx("option", { value: t, children: t }, t)) })] })] }), OPTION_TYPES.has(form.type) && (_jsxs("div", { className: "kywi-form-field", style: { marginTop: '0.75rem' }, children: [_jsx("label", { className: "kywi-label", htmlFor: "field-options", children: "Options (comma-separated)" }), _jsx("input", { id: "field-options", className: "kywi-input", value: form.options, placeholder: "one, two, three", onChange: (e) => setForm((p) => ({ ...p, options: e.target.value })) })] })), form.type === 'relationship' && (_jsxs("div", { className: "kywi-form-field", style: { marginTop: '0.75rem' }, children: [_jsx("label", { className: "kywi-label", htmlFor: "field-related-type", children: "Related type" }), _jsxs("select", { id: "field-related-type", className: "kywi-select", value: form.relatedType, onChange: (e) => setForm((p) => ({ ...p, relatedType: e.target.value })), children: [_jsx("option", { value: "", children: "-- Select a content type --" }), _jsx("option", { value: "user", children: "User" }), availableTypes
|
|
288
|
+
.filter((t) => t.name !== typeName)
|
|
289
|
+
.map((t) => _jsxs("option", { value: t.name, children: [t.label, " (", t.name, ")"] }, t.name))] }), _jsx("p", { className: "kywi-field-hint", children: "What this field points at \u2014 another content type, or a user (e.g. an Author field)." })] })), _jsxs("fieldset", { style: { marginTop: '0.75rem', border: '1px solid var(--kywi-border)', borderRadius: 'var(--kywi-radius-md, 8px)', padding: '0.75rem' }, children: [_jsx("legend", { style: { fontSize: '0.78rem', color: 'var(--kywi-text-muted)', padding: '0 0.4rem' }, children: "Validation rules" }), _jsxs("label", { className: "kywi-checkbox-label", style: { display: 'flex', gap: '0.5rem', alignItems: 'center' }, children: [_jsx("input", { type: "checkbox", className: "kywi-checkbox", checked: form.required, onChange: (e) => setForm((p) => ({ ...p, required: e.target.checked })) }), "Required"] }), form.type === 'number' && (_jsxs("div", { style: { display: 'flex', gap: '0.75rem', marginTop: '0.5rem' }, children: [_jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "v-min", children: "Min" }), _jsx("input", { id: "v-min", className: "kywi-input", type: "number", value: form.min, onChange: (e) => setForm((p) => ({ ...p, min: e.target.value })) })] }), _jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "v-max", children: "Max" }), _jsx("input", { id: "v-max", className: "kywi-input", type: "number", value: form.max, onChange: (e) => setForm((p) => ({ ...p, max: e.target.value })) })] })] })), stringLike && (_jsxs("div", { style: { display: 'flex', gap: '0.75rem', marginTop: '0.5rem', flexWrap: 'wrap' }, children: [_jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "v-minlen", children: "Min length" }), _jsx("input", { id: "v-minlen", className: "kywi-input kywi-input-narrow", type: "number", value: form.minLength, onChange: (e) => setForm((p) => ({ ...p, minLength: e.target.value })) })] }), _jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "v-maxlen", children: "Max length" }), _jsx("input", { id: "v-maxlen", className: "kywi-input kywi-input-narrow", type: "number", value: form.maxLength, onChange: (e) => setForm((p) => ({ ...p, maxLength: e.target.value })) })] }), _jsxs("div", { className: "kywi-form-field", style: { flex: 1, minWidth: 160 }, children: [_jsx("label", { className: "kywi-label", htmlFor: "v-pattern", children: "Pattern (regex)" }), _jsx("input", { id: "v-pattern", className: "kywi-input", value: form.pattern, placeholder: "^[A-Z]{3}$", onChange: (e) => setForm((p) => ({ ...p, pattern: e.target.value })) })] })] }))] }), _jsxs("div", { className: "kywi-form-actions", style: { marginTop: '0.75rem' }, children: [_jsx("button", { type: "submit", className: "kywi-btn kywi-btn-primary", disabled: saving, children: saving ? 'Saving…' : editing ? 'Save field' : 'Add field' }), editing && (_jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary", onClick: resetForm, children: "Cancel" }))] })] })] }), _jsxs("section", { className: "kywi-admin-settings-section", "aria-label": "Apply schema changes", children: [_jsx("h2", { className: "kywi-admin-settings-section-title", children: "Apply schema changes" }), _jsxs("div", { className: "kywi-admin-callout kywi-admin-callout-info", children: ["\u201CApply Schema Changes\u201D runs ", _jsx("code", { children: "ALTER TABLE" }), " (and ", _jsx("code", { children: "CREATE TABLE" }), " for a new admin type) to add columns for admin-defined fields. Columns are only ever ", _jsx("strong", { children: "added" }), " \u2014 deleting a field never drops its column. Config fields are managed by ", _jsx("code", { children: "migrate:push" }), "."] }), _jsxs("div", { style: { display: 'flex', gap: '1rem', alignItems: 'center', flexWrap: 'wrap', marginTop: '0.75rem' }, children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-primary", onClick: handleApply, children: "Apply Schema Changes" }), applyStatus && (_jsx("div", { className: `kywi-admin-callout kywi-admin-callout-${applyStatus.kind}`, style: { margin: 0, padding: '0.4rem 0.75rem' }, children: applyStatus.text }))] })] })] }), _jsxs("section", { className: "kywi-admin-settings-section", "aria-label": "Editor preview", style: { position: 'sticky', top: 'var(--kywi-space-4, 1rem)' }, children: [_jsx("h2", { className: "kywi-admin-settings-section-title", children: "Editor preview" }), _jsxs("p", { className: "kywi-field-hint", style: { marginTop: '-0.25rem' }, children: ["How the content editor form renders for a ", _jsx("strong", { children: meta?.label ?? typeName }), " item."] }), _jsxs("div", { style: { border: '1px solid var(--kywi-border)', borderRadius: 'var(--kywi-radius-md, 8px)', padding: '1rem', background: 'var(--kywi-surface-2)' }, children: [_jsxs("div", { className: "kywi-form-field", children: [_jsxs("label", { className: "kywi-label", htmlFor: "preview-title", children: ["Title", (meta?.titleRequired ?? true) && _jsx("span", { style: { color: '#dc2626' }, children: " *" })] }), _jsx("input", { id: "preview-title", className: "kywi-input", disabled: true, placeholder: "Title" })] }), _jsxs("div", { className: "kywi-form-field", children: [_jsx("label", { className: "kywi-label", htmlFor: "preview-slug", children: "Slug" }), _jsx("input", { id: "preview-slug", className: "kywi-input", disabled: true, placeholder: "Auto-generated from title if empty" })] }), (meta?.baseType ?? 'content') === 'content' && (_jsx(FieldRenderer, { field: BODY_PREVIEW_FIELD, value: undefined, onChange: () => { } })), _jsx(FieldRenderer, { field: FEATURED_IMAGE_PREVIEW_FIELD, value: undefined, onChange: () => { } }), fields.length === 0 ? (_jsx("p", { className: "kywi-field-hint", children: "No custom fields \u2014 add fields to preview them here." })) : (fields.map((f) => (_jsx(FieldRenderer, { field: toFieldDefinition(f), value: undefined, onChange: () => { } }, f.name))))] })] })] }))] }));
|
|
259
290
|
}
|
|
260
291
|
//# sourceMappingURL=content-types-designer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-types-designer.js","sourceRoot":"","sources":["../../../../src/admin/surfaces/contentTypes/content-types-designer.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"content-types-designer.js","sourceRoot":"","sources":["../../../../src/admin/surfaces/contentTypes/content-types-designer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed-editor.d.ts","sourceRoot":"","sources":["../../../../src/admin/surfaces/feeds/feed-editor.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAOL,KAAK,OAAO,EAEb,MAAM,iBAAiB,CAAA;AAqBxB,UAAU,eAAe;IACvB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"feed-editor.d.ts","sourceRoot":"","sources":["../../../../src/admin/surfaces/feeds/feed-editor.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAOL,KAAK,OAAO,EAEb,MAAM,iBAAiB,CAAA;AAqBxB,UAAU,eAAe;IACvB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,EAAE,eAAe,2CAsMnD"}
|
|
@@ -69,11 +69,28 @@ export function FeedEditor({ feed }) {
|
|
|
69
69
|
setPreviewing(false);
|
|
70
70
|
}
|
|
71
71
|
}, []);
|
|
72
|
-
// Preview an already-saved feed's query on first load.
|
|
72
|
+
// Preview an already-saved feed's query on first load. kywi-cms#26: a feed
|
|
73
|
+
// saved before the content-type <select> fix (or otherwise left with a
|
|
74
|
+
// reserved/renamed type) can have an empty or orphaned `contentType` on
|
|
75
|
+
// disk — auto-running that query verbatim would show a blank preview
|
|
76
|
+
// forever, on every reopen, with no way for the user to tell why. Wait for
|
|
77
|
+
// the real content-type list to load, then self-heal: if the stored
|
|
78
|
+
// contentType isn't one of them, substitute the first real option (the same
|
|
79
|
+
// fallback the contentType <select> itself resolves to) before previewing,
|
|
80
|
+
// and adopt the healed query as the editor's own `query` state so a plain
|
|
81
|
+
// "Save changes" — without touching the builder — persists the fix too.
|
|
73
82
|
useEffect(() => {
|
|
74
|
-
if (feed?.query)
|
|
75
|
-
|
|
76
|
-
|
|
83
|
+
if (!feed?.query || contentTypes.length === 0)
|
|
84
|
+
return;
|
|
85
|
+
const storedType = feed.query.contentType;
|
|
86
|
+
const healedType = contentTypes.some(ct => ct.name === storedType)
|
|
87
|
+
? storedType
|
|
88
|
+
: contentTypes[0].name;
|
|
89
|
+
const healedQuery = healedType === storedType ? feed.query : { ...feed.query, contentType: healedType };
|
|
90
|
+
if (healedQuery !== feed.query)
|
|
91
|
+
setQuery(healedQuery);
|
|
92
|
+
void runPreview(healedQuery);
|
|
93
|
+
}, [feed, contentTypes, runPreview]);
|
|
77
94
|
// FeedBuilder emits the current query via its "Apply query" button — apply + preview.
|
|
78
95
|
const handleQueryApply = useCallback((q) => {
|
|
79
96
|
setQuery(q);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed-editor.js","sourceRoot":"","sources":["../../../../src/admin/surfaces/feeds/feed-editor.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"feed-editor.js","sourceRoot":"","sources":["../../../../src/admin/surfaces/feeds/feed-editor.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-editor-client.d.ts","sourceRoot":"","sources":["../../../../src/admin/surfaces/layouts/layout-editor-client.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"layout-editor-client.d.ts","sourceRoot":"","sources":["../../../../src/admin/surfaces/layouts/layout-editor-client.tsx"],"names":[],"mappings":"AA2BA,OAAO,EAA4C,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE5F,UAAU,uBAAuB;IAC/B,6DAA6D;IAC7D,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAAE,uBAAuB,2CAkHrE"}
|
|
@@ -24,7 +24,8 @@ import { createModuleRegistry } from '../../../layout/registry.js';
|
|
|
24
24
|
import { BUILT_IN_MODULE_COMPONENTS } from '../../../layout/modules.js';
|
|
25
25
|
import { createLayout, updateLayout, EMPTY_LAYOUT } from './layouts-data.js';
|
|
26
26
|
export function LayoutEditorClient({ layout }) {
|
|
27
|
-
const { fetch: adminFetch, navigate } = useAdminContext();
|
|
27
|
+
const { fetch: adminFetch, navigate, runtime, moduleComponents } = useAdminContext();
|
|
28
|
+
const hostModules = runtime.modules;
|
|
28
29
|
const isEdit = layout !== undefined;
|
|
29
30
|
const [name, setName] = useState(layout?.name ?? '');
|
|
30
31
|
const [category, setCategory] = useState(layout?.category ?? 'general');
|
|
@@ -48,8 +49,10 @@ export function LayoutEditorClient({ layout }) {
|
|
|
48
49
|
.catch(() => { });
|
|
49
50
|
return () => { cancelled = true; };
|
|
50
51
|
}, [adminFetch]);
|
|
51
|
-
// Registry + components
|
|
52
|
-
|
|
52
|
+
// Registry + components merge host-registered custom modules (kywi-cms#48) so
|
|
53
|
+
// the standalone Layouts editor palette matches the content editor's.
|
|
54
|
+
const moduleRegistry = useMemo(() => createModuleRegistry(hostModules ?? []), [hostModules]);
|
|
55
|
+
const layoutModuleComponents = useMemo(() => (moduleComponents ? { ...BUILT_IN_MODULE_COMPONENTS, ...moduleComponents } : BUILT_IN_MODULE_COMPONENTS), [moduleComponents]);
|
|
53
56
|
const initialLayout = useMemo(() => layout?.definition ?? EMPTY_LAYOUT, [layout]);
|
|
54
57
|
const persist = useCallback(async (doc) => {
|
|
55
58
|
setError(null);
|
|
@@ -72,6 +75,6 @@ export function LayoutEditorClient({ layout }) {
|
|
|
72
75
|
setSaving(false);
|
|
73
76
|
}
|
|
74
77
|
}, [name, category, isEdit, layout, navigate, adminFetch]);
|
|
75
|
-
return (_jsxs("div", { className: "kywi-layout-editor-page", children: [_jsxs("div", { className: "kywi-admin-page-header", children: [_jsxs("div", { children: [_jsx("h1", { children: isEdit ? `Edit layout: ${layout.name}` : 'New layout' }), _jsxs("p", { className: "kywi-text-muted", children: ["Build a reusable layout, then click ", _jsx("strong", { children: "Save" }), " in the editor toolbar to persist it."] })] }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary", onClick: () => navigate('/admin/layouts'), children: "Back to layouts" })] }), error && _jsx(ErrorState, { message: error }), saving && _jsx("p", { className: "kywi-text-muted", role: "status", children: "Saving\u2026" }), _jsxs("div", { className: "kywi-layout-editor-meta", children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "layout-name", className: "kywi-field-label", children: "Layout name" }), _jsx("input", { id: "layout-name", type: "text", className: "kywi-input", value: name, onChange: e => setName(e.target.value), placeholder: "Landing hero + features" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "layout-category", className: "kywi-field-label", children: "Category" }), _jsx("input", { id: "layout-category", type: "text", className: "kywi-input", value: category, onChange: e => setCategory(e.target.value), placeholder: "general" })] })] }), _jsx("div", { className: "kywi-layout-editor-host", children: _jsx(LayoutEditor, { initialLayout: initialLayout, contentId: layout?.id ?? 'new', contentType: "layout", moduleRegistry: moduleRegistry, moduleComponents:
|
|
78
|
+
return (_jsxs("div", { className: "kywi-layout-editor-page", children: [_jsxs("div", { className: "kywi-admin-page-header", children: [_jsxs("div", { children: [_jsx("h1", { children: isEdit ? `Edit layout: ${layout.name}` : 'New layout' }), _jsxs("p", { className: "kywi-text-muted", children: ["Build a reusable layout, then click ", _jsx("strong", { children: "Save" }), " in the editor toolbar to persist it."] })] }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary", onClick: () => navigate('/admin/layouts'), children: "Back to layouts" })] }), error && _jsx(ErrorState, { message: error }), saving && _jsx("p", { className: "kywi-text-muted", role: "status", children: "Saving\u2026" }), _jsxs("div", { className: "kywi-layout-editor-meta", children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "layout-name", className: "kywi-field-label", children: "Layout name" }), _jsx("input", { id: "layout-name", type: "text", className: "kywi-input", value: name, onChange: e => setName(e.target.value), placeholder: "Landing hero + features" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "layout-category", className: "kywi-field-label", children: "Category" }), _jsx("input", { id: "layout-category", type: "text", className: "kywi-input", value: category, onChange: e => setCategory(e.target.value), placeholder: "general" })] })] }), _jsx("div", { className: "kywi-layout-editor-host", children: _jsx(LayoutEditor, { initialLayout: initialLayout, contentId: layout?.id ?? 'new', contentType: "layout", moduleRegistry: moduleRegistry, moduleComponents: layoutModuleComponents, audiences: audiences, onSave: persist, onCancel: () => navigate('/admin/layouts') }) })] }));
|
|
76
79
|
}
|
|
77
80
|
//# sourceMappingURL=layout-editor-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-editor-client.js","sourceRoot":"","sources":["../../../../src/admin/surfaces/layouts/layout-editor-client.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;;;;;;;GAeG;AAEH,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"layout-editor-client.js","sourceRoot":"","sources":["../../../../src/admin/surfaces/layouts/layout-editor-client.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;;;;;;;GAeG;AAEH,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AAGvE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAkB,MAAM,mBAAmB,CAAA;AAO5F,MAAM,UAAU,kBAAkB,CAAC,EAAE,MAAM,EAA2B;IACpE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,eAAe,EAAE,CAAA;IACpF,MAAM,WAAW,GAAI,OAA8B,CAAC,OAAO,CAAA;IAC3D,MAAM,MAAM,GAAG,MAAM,KAAK,SAAS,CAAA;IAEnC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;IACpD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,IAAI,SAAS,CAAC,CAAA;IACvE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC3C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IACvD,0EAA0E;IAC1E,4EAA4E;IAC5E,gEAAgE;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAsC,EAAE,CAAC,CAAA;IACnF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,UAAU,CAAC,mBAAmB,CAAC;aAC5B,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAClB,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,OAAM;YACnB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;YAC/C,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAwC,CAAA;YACtE,IAAI,CAAC,SAAS;gBAAE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAC7E,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,GAA+C,CAAC,CAAC,CAAA;QAC/D,OAAO,GAAG,EAAE,GAAG,SAAS,GAAG,IAAI,CAAA,CAAC,CAAC,CAAA;IACnC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;IAEhB,8EAA8E;IAC9E,sEAAsE;IACtE,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IAC5F,MAAM,sBAAsB,GAAG,OAAO,CACpC,GAAG,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,0BAA0B,EAAE,GAAG,gBAAgB,EAAE,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAC9G,CAAC,gBAAgB,CAAC,CACnB,CAAA;IACD,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,MAAM,EAAE,UAAU,IAAI,YAAY,EACxC,CAAC,MAAM,CAAC,CACT,CAAA;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,GAAmB,EAAE,EAAE;QACxD,QAAQ,CAAC,IAAI,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACjB,QAAQ,CAAC,0CAA0C,CAAC,CAAA;YACpD,OAAM;QACR,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,CAAA;QACf,IAAI,CAAC;YACH,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAA;YAC7F,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAA;YAClF,CAAC;YACD,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,QAAQ,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;YACxD,SAAS,CAAC,KAAK,CAAC,CAAA;QAClB,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;IAE1D,OAAO,CACL,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAK,SAAS,EAAC,wBAAwB,aACrC,0BACE,uBAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,GAAM,EAChE,aAAG,SAAS,EAAC,iBAAiB,qDACQ,oCAAqB,6CACvD,IACA,EACN,iBAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,6BAA6B,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,gCAE9F,IACL,EAEL,KAAK,IAAI,KAAC,UAAU,IAAC,OAAO,EAAE,KAAK,GAAI,EACvC,MAAM,IAAI,YAAG,SAAS,EAAC,iBAAiB,EAAC,IAAI,EAAC,QAAQ,6BAAY,EAEnE,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAK,SAAS,EAAC,YAAY,aACzB,gBAAO,OAAO,EAAC,aAAa,EAAC,SAAS,EAAC,kBAAkB,4BAAoB,EAC7E,gBACE,EAAE,EAAC,aAAa,EAChB,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,YAAY,EACtB,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtC,WAAW,EAAC,yBAAyB,GACrC,IACE,EACN,eAAK,SAAS,EAAC,YAAY,aACzB,gBAAO,OAAO,EAAC,iBAAiB,EAAC,SAAS,EAAC,kBAAkB,yBAAiB,EAC9E,gBACE,EAAE,EAAC,iBAAiB,EACpB,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,YAAY,EACtB,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1C,WAAW,EAAC,SAAS,GACrB,IACE,IACF,EAEN,cAAK,SAAS,EAAC,yBAAyB,YACtC,KAAC,YAAY,IACX,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,KAAK,EAC9B,WAAW,EAAC,QAAQ,EACpB,cAAc,EAAE,cAAc,EAC9B,gBAAgB,EAAE,sBAAsB,EACxC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAC1C,GACE,IACF,CACP,CAAA;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/admin/surfaces/login.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/admin/surfaces/login.tsx"],"names":[],"mappings":"AA+BA,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EAAE,QAAQ,SAAW,GAAG,MAAM,CAWrF;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE,iBAAiB,2CA8F/D"}
|
|
@@ -26,6 +26,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
26
26
|
*/
|
|
27
27
|
import { useState } from 'react';
|
|
28
28
|
import { setAuth } from '../../host-client/index.js';
|
|
29
|
+
import { KywiLogoDark } from '../kywi-logo.js';
|
|
29
30
|
/**
|
|
30
31
|
* Validate a candidate post-login redirect target. Only an internal
|
|
31
32
|
* `/admin/...` path is accepted — this is the open-redirect guard ported
|
|
@@ -87,6 +88,6 @@ export default function LoginSurface({ next }) {
|
|
|
87
88
|
// too; `kywi-admin-login` re-centres it as a standalone card page. The host
|
|
88
89
|
// is responsible for loading `@kywi-software/core/admin/styles.css` once
|
|
89
90
|
// (LoginSurface does not self-import it — see module doc / T13 report).
|
|
90
|
-
_jsx("div", { className: "kywi-admin-shell kywi-admin-login", children: _jsxs("form", { onSubmit: handleSubmit, className: "kywi-admin-login-card", children: [
|
|
91
|
+
_jsx("div", { className: "kywi-admin-shell kywi-admin-login", children: _jsxs("form", { onSubmit: handleSubmit, className: "kywi-admin-login-card", children: [_jsx("div", { className: "kywi-admin-login-brand", children: _jsx(KywiLogoDark, { className: "kywi-admin-login-logo", title: "Kywi" }) }), _jsx("p", { className: "kywi-admin-login-subtitle", children: "Sign in to your workspace" }), error && (_jsx("div", { className: "kywi-admin-callout kywi-admin-callout-danger", role: "alert", children: error })), _jsxs("label", { className: "kywi-admin-login-field", children: [_jsx("span", { className: "kywi-admin-login-label", children: "Email" }), _jsx("input", { type: "email", className: "kywi-input", value: email, onChange: e => setEmail(e.target.value), required: true, autoFocus: true })] }), _jsxs("label", { className: "kywi-admin-login-field", children: [_jsx("span", { className: "kywi-admin-login-label", children: "Password" }), _jsx("input", { type: "password", className: "kywi-input", value: password, onChange: e => setPassword(e.target.value), required: true })] }), _jsx("button", { type: "submit", disabled: loading, className: "kywi-btn kywi-btn-primary kywi-admin-login-submit", children: loading ? 'Signing in…' : 'Sign in' })] }) }));
|
|
91
92
|
}
|
|
92
93
|
//# sourceMappingURL=login.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/admin/surfaces/login.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/admin/surfaces/login.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAY9C;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,IAA+B,EAAE,QAAQ,GAAG,QAAQ;IAC3E,IACE,IAAI;QACJ,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAC1B,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QACtB,IAAI,KAAK,cAAc;QACvB,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EACjC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,IAAI,EAAqB;IAC9D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC5C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE7C,KAAK,UAAU,YAAY,CAAC,CAAkB;QAC5C,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,QAAQ,CAAC,EAAE,CAAC,CAAA;QACZ,UAAU,CAAC,IAAI,CAAC,CAAA;QAEhB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,oBAAoB,EAAE;gBAC5C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;aAC1C,CAAC,CAAA;YAEF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;YAE7B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,cAAc,CAAC,CAAA;gBAC/C,OAAM;YACR,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;gBAChD,wEAAwE;gBACxE,QAAQ,CAAC,kDAAkD,CAAC,CAAA;gBAC5D,OAAM;YACR,CAAC;YAED,uEAAuE;YACvE,qEAAqE;YACrE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACvB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,CAAC,wCAAwC,CAAC,CAAA;QACpD,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,OAAO;IACL,sEAAsE;IACtE,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,wEAAwE;IACxE,cAAK,SAAS,EAAC,mCAAmC,YAChD,gBAAM,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAC,uBAAuB,aAC7D,cAAK,SAAS,EAAC,wBAAwB,YACrC,KAAC,YAAY,IAAC,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAC,MAAM,GAAG,GAC3D,EACN,YAAG,SAAS,EAAC,2BAA2B,0CAA8B,EAErE,KAAK,IAAI,CACR,cAAK,SAAS,EAAC,8CAA8C,EAAC,IAAI,EAAC,OAAO,YACvE,KAAK,GACF,CACP,EAED,iBAAO,SAAS,EAAC,wBAAwB,aACvC,eAAM,SAAS,EAAC,wBAAwB,sBAAa,EACrD,gBACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,YAAY,EACtB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACvC,QAAQ,QACR,SAAS,SACT,IACI,EAER,iBAAO,SAAS,EAAC,wBAAwB,aACvC,eAAM,SAAS,EAAC,wBAAwB,yBAAgB,EACxD,gBACE,IAAI,EAAC,UAAU,EACf,SAAS,EAAC,YAAY,EACtB,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1C,QAAQ,SACR,IACI,EAER,iBACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,OAAO,EACjB,SAAS,EAAC,mDAAmD,YAE5D,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,GAC7B,IACJ,GACH,CACP,CAAA;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-client.d.ts","sourceRoot":"","sources":["../../../../src/admin/surfaces/media/media-client.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"media-client.d.ts","sourceRoot":"","sources":["../../../../src/admin/surfaces/media/media-client.tsx"],"names":[],"mappings":"AA0EA,wBAAgB,WAAW,CAAC,EAAE,eAAuB,EAAE,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,2CAuLrF"}
|
|
@@ -35,10 +35,18 @@ function mapRow(row) {
|
|
|
35
35
|
createdAt: row.createdAt ?? null,
|
|
36
36
|
url: `${base}/file`,
|
|
37
37
|
thumbnailUrl: isImage ? `${base}/resize?w=400` : null,
|
|
38
|
+
// #24: `/variant/:name` only 200s when config.media.imageSizes generated
|
|
39
|
+
// that exact named rendition at upload time — absent for the
|
|
40
|
+
// create-kywi-app scaffold default (no imageSizes block at all), uploads
|
|
41
|
+
// that predate an imageSizes change, or a differently-keyed config. Linking
|
|
42
|
+
// to it unconditionally produced a "Variant not found in storage" 404 on
|
|
43
|
+
// every fresh install. `/resize` generates (and caches) the requested
|
|
44
|
+
// dimensions from the original on demand, so it always resolves — same
|
|
45
|
+
// labels, a URL that is guaranteed to work.
|
|
38
46
|
variants: isImage
|
|
39
47
|
? [
|
|
40
|
-
{ label: 'Thumbnail (320w)', url: `${base}/
|
|
41
|
-
{ label: 'Medium (1024w)', url: `${base}/
|
|
48
|
+
{ label: 'Thumbnail (320w)', url: `${base}/resize?w=320` },
|
|
49
|
+
{ label: 'Medium (1024w)', url: `${base}/resize?w=1024&fit=contain` },
|
|
42
50
|
{ label: 'Resize (800w)', url: `${base}/resize?w=800` },
|
|
43
51
|
]
|
|
44
52
|
: [],
|