@kywi-software/core 0.2.1 → 0.3.1
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 +30 -0
- package/dist/db/content-type-queries.d.ts.map +1 -1
- package/dist/db/content-type-queries.js +98 -1
- 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
|
@@ -3,13 +3,17 @@ import { resolveAuth } from './auth.js';
|
|
|
3
3
|
import { hasMinRole } from '../auth/roles.js';
|
|
4
4
|
import { jsonOk, jsonError, notFound, unauthorized, forbidden } from './response.js';
|
|
5
5
|
import { saveAdminField, deleteAdminField, deleteAdminFieldsForType, } from '../db/schema-field-queries.js';
|
|
6
|
-
import { saveAdminType, deleteAdminType } from '../db/content-type-queries.js';
|
|
6
|
+
import { saveAdminType, deleteAdminType, updateAdminTypeSettings } from '../db/content-type-queries.js';
|
|
7
7
|
import { applySchemaForType } from '../db/schema-apply.js';
|
|
8
|
-
|
|
8
|
+
import { isReservedFieldName } from '../config/reserved-field-names.js';
|
|
9
|
+
// 'form' is a core built-in (registered in api/index.ts alongside page/folder/
|
|
10
|
+
// link) with its own dedicated admin surface, so it is excluded from the
|
|
11
|
+
// generic Type Designer list and protected from rename/delete like the others.
|
|
12
|
+
const BUILT_IN_TYPES = new Set(['page', 'folder', 'link', 'form']);
|
|
9
13
|
const FIELD_TYPES = [
|
|
10
14
|
'text', 'richText', 'textarea', 'select', 'multiSelect',
|
|
11
15
|
'relationship', 'image', 'file', 'date', 'boolean', 'number',
|
|
12
|
-
'json', 'color', 'slug', 'group',
|
|
16
|
+
'json', 'color', 'slug', 'group', 'url', 'email',
|
|
13
17
|
];
|
|
14
18
|
const BASE_TYPES = [
|
|
15
19
|
'content', 'folder', 'media', 'event', 'gallery', 'link', 'form', 'component',
|
|
@@ -29,6 +33,9 @@ const addFieldSchema = z.object({
|
|
|
29
33
|
required: z.boolean().optional(),
|
|
30
34
|
validation: validationSchema.optional(),
|
|
31
35
|
sortOrder: z.number().int().optional(),
|
|
36
|
+
/** Required (in practice) when type is 'relationship': the target content
|
|
37
|
+
* type name (or 'user') the field points at (kywi-cms#12). */
|
|
38
|
+
relatedType: z.string().min(1).optional(),
|
|
32
39
|
});
|
|
33
40
|
const createTypeSchema = z.object({
|
|
34
41
|
name: z.string().min(1).regex(/^[a-zA-Z][a-zA-Z0-9]*$/, 'Type name must be camelCase alphanumeric, starting with a letter'),
|
|
@@ -39,6 +46,11 @@ const createTypeSchema = z.object({
|
|
|
39
46
|
const reorderSchema = z.object({
|
|
40
47
|
names: z.array(z.string()).min(1),
|
|
41
48
|
});
|
|
49
|
+
/** PUT /content-types/:type — type-level settings (kywi-cms#12: configurable
|
|
50
|
+
* Title requirement). Extend here as more per-type settings are added. */
|
|
51
|
+
const updateTypeSettingsSchema = z.object({
|
|
52
|
+
titleRequired: z.boolean().optional(),
|
|
53
|
+
}).strict();
|
|
42
54
|
/**
|
|
43
55
|
* Normalise a parsed validation object into a clean FieldValidation with no
|
|
44
56
|
* undefined-valued keys (zod's `.optional()` yields `key?: T | undefined`, which
|
|
@@ -85,6 +97,12 @@ export function registerContentTypeRoutes(router, ctx) {
|
|
|
85
97
|
// Type-level provenance: 'admin' types are created via the designer and
|
|
86
98
|
// can be deleted; 'config' types are locked (defined in kywi.config.ts).
|
|
87
99
|
source: ct.source ?? 'config',
|
|
100
|
+
// kywi-cms#12: without this, `resolveContentType`'s fallback to this
|
|
101
|
+
// endpoint (the ONLY path an admin-created type takes — admin types
|
|
102
|
+
// never appear in the config-sourced runtime projection) would always
|
|
103
|
+
// hand ContentEditForm `titleRequired: undefined`, silently defeating
|
|
104
|
+
// the Type Designer's "Require Title" toggle for every admin type.
|
|
105
|
+
titleRequired: ct.titleRequired ?? true,
|
|
88
106
|
fields: ct.fields.map(f => ({ ...f, source: f.source ?? 'config' })),
|
|
89
107
|
}));
|
|
90
108
|
return jsonOk(types);
|
|
@@ -147,6 +165,35 @@ export function registerContentTypeRoutes(router, ctx) {
|
|
|
147
165
|
await ctx.reloadMaps();
|
|
148
166
|
return jsonOk({ deleted: true });
|
|
149
167
|
});
|
|
168
|
+
// PUT /content-types/:type — type-level settings (kywi-cms#12: Title is no
|
|
169
|
+
// longer unconditionally required; a type can opt out via `titleRequired:
|
|
170
|
+
// false`). Config-defined types are locked here just like their fields.
|
|
171
|
+
router.put('/content-types/:type', async (req, params) => {
|
|
172
|
+
const user = await requireSiteAdmin(req, authSecret, db);
|
|
173
|
+
if (!user)
|
|
174
|
+
return unauthorized();
|
|
175
|
+
const typeName = params.type;
|
|
176
|
+
const ct = ctx.getContentTypeMap().get(typeName);
|
|
177
|
+
if (!ct)
|
|
178
|
+
return notFound(`Content type '${typeName}' not found`);
|
|
179
|
+
if (ct.source !== 'admin') {
|
|
180
|
+
return jsonError('FORBIDDEN', `Content type '${typeName}' is defined in kywi.config.ts and cannot be edited here`, 403);
|
|
181
|
+
}
|
|
182
|
+
let body;
|
|
183
|
+
try {
|
|
184
|
+
body = await req.json();
|
|
185
|
+
}
|
|
186
|
+
catch {
|
|
187
|
+
return jsonError('BAD_REQUEST', 'Invalid JSON body', 400);
|
|
188
|
+
}
|
|
189
|
+
const parsed = updateTypeSettingsSchema.safeParse(body);
|
|
190
|
+
if (!parsed.success) {
|
|
191
|
+
return jsonError('VALIDATION_ERROR', 'Validation failed', 400, parsed.error.flatten());
|
|
192
|
+
}
|
|
193
|
+
await updateAdminTypeSettings(db, typeName, parsed.data);
|
|
194
|
+
await ctx.reloadMaps();
|
|
195
|
+
return jsonOk({ updated: true });
|
|
196
|
+
});
|
|
150
197
|
// POST /content-types/:type/reorder — persist admin field order
|
|
151
198
|
router.post('/content-types/:type/reorder', async (req, params) => {
|
|
152
199
|
const user = await requireSiteAdmin(req, authSecret, db);
|
|
@@ -215,6 +262,13 @@ export function registerContentTypeRoutes(router, ctx) {
|
|
|
215
262
|
if (!parsed.success) {
|
|
216
263
|
return jsonError('VALIDATION_ERROR', 'Validation failed', 400, parsed.error.flatten());
|
|
217
264
|
}
|
|
265
|
+
// Never let a custom field shadow a built-in field name (kywi-cms#10): the
|
|
266
|
+
// real editor keeps Title/Slug/Body/Featured Image and every other built-in
|
|
267
|
+
// field in the same flat values object as custom fields, keyed by name — a
|
|
268
|
+
// same-named custom field would silently share (and corrupt) that value.
|
|
269
|
+
if (isReservedFieldName(parsed.data.name)) {
|
|
270
|
+
return jsonError('CONFLICT', `'${parsed.data.name}' is a built-in field name and cannot be used for a custom field`, 409);
|
|
271
|
+
}
|
|
218
272
|
const existingConfigField = ct.fields.find(f => f.name === parsed.data.name && (f.source === 'config' || !f.source));
|
|
219
273
|
if (existingConfigField) {
|
|
220
274
|
return jsonError('CONFLICT', `Field '${parsed.data.name}' is defined in kywi.config.ts and cannot be overridden via the UI`, 409);
|
|
@@ -256,6 +310,7 @@ export function registerContentTypeRoutes(router, ctx) {
|
|
|
256
310
|
options: parsed.data.options ?? existingField.options,
|
|
257
311
|
required: parsed.data.required ?? existingField.required,
|
|
258
312
|
validation: toValidation(parsed.data.validation) ?? existingField.validation,
|
|
313
|
+
relatedType: parsed.data.relatedType ?? existingField.relatedType,
|
|
259
314
|
// FieldDefinition carries no sortOrder, so the previous
|
|
260
315
|
// `?? existingField.sortOrder` fallback was always undefined at runtime.
|
|
261
316
|
sortOrder: parsed.data.sortOrder,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-type-routes.js","sourceRoot":"","sources":["../../src/api/content-type-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACpF,OAAO,EAEL,cAAc,EACd,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAW1D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;AAE1D,MAAM,WAAW,GAAG;IAClB,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa;IACvD,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ;IAC5D,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;CACxB,CAAA;AAEV,MAAM,UAAU,GAAG;IACjB,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;CACrE,CAAA;AAEV,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACpD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACpD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC,MAAM,EAAE,CAAA;AAEX,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,wBAAwB,EAAE,mEAAmE,CAAC;IAC5H,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IACzB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAA;AAEF,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,wBAAwB,EAAE,kEAAkE,CAAC;IAC3H,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;IAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAA;AAEF,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAClC,CAAC,CAAA;AAEF;;;;GAIG;AACH,SAAS,YAAY,CAAC,CAA+C;IACnE,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAA;IACxB,MAAM,GAAG,GAA+C,EAAE,CAAA;IAC1D,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS;QAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;IACxC,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS;QAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;IACxC,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS;QAAE,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAA;IAC1D,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS;QAAE,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAA;IAC1D,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAA;IACpD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;AACtD,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,GAAY,EAAE,UAAkB,EAAE,EAAU;IAC1E,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;IAChF,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IAC3B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAAE,OAAO,IAAI,CAAA;IACzD,OAAO,IAAI,CAAC,IAAI,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,MAAc,EAAE,GAA4B;IACpF,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,GAAG,CAAA;IAE9B,8EAA8E;IAC9E,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACzC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,CAAC;aACvD,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;aAC1C,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACV,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,QAAQ,EAAE,EAAE,CAAC,QAAQ;YACrB,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,wEAAwE;YACxE,yEAAyE;YACzE,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,QAAQ;YAC7B,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC,CAAC;SACrE,CAAC,CAAC,CAAA;QAEL,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,0EAA0E;IAC1E,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,IAAI,IAAa,CAAA;QACjB,IAAI,CAAC;YAAC,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,SAAS,CAAC,aAAa,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;QAAC,CAAC;QAEnG,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC/C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QACxF,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAA;QAE5B,oDAAoD;QACpD,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC,UAAU,EAAE,IAAI,IAAI,8CAA8C,EAAE,GAAG,CAAC,CAAA;QAC3F,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5C,OAAO,SAAS,CAAC,UAAU,EAAE,iBAAiB,IAAI,yEAAyE,EAAE,GAAG,CAAC,CAAA;QACnI,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,UAAU,EAAE,iBAAiB,IAAI,kBAAkB,EAAE,GAAG,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC,UAAU,EAAE,iBAAiB,IAAI,kBAAkB,EAAE,GAAG,CAAC,CAAA;QAC5E,CAAC;QACD,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QAEtB,OAAO,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,mFAAmF;IACnF,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAC1D,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAK,CAAA;QAC7B,IAAI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,SAAS,EAAE,CAAA;QACpD,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAChD,IAAI,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,iBAAiB,QAAQ,aAAa,CAAC,CAAA;QAChE,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC,WAAW,EAAE,iBAAiB,QAAQ,2DAA2D,EAAE,GAAG,CAAC,CAAA;QAC1H,CAAC;QAED,uEAAuE;QACvE,6DAA6D;QAC7D,MAAM,wBAAwB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAC5C,MAAM,eAAe,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACnC,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QAEtB,OAAO,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,gEAAgE;IAChE,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAChE,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAK,CAAC,CAAA;QACpD,IAAI,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,iBAAiB,MAAM,CAAC,IAAI,aAAa,CAAC,CAAA;QAEnE,IAAI,IAAa,CAAA;QACjB,IAAI,CAAC;YAAC,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,SAAS,CAAC,aAAa,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;QAAC,CAAC;QACnG,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QACxF,CAAC;QAED,0EAA0E;QAC1E,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAA;YAC/E,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,MAAM,cAAc,CAAC,EAAE,EAAE;gBACvB,eAAe,EAAE,MAAM,CAAC,IAAK;gBAC7B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,SAAS,EAAE,KAAK,EAAE;aACnB,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QAEtB,OAAO,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,wDAAwD;IACxD,MAAM,CAAC,GAAG,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAC9D,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAK,CAAC,CAAA;QACpD,IAAI,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,iBAAiB,MAAM,CAAC,IAAI,aAAa,CAAC,CAAA;QAEnE,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7E,CAAC,CAAC,CAAA;IAEF,wDAAwD;IACxD,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAC/D,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAK,CAAC,CAAA;QACpD,IAAI,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,iBAAiB,MAAM,CAAC,IAAI,aAAa,CAAC,CAAA;QAEnE,IAAI,IAAa,CAAA;QACjB,IAAI,CAAC;YAAC,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,SAAS,CAAC,aAAa,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;QAAC,CAAC;QAEnG,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QACxF,CAAC;QAED,MAAM,mBAAmB,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CACxC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CACzE,CAAA;QACD,IAAI,mBAAmB,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC,UAAU,EAAE,UAAU,MAAM,CAAC,IAAI,CAAC,IAAI,oEAAoE,EAAE,GAAG,CAAC,CAAA;QACnI,CAAC;QAED,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,CAAA;QAC3C,MAAM,cAAc,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,CAAC,IAAK,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QAC1G,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QAEtB,OAAO,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,iEAAiE;IACjE,MAAM,CAAC,GAAG,CAAC,oCAAoC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QACrE,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAK,CAAC,CAAA;QACpD,IAAI,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,iBAAiB,MAAM,CAAC,IAAI,aAAa,CAAC,CAAA;QAEnE,MAAM,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,CAAA;QAClE,IAAI,CAAC,aAAa;YAAE,OAAO,QAAQ,CAAC,UAAU,MAAM,CAAC,KAAK,aAAa,CAAC,CAAA;QACxE,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,SAAS,EAAE,CAAA;QAElF,IAAI,IAAa,CAAA;QACjB,IAAI,CAAC;YAAC,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,SAAS,CAAC,aAAa,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;QAAC,CAAC;QAEnG,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC,kBAAkB,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QACxF,CAAC;QAED,MAAM,cAAc,CAAC,EAAE,EAAE;YACvB,eAAe,EAAE,MAAM,CAAC,IAAK;YAC7B,IAAI,EAAE,MAAM,CAAC,KAAM;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI;YAC5C,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK;YAC/C,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO;YACrD,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ;YACxD,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,UAAU;YAC5E,wDAAwD;YACxD,yEAAyE;YACzE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS;SACjC,CAAC,CAAA;QACF,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QAEtB,OAAO,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAChC,CAAC,CAAC,CAAA;IAEF,oEAAoE;IACpE,MAAM,CAAC,MAAM,CAAC,oCAAoC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QACxE,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAK,CAAC,CAAA;QACpD,IAAI,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,iBAAiB,MAAM,CAAC,IAAI,aAAa,CAAC,CAAA;QAEnE,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,CAAA;QAC1D,IAAI,CAAC,KAAK;YAAE,OAAO,QAAQ,CAAC,UAAU,MAAM,CAAC,KAAK,aAAa,CAAC,CAAA;QAChE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,SAAS,EAAE,CAAA;QAElE,MAAM,gBAAgB,CAAC,EAAE,EAAE,MAAM,CAAC,IAAK,EAAE,MAAM,CAAC,KAAM,CAAC,CAAA;QACvD,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QAEtB,OAAO,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,oFAAoF;IACpF,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,OAAO,GAA6F,EAAE,CAAA;QAE5G,KAAK,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,EAAE,CAAC;YACrD,IAAI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,SAAQ;YAC1C,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAQ;YAEpC,IAAI,CAAC;gBACH,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,CAAA;gBAClF,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;YAC/D,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAA;YACpF,CAAC;QACH,CAAC;QAED,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QACtB,OAAO,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;IAC3C,CAAC,CAAC,CAAA;IAEF,kFAAkF;IAClF,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACjD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI;YAAE,OAAO,YAAY,EAAE,CAAA;QAEhC,MAAM,GAAG,CAAC,UAAU,EAAE,CAAA;QACtB,OAAO,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"content-type-routes.js","sourceRoot":"","sources":["../../src/api/content-type-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
1
2
|
import type { Router } from './router.js';
|
|
2
3
|
import type { KywiDb } from '../db/client.js';
|
|
3
4
|
import type { KywiConfig, ContentTypeConfig } from '../config/types.js';
|
|
@@ -9,5 +10,184 @@ export interface FeedRouteContext {
|
|
|
9
10
|
contentTypeMap: Map<string, ContentTypeConfig>;
|
|
10
11
|
customTableMap: Map<string, PgTableWithColumns<any>>;
|
|
11
12
|
}
|
|
13
|
+
export declare const feedQuerySchema: z.ZodObject<{
|
|
14
|
+
contentType: z.ZodString;
|
|
15
|
+
siteId: z.ZodOptional<z.ZodString>;
|
|
16
|
+
filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
17
|
+
field: z.ZodString;
|
|
18
|
+
operator: z.ZodEnum<["eq", "neq", "gt", "gte", "lt", "lte", "contains", "begins", "ends", "in", "notin", "isNull", "isNotNull"]>;
|
|
19
|
+
value: z.ZodOptional<z.ZodUnknown>;
|
|
20
|
+
}, "strip", z.ZodTypeAny, {
|
|
21
|
+
field: string;
|
|
22
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
23
|
+
value?: unknown;
|
|
24
|
+
}, {
|
|
25
|
+
field: string;
|
|
26
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
27
|
+
value?: unknown;
|
|
28
|
+
}>, "many">>;
|
|
29
|
+
filterGroups: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
30
|
+
operator: z.ZodEnum<["and", "or"]>;
|
|
31
|
+
conditions: z.ZodArray<z.ZodObject<{
|
|
32
|
+
field: z.ZodString;
|
|
33
|
+
operator: z.ZodEnum<["eq", "neq", "gt", "gte", "lt", "lte", "contains", "begins", "ends", "in", "notin", "isNull", "isNotNull"]>;
|
|
34
|
+
value: z.ZodOptional<z.ZodUnknown>;
|
|
35
|
+
}, "strip", z.ZodTypeAny, {
|
|
36
|
+
field: string;
|
|
37
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
38
|
+
value?: unknown;
|
|
39
|
+
}, {
|
|
40
|
+
field: string;
|
|
41
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
42
|
+
value?: unknown;
|
|
43
|
+
}>, "many">;
|
|
44
|
+
}, "strip", z.ZodTypeAny, {
|
|
45
|
+
conditions: {
|
|
46
|
+
field: string;
|
|
47
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
48
|
+
value?: unknown;
|
|
49
|
+
}[];
|
|
50
|
+
operator: "and" | "or";
|
|
51
|
+
}, {
|
|
52
|
+
conditions: {
|
|
53
|
+
field: string;
|
|
54
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
55
|
+
value?: unknown;
|
|
56
|
+
}[];
|
|
57
|
+
operator: "and" | "or";
|
|
58
|
+
}>, "many">>;
|
|
59
|
+
search: z.ZodOptional<z.ZodString>;
|
|
60
|
+
status: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
61
|
+
locale: z.ZodOptional<z.ZodString>;
|
|
62
|
+
parentId: z.ZodOptional<z.ZodString>;
|
|
63
|
+
categoryIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
64
|
+
tagIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
65
|
+
categorySlugs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
66
|
+
tagSlugs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
67
|
+
maxDepth: z.ZodOptional<z.ZodNumber>;
|
|
68
|
+
sort: z.ZodOptional<z.ZodObject<{
|
|
69
|
+
field: z.ZodString;
|
|
70
|
+
direction: z.ZodEnum<["asc", "desc"]>;
|
|
71
|
+
}, "strip", z.ZodTypeAny, {
|
|
72
|
+
field: string;
|
|
73
|
+
direction: "asc" | "desc";
|
|
74
|
+
}, {
|
|
75
|
+
field: string;
|
|
76
|
+
direction: "asc" | "desc";
|
|
77
|
+
}>>;
|
|
78
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
79
|
+
page: z.ZodOptional<z.ZodNumber>;
|
|
80
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
81
|
+
display: z.ZodOptional<z.ZodObject<{
|
|
82
|
+
layout: z.ZodEnum<["list", "grid", "carousel"]>;
|
|
83
|
+
showImage: z.ZodBoolean;
|
|
84
|
+
showSummary: z.ZodBoolean;
|
|
85
|
+
showDate: z.ZodBoolean;
|
|
86
|
+
showAuthor: z.ZodBoolean;
|
|
87
|
+
columnsDesktop: z.ZodOptional<z.ZodNumber>;
|
|
88
|
+
columnsMobile: z.ZodOptional<z.ZodNumber>;
|
|
89
|
+
}, "strip", z.ZodTypeAny, {
|
|
90
|
+
layout: "carousel" | "list" | "grid";
|
|
91
|
+
showImage: boolean;
|
|
92
|
+
showSummary: boolean;
|
|
93
|
+
showDate: boolean;
|
|
94
|
+
showAuthor: boolean;
|
|
95
|
+
columnsDesktop?: number | undefined;
|
|
96
|
+
columnsMobile?: number | undefined;
|
|
97
|
+
}, {
|
|
98
|
+
layout: "carousel" | "list" | "grid";
|
|
99
|
+
showImage: boolean;
|
|
100
|
+
showSummary: boolean;
|
|
101
|
+
showDate: boolean;
|
|
102
|
+
showAuthor: boolean;
|
|
103
|
+
columnsDesktop?: number | undefined;
|
|
104
|
+
columnsMobile?: number | undefined;
|
|
105
|
+
}>>;
|
|
106
|
+
rss: z.ZodOptional<z.ZodBoolean>;
|
|
107
|
+
}, "strict", z.ZodTypeAny, {
|
|
108
|
+
contentType: string;
|
|
109
|
+
siteId?: string | undefined;
|
|
110
|
+
parentId?: string | undefined;
|
|
111
|
+
status?: string | string[] | undefined;
|
|
112
|
+
search?: string | undefined;
|
|
113
|
+
sort?: {
|
|
114
|
+
field: string;
|
|
115
|
+
direction: "asc" | "desc";
|
|
116
|
+
} | undefined;
|
|
117
|
+
locale?: string | undefined;
|
|
118
|
+
limit?: number | undefined;
|
|
119
|
+
display?: {
|
|
120
|
+
layout: "carousel" | "list" | "grid";
|
|
121
|
+
showImage: boolean;
|
|
122
|
+
showSummary: boolean;
|
|
123
|
+
showDate: boolean;
|
|
124
|
+
showAuthor: boolean;
|
|
125
|
+
columnsDesktop?: number | undefined;
|
|
126
|
+
columnsMobile?: number | undefined;
|
|
127
|
+
} | undefined;
|
|
128
|
+
page?: number | undefined;
|
|
129
|
+
categoryIds?: string[] | undefined;
|
|
130
|
+
tagIds?: string[] | undefined;
|
|
131
|
+
filters?: {
|
|
132
|
+
field: string;
|
|
133
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
134
|
+
value?: unknown;
|
|
135
|
+
}[] | undefined;
|
|
136
|
+
filterGroups?: {
|
|
137
|
+
conditions: {
|
|
138
|
+
field: string;
|
|
139
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
140
|
+
value?: unknown;
|
|
141
|
+
}[];
|
|
142
|
+
operator: "and" | "or";
|
|
143
|
+
}[] | undefined;
|
|
144
|
+
categorySlugs?: string[] | undefined;
|
|
145
|
+
tagSlugs?: string[] | undefined;
|
|
146
|
+
maxDepth?: number | undefined;
|
|
147
|
+
offset?: number | undefined;
|
|
148
|
+
rss?: boolean | undefined;
|
|
149
|
+
}, {
|
|
150
|
+
contentType: string;
|
|
151
|
+
siteId?: string | undefined;
|
|
152
|
+
parentId?: string | undefined;
|
|
153
|
+
status?: string | string[] | undefined;
|
|
154
|
+
search?: string | undefined;
|
|
155
|
+
sort?: {
|
|
156
|
+
field: string;
|
|
157
|
+
direction: "asc" | "desc";
|
|
158
|
+
} | undefined;
|
|
159
|
+
locale?: string | undefined;
|
|
160
|
+
limit?: number | undefined;
|
|
161
|
+
display?: {
|
|
162
|
+
layout: "carousel" | "list" | "grid";
|
|
163
|
+
showImage: boolean;
|
|
164
|
+
showSummary: boolean;
|
|
165
|
+
showDate: boolean;
|
|
166
|
+
showAuthor: boolean;
|
|
167
|
+
columnsDesktop?: number | undefined;
|
|
168
|
+
columnsMobile?: number | undefined;
|
|
169
|
+
} | undefined;
|
|
170
|
+
page?: number | undefined;
|
|
171
|
+
categoryIds?: string[] | undefined;
|
|
172
|
+
tagIds?: string[] | undefined;
|
|
173
|
+
filters?: {
|
|
174
|
+
field: string;
|
|
175
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
176
|
+
value?: unknown;
|
|
177
|
+
}[] | undefined;
|
|
178
|
+
filterGroups?: {
|
|
179
|
+
conditions: {
|
|
180
|
+
field: string;
|
|
181
|
+
operator: "contains" | "gte" | "lte" | "eq" | "neq" | "gt" | "lt" | "begins" | "ends" | "in" | "notin" | "isNull" | "isNotNull";
|
|
182
|
+
value?: unknown;
|
|
183
|
+
}[];
|
|
184
|
+
operator: "and" | "or";
|
|
185
|
+
}[] | undefined;
|
|
186
|
+
categorySlugs?: string[] | undefined;
|
|
187
|
+
tagSlugs?: string[] | undefined;
|
|
188
|
+
maxDepth?: number | undefined;
|
|
189
|
+
offset?: number | undefined;
|
|
190
|
+
rss?: boolean | undefined;
|
|
191
|
+
}>;
|
|
12
192
|
export declare function registerFeedRoutes(router: Router, ctx: FeedRouteContext): void;
|
|
13
193
|
//# sourceMappingURL=feed-routes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed-routes.d.ts","sourceRoot":"","sources":["../../src/api/feed-routes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feed-routes.d.ts","sourceRoot":"","sources":["../../src/api/feed-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAS7D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,UAAU,CAAA;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAC9C,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;CACrD;AAkCD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6BjB,CAAA;AAaX,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,IAAI,CA4J9E"}
|
package/dist/api/feed-routes.js
CHANGED
|
@@ -31,8 +31,16 @@ const feedDisplayConfigSchema = z.object({
|
|
|
31
31
|
columnsDesktop: z.number().optional(),
|
|
32
32
|
columnsMobile: z.number().optional(),
|
|
33
33
|
});
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
// Exported (kywi-cms#26) so tests can validate against the real schema
|
|
35
|
+
// instead of a hand-duplicated copy that can silently drift from it.
|
|
36
|
+
export const feedQuerySchema = z.object({
|
|
37
|
+
// kywi-cms#26: an empty contentType used to be accepted silently and just
|
|
38
|
+
// matched no content ("The query matched no content.") with no indication
|
|
39
|
+
// anything was wrong. The admin UI now keeps its contentType <select> synced
|
|
40
|
+
// so it should never submit "" — this rejects it explicitly instead of
|
|
41
|
+
// quietly running a query that can never return anything, for this route and
|
|
42
|
+
// any other caller of the same schema (create/update feed).
|
|
43
|
+
contentType: z.string().min(1, 'contentType is required'),
|
|
36
44
|
siteId: z.string().optional(),
|
|
37
45
|
filters: z.array(filterConditionSchema).optional(),
|
|
38
46
|
filterGroups: z.array(filterGroupSchema).optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed-routes.js","sourceRoot":"","sources":["../../src/api/feed-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACrG,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACpG,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAgB,MAAM,iBAAiB,CAAA;AAU3D,iFAAiF;AAEjF,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK;IACrC,UAAU,EAAE,QAAQ,EAAE,MAAM;IAC5B,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,WAAW;CACtB,CAAC,CAAA;AAEF,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,QAAQ,EAAE,oBAAoB;IAC9B,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/B,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;CAC3C,CAAC,CAAA;AAEF,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE;IACtB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;IACxB,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;IACvB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAA;AAEF,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"feed-routes.js","sourceRoot":"","sources":["../../src/api/feed-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,12 @@ export interface FormRouteContext {
|
|
|
24
24
|
siteIdMap?: Record<string, string>;
|
|
25
25
|
}
|
|
26
26
|
export declare function checkHoneypot(body: Record<string, unknown>): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* True when the form declares a reCAPTCHA field (flat or in any step). Only such
|
|
29
|
+
* forms trigger token verification, so forms without the field are never gated —
|
|
30
|
+
* and the per-request site-settings lookup is skipped for them (kywi-cms#37).
|
|
31
|
+
*/
|
|
32
|
+
export declare function formHasRecaptchaField(form: unknown): boolean;
|
|
27
33
|
export declare function isRateLimited(ip: string, maxPerWindow: number, windowMs: number, now?: number): boolean;
|
|
28
34
|
/** Exposed for testing — clears the rate limit store. */
|
|
29
35
|
export declare function resetRateLimitStore(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-routes.d.ts","sourceRoot":"","sources":["../../src/api/form-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAepD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAItD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"form-routes.d.ts","sourceRoot":"","sources":["../../src/api/form-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAepD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAItD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAExD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,UAAU,CAAA;IAClB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,uEAAuE;IACvE,SAAS,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACxD;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACnC;AAYD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAIpE;AAID;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAU5D;AAUD,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,GAAG,SAAa,GACf,OAAO,CAYT;AAED,yDAAyD;AACzD,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAID,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAoZ9E"}
|