@kywi-software/core 0.2.1 → 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/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/styles/admin.css +16 -4
- 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/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
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { ContentTypeConfig } from '../config/types.js';
|
|
1
|
+
import type { ContentTypeConfig, ModuleConfig } from '../config/types.js';
|
|
2
|
+
import type { ModuleComponentMap } from '../layout/index.js';
|
|
2
3
|
import { type ExtensionFetcher } from './extension-sets.js';
|
|
3
4
|
export interface ContentLockInfo {
|
|
4
5
|
lockedBy: string;
|
|
@@ -39,10 +40,22 @@ export interface CategoryOption {
|
|
|
39
40
|
interface ContentEditFormProps {
|
|
40
41
|
contentType: ContentTypeConfig;
|
|
41
42
|
initialValues?: Record<string, unknown>;
|
|
43
|
+
/**
|
|
44
|
+
* Host-registered custom layout modules (`config.modules`), from
|
|
45
|
+
* `runtime.modules`. Merged into the Layout tab's palette/registry so
|
|
46
|
+
* defineModule types are draggable, configurable, and persist (kywi-cms#48).
|
|
47
|
+
*/
|
|
48
|
+
hostModules?: ModuleConfig[];
|
|
49
|
+
/**
|
|
50
|
+
* Host-provided React renderers for those custom module types (kywi-cms#48).
|
|
51
|
+
* Merged over the built-ins so a host module previews with its real component
|
|
52
|
+
* in the editor canvas.
|
|
53
|
+
*/
|
|
54
|
+
hostModuleComponents?: ModuleComponentMap;
|
|
42
55
|
onSubmit: (data: Record<string, unknown>) => void | Promise<void>;
|
|
43
56
|
onCancel?: () => void;
|
|
44
57
|
onForceUnlock?: () => void | Promise<void>;
|
|
45
|
-
onApprovalAction?: (action: 'submit' | 'approve' | 'reject', comment?: string) => void | Promise<void>;
|
|
58
|
+
onApprovalAction?: (action: 'submit' | 'approve' | 'reject', comment?: string, fields?: Record<string, unknown>) => void | Promise<void>;
|
|
46
59
|
onRestoreVersion?: (versionId: string) => void | Promise<void>;
|
|
47
60
|
onDeleteVersion?: (versionId: string) => void | Promise<void>;
|
|
48
61
|
onDiffVersion?: (versionId: string) => void | Promise<void>;
|
|
@@ -68,12 +81,55 @@ interface ContentEditFormProps {
|
|
|
68
81
|
* (relatedType, id) reference to a human label. The stored value stays the id. */
|
|
69
82
|
resolveRelationship?: (relatedType: string, id: string) => Promise<string | null>;
|
|
70
83
|
/**
|
|
71
|
-
* Authenticated fetch used by the extension-set group on Tab 1 (G7)
|
|
72
|
-
*
|
|
73
|
-
*
|
|
84
|
+
* Authenticated fetch used by the extension-set group on Tab 1 (G7) and by
|
|
85
|
+
* the Layout tab to persist a layout edit directly (kywi-cms#19 — see the
|
|
86
|
+
* Layout tab below). When provided (edit mode), the extension group loads
|
|
87
|
+
* applicable EAV attribute sets and saves them via /extensions/data. Omit it
|
|
88
|
+
* to keep the extension group inert and the Layout tab's Save staging-only
|
|
89
|
+
* (there is no content id to persist against yet in create mode anyway).
|
|
74
90
|
*/
|
|
75
91
|
extensionFetcher?: ExtensionFetcher;
|
|
92
|
+
/**
|
|
93
|
+
* Controlled active-tab state (kywi-cms#25). The surface that owns this form
|
|
94
|
+
* remounts it with a fresh `key` after every successful save so freshly
|
|
95
|
+
* server-normalized values are re-seeded (see content-edit.tsx) — without
|
|
96
|
+
* this, the tab bar's own local state would remount too and always reset to
|
|
97
|
+
* "Content", bouncing the editor away from whatever tab (e.g. SEO) the user
|
|
98
|
+
* was iterating on. Omit both props to fall back to uncontrolled local state
|
|
99
|
+
* (create mode, which never remounts mid-edit).
|
|
100
|
+
*/
|
|
101
|
+
activeTab?: TabId;
|
|
102
|
+
onActiveTabChange?: (tab: TabId) => void;
|
|
76
103
|
}
|
|
77
|
-
|
|
104
|
+
declare const TABS: readonly [{
|
|
105
|
+
readonly id: "content";
|
|
106
|
+
readonly label: "Content";
|
|
107
|
+
}, {
|
|
108
|
+
readonly id: "publishing";
|
|
109
|
+
readonly label: "Publishing";
|
|
110
|
+
}, {
|
|
111
|
+
readonly id: "navigation";
|
|
112
|
+
readonly label: "Navigation";
|
|
113
|
+
}, {
|
|
114
|
+
readonly id: "seo";
|
|
115
|
+
readonly label: "SEO";
|
|
116
|
+
}, {
|
|
117
|
+
readonly id: "layout";
|
|
118
|
+
readonly label: "Layout";
|
|
119
|
+
}, {
|
|
120
|
+
readonly id: "categories-tags";
|
|
121
|
+
readonly label: "Categories & Tags";
|
|
122
|
+
}, {
|
|
123
|
+
readonly id: "related-content";
|
|
124
|
+
readonly label: "Related Content";
|
|
125
|
+
}, {
|
|
126
|
+
readonly id: "permissions";
|
|
127
|
+
readonly label: "Permissions";
|
|
128
|
+
}, {
|
|
129
|
+
readonly id: "version-history";
|
|
130
|
+
readonly label: "Version History";
|
|
131
|
+
}];
|
|
132
|
+
export type TabId = (typeof TABS)[number]['id'];
|
|
133
|
+
export declare function ContentEditForm({ contentType, initialValues, hostModules, hostModuleComponents, onSubmit, onCancel, onForceUnlock, onApprovalAction, onRestoreVersion, onDeleteVersion, onDiffVersion, onAddToChangeset, mode, isSubmitting, lockInfo, userRole, groups, versions, approvalHistory, availableCategories, availableTags, openChangesets, users, resolveRelationship, extensionFetcher, activeTab: controlledActiveTab, onActiveTabChange, }: ContentEditFormProps): import("react/jsx-runtime").JSX.Element;
|
|
78
134
|
export {};
|
|
79
135
|
//# sourceMappingURL=content-form.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-form.d.ts","sourceRoot":"","sources":["../../src/admin/content-form.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"content-form.d.ts","sourceRoot":"","sources":["../../src/admin/content-form.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { useState, useCallback, useEffect } from 'react';
|
|
2
|
+
import { useState, useCallback, useEffect, useMemo } from 'react';
|
|
3
3
|
import { FieldRenderer, CategoryTreePicker, TagInput, RelatedContentPicker } from './field-components.js';
|
|
4
4
|
import { MediaPickerField } from './media-picker-field.js';
|
|
5
|
+
import { TiptapEditor } from './tiptap-editor.js';
|
|
5
6
|
import { formDataToApiPayload, apiDataToFormValues } from './form-helpers.js';
|
|
6
7
|
import { LayoutEditor } from './layout-editor/index.js';
|
|
7
8
|
import { createModuleRegistry } from '../layout/registry.js';
|
|
8
9
|
import { BUILT_IN_MODULE_COMPONENTS } from '../layout/modules.js';
|
|
9
10
|
import { ExtensionSets } from './extension-sets.js';
|
|
11
|
+
import { isReservedFieldName } from '../config/reserved-field-names.js';
|
|
12
|
+
import { adminFetch } from '../host-client/index.js';
|
|
13
|
+
import { ContentPermissionsTab } from './content-permissions-tab.js';
|
|
10
14
|
// ---------------------------------------------------------------------------
|
|
11
15
|
// Tab definitions — exactly 9 in spec order
|
|
12
16
|
// ---------------------------------------------------------------------------
|
|
@@ -29,13 +33,31 @@ const ADMIN_ROLES = new Set(['siteAdmin', 'superAdmin']);
|
|
|
29
33
|
// ---------------------------------------------------------------------------
|
|
30
34
|
// Component
|
|
31
35
|
// ---------------------------------------------------------------------------
|
|
32
|
-
export function ContentEditForm({ contentType, initialValues, onSubmit, onCancel, onForceUnlock, onApprovalAction, onRestoreVersion, onDeleteVersion, onDiffVersion, onAddToChangeset, mode, isSubmitting = false, lockInfo, userRole, groups = [], versions = [], approvalHistory = [], availableCategories = [], availableTags = [], openChangesets = [], users = [], resolveRelationship, extensionFetcher, }) {
|
|
36
|
+
export function ContentEditForm({ contentType, initialValues, hostModules, hostModuleComponents, onSubmit, onCancel, onForceUnlock, onApprovalAction, onRestoreVersion, onDeleteVersion, onDiffVersion, onAddToChangeset, mode, isSubmitting = false, lockInfo, userRole, groups = [], versions = [], approvalHistory = [], availableCategories = [], availableTags = [], openChangesets = [], users = [], resolveRelationship, extensionFetcher, activeTab: controlledActiveTab, onActiveTabChange, }) {
|
|
33
37
|
const isLockedByOther = lockInfo != null;
|
|
34
38
|
const canForceUnlock = userRole === 'siteAdmin' || userRole === 'superAdmin';
|
|
39
|
+
const titleRequired = contentType.titleRequired ?? true;
|
|
40
|
+
// Defensive hardening for kywi-cms#10: a custom field whose name collides
|
|
41
|
+
// with a built-in (Title/Slug/Body/Featured Image/etc.) is now rejected at
|
|
42
|
+
// creation time (Type Designer + content-type-routes.ts), but a type
|
|
43
|
+
// created before that guard existed could already carry one. Rendering it
|
|
44
|
+
// would silently share the same `values` key as the built-in it collides
|
|
45
|
+
// with (they are, literally, one value) — so it is dropped from the custom
|
|
46
|
+
// fields list rather than rendered a second time.
|
|
47
|
+
const customFields = contentType.fields.filter(field => !isReservedFieldName(field.name));
|
|
35
48
|
const [values, setValues] = useState(() => initialValues
|
|
36
49
|
? apiDataToFormValues(initialValues, contentType.fields)
|
|
37
50
|
: { title: '', slug: '', status: 'draft' });
|
|
38
|
-
|
|
51
|
+
// kywi-cms#25: optionally controlled so the host surface can preserve the
|
|
52
|
+
// active tab across a post-save remount (see the `activeTab` prop doc above).
|
|
53
|
+
// Uncontrolled callers (no `activeTab` prop, e.g. content-new.tsx) keep the
|
|
54
|
+
// old local-state behavior unchanged.
|
|
55
|
+
const [uncontrolledActiveTab, setUncontrolledActiveTab] = useState('content');
|
|
56
|
+
const activeTab = controlledActiveTab ?? uncontrolledActiveTab;
|
|
57
|
+
const setActiveTab = useCallback((tab) => {
|
|
58
|
+
setUncontrolledActiveTab(tab);
|
|
59
|
+
onActiveTabChange?.(tab);
|
|
60
|
+
}, [onActiveTabChange]);
|
|
39
61
|
const [approvalComment, setApprovalComment] = useState('');
|
|
40
62
|
// Names of custom fields currently reporting invalid input (e.g. unparseable
|
|
41
63
|
// JSON). Save is disabled while any is present.
|
|
@@ -45,10 +67,61 @@ export function ContentEditForm({ contentType, initialValues, onSubmit, onCancel
|
|
|
45
67
|
// into `values` live — see the Layout tab's onChange) by closing/reloading
|
|
46
68
|
// the tab. Cleared on a successful submit. (G-J04-03)
|
|
47
69
|
const [isDirty, setIsDirty] = useState(false);
|
|
70
|
+
// Audience catalogue for the Layout tab's "+ Page Variant" picker and the
|
|
71
|
+
// variantContainer arm picker (kywi-cms#52). The layout editor renders no
|
|
72
|
+
// audiences of its own, so the content editor must load them — without this
|
|
73
|
+
// the picker always showed "No audiences yet" even when active audiences
|
|
74
|
+
// existed. GET /audiences is authorized for editor and above (same threshold
|
|
75
|
+
// as this form), and adminFetch scopes the request to the active site.
|
|
76
|
+
const [audiences, setAudiences] = useState([]);
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
let cancelled = false;
|
|
79
|
+
adminFetch('/api/v1/audiences')
|
|
80
|
+
.then(r => (r.ok ? r.json() : Promise.reject(new Error(String(r.status)))))
|
|
81
|
+
.then((body) => {
|
|
82
|
+
if (cancelled)
|
|
83
|
+
return;
|
|
84
|
+
setAudiences((body.data ?? []).map(a => ({ id: a.id, name: a.name })));
|
|
85
|
+
})
|
|
86
|
+
.catch(() => { });
|
|
87
|
+
return () => { cancelled = true; };
|
|
88
|
+
}, []);
|
|
89
|
+
// Layout editor palette + preview components (kywi-cms#48). The registry
|
|
90
|
+
// merges host-registered `defineModule` modules over the built-ins so custom
|
|
91
|
+
// types appear in the palette, carry their prop fields, and persist; the
|
|
92
|
+
// component map merges the host's renderers over the built-ins so those types
|
|
93
|
+
// preview with their real component in the canvas (a missing renderer falls
|
|
94
|
+
// back to the "Unknown" placeholder, but the module still saves + renders on
|
|
95
|
+
// the public site once the host wires KywiLayout.moduleComponents).
|
|
96
|
+
const layoutModuleRegistry = useMemo(() => createModuleRegistry(hostModules ?? []), [hostModules]);
|
|
97
|
+
const layoutModuleComponents = useMemo(() => (hostModuleComponents
|
|
98
|
+
? { ...BUILT_IN_MODULE_COMPONENTS, ...hostModuleComponents }
|
|
99
|
+
: BUILT_IN_MODULE_COMPONENTS), [hostModuleComponents]);
|
|
48
100
|
const handleChange = useCallback((name, value) => {
|
|
49
101
|
setValues(prev => ({ ...prev, [name]: value }));
|
|
50
102
|
setIsDirty(true);
|
|
51
103
|
}, []);
|
|
104
|
+
// kywi-cms#13/#26 pattern, same root cause found here too: the "Expiration
|
|
105
|
+
// Notify User" <select> always offers a "— No one —" placeholder, so it's
|
|
106
|
+
// safe when `expirationNotifyUser` is empty or already a known user — but if
|
|
107
|
+
// the stored id belongs to a user who's since been deleted, no <option>
|
|
108
|
+
// matches it, the browser silently falls back to displaying "— No one —",
|
|
109
|
+
// and `values.expirationNotifyUser` (seeded once from the loaded content)
|
|
110
|
+
// never updates to match — because a <select> that never gets a real user
|
|
111
|
+
// interaction never fires `change`. Save would then round-trip the invisible
|
|
112
|
+
// stale id forever. Clear it once `users` loads if it doesn't resolve to a
|
|
113
|
+
// real option, so state matches what's on screen. (Uses `setValues`
|
|
114
|
+
// directly, not `handleChange` — this is a display/state reconciliation on
|
|
115
|
+
// load, not a user edit, so it must not mark the form dirty.)
|
|
116
|
+
useEffect(() => {
|
|
117
|
+
if (users.length === 0)
|
|
118
|
+
return;
|
|
119
|
+
const current = values.expirationNotifyUser;
|
|
120
|
+
if (typeof current === 'string' && current !== '' && !users.some(u => u.id === current)) {
|
|
121
|
+
setValues(prev => ({ ...prev, expirationNotifyUser: '' }));
|
|
122
|
+
}
|
|
123
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
124
|
+
}, [users]);
|
|
52
125
|
// Browser-level unsaved-changes guard: warn before unload (close/reload/
|
|
53
126
|
// cross-origin nav) whenever there are pending edits.
|
|
54
127
|
useEffect(() => {
|
|
@@ -79,6 +152,41 @@ export function ContentEditForm({ contentType, initialValues, onSubmit, onCancel
|
|
|
79
152
|
});
|
|
80
153
|
}, []);
|
|
81
154
|
const hasInvalidField = invalidFields.size > 0;
|
|
155
|
+
// kywi-cms#19: the Layout tab's own "Save" used to only stage the layout
|
|
156
|
+
// into this form's `values` — exactly what `onChange` already does on every
|
|
157
|
+
// edit (see the Layout tab below), making the button cosmetic. An editor who
|
|
158
|
+
// built a layout, clicked the visible in-tab Save, and navigated away lost
|
|
159
|
+
// the work unless they also clicked the page-level Save. Persist directly
|
|
160
|
+
// through the dedicated layout endpoint so the in-tab Save is real and does
|
|
161
|
+
// not require a second save. In create mode there is no content id yet
|
|
162
|
+
// (`extensionFetcher`/`initialValues.id` are both absent) — nothing exists
|
|
163
|
+
// to persist against until the page itself is first saved, so it still only
|
|
164
|
+
// stages, same as before.
|
|
165
|
+
const [layoutSaveState, setLayoutSaveState] = useState({ status: 'idle' });
|
|
166
|
+
const handleLayoutSave = useCallback(async (layout) => {
|
|
167
|
+
handleChange('layout', layout);
|
|
168
|
+
const contentId = initialValues?.id;
|
|
169
|
+
if (!extensionFetcher || contentId == null)
|
|
170
|
+
return;
|
|
171
|
+
setLayoutSaveState({ status: 'saving' });
|
|
172
|
+
try {
|
|
173
|
+
const res = await extensionFetcher(`/api/v1/content/${contentType.name}/${contentId}/layout`, {
|
|
174
|
+
method: 'PUT',
|
|
175
|
+
body: JSON.stringify(layout),
|
|
176
|
+
});
|
|
177
|
+
if (!res.ok) {
|
|
178
|
+
const body = await res.json().catch(() => null);
|
|
179
|
+
throw new Error(body?.error?.message ?? `Layout save failed (${res.status})`);
|
|
180
|
+
}
|
|
181
|
+
setLayoutSaveState({ status: 'saved' });
|
|
182
|
+
}
|
|
183
|
+
catch (err) {
|
|
184
|
+
setLayoutSaveState({
|
|
185
|
+
status: 'error',
|
|
186
|
+
message: err instanceof Error ? err.message : 'Failed to save layout',
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
}, [extensionFetcher, initialValues?.id, contentType.name, handleChange]);
|
|
82
190
|
const handleSubmit = useCallback((e) => {
|
|
83
191
|
e.preventDefault();
|
|
84
192
|
if (invalidFields.size > 0)
|
|
@@ -90,19 +198,16 @@ export function ContentEditForm({ contentType, initialValues, onSubmit, onCancel
|
|
|
90
198
|
}, [values, contentType.fields, onSubmit, invalidFields]);
|
|
91
199
|
const canApprove = APPROVAL_ROLES.has(userRole ?? '');
|
|
92
200
|
const isAdmin = ADMIN_ROLES.has(userRole ?? '');
|
|
93
|
-
return (_jsxs("form", { onSubmit: handleSubmit, className: "kywi-content-form", children: [_jsx("div", { className: "kywi-form-header", children: _jsx("h1", { children: mode === 'create' ? `New ${contentType.label}` : `Edit ${contentType.label}` }) }), isLockedByOther && (_jsxs("div", { className: "kywi-lock-banner", role: "alert", children: [_jsx("span", { className: "kywi-lock-banner-text", children: `This content is locked by ${lockInfo.lockedBy}. Editing is disabled.` }), canForceUnlock && onForceUnlock && (_jsx("button", { type: "button", onClick: () => onForceUnlock(), className: "kywi-btn kywi-btn-danger kywi-force-unlock-btn", children: "Force Unlock" }))] })), _jsx("div", { className: "kywi-tab-bar", role: "tablist", children: TABS.map(tab => (_jsx("button", { type: "button", role: "tab", "aria-selected": activeTab === tab.id, "aria-controls": `kywi-tab-panel-${tab.id}`, className: `kywi-tab${activeTab === tab.id ? ' kywi-tab-active' : ''}`, onClick: () => setActiveTab(tab.id), children: tab.label }, tab.id))) }), _jsxs("div", { className: "kywi-tab-content", children: [activeTab === 'content' && (_jsxs("div", { id: "kywi-tab-panel-content", role: "tabpanel", className: "kywi-tab-panel", children: [_jsxs("div", { className: "kywi-field", children: [
|
|
201
|
+
return (_jsxs("form", { onSubmit: handleSubmit, className: "kywi-content-form", children: [_jsx("div", { className: "kywi-form-header", children: _jsx("h1", { children: mode === 'create' ? `New ${contentType.label}` : `Edit ${contentType.label}` }) }), isLockedByOther && (_jsxs("div", { className: "kywi-lock-banner", role: "alert", children: [_jsx("span", { className: "kywi-lock-banner-text", children: `This content is locked by ${lockInfo.lockedBy}. Editing is disabled.` }), canForceUnlock && onForceUnlock && (_jsx("button", { type: "button", onClick: () => onForceUnlock(), className: "kywi-btn kywi-btn-danger kywi-force-unlock-btn", children: "Force Unlock" }))] })), _jsx("div", { className: "kywi-tab-bar", role: "tablist", children: TABS.map(tab => (_jsx("button", { type: "button", role: "tab", "aria-selected": activeTab === tab.id, "aria-controls": `kywi-tab-panel-${tab.id}`, className: `kywi-tab${activeTab === tab.id ? ' kywi-tab-active' : ''}`, onClick: () => setActiveTab(tab.id), children: tab.label }, tab.id))) }), _jsxs("div", { className: "kywi-tab-content", children: [activeTab === 'content' && (_jsxs("div", { id: "kywi-tab-panel-content", role: "tabpanel", className: "kywi-tab-panel", children: [_jsxs("div", { className: "kywi-field", children: [_jsxs("label", { htmlFor: "field-title", className: "kywi-field-label", children: ["Title", titleRequired && _jsx("span", { className: "kywi-required", "aria-hidden": "true", children: " *" })] }), _jsx("input", { id: "field-title", type: "text", name: "title", value: String(values.title ?? ''), onChange: e => handleChange('title', e.target.value), className: "kywi-input", required: titleRequired })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-slug", className: "kywi-field-label", children: "Slug" }), _jsx("input", { id: "field-slug", type: "text", name: "slug", value: String(values.slug ?? ''), onChange: e => handleChange('slug', e.target.value), className: "kywi-input", placeholder: "Auto-generated from title if empty" })] }), contentType.baseType === 'content' && (_jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-body", className: "kywi-field-label", children: "Body" }), _jsx(TiptapEditor, { id: "field-body", value: String(values.body ?? ''), onChange: html => handleChange('body', html), className: "kywi-richtext" })] })), _jsxs("div", { className: "kywi-field", "data-field-name": "featuredImageId", children: [_jsx("label", { className: "kywi-field-label", htmlFor: "field-featuredImageId", children: "Featured Image" }), _jsx(MediaPickerField, { id: "field-featuredImageId", value: typeof values.featuredImageId === 'string' ? values.featuredImageId : null, accept: "image/*", onChange: mediaId => handleChange('featuredImageId', mediaId) })] }), customFields.length > 0 && (_jsx("div", { className: "kywi-form-custom-fields", children: customFields.map(field => (_jsx(FieldRenderer, { field: field, value: values[field.name], onChange: val => handleChange(field.name, val), onValidityChange: valid => handleFieldValidity(field.name, valid), ...(resolveRelationship ? { resolveRelationship } : {}) }, field.name))) })), extensionFetcher && initialValues?.id != null && (_jsx(ExtensionSets, { contentId: String(initialValues.id), baseTypes: [contentType.name, contentType.baseType], fetcher: extensionFetcher }))] })), activeTab === 'publishing' && (_jsxs("div", { id: "kywi-tab-panel-publishing", role: "tabpanel", className: "kywi-tab-panel", children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-status", className: "kywi-field-label", children: "Status" }), _jsxs("select", { id: "field-status", name: "status", value: String(values.status ?? 'draft'), onChange: e => handleChange('status', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "draft", children: "Draft" }), _jsx("option", { value: "pending", children: "Pending Review" }), _jsx("option", { value: "approved", children: "Approved" }), _jsx("option", { value: "published", children: "Published" }), _jsx("option", { value: "archived", children: "Archived" })] })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-publishedAt", className: "kywi-field-label", children: "Published At" }), _jsx("input", { id: "field-publishedAt", type: "datetime-local", name: "publishedAt", value: String(values.publishedAt ?? ''), onChange: e => handleChange('publishedAt', e.target.value), className: "kywi-input" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-unpublishAt", className: "kywi-field-label", children: "Unpublish At" }), _jsx("input", { id: "field-unpublishAt", type: "datetime-local", name: "unpublishAt", value: String(values.unpublishAt ?? ''), onChange: e => handleChange('unpublishAt', e.target.value), className: "kywi-input" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-expiresAt", className: "kywi-field-label", children: "Expires At" }), _jsx("input", { id: "field-expiresAt", type: "datetime-local", name: "expiresAt", value: String(values.expiresAt ?? ''), onChange: e => handleChange('expiresAt', e.target.value), className: "kywi-input" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-featureInSection", className: "kywi-field-label", children: "Feature In Section" }), _jsxs("select", { id: "field-featureInSection", name: "featureInSection", value: String(values.featureInSection ?? 'no'), onChange: e => handleChange('featureInSection', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "no", children: "No" }), _jsx("option", { value: "yes", children: "Yes" }), _jsx("option", { value: "scheduled", children: "Scheduled" })] })] }), String(values.featureInSection) === 'scheduled' && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-featureStartAt", className: "kywi-field-label", children: "Feature Start" }), _jsx("input", { id: "field-featureStartAt", type: "datetime-local", name: "featureStartAt", value: String(values.featureStartAt ?? ''), onChange: e => handleChange('featureStartAt', e.target.value), className: "kywi-input" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-featureEndAt", className: "kywi-field-label", children: "Feature End" }), _jsx("input", { id: "field-featureEndAt", type: "datetime-local", name: "featureEndAt", value: String(values.featureEndAt ?? ''), onChange: e => handleChange('featureEndAt', e.target.value), className: "kywi-input" })] })] })), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-expirationNotifyUser", className: "kywi-field-label", children: "Expiration Notify User" }), users.length > 0 ? (_jsxs("select", { id: "field-expirationNotifyUser", name: "expirationNotifyUser", value: String(values.expirationNotifyUser ?? ''), onChange: e => handleChange('expirationNotifyUser', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "", children: "\u2014 No one \u2014" }), users.map(u => (_jsx("option", { value: u.id, children: u.label }, u.id)))] })) : (_jsx("input", { id: "field-expirationNotifyUser", type: "text", name: "expirationNotifyUser", value: String(values.expirationNotifyUser ?? ''), onChange: e => handleChange('expirationNotifyUser', e.target.value), className: "kywi-input", placeholder: "User ID to notify on expiration" }))] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-internalNotes", className: "kywi-field-label", children: "Internal Notes" }), _jsx("textarea", { id: "field-internalNotes", name: "internalNotes", value: String(values.internalNotes ?? ''), onChange: e => handleChange('internalNotes', e.target.value), className: "kywi-textarea", rows: 4 })] }), openChangesets.length > 0 && (_jsxs("div", { className: "kywi-changeset-section", "data-testid": "changeset-dropdown", children: [_jsx("h3", { className: "kywi-section-heading", children: "Add to Changeset" }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-changeset", className: "kywi-field-label", children: "Changeset" }), _jsxs("select", { id: "field-changeset", className: "kywi-select", defaultValue: "", onChange: e => {
|
|
94
202
|
if (e.target.value)
|
|
95
203
|
onAddToChangeset?.(e.target.value);
|
|
96
|
-
}, children: [_jsx("option", { value: "", children: "-- Select a changeset --" }), openChangesets.map(cs => (_jsx("option", { value: cs.id, children: cs.name }, cs.id)))] })] })] })), canApprove && (_jsxs("div", { className: "kywi-approval-section", "data-testid": "approval-actions", children: [_jsx("h3", { className: "kywi-section-heading", children: "Approval" }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-approvalComment", className: "kywi-field-label", children: "Comment" }), _jsx("textarea", { id: "field-approvalComment", value: approvalComment, onChange: e => setApprovalComment(e.target.value), className: "kywi-textarea", rows: 2, placeholder: "Optional comment..." })] }), _jsxs("div", { className: "kywi-approval-buttons", children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary", onClick: () =>
|
|
204
|
+
}, children: [_jsx("option", { value: "", children: "-- Select a changeset --" }), openChangesets.map(cs => (_jsx("option", { value: cs.id, children: cs.name }, cs.id)))] })] })] })), canApprove && (_jsxs("div", { className: "kywi-approval-section", "data-testid": "approval-actions", children: [_jsx("h3", { className: "kywi-section-heading", children: "Approval" }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-approvalComment", className: "kywi-field-label", children: "Comment" }), _jsx("textarea", { id: "field-approvalComment", value: approvalComment, onChange: e => setApprovalComment(e.target.value), className: "kywi-textarea", rows: 2, placeholder: "Optional comment..." })] }), _jsxs("div", { className: "kywi-approval-buttons", children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary", onClick: () =>
|
|
205
|
+
// Carry the editor's current edits so Submit-for-Review no
|
|
206
|
+
// longer discards unsaved changes (#45.3) and can fork a
|
|
207
|
+
// pending revision of published content (#42).
|
|
208
|
+
onApprovalAction?.('submit', approvalComment, formDataToApiPayload(values, contentType.fields)), children: "Submit for Review" }), isAdmin && (_jsxs(_Fragment, { children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-primary", onClick: () => onApprovalAction?.('approve', approvalComment), children: "Approve" }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-danger", onClick: () => onApprovalAction?.('reject', approvalComment), children: "Reject" })] }))] })] })), approvalHistory.length > 0 && (_jsxs("div", { className: "kywi-approval-history", children: [_jsx("h3", { className: "kywi-section-heading", children: "Approval History" }), _jsx("ul", { className: "kywi-approval-list", children: approvalHistory.map(entry => (_jsxs("li", { className: "kywi-approval-entry", children: [_jsx("strong", { children: entry.action }), " by ", entry.by, " at ", entry.at, entry.comment && _jsx("p", { children: entry.comment })] }, entry.id))) })] }))] })), activeTab === 'navigation' && (_jsxs("div", { id: "kywi-tab-panel-navigation", role: "tabpanel", className: "kywi-tab-panel", children: [_jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "isNav", checked: Boolean(values.isNav ?? false), onChange: e => handleChange('isNav', e.target.checked), className: "kywi-checkbox" }), ' ', "Show in Navigation"] }) }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-menuTitle", className: "kywi-field-label", children: "Menu Title" }), _jsx("input", { id: "field-menuTitle", type: "text", name: "menuTitle", value: String(values.menuTitle ?? ''), onChange: e => handleChange('menuTitle', e.target.value), className: "kywi-input", placeholder: "Override title in navigation" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-parentId", className: "kywi-field-label", children: "Parent" }), _jsx("input", { id: "field-parentId", type: "text", name: "parentId", value: String(values.parentId ?? ''), onChange: e => handleChange('parentId', e.target.value), className: "kywi-input", placeholder: "Content ID of parent" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-sortOrder", className: "kywi-field-label", children: "Sort Order" }), _jsx("input", { id: "field-sortOrder", type: "number", name: "sortOrder", value: String(values.sortOrder ?? ''), onChange: e => handleChange('sortOrder', e.target.value === '' ? '' : Number(e.target.value)), className: "kywi-input" })] }), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "openInNewWindow", checked: Boolean(values.openInNewWindow ?? false), onChange: e => handleChange('openInNewWindow', e.target.checked), className: "kywi-checkbox" }), ' ', "Open in New Window"] }) }), groups.length > 0 && (_jsxs("div", { className: "kywi-field", children: [_jsx("span", { className: "kywi-field-label", children: "Nav Visibility by Group" }), _jsx("div", { className: "kywi-group-visibility", children: groups.map(g => {
|
|
97
209
|
const vis = values.navVisibility ?? {};
|
|
98
210
|
return (_jsxs("label", { className: "kywi-field-label kywi-group-vis-label", children: [_jsx("input", { type: "checkbox", checked: vis[g.id] ?? true, onChange: e => handleChange('navVisibility', { ...vis, [g.id]: e.target.checked }), className: "kywi-checkbox" }), ' ', g.name] }, g.id));
|
|
99
|
-
}) })] })), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "excludeFromSitemap", checked: Boolean(values.excludeFromSitemap ?? false), onChange: e => handleChange('excludeFromSitemap', e.target.checked), className: "kywi-checkbox" }), ' ', "Exclude from Sitemap"] }) }), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "excludeFromSearch", checked: Boolean(values.excludeFromSearch ?? false), onChange: e => handleChange('excludeFromSearch', e.target.checked), className: "kywi-checkbox" }), ' ', "Exclude from search & AX"] }) }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-urlOverride", className: "kywi-field-label", children: "URL Override" }), _jsx("input", { id: "field-urlOverride", type: "text", name: "urlOverride", value: String(values.urlOverride ?? ''), onChange: e => handleChange('urlOverride', e.target.value), className: "kywi-input", placeholder: "/custom-path" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-redirectUrl", className: "kywi-field-label", children: "Redirect URL" }), _jsx("input", { id: "field-redirectUrl", type: "text", name: "redirectUrl", value: String(values.redirectUrl ?? ''), onChange: e => handleChange('redirectUrl', e.target.value), className: "kywi-input", placeholder: "https://..." })] })] })), activeTab === 'seo' && (_jsxs("div", { id: "kywi-tab-panel-seo", role: "tabpanel", className: "kywi-tab-panel", children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-metaTitle", className: "kywi-field-label", children: "Meta Title" }), _jsx("input", { id: "field-metaTitle", type: "text", name: "metaTitle", value: String(values.metaTitle ?? ''), onChange: e => handleChange('metaTitle', e.target.value), className: "kywi-input" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-metaDescription", className: "kywi-field-label", children: "Meta Description" }), _jsx("textarea", { id: "field-metaDescription", name: "metaDescription", value: String(values.metaDescription ?? ''), onChange: e => handleChange('metaDescription', e.target.value), className: "kywi-textarea", rows: 3 })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-metaKeywords", className: "kywi-field-label", children: "Meta Keywords" }), _jsx("input", { id: "field-metaKeywords", type: "text", name: "metaKeywords", value: String(values.metaKeywords ?? ''), onChange: e => handleChange('metaKeywords', e.target.value), className: "kywi-input", placeholder: "keyword1, keyword2, ..." })] }), _jsxs("div", { className: "kywi-field", "data-field-name": "metaImageId", children: [_jsx("label", { htmlFor: "field-metaImageId", className: "kywi-field-label", children: "OG Image" }), _jsx(MediaPickerField, { id: "field-metaImageId", value: typeof values.metaImageId === 'string' ? values.metaImageId : null, accept: "image/*", onChange: mediaId => handleChange('metaImageId', mediaId) })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-canonicalUrl", className: "kywi-field-label", children: "Canonical URL" }), _jsx("input", { id: "field-canonicalUrl", type: "text", name: "canonicalUrl", value: String(values.canonicalUrl ?? ''), onChange: e => handleChange('canonicalUrl', e.target.value), className: "kywi-input", placeholder: "https://..." })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-robotsIndex", className: "kywi-field-label", children: "Robots Index" }), _jsxs("select", { id: "field-robotsIndex", name: "robotsIndex", value: String(values.robotsIndex ?? 'index'), onChange: e => handleChange('robotsIndex', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "index", children: "Index" }), _jsx("option", { value: "noindex", children: "No Index" })] })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-robotsFollow", className: "kywi-field-label", children: "Robots Follow" }), _jsxs("select", { id: "field-robotsFollow", name: "robotsFollow", value: String(values.robotsFollow ?? 'follow'), onChange: e => handleChange('robotsFollow', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "follow", children: "Follow" }), _jsx("option", { value: "nofollow", children: "No Follow" })] })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-changeFreq", className: "kywi-field-label", children: "Change Frequency" }), _jsxs("select", { id: "field-changeFreq", name: "changeFreq", value: String(values.changeFreq ?? ''), onChange: e => handleChange('changeFreq', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "", children: "-- Select --" }), _jsx("option", { value: "always", children: "Always" }), _jsx("option", { value: "hourly", children: "Hourly" }), _jsx("option", { value: "daily", children: "Daily" }), _jsx("option", { value: "weekly", children: "Weekly" }), _jsx("option", { value: "monthly", children: "Monthly" }), _jsx("option", { value: "yearly", children: "Yearly" }), _jsx("option", { value: "never", children: "Never" })] })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-sitemapPriority", className: "kywi-field-label", children: "Sitemap Priority (0-1)" }), _jsx("input", { id: "field-sitemapPriority", type: "number", name: "sitemapPriority", min: "0", max: "1", step: "0.1", value: String(values.sitemapPriority ?? ''), onChange: e => handleChange('sitemapPriority', e.target.value === '' ? '' : Number(e.target.value)), className: "kywi-input" })] })] })), activeTab === 'layout' && (_jsx("div", { id: "kywi-tab-panel-layout", role: "tabpanel", className: "kywi-tab-panel", children: _jsx(LayoutEditor, { initialLayout: values.layout ?? { regions: {} }, contentId: String(initialValues?.id ?? ''), contentType: contentType.name, moduleRegistry: createModuleRegistry([]), moduleComponents: BUILT_IN_MODULE_COMPONENTS, onChange: layout => handleChange('layout', layout), onSave: layout => handleChange('layout', layout), ...(userRole ? { userRole } : {}) }) })), activeTab === 'categories-tags' && (_jsxs("div", { id: "kywi-tab-panel-categories-tags", role: "tabpanel", className: "kywi-tab-panel", children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { className: "kywi-field-label", children: "Categories" }), _jsx(CategoryTreePicker, { categories: availableCategories, selected: values.categoryIds ?? [], onChange: ids => handleChange('categoryIds', ids) })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { className: "kywi-field-label", children: "Tags" }), _jsx(TagInput, { tags: Array.isArray(values.tags) ? values.tags : [], suggestions: availableTags, onChange: tags => handleChange('tags', tags) })] }), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "featuredInCategory", checked: Boolean(values.featuredInCategory ?? false), onChange: e => handleChange('featuredInCategory', e.target.checked), className: "kywi-checkbox" }), ' ', "Featured in Category"] }) })] })), activeTab === 'related-content' && (_jsx("div", { id: "kywi-tab-panel-related-content", role: "tabpanel", className: "kywi-tab-panel", children: _jsx(RelatedContentPicker, { selected: values.relatedContentIds ?? [], onChange: ids => handleChange('relatedContentIds', ids) }) })), activeTab === 'permissions' && (_jsxs("div", { id: "kywi-tab-panel-permissions", role: "tabpanel", className: "kywi-tab-panel", children: [_jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "inheritPermissions", checked: Boolean(values.inheritPermissions ?? true), onChange: e => handleChange('inheritPermissions', e.target.checked), className: "kywi-checkbox" }), ' ', "Inherit from Parent"] }) }), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "noLoginRequired", checked: Boolean(values.noLoginRequired ?? false), onChange: e => handleChange('noLoginRequired', e.target.checked), className: "kywi-checkbox" }), ' ', "No Login Required"] }) }), groups.length > 0 && !values.inheritPermissions && (_jsx("div", { className: "kywi-permissions-matrix", "data-testid": "permissions-matrix", children: _jsxs("table", { className: "kywi-table", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "Group" }), _jsx("th", { children: "Read" }), _jsx("th", { children: "Write" }), _jsx("th", { children: "Deny" })] }) }), _jsx("tbody", { children: groups.map(g => {
|
|
100
|
-
const perms = values.groupPermissions ?? {};
|
|
101
|
-
const current = perms[g.id] ?? 'inherit';
|
|
102
|
-
return (_jsxs("tr", { children: [_jsx("td", { children: g.name }), ['read', 'write', 'deny'].map(level => (_jsx("td", { children: _jsx("input", { type: "radio", name: `perm-${g.id}`, value: level, checked: current === level, onChange: () => handleChange('groupPermissions', {
|
|
103
|
-
...perms,
|
|
104
|
-
[g.id]: level,
|
|
105
|
-
}) }) }, level)))] }, g.id));
|
|
106
|
-
}) })] }) }))] })), activeTab === 'version-history' && (_jsx("div", { id: "kywi-tab-panel-version-history", role: "tabpanel", className: "kywi-tab-panel", children: versions.length === 0 ? (_jsx("p", { className: "kywi-empty-state", children: "No versions recorded yet." })) : (_jsxs("table", { className: "kywi-table kywi-version-table", "data-testid": "version-list", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "Version" }), _jsx("th", { children: "Created" }), _jsx("th", { children: "By" }), _jsx("th", { children: "Actions" })] }) }), _jsx("tbody", { children: versions.map(v => (_jsxs("tr", { "data-version-id": v.id, children: [_jsxs("td", { children: ["v", v.version] }), _jsx("td", { children: v.createdAt }), _jsx("td", { children: v.createdBy }), _jsxs("td", { className: "kywi-version-actions", children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary kywi-btn-sm", "data-action": "diff", onClick: () => onDiffVersion?.(v.id), children: "Diff" }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary kywi-btn-sm", "data-action": "restore", onClick: () => onRestoreVersion?.(v.id), children: "Restore" }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-danger kywi-btn-sm", "data-action": "delete", onClick: () => onDeleteVersion?.(v.id), children: "Delete" })] })] }, v.id))) })] })) }))] }), _jsxs("div", { className: "kywi-form-actions", children: [_jsx("button", { type: "submit", className: "kywi-btn kywi-btn-primary", disabled: isSubmitting || isLockedByOther || hasInvalidField, children: isSubmitting ? 'Saving...' : mode === 'create' ? 'Create' : 'Save' }), onCancel && (_jsx("button", { type: "button", onClick: onCancel, className: "kywi-btn kywi-btn-secondary", children: "Cancel" })), hasInvalidField && (_jsx("span", { className: "kywi-field-error", role: "alert", children: "Fix the highlighted fields before saving." }))] })] }));
|
|
211
|
+
}) })] })), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "excludeFromSitemap", checked: Boolean(values.excludeFromSitemap ?? false), onChange: e => handleChange('excludeFromSitemap', e.target.checked), className: "kywi-checkbox" }), ' ', "Exclude from Sitemap"] }) }), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "excludeFromSearch", checked: Boolean(values.excludeFromSearch ?? false), onChange: e => handleChange('excludeFromSearch', e.target.checked), className: "kywi-checkbox" }), ' ', "Exclude from search & AX"] }) }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-urlOverride", className: "kywi-field-label", children: "URL Override" }), _jsx("input", { id: "field-urlOverride", type: "text", name: "urlOverride", value: String(values.urlOverride ?? ''), onChange: e => handleChange('urlOverride', e.target.value), className: "kywi-input", placeholder: "/custom-path" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-redirectUrl", className: "kywi-field-label", children: "Redirect URL" }), _jsx("input", { id: "field-redirectUrl", type: "text", name: "redirectUrl", value: String(values.redirectUrl ?? ''), onChange: e => handleChange('redirectUrl', e.target.value), className: "kywi-input", placeholder: "https://..." })] })] })), activeTab === 'seo' && (_jsxs("div", { id: "kywi-tab-panel-seo", role: "tabpanel", className: "kywi-tab-panel", children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-metaTitle", className: "kywi-field-label", children: "Meta Title" }), _jsx("input", { id: "field-metaTitle", type: "text", name: "metaTitle", value: String(values.metaTitle ?? ''), onChange: e => handleChange('metaTitle', e.target.value), className: "kywi-input" })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-metaDescription", className: "kywi-field-label", children: "Meta Description" }), _jsx("textarea", { id: "field-metaDescription", name: "metaDescription", value: String(values.metaDescription ?? ''), onChange: e => handleChange('metaDescription', e.target.value), className: "kywi-textarea", rows: 3 })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-metaKeywords", className: "kywi-field-label", children: "Meta Keywords" }), _jsx("input", { id: "field-metaKeywords", type: "text", name: "metaKeywords", value: String(values.metaKeywords ?? ''), onChange: e => handleChange('metaKeywords', e.target.value), className: "kywi-input", placeholder: "keyword1, keyword2, ..." })] }), _jsxs("div", { className: "kywi-field", "data-field-name": "metaImageId", children: [_jsx("label", { htmlFor: "field-metaImageId", className: "kywi-field-label", children: "OG Image" }), _jsx(MediaPickerField, { id: "field-metaImageId", value: typeof values.metaImageId === 'string' ? values.metaImageId : null, accept: "image/*", onChange: mediaId => handleChange('metaImageId', mediaId) })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-canonicalUrl", className: "kywi-field-label", children: "Canonical URL" }), _jsx("input", { id: "field-canonicalUrl", type: "text", name: "canonicalUrl", value: String(values.canonicalUrl ?? ''), onChange: e => handleChange('canonicalUrl', e.target.value), className: "kywi-input", placeholder: "https://..." })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-robotsIndex", className: "kywi-field-label", children: "Robots Index" }), _jsxs("select", { id: "field-robotsIndex", name: "robotsIndex", value: String(values.robotsIndex ?? 'index'), onChange: e => handleChange('robotsIndex', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "index", children: "Index" }), _jsx("option", { value: "noindex", children: "No Index" })] })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-robotsFollow", className: "kywi-field-label", children: "Robots Follow" }), _jsxs("select", { id: "field-robotsFollow", name: "robotsFollow", value: String(values.robotsFollow ?? 'follow'), onChange: e => handleChange('robotsFollow', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "follow", children: "Follow" }), _jsx("option", { value: "nofollow", children: "No Follow" })] })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-changeFreq", className: "kywi-field-label", children: "Change Frequency" }), _jsxs("select", { id: "field-changeFreq", name: "changeFreq", value: String(values.changeFreq ?? ''), onChange: e => handleChange('changeFreq', e.target.value), className: "kywi-select", children: [_jsx("option", { value: "", children: "-- Select --" }), _jsx("option", { value: "always", children: "Always" }), _jsx("option", { value: "hourly", children: "Hourly" }), _jsx("option", { value: "daily", children: "Daily" }), _jsx("option", { value: "weekly", children: "Weekly" }), _jsx("option", { value: "monthly", children: "Monthly" }), _jsx("option", { value: "yearly", children: "Yearly" }), _jsx("option", { value: "never", children: "Never" })] })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { htmlFor: "field-sitemapPriority", className: "kywi-field-label", children: "Sitemap Priority (0-1)" }), _jsx("input", { id: "field-sitemapPriority", type: "number", name: "sitemapPriority", min: "0", max: "1", step: "0.1", value: String(values.sitemapPriority ?? ''), onChange: e => handleChange('sitemapPriority', e.target.value === '' ? '' : Number(e.target.value)), className: "kywi-input" })] })] })), activeTab === 'layout' && (_jsxs("div", { id: "kywi-tab-panel-layout", role: "tabpanel", className: "kywi-tab-panel", children: [layoutSaveState.status === 'error' && (_jsx("div", { className: "kywi-field-error", role: "alert", children: layoutSaveState.message })), layoutSaveState.status === 'saved' && (_jsx("p", { className: "kywi-field-hint", role: "status", children: "Layout saved." })), _jsx(LayoutEditor, { initialLayout: values.layout ?? { regions: {} }, contentId: String(initialValues?.id ?? ''), contentType: contentType.name, moduleRegistry: layoutModuleRegistry, moduleComponents: layoutModuleComponents, audiences: audiences, onChange: layout => handleChange('layout', layout), onSave: handleLayoutSave, ...(userRole ? { userRole } : {}) })] })), activeTab === 'categories-tags' && (_jsxs("div", { id: "kywi-tab-panel-categories-tags", role: "tabpanel", className: "kywi-tab-panel", children: [_jsxs("div", { className: "kywi-field", children: [_jsx("label", { className: "kywi-field-label", children: "Categories" }), _jsx(CategoryTreePicker, { categories: availableCategories, selected: values.categoryIds ?? [], onChange: ids => handleChange('categoryIds', ids) })] }), _jsxs("div", { className: "kywi-field", children: [_jsx("label", { className: "kywi-field-label", children: "Tags" }), _jsx(TagInput, { tags: Array.isArray(values.tags) ? values.tags : [], suggestions: availableTags, onChange: tags => handleChange('tags', tags) })] }), _jsx("div", { className: "kywi-field kywi-field-checkbox", children: _jsxs("label", { className: "kywi-field-label", children: [_jsx("input", { type: "checkbox", name: "featuredInCategory", checked: Boolean(values.featuredInCategory ?? false), onChange: e => handleChange('featuredInCategory', e.target.checked), className: "kywi-checkbox" }), ' ', "Featured in Category"] }) })] })), activeTab === 'related-content' && (_jsx("div", { id: "kywi-tab-panel-related-content", role: "tabpanel", className: "kywi-tab-panel", children: _jsx(RelatedContentPicker, { selected: values.relatedContentIds ?? [], onChange: ids => handleChange('relatedContentIds', ids) }) })), activeTab === 'permissions' && (_jsx("div", { id: "kywi-tab-panel-permissions", role: "tabpanel", className: "kywi-tab-panel", children: _jsx(ContentPermissionsTab, { contentId: String(initialValues?.id ?? ''), groups: groups, userRole: userRole }) })), activeTab === 'version-history' && (_jsx("div", { id: "kywi-tab-panel-version-history", role: "tabpanel", className: "kywi-tab-panel", children: versions.length === 0 ? (_jsx("p", { className: "kywi-empty-state", children: "No versions recorded yet." })) : (_jsxs("table", { className: "kywi-table kywi-version-table", "data-testid": "version-list", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "Version" }), _jsx("th", { children: "Created" }), _jsx("th", { children: "By" }), _jsx("th", { children: "Actions" })] }) }), _jsx("tbody", { children: versions.map(v => (_jsxs("tr", { "data-version-id": v.id, children: [_jsxs("td", { children: ["v", v.version] }), _jsx("td", { children: v.createdAt }), _jsx("td", { children: v.createdBy }), _jsxs("td", { className: "kywi-version-actions", children: [_jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary kywi-btn-sm", "data-action": "diff", onClick: () => onDiffVersion?.(v.id), children: "Diff" }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-secondary kywi-btn-sm", "data-action": "restore", onClick: () => onRestoreVersion?.(v.id), children: "Restore" }), _jsx("button", { type: "button", className: "kywi-btn kywi-btn-danger kywi-btn-sm", "data-action": "delete", onClick: () => onDeleteVersion?.(v.id), children: "Delete" })] })] }, v.id))) })] })) }))] }), _jsxs("div", { className: "kywi-form-actions", children: [_jsx("button", { type: "submit", className: "kywi-btn kywi-btn-primary", disabled: isSubmitting || isLockedByOther || hasInvalidField, children: isSubmitting ? 'Saving...' : mode === 'create' ? 'Create' : 'Save' }), onCancel && (_jsx("button", { type: "button", onClick: onCancel, className: "kywi-btn kywi-btn-secondary", children: "Cancel" })), hasInvalidField && (_jsx("span", { className: "kywi-field-error", role: "alert", children: "Fix the highlighted fields before saving." }))] })] }));
|
|
107
212
|
}
|
|
108
213
|
//# sourceMappingURL=content-form.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-form.js","sourceRoot":"","sources":["../../src/admin/content-form.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"content-form.js","sourceRoot":"","sources":["../../src/admin/content-form.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface ContentPermissionsTabProps {
|
|
2
|
+
/** The content node's id; empty for an unsaved (create-mode) node. */
|
|
3
|
+
contentId: string;
|
|
4
|
+
/** Groups available to grant to. */
|
|
5
|
+
groups: {
|
|
6
|
+
id: string;
|
|
7
|
+
name: string;
|
|
8
|
+
}[];
|
|
9
|
+
/** Signed-in user's role — content-permission routes are siteAdmin-gated. */
|
|
10
|
+
userRole?: string | undefined;
|
|
11
|
+
}
|
|
12
|
+
export declare function ContentPermissionsTab({ contentId, groups, userRole }: ContentPermissionsTabProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=content-permissions-tab.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-permissions-tab.d.ts","sourceRoot":"","sources":["../../src/admin/content-permissions-tab.tsx"],"names":[],"mappings":"AAwCA,MAAM,WAAW,0BAA0B;IACzC,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAA;IACjB,oCAAoC;IACpC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACtC,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC9B;AAMD,wBAAgB,qBAAqB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,0BAA0B,2CAoHhG"}
|