@kywi-software/core 0.14.0 → 0.15.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/AGENT-PATTERNS.md +200 -17
- package/README.md +38 -12
- package/dist/admin/audience-editor.d.ts +2 -0
- package/dist/admin/audience-editor.d.ts.map +1 -1
- package/dist/admin/audience-editor.js +4 -2
- package/dist/admin/audience-editor.js.map +1 -1
- package/dist/admin/chrome.d.ts.map +1 -1
- package/dist/admin/chrome.js +6 -7
- package/dist/admin/chrome.js.map +1 -1
- package/dist/admin/condition-builder.d.ts.map +1 -1
- package/dist/admin/condition-builder.js +16 -3
- package/dist/admin/condition-builder.js.map +1 -1
- package/dist/admin/field-components.d.ts.map +1 -1
- package/dist/admin/field-components.js +27 -1
- package/dist/admin/field-components.js.map +1 -1
- package/dist/admin/form-helpers.d.ts.map +1 -1
- package/dist/admin/form-helpers.js +6 -1
- package/dist/admin/form-helpers.js.map +1 -1
- package/dist/admin/layout-editor/chrome-env.d.ts +35 -0
- package/dist/admin/layout-editor/chrome-env.d.ts.map +1 -0
- package/dist/admin/layout-editor/chrome-env.js +13 -0
- package/dist/admin/layout-editor/chrome-env.js.map +1 -0
- package/dist/admin/layout-editor/component-actions.d.ts +58 -7
- package/dist/admin/layout-editor/component-actions.d.ts.map +1 -1
- package/dist/admin/layout-editor/component-actions.js +131 -5
- package/dist/admin/layout-editor/component-actions.js.map +1 -1
- package/dist/admin/layout-editor/component-fork.d.ts +4 -4
- package/dist/admin/layout-editor/component-fork.d.ts.map +1 -1
- package/dist/admin/layout-editor/component-fork.js +76 -10
- package/dist/admin/layout-editor/component-fork.js.map +1 -1
- package/dist/admin/layout-editor/component-picker-field.d.ts +17 -3
- package/dist/admin/layout-editor/component-picker-field.d.ts.map +1 -1
- package/dist/admin/layout-editor/component-picker-field.js +5 -2
- package/dist/admin/layout-editor/component-picker-field.js.map +1 -1
- package/dist/admin/layout-editor/drag-feedback.d.ts +25 -1
- package/dist/admin/layout-editor/drag-feedback.d.ts.map +1 -1
- package/dist/admin/layout-editor/drag-feedback.js +9 -0
- package/dist/admin/layout-editor/drag-feedback.js.map +1 -1
- package/dist/admin/layout-editor/drag-utils.d.ts +103 -5
- package/dist/admin/layout-editor/drag-utils.d.ts.map +1 -1
- package/dist/admin/layout-editor/drag-utils.js +131 -4
- package/dist/admin/layout-editor/drag-utils.js.map +1 -1
- package/dist/admin/layout-editor/editor-canvas.d.ts +11 -0
- package/dist/admin/layout-editor/editor-canvas.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-canvas.js +134 -20
- package/dist/admin/layout-editor/editor-canvas.js.map +1 -1
- package/dist/admin/layout-editor/editor-dialog.d.ts +58 -3
- package/dist/admin/layout-editor/editor-dialog.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-dialog.js +71 -9
- package/dist/admin/layout-editor/editor-dialog.js.map +1 -1
- package/dist/admin/layout-editor/editor-state.d.ts +119 -0
- package/dist/admin/layout-editor/editor-state.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-state.js +188 -6
- package/dist/admin/layout-editor/editor-state.js.map +1 -1
- package/dist/admin/layout-editor/editor-toolbar.d.ts +10 -1
- package/dist/admin/layout-editor/editor-toolbar.d.ts.map +1 -1
- package/dist/admin/layout-editor/editor-toolbar.js +2 -2
- package/dist/admin/layout-editor/editor-toolbar.js.map +1 -1
- package/dist/admin/layout-editor/editor.css +216 -8
- package/dist/admin/layout-editor/inline-text.d.ts +15 -1
- package/dist/admin/layout-editor/inline-text.d.ts.map +1 -1
- package/dist/admin/layout-editor/inline-text.js +30 -2
- package/dist/admin/layout-editor/inline-text.js.map +1 -1
- package/dist/admin/layout-editor/layout-editor.d.ts +21 -16
- package/dist/admin/layout-editor/layout-editor.d.ts.map +1 -1
- package/dist/admin/layout-editor/layout-editor.js +40 -17
- package/dist/admin/layout-editor/layout-editor.js.map +1 -1
- package/dist/admin/layout-editor/linked-component-notes.d.ts +88 -0
- package/dist/admin/layout-editor/linked-component-notes.d.ts.map +1 -0
- package/dist/admin/layout-editor/linked-component-notes.js +88 -0
- package/dist/admin/layout-editor/linked-component-notes.js.map +1 -0
- package/dist/admin/layout-editor/module-overlay.d.ts +23 -4
- package/dist/admin/layout-editor/module-overlay.d.ts.map +1 -1
- package/dist/admin/layout-editor/module-overlay.js +56 -10
- package/dist/admin/layout-editor/module-overlay.js.map +1 -1
- package/dist/admin/layout-editor/module-variant-container-config.d.ts.map +1 -1
- package/dist/admin/layout-editor/module-variant-container-config.js +9 -2
- package/dist/admin/layout-editor/module-variant-container-config.js.map +1 -1
- package/dist/admin/layout-editor/module-variant-container-panel.d.ts +75 -0
- package/dist/admin/layout-editor/module-variant-container-panel.d.ts.map +1 -0
- package/dist/admin/layout-editor/module-variant-container-panel.js +29 -0
- package/dist/admin/layout-editor/module-variant-container-panel.js.map +1 -0
- package/dist/admin/layout-editor/node-lookup.d.ts.map +1 -1
- package/dist/admin/layout-editor/node-lookup.js +33 -3
- package/dist/admin/layout-editor/node-lookup.js.map +1 -1
- package/dist/admin/layout-editor/overlay-shell.d.ts.map +1 -1
- package/dist/admin/layout-editor/overlay-shell.js +19 -4
- package/dist/admin/layout-editor/overlay-shell.js.map +1 -1
- package/dist/admin/layout-editor/props-panel.d.ts +28 -11
- package/dist/admin/layout-editor/props-panel.d.ts.map +1 -1
- package/dist/admin/layout-editor/props-panel.js +75 -125
- package/dist/admin/layout-editor/props-panel.js.map +1 -1
- package/dist/admin/layout-editor/section-variant-container-config.d.ts.map +1 -1
- package/dist/admin/layout-editor/section-variant-container-config.js +11 -2
- package/dist/admin/layout-editor/section-variant-container-config.js.map +1 -1
- package/dist/admin/layout-editor/use-chrome-flip.d.ts +99 -11
- package/dist/admin/layout-editor/use-chrome-flip.d.ts.map +1 -1
- package/dist/admin/layout-editor/use-chrome-flip.js +268 -97
- package/dist/admin/layout-editor/use-chrome-flip.js.map +1 -1
- package/dist/admin/layout-editor/use-component-connect.d.ts +13 -0
- package/dist/admin/layout-editor/use-component-connect.d.ts.map +1 -1
- package/dist/admin/layout-editor/use-component-connect.js +116 -20
- package/dist/admin/layout-editor/use-component-connect.js.map +1 -1
- package/dist/admin/layout-editor/use-component-fork.d.ts +49 -19
- package/dist/admin/layout-editor/use-component-fork.d.ts.map +1 -1
- package/dist/admin/layout-editor/use-component-fork.js +28 -19
- package/dist/admin/layout-editor/use-component-fork.js.map +1 -1
- package/dist/admin/layout-editor/use-component-library.d.ts +4 -4
- package/dist/admin/layout-editor/use-component-library.d.ts.map +1 -1
- package/dist/admin/layout-editor/use-component-library.js +1 -1
- package/dist/admin/layout-editor/use-component-library.js.map +1 -1
- package/dist/admin/layout-editor/use-editor-dnd.d.ts +10 -0
- package/dist/admin/layout-editor/use-editor-dnd.d.ts.map +1 -1
- package/dist/admin/layout-editor/use-editor-dnd.js +234 -14
- package/dist/admin/layout-editor/use-editor-dnd.js.map +1 -1
- package/dist/admin/layout-editor/variant-container-config.d.ts.map +1 -1
- package/dist/admin/layout-editor/variant-container-config.js +1 -1
- package/dist/admin/layout-editor/variant-container-config.js.map +1 -1
- package/dist/admin/layout-editor/variant-editor.d.ts +16 -15
- package/dist/admin/layout-editor/variant-editor.d.ts.map +1 -1
- package/dist/admin/layout-editor/variant-editor.js +16 -5
- package/dist/admin/layout-editor/variant-editor.js.map +1 -1
- package/dist/admin/primitives.d.ts.map +1 -1
- package/dist/admin/primitives.js +1 -1
- package/dist/admin/primitives.js.map +1 -1
- package/dist/admin/registry.d.ts +12 -0
- package/dist/admin/registry.d.ts.map +1 -1
- package/dist/admin/registry.js +12 -0
- package/dist/admin/registry.js.map +1 -1
- package/dist/admin/rule-tester.d.ts +1 -0
- package/dist/admin/rule-tester.d.ts.map +1 -1
- package/dist/admin/rule-tester.js +7 -4
- package/dist/admin/rule-tester.js.map +1 -1
- package/dist/admin/server.d.ts +10 -1
- package/dist/admin/server.d.ts.map +1 -1
- package/dist/admin/server.js +4 -1
- package/dist/admin/server.js.map +1 -1
- package/dist/admin/signal-options.d.ts +17 -0
- package/dist/admin/signal-options.d.ts.map +1 -1
- package/dist/admin/signal-options.js +28 -0
- package/dist/admin/signal-options.js.map +1 -1
- package/dist/admin/site-switcher.d.ts +16 -3
- package/dist/admin/site-switcher.d.ts.map +1 -1
- package/dist/admin/site-switcher.js +18 -3
- package/dist/admin/site-switcher.js.map +1 -1
- package/dist/admin/styles/admin.css +0 -3
- package/dist/admin/surface-matcher.d.ts +6 -2
- package/dist/admin/surface-matcher.d.ts.map +1 -1
- package/dist/admin/surface-matcher.js +42 -5
- package/dist/admin/surface-matcher.js.map +1 -1
- package/dist/admin/surfaces/audiences/audiences-data.d.ts +5 -0
- package/dist/admin/surfaces/audiences/audiences-data.d.ts.map +1 -1
- package/dist/admin/surfaces/audiences/audiences-data.js +3 -0
- package/dist/admin/surfaces/audiences/audiences-data.js.map +1 -1
- package/dist/admin/surfaces/components/components-data.d.ts +31 -11
- package/dist/admin/surfaces/components/components-data.d.ts.map +1 -1
- package/dist/admin/surfaces/components/components-data.js +17 -4
- package/dist/admin/surfaces/components/components-data.js.map +1 -1
- package/dist/admin/surfaces/components/components-list.d.ts.map +1 -1
- package/dist/admin/surfaces/components/components-list.js +20 -7
- package/dist/admin/surfaces/components/components-list.js.map +1 -1
- package/dist/admin/surfaces/components/definition-canvas.d.ts +11 -3
- package/dist/admin/surfaces/components/definition-canvas.d.ts.map +1 -1
- package/dist/admin/surfaces/components/definition-canvas.js +138 -17
- package/dist/admin/surfaces/components/definition-canvas.js.map +1 -1
- package/dist/admin/surfaces/dashboard/dashboard-index.d.ts.map +1 -1
- package/dist/admin/surfaces/dashboard/dashboard-index.js +2 -2
- package/dist/admin/surfaces/dashboard/dashboard-index.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 +12 -11
- package/dist/admin/surfaces/layouts/layout-editor-client.js.map +1 -1
- package/dist/admin/surfaces/menus/menu-editor.d.ts.map +1 -1
- package/dist/admin/surfaces/menus/menu-editor.js +17 -4
- package/dist/admin/surfaces/menus/menu-editor.js.map +1 -1
- package/dist/admin/surfaces/menus/menu-tree.d.ts +18 -4
- package/dist/admin/surfaces/menus/menu-tree.d.ts.map +1 -1
- package/dist/admin/surfaces/menus/menu-tree.js +18 -3
- package/dist/admin/surfaces/menus/menu-tree.js.map +1 -1
- package/dist/admin/surfaces/menus/menus-data.d.ts +18 -0
- package/dist/admin/surfaces/menus/menus-data.d.ts.map +1 -1
- package/dist/admin/surfaces/menus/menus-data.js +4 -0
- package/dist/admin/surfaces/menus/menus-data.js.map +1 -1
- package/dist/admin/surfaces/menus/menus-list.d.ts.map +1 -1
- package/dist/admin/surfaces/menus/menus-list.js +2 -12
- package/dist/admin/surfaces/menus/menus-list.js.map +1 -1
- package/dist/admin/surfaces/users/users-data.d.ts +14 -0
- package/dist/admin/surfaces/users/users-data.d.ts.map +1 -1
- package/dist/admin/surfaces/users/users-data.js +19 -0
- package/dist/admin/surfaces/users/users-data.js.map +1 -1
- package/dist/admin/surfaces/users/users-detail.d.ts.map +1 -1
- package/dist/admin/surfaces/users/users-detail.js +40 -4
- package/dist/admin/surfaces/users/users-detail.js.map +1 -1
- package/dist/admin/surfaces/users/users-new.d.ts.map +1 -1
- package/dist/admin/surfaces/users/users-new.js +8 -5
- package/dist/admin/surfaces/users/users-new.js.map +1 -1
- package/dist/admin/user-form.d.ts +10 -1
- package/dist/admin/user-form.d.ts.map +1 -1
- package/dist/admin/user-form.js +2 -2
- package/dist/admin/user-form.js.map +1 -1
- package/dist/api/admin-features-routes.js +2 -2
- package/dist/api/admin-features-routes.js.map +1 -1
- package/dist/api/api-key-routes.js +2 -2
- package/dist/api/api-key-routes.js.map +1 -1
- package/dist/api/audience-preview-routes.d.ts +7 -0
- package/dist/api/audience-preview-routes.d.ts.map +1 -1
- package/dist/api/audience-preview-routes.js +4 -4
- package/dist/api/audience-preview-routes.js.map +1 -1
- package/dist/api/audience-routes.d.ts +7 -0
- package/dist/api/audience-routes.d.ts.map +1 -1
- package/dist/api/audience-routes.js +31 -19
- package/dist/api/audience-routes.js.map +1 -1
- package/dist/api/audience-runtime-routes.d.ts +23 -0
- package/dist/api/audience-runtime-routes.d.ts.map +1 -1
- package/dist/api/audience-runtime-routes.js +511 -25
- package/dist/api/audience-runtime-routes.js.map +1 -1
- package/dist/api/auth-routes.d.ts.map +1 -1
- package/dist/api/auth-routes.js +10 -4
- package/dist/api/auth-routes.js.map +1 -1
- package/dist/api/auth.d.ts +1 -0
- package/dist/api/auth.d.ts.map +1 -1
- package/dist/api/auth.js +43 -3
- package/dist/api/auth.js.map +1 -1
- package/dist/api/ax-routes.d.ts.map +1 -1
- package/dist/api/ax-routes.js +7 -3
- package/dist/api/ax-routes.js.map +1 -1
- package/dist/api/bulk-routes.d.ts.map +1 -1
- package/dist/api/bulk-routes.js +7 -7
- package/dist/api/bulk-routes.js.map +1 -1
- package/dist/api/category-routes.js +6 -6
- package/dist/api/category-routes.js.map +1 -1
- package/dist/api/changeset-routes.js +2 -2
- package/dist/api/changeset-routes.js.map +1 -1
- package/dist/api/comment-routes.js +12 -12
- package/dist/api/comment-routes.js.map +1 -1
- package/dist/api/component-routes.d.ts +25 -0
- package/dist/api/component-routes.d.ts.map +1 -1
- package/dist/api/component-routes.js +44 -19
- package/dist/api/component-routes.js.map +1 -1
- package/dist/api/config-routes.js +4 -4
- package/dist/api/config-routes.js.map +1 -1
- package/dist/api/content-permission-routes.js +2 -2
- package/dist/api/content-permission-routes.js.map +1 -1
- package/dist/api/content-routes.d.ts.map +1 -1
- package/dist/api/content-routes.js +21 -16
- package/dist/api/content-routes.js.map +1 -1
- package/dist/api/content-type-routes.js +3 -3
- package/dist/api/content-type-routes.js.map +1 -1
- package/dist/api/dashboard-routes.js +1 -1
- package/dist/api/dashboard-routes.js.map +1 -1
- package/dist/api/experiment-routes.d.ts +7 -0
- package/dist/api/experiment-routes.d.ts.map +1 -1
- package/dist/api/experiment-routes.js +10 -10
- package/dist/api/experiment-routes.js.map +1 -1
- package/dist/api/experiment-runtime-routes.d.ts +6 -0
- package/dist/api/experiment-runtime-routes.d.ts.map +1 -1
- package/dist/api/experiment-runtime-routes.js +47 -11
- package/dist/api/experiment-runtime-routes.js.map +1 -1
- package/dist/api/extension-routes.js +4 -4
- package/dist/api/extension-routes.js.map +1 -1
- package/dist/api/feed-routes.d.ts +2 -2
- package/dist/api/feed-routes.js +5 -5
- package/dist/api/feed-routes.js.map +1 -1
- package/dist/api/form-routes.js +6 -6
- package/dist/api/form-routes.js.map +1 -1
- package/dist/api/graphql/resolvers.d.ts +1 -1
- package/dist/api/graphql/resolvers.d.ts.map +1 -1
- package/dist/api/graphql/resolvers.js +68 -33
- package/dist/api/graphql/resolvers.js.map +1 -1
- package/dist/api/group-routes.js +9 -9
- package/dist/api/group-routes.js.map +1 -1
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +43 -7
- package/dist/api/index.js.map +1 -1
- package/dist/api/layout-routes.d.ts +19 -1
- package/dist/api/layout-routes.d.ts.map +1 -1
- package/dist/api/layout-routes.js +92 -8
- package/dist/api/layout-routes.js.map +1 -1
- package/dist/api/layout-write-guard.d.ts +3 -2
- package/dist/api/layout-write-guard.d.ts.map +1 -1
- package/dist/api/layout-write-guard.js +12 -4
- package/dist/api/layout-write-guard.js.map +1 -1
- package/dist/api/media-routes.d.ts.map +1 -1
- package/dist/api/media-routes.js +100 -35
- package/dist/api/media-routes.js.map +1 -1
- package/dist/api/menu-routes.d.ts +9 -1
- package/dist/api/menu-routes.d.ts.map +1 -1
- package/dist/api/menu-routes.js +46 -12
- package/dist/api/menu-routes.js.map +1 -1
- package/dist/api/nav-routes.d.ts +6 -0
- package/dist/api/nav-routes.d.ts.map +1 -1
- package/dist/api/nav-routes.js +25 -4
- package/dist/api/nav-routes.js.map +1 -1
- package/dist/api/oauth-routes.js +2 -2
- package/dist/api/oauth-routes.js.map +1 -1
- package/dist/api/openapi.d.ts.map +1 -1
- package/dist/api/openapi.js +82 -34
- package/dist/api/openapi.js.map +1 -1
- package/dist/api/pagination.d.ts +10 -0
- package/dist/api/pagination.d.ts.map +1 -1
- package/dist/api/pagination.js +7 -1
- package/dist/api/pagination.js.map +1 -1
- package/dist/api/response.d.ts +29 -0
- package/dist/api/response.d.ts.map +1 -1
- package/dist/api/response.js +23 -3
- package/dist/api/response.js.map +1 -1
- package/dist/api/search-routes.d.ts.map +1 -1
- package/dist/api/search-routes.js +19 -5
- package/dist/api/search-routes.js.map +1 -1
- package/dist/api/section-template-routes.d.ts.map +1 -1
- package/dist/api/section-template-routes.js +37 -20
- package/dist/api/section-template-routes.js.map +1 -1
- package/dist/api/site-admin-routes.d.ts +10 -1
- package/dist/api/site-admin-routes.d.ts.map +1 -1
- package/dist/api/site-admin-routes.js +21 -1
- package/dist/api/site-admin-routes.js.map +1 -1
- package/dist/api/site-context.d.ts +35 -5
- package/dist/api/site-context.d.ts.map +1 -1
- package/dist/api/site-context.js +21 -6
- package/dist/api/site-context.js.map +1 -1
- package/dist/api/site-routes.js +2 -2
- package/dist/api/site-routes.js.map +1 -1
- package/dist/api/tag-routes.d.ts.map +1 -1
- package/dist/api/tag-routes.js +5 -5
- package/dist/api/tag-routes.js.map +1 -1
- package/dist/api/translation-routes.js +5 -5
- package/dist/api/translation-routes.js.map +1 -1
- package/dist/api/user-routes.d.ts.map +1 -1
- package/dist/api/user-routes.js +136 -21
- package/dist/api/user-routes.js.map +1 -1
- package/dist/api/version-routes.js +2 -2
- package/dist/api/version-routes.js.map +1 -1
- package/dist/api/webhook-routes.js +8 -8
- 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 +23 -14
- package/dist/api/workflow-routes.js.map +1 -1
- package/dist/audiences/collectors/identity.d.ts +14 -1
- package/dist/audiences/collectors/identity.d.ts.map +1 -1
- package/dist/audiences/collectors/identity.js +16 -3
- package/dist/audiences/collectors/identity.js.map +1 -1
- package/dist/audiences/collectors/index.d.ts +16 -2
- package/dist/audiences/collectors/index.d.ts.map +1 -1
- package/dist/audiences/collectors/index.js +29 -5
- package/dist/audiences/collectors/index.js.map +1 -1
- package/dist/audiences/collectors/pinned-audience.d.ts +28 -2
- package/dist/audiences/collectors/pinned-audience.d.ts.map +1 -1
- package/dist/audiences/collectors/pinned-audience.js +35 -5
- package/dist/audiences/collectors/pinned-audience.js.map +1 -1
- package/dist/audiences/collectors/selfid.d.ts +25 -0
- package/dist/audiences/collectors/selfid.d.ts.map +1 -0
- package/dist/audiences/collectors/selfid.js +46 -0
- package/dist/audiences/collectors/selfid.js.map +1 -0
- package/dist/audiences/collectors/session.d.ts +41 -0
- package/dist/audiences/collectors/session.d.ts.map +1 -0
- package/dist/audiences/collectors/session.js +50 -0
- package/dist/audiences/collectors/session.js.map +1 -0
- package/dist/audiences/collectors/utm.d.ts +15 -1
- package/dist/audiences/collectors/utm.d.ts.map +1 -1
- package/dist/audiences/collectors/utm.js +16 -2
- package/dist/audiences/collectors/utm.js.map +1 -1
- package/dist/audiences/consent-config.d.ts +21 -0
- package/dist/audiences/consent-config.d.ts.map +1 -0
- package/dist/audiences/consent-config.js +15 -0
- package/dist/audiences/consent-config.js.map +1 -0
- package/dist/audiences/consent-startup.d.ts +39 -0
- package/dist/audiences/consent-startup.d.ts.map +1 -0
- package/dist/audiences/consent-startup.js +105 -0
- package/dist/audiences/consent-startup.js.map +1 -0
- package/dist/audiences/consent.d.ts +205 -0
- package/dist/audiences/consent.d.ts.map +1 -0
- package/dist/audiences/consent.js +335 -0
- package/dist/audiences/consent.js.map +1 -0
- package/dist/audiences/cookies.d.ts +21 -0
- package/dist/audiences/cookies.d.ts.map +1 -1
- package/dist/audiences/cookies.js +26 -0
- package/dist/audiences/cookies.js.map +1 -1
- package/dist/audiences/engine.d.ts +7 -0
- package/dist/audiences/engine.d.ts.map +1 -1
- package/dist/audiences/engine.js +7 -2
- package/dist/audiences/engine.js.map +1 -1
- package/dist/audiences/entry-page.d.ts +89 -0
- package/dist/audiences/entry-page.d.ts.map +1 -0
- package/dist/audiences/entry-page.js +116 -0
- package/dist/audiences/entry-page.js.map +1 -0
- package/dist/audiences/evaluator/instant-match.d.ts.map +1 -1
- package/dist/audiences/evaluator/instant-match.js +7 -0
- package/dist/audiences/evaluator/instant-match.js.map +1 -1
- package/dist/audiences/index.d.ts +6 -2
- package/dist/audiences/index.d.ts.map +1 -1
- package/dist/audiences/index.js +12 -2
- package/dist/audiences/index.js.map +1 -1
- package/dist/audiences/queries.d.ts +16 -0
- package/dist/audiences/queries.d.ts.map +1 -1
- package/dist/audiences/queries.js +28 -1
- package/dist/audiences/queries.js.map +1 -1
- package/dist/audiences/schema.d.ts +17 -0
- package/dist/audiences/schema.d.ts.map +1 -1
- package/dist/audiences/schema.js +7 -0
- package/dist/audiences/schema.js.map +1 -1
- package/dist/audiences/server-eval.d.ts +32 -1
- package/dist/audiences/server-eval.d.ts.map +1 -1
- package/dist/audiences/server-eval.js +35 -3
- package/dist/audiences/server-eval.js.map +1 -1
- package/dist/audiences/ssr.d.ts +18 -1
- package/dist/audiences/ssr.d.ts.map +1 -1
- package/dist/audiences/ssr.js +18 -1
- package/dist/audiences/ssr.js.map +1 -1
- package/dist/audiences/types.d.ts +22 -1
- package/dist/audiences/types.d.ts.map +1 -1
- package/dist/audiences/types.js +1 -0
- package/dist/audiences/types.js.map +1 -1
- package/dist/audiences/utm-persistence.d.ts +20 -7
- package/dist/audiences/utm-persistence.d.ts.map +1 -1
- package/dist/audiences/utm-persistence.js +20 -7
- package/dist/audiences/utm-persistence.js.map +1 -1
- package/dist/auth/roles.d.ts +11 -0
- package/dist/auth/roles.d.ts.map +1 -1
- package/dist/auth/roles.js +13 -0
- package/dist/auth/roles.js.map +1 -1
- package/dist/auth/tokens.d.ts +7 -0
- package/dist/auth/tokens.d.ts.map +1 -1
- package/dist/auth/tokens.js +24 -2
- package/dist/auth/tokens.js.map +1 -1
- package/dist/ax/content-source.d.ts +10 -2
- package/dist/ax/content-source.d.ts.map +1 -1
- package/dist/ax/content-source.js +81 -5
- package/dist/ax/content-source.js.map +1 -1
- package/dist/ax/effective-body.d.ts +28 -0
- package/dist/ax/effective-body.d.ts.map +1 -0
- package/dist/ax/effective-body.js +47 -0
- package/dist/ax/effective-body.js.map +1 -0
- package/dist/ax/index.d.ts +3 -1
- package/dist/ax/index.d.ts.map +1 -1
- package/dist/ax/index.js +2 -0
- package/dist/ax/index.js.map +1 -1
- package/dist/ax/jsonld.d.ts +31 -1
- package/dist/ax/jsonld.d.ts.map +1 -1
- package/dist/ax/jsonld.js +35 -22
- package/dist/ax/jsonld.js.map +1 -1
- package/dist/ax/layout-to-html.d.ts +127 -0
- package/dist/ax/layout-to-html.d.ts.map +1 -0
- package/dist/ax/layout-to-html.js +545 -0
- package/dist/ax/layout-to-html.js.map +1 -0
- package/dist/ax/llms-full-txt.d.ts +3 -1
- package/dist/ax/llms-full-txt.d.ts.map +1 -1
- package/dist/ax/llms-full-txt.js +5 -2
- package/dist/ax/llms-full-txt.js.map +1 -1
- package/dist/ax/page-markdown.d.ts +10 -2
- package/dist/ax/page-markdown.d.ts.map +1 -1
- package/dist/ax/page-markdown.js +16 -3
- package/dist/ax/page-markdown.js.map +1 -1
- package/dist/ax/summary.d.ts +4 -0
- package/dist/ax/summary.d.ts.map +1 -1
- package/dist/ax/summary.js +6 -1
- package/dist/ax/summary.js.map +1 -1
- package/dist/ax/types.d.ts +24 -0
- package/dist/ax/types.d.ts.map +1 -1
- package/dist/cache/content-invalidation.d.ts.map +1 -1
- package/dist/cache/content-invalidation.js +11 -0
- package/dist/cache/content-invalidation.js.map +1 -1
- package/dist/config/types.d.ts +43 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/config/validate.d.ts.map +1 -1
- package/dist/config/validate.js +3 -0
- package/dist/config/validate.js.map +1 -1
- package/dist/db/apply-snapshot.d.ts +25 -0
- package/dist/db/apply-snapshot.d.ts.map +1 -1
- package/dist/db/apply-snapshot.js +48 -16
- package/dist/db/apply-snapshot.js.map +1 -1
- package/dist/db/ax-queries.d.ts +6 -0
- package/dist/db/ax-queries.d.ts.map +1 -1
- package/dist/db/ax-queries.js +6 -0
- package/dist/db/ax-queries.js.map +1 -1
- package/dist/db/component-instance-queries.d.ts +79 -19
- package/dist/db/component-instance-queries.d.ts.map +1 -1
- package/dist/db/component-instance-queries.js +266 -83
- package/dist/db/component-instance-queries.js.map +1 -1
- package/dist/db/component-queries.d.ts +1 -16
- package/dist/db/component-queries.d.ts.map +1 -1
- package/dist/db/component-queries.js +7 -56
- package/dist/db/component-queries.js.map +1 -1
- package/dist/db/content-queries.d.ts.map +1 -1
- package/dist/db/content-queries.js +9 -2
- package/dist/db/content-queries.js.map +1 -1
- package/dist/db/extension-queries.d.ts +2 -2
- package/dist/db/feed-queries.d.ts +3 -3
- package/dist/db/index.d.ts +1 -0
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +1 -0
- package/dist/db/index.js.map +1 -1
- package/dist/db/layout-queries.d.ts +21 -3
- package/dist/db/layout-queries.d.ts.map +1 -1
- package/dist/db/layout-queries.js +14 -6
- package/dist/db/layout-queries.js.map +1 -1
- package/dist/db/menu-queries.d.ts +69 -5
- package/dist/db/menu-queries.d.ts.map +1 -1
- package/dist/db/menu-queries.js +120 -13
- package/dist/db/menu-queries.js.map +1 -1
- package/dist/db/search-queries.d.ts.map +1 -1
- package/dist/db/search-queries.js +24 -1
- package/dist/db/search-queries.js.map +1 -1
- package/dist/db/section-template-queries.d.ts +62 -0
- package/dist/db/section-template-queries.d.ts.map +1 -0
- package/dist/db/section-template-queries.js +178 -0
- package/dist/db/section-template-queries.js.map +1 -0
- package/dist/db/site-plugin-queries.d.ts +2 -2
- package/dist/db/tree-queries.d.ts.map +1 -1
- package/dist/db/tree-queries.js +5 -0
- package/dist/db/tree-queries.js.map +1 -1
- package/dist/db/webhook-queries.d.ts +3 -3
- package/dist/db/workflow-queries.d.ts.map +1 -1
- package/dist/db/workflow-queries.js +5 -20
- package/dist/db/workflow-queries.js.map +1 -1
- package/dist/experiments/runtime.d.ts +21 -3
- package/dist/experiments/runtime.d.ts.map +1 -1
- package/dist/experiments/runtime.js +21 -3
- package/dist/experiments/runtime.js.map +1 -1
- package/dist/hooks/ax-invalidation.d.ts.map +1 -1
- package/dist/hooks/ax-invalidation.js +4 -0
- package/dist/hooks/ax-invalidation.js.map +1 -1
- package/dist/layout/component-refs.d.ts +90 -2
- package/dist/layout/component-refs.d.ts.map +1 -1
- package/dist/layout/component-refs.js +293 -16
- package/dist/layout/component-refs.js.map +1 -1
- package/dist/layout/index.d.ts +7 -4
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +6 -3
- package/dist/layout/index.js.map +1 -1
- package/dist/layout/legacy-variant-container.d.ts +123 -0
- package/dist/layout/legacy-variant-container.d.ts.map +1 -0
- package/dist/layout/legacy-variant-container.js +397 -0
- package/dist/layout/legacy-variant-container.js.map +1 -0
- package/dist/layout/module-permissions.d.ts.map +1 -1
- package/dist/layout/module-permissions.js +26 -38
- package/dist/layout/module-permissions.js.map +1 -1
- package/dist/layout/modules-extended.d.ts +28 -1
- package/dist/layout/modules-extended.d.ts.map +1 -1
- package/dist/layout/modules-extended.js +73 -1
- package/dist/layout/modules-extended.js.map +1 -1
- package/dist/layout/modules.d.ts.map +1 -1
- package/dist/layout/modules.js +9 -1
- package/dist/layout/modules.js.map +1 -1
- package/dist/layout/personalization.d.ts +83 -0
- package/dist/layout/personalization.d.ts.map +1 -1
- package/dist/layout/personalization.js +250 -4
- package/dist/layout/personalization.js.map +1 -1
- package/dist/layout/registry.d.ts.map +1 -1
- package/dist/layout/registry.js +20 -0
- package/dist/layout/registry.js.map +1 -1
- package/dist/layout/renderer.d.ts +29 -2
- package/dist/layout/renderer.d.ts.map +1 -1
- package/dist/layout/renderer.js +23 -6
- package/dist/layout/renderer.js.map +1 -1
- package/dist/layout/seed-defaults.d.ts +45 -0
- package/dist/layout/seed-defaults.d.ts.map +1 -0
- package/dist/layout/seed-defaults.js +75 -0
- package/dist/layout/seed-defaults.js.map +1 -0
- package/dist/layout/types.d.ts +17 -0
- package/dist/layout/types.d.ts.map +1 -1
- package/dist/layout/types.js +7 -0
- package/dist/layout/types.js.map +1 -1
- package/dist/layout/walk.d.ts +14 -0
- package/dist/layout/walk.d.ts.map +1 -0
- package/dist/layout/walk.js +49 -0
- package/dist/layout/walk.js.map +1 -0
- package/dist/media/index.d.ts +1 -1
- package/dist/media/index.d.ts.map +1 -1
- package/dist/media/index.js +1 -1
- package/dist/media/index.js.map +1 -1
- package/dist/media/inline-risk.d.ts +26 -0
- package/dist/media/inline-risk.d.ts.map +1 -0
- package/dist/media/inline-risk.js +142 -0
- package/dist/media/inline-risk.js.map +1 -0
- package/dist/media/upload-allowlist.d.ts +23 -0
- package/dist/media/upload-allowlist.d.ts.map +1 -1
- package/dist/media/upload-allowlist.js +29 -0
- package/dist/media/upload-allowlist.js.map +1 -1
- package/dist/nav/builder.d.ts.map +1 -1
- package/dist/nav/builder.js +15 -3
- package/dist/nav/builder.js.map +1 -1
- package/dist/nav/index.d.ts +1 -1
- package/dist/nav/index.d.ts.map +1 -1
- package/dist/nav/index.js +1 -1
- package/dist/nav/index.js.map +1 -1
- package/dist/nav/menu-resolver.d.ts +11 -0
- package/dist/nav/menu-resolver.d.ts.map +1 -1
- package/dist/nav/menu-resolver.js +49 -9
- package/dist/nav/menu-resolver.js.map +1 -1
- package/dist/nav/paths.d.ts +37 -0
- package/dist/nav/paths.d.ts.map +1 -0
- package/dist/nav/paths.js +48 -0
- package/dist/nav/paths.js.map +1 -0
- package/dist/nav/types.d.ts +6 -0
- package/dist/nav/types.d.ts.map +1 -1
- package/dist/nav/url-resolver.d.ts +1 -5
- package/dist/nav/url-resolver.d.ts.map +1 -1
- package/dist/nav/url-resolver.js +6 -12
- package/dist/nav/url-resolver.js.map +1 -1
- package/dist/schema/base.d.ts +24 -4
- package/dist/schema/base.d.ts.map +1 -1
- package/dist/schema/base.js +17 -4
- package/dist/schema/base.js.map +1 -1
- package/dist/schema/components.d.ts +90 -9
- package/dist/schema/components.d.ts.map +1 -1
- package/dist/schema/components.js +113 -22
- package/dist/schema/components.js.map +1 -1
- package/dist/schema/mysql-tables.d.ts +5775 -48
- package/dist/schema/mysql-tables.d.ts.map +1 -1
- package/dist/schema/mysql-tables.js +622 -46
- package/dist/schema/mysql-tables.js.map +1 -1
- package/dist/scope/jsonld.d.ts +18 -3
- package/dist/scope/jsonld.d.ts.map +1 -1
- package/dist/scope/jsonld.js +6 -4
- package/dist/scope/jsonld.js.map +1 -1
- package/dist/scope/kywi-form.d.ts +11 -0
- package/dist/scope/kywi-form.d.ts.map +1 -1
- package/dist/scope/kywi-form.js +11 -1
- package/dist/scope/kywi-form.js.map +1 -1
- package/dist/scope/kywi-wizard-form.d.ts.map +1 -1
- package/dist/scope/kywi-wizard-form.js +76 -2
- package/dist/scope/kywi-wizard-form.js.map +1 -1
- package/dist/scope/sticky-offset.d.ts +34 -13
- package/dist/scope/sticky-offset.d.ts.map +1 -1
- package/dist/scope/sticky-offset.js +236 -43
- package/dist/scope/sticky-offset.js.map +1 -1
- package/dist/site/styles.css +61 -15
- package/dist/versioning/scheduler.d.ts +28 -0
- package/dist/versioning/scheduler.d.ts.map +1 -1
- package/dist/versioning/scheduler.js +50 -3
- package/dist/versioning/scheduler.js.map +1 -1
- package/package.json +12 -2
|
@@ -1,25 +1,30 @@
|
|
|
1
|
-
import { eq, and, inArray, notInArray, sql } from 'drizzle-orm';
|
|
2
|
-
import { kywiComponents, kywiComponentInstances } from '../schema/components.js';
|
|
3
|
-
import { kywiContent } from '../schema/base.js';
|
|
1
|
+
import { eq, and, or, isNull, inArray, notInArray, sql } from 'drizzle-orm';
|
|
2
|
+
import { kywiComponents, kywiComponentInstances, BLUEPRINT_CONTENT_TYPE } from '../schema/components.js';
|
|
3
|
+
import { kywiContent, kywiSectionTemplates } from '../schema/base.js';
|
|
4
4
|
import { validateLayoutDocument } from '../layout/types.js';
|
|
5
5
|
import { newlyIntroducedAdminOnlyTypes } from '../layout/module-permissions.js';
|
|
6
6
|
import { getComponentById } from './component-queries.js';
|
|
7
7
|
import { hasMinRole } from '../auth/roles.js';
|
|
8
8
|
import { collectComponentRefs, diffComponentRefs, componentDetachSource, detachComponentFromLayout, } from '../layout/component-refs.js';
|
|
9
9
|
/**
|
|
10
|
-
* The instance index for linked components (kywi-cms#147).
|
|
10
|
+
* The instance index for linked components (kywi-cms#147, #156).
|
|
11
11
|
*
|
|
12
12
|
* `kywi_component_instances` is a derived cache of the `componentId` links that
|
|
13
13
|
* live inside layout JSONB. It exists so the library's usage counts, the save
|
|
14
14
|
* fork's blast-radius wording, and the delete gate are single indexed reads
|
|
15
15
|
* instead of a parse of every layout in the site.
|
|
16
16
|
*
|
|
17
|
+
* A layout document lives in one of two HOLDERS — a page (`kywi_content.layout`)
|
|
18
|
+
* or a blueprint (`kywi_section_templates.definition`) — and since #156 both are
|
|
19
|
+
* indexed. See {@link ComponentInstanceHolder}.
|
|
20
|
+
*
|
|
17
21
|
* Two rules keep it honest:
|
|
18
|
-
* - it is written in the SAME transaction as the
|
|
19
|
-
* (`setContentLayout`
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
22
|
+
* - it is written in the SAME transaction as the document it describes
|
|
23
|
+
* (`setContentLayout` for a page, `setSectionTemplateDefinition` for a
|
|
24
|
+
* blueprint), so a saved layout and its index rows commit together;
|
|
25
|
+
* - nothing that REWRITES a document trusts it. `detachComponentEverywhere`
|
|
26
|
+
* re-scans layouts, so even a drifted index can never leave a page or a
|
|
27
|
+
* blueprint holding a link to a deleted component.
|
|
23
28
|
*/
|
|
24
29
|
/**
|
|
25
30
|
* Run `fn` inside a DB transaction when the client supports one, otherwise run
|
|
@@ -78,7 +83,36 @@ export async function buildAddedComponentLookup(db, incoming, stored, siteId) {
|
|
|
78
83
|
return (componentId) => byId.get(componentId) ?? null;
|
|
79
84
|
}
|
|
80
85
|
/**
|
|
81
|
-
*
|
|
86
|
+
* The `WHERE` that isolates one holder's rows.
|
|
87
|
+
*
|
|
88
|
+
* Both holder columns are nullable, so a predicate on the wrong one would match
|
|
89
|
+
* nothing (or, worse, every row of the other kind if the id happened to
|
|
90
|
+
* collide). This is the single place that mapping is made.
|
|
91
|
+
*/
|
|
92
|
+
function holderScope(holder) {
|
|
93
|
+
return holder.kind === 'content'
|
|
94
|
+
? eq(kywiComponentInstances.contentId, holder.contentId)
|
|
95
|
+
: eq(kywiComponentInstances.blueprintId, holder.blueprintId);
|
|
96
|
+
}
|
|
97
|
+
/** The holder columns of a row, in insertable form. */
|
|
98
|
+
function holderColumns(holder) {
|
|
99
|
+
return holder.kind === 'content'
|
|
100
|
+
? {
|
|
101
|
+
holderKind: 'content',
|
|
102
|
+
contentId: holder.contentId,
|
|
103
|
+
blueprintId: null,
|
|
104
|
+
contentType: holder.contentType,
|
|
105
|
+
}
|
|
106
|
+
: {
|
|
107
|
+
holderKind: 'blueprint',
|
|
108
|
+
contentId: null,
|
|
109
|
+
blueprintId: holder.blueprintId,
|
|
110
|
+
contentType: BLUEPRINT_CONTENT_TYPE,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Bring the index rows for ONE HOLDER — a page or a blueprint — in line with
|
|
115
|
+
* its new layout document.
|
|
82
116
|
*
|
|
83
117
|
* Only the difference is written: moving a linked node around a page is not a
|
|
84
118
|
* change of placement, so a save that reshuffles a layout writes nothing here.
|
|
@@ -89,20 +123,21 @@ export async function buildAddedComponentLookup(db, incoming, stored, siteId) {
|
|
|
89
123
|
*/
|
|
90
124
|
export async function syncComponentInstances(db, params) {
|
|
91
125
|
const { added, removed } = diffComponentRefs(params.before, params.after);
|
|
126
|
+
const scope = holderScope(params.holder);
|
|
92
127
|
for (const ref of removed) {
|
|
93
128
|
await db
|
|
94
129
|
.delete(kywiComponentInstances)
|
|
95
|
-
.where(and(
|
|
130
|
+
.where(and(scope, eq(kywiComponentInstances.componentId, ref.componentId), eq(kywiComponentInstances.nodeId, ref.nodeId)));
|
|
96
131
|
}
|
|
97
132
|
const insertable = await filterToExistingComponents(db, params.siteId, added);
|
|
98
133
|
if (insertable.length > 0) {
|
|
134
|
+
const holder = holderColumns(params.holder);
|
|
99
135
|
await db
|
|
100
136
|
.insert(kywiComponentInstances)
|
|
101
137
|
.values(insertable.map(ref => ({
|
|
102
138
|
componentId: ref.componentId,
|
|
103
139
|
siteId: params.siteId,
|
|
104
|
-
|
|
105
|
-
contentType: params.contentType,
|
|
140
|
+
...holder,
|
|
106
141
|
nodeId: ref.nodeId,
|
|
107
142
|
})))
|
|
108
143
|
.onConflictDoNothing();
|
|
@@ -122,34 +157,64 @@ async function filterToExistingComponents(db, siteId, refs) {
|
|
|
122
157
|
const known = new Set(rows.map(row => row.id));
|
|
123
158
|
return candidates.filter(ref => known.has(ref.componentId));
|
|
124
159
|
}
|
|
160
|
+
const EMPTY_USAGE = {
|
|
161
|
+
instances: 0,
|
|
162
|
+
pages: 0,
|
|
163
|
+
items: [],
|
|
164
|
+
trashedInstances: 0,
|
|
165
|
+
trashedPages: 0,
|
|
166
|
+
blueprints: 0,
|
|
167
|
+
blueprintInstances: 0,
|
|
168
|
+
blueprintItems: [],
|
|
169
|
+
};
|
|
125
170
|
/**
|
|
126
|
-
* Where a component is placed, with the page titles
|
|
127
|
-
* One indexed read plus
|
|
128
|
-
* fork consume.
|
|
171
|
+
* Where a component is placed, with the page titles and blueprint names the
|
|
172
|
+
* confirm dialogs name. One indexed read plus two joins — the shape both the
|
|
173
|
+
* admin library and the save fork consume.
|
|
129
174
|
*
|
|
130
|
-
* Trashed
|
|
131
|
-
* dropped: see {@link ComponentUsage.trashedInstances}
|
|
175
|
+
* Trashed pages and blueprints are each partitioned out of the headline numbers
|
|
176
|
+
* rather than dropped: see {@link ComponentUsage.trashedInstances} and
|
|
177
|
+
* {@link ComponentUsage.blueprints}.
|
|
132
178
|
*/
|
|
133
179
|
export async function getComponentUsage(db, componentId, siteId) {
|
|
134
|
-
if (!isIndexableComponentId(componentId))
|
|
135
|
-
return {
|
|
136
|
-
}
|
|
180
|
+
if (!isIndexableComponentId(componentId))
|
|
181
|
+
return { ...EMPTY_USAGE };
|
|
137
182
|
const rows = await db
|
|
138
183
|
.select({
|
|
139
184
|
contentId: kywiComponentInstances.contentId,
|
|
185
|
+
blueprintId: kywiComponentInstances.blueprintId,
|
|
140
186
|
contentType: kywiComponentInstances.contentType,
|
|
141
187
|
nodeId: kywiComponentInstances.nodeId,
|
|
142
188
|
title: kywiContent.title,
|
|
143
189
|
deletedAt: kywiContent.deletedAt,
|
|
190
|
+
blueprintName: kywiSectionTemplates.name,
|
|
144
191
|
})
|
|
145
192
|
.from(kywiComponentInstances)
|
|
146
193
|
.leftJoin(kywiContent, eq(kywiContent.id, kywiComponentInstances.contentId))
|
|
194
|
+
.leftJoin(kywiSectionTemplates, eq(kywiSectionTemplates.id, kywiComponentInstances.blueprintId))
|
|
147
195
|
.where(and(eq(kywiComponentInstances.componentId, componentId), eq(kywiComponentInstances.siteId, siteId)));
|
|
148
196
|
const byContent = new Map();
|
|
149
197
|
const trashedByContent = new Set();
|
|
198
|
+
const byBlueprint = new Map();
|
|
150
199
|
let instances = 0;
|
|
151
200
|
let trashedInstances = 0;
|
|
201
|
+
let blueprintInstances = 0;
|
|
152
202
|
for (const row of rows) {
|
|
203
|
+
// A blueprint row (kywi-cms#156): counted, but never as a page. The CHECK on
|
|
204
|
+
// the table guarantees exactly one holder column is set, so this partition
|
|
205
|
+
// is total — a row is a page's or a blueprint's, never neither.
|
|
206
|
+
if (row.blueprintId) {
|
|
207
|
+
blueprintInstances++;
|
|
208
|
+
if (!byBlueprint.has(row.blueprintId)) {
|
|
209
|
+
byBlueprint.set(row.blueprintId, {
|
|
210
|
+
blueprintId: row.blueprintId,
|
|
211
|
+
name: row.blueprintName ?? null,
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
continue;
|
|
215
|
+
}
|
|
216
|
+
if (!row.contentId)
|
|
217
|
+
continue;
|
|
153
218
|
if (row.deletedAt) {
|
|
154
219
|
trashedInstances++;
|
|
155
220
|
trashedByContent.add(row.contentId);
|
|
@@ -169,30 +234,39 @@ export async function getComponentUsage(db, componentId, siteId) {
|
|
|
169
234
|
});
|
|
170
235
|
}
|
|
171
236
|
const items = [...byContent.values()];
|
|
237
|
+
const blueprintItems = [...byBlueprint.values()];
|
|
172
238
|
return {
|
|
173
239
|
instances,
|
|
174
240
|
pages: items.length,
|
|
175
241
|
items,
|
|
176
242
|
trashedInstances,
|
|
177
243
|
trashedPages: trashedByContent.size,
|
|
244
|
+
blueprints: blueprintItems.length,
|
|
245
|
+
blueprintInstances,
|
|
246
|
+
blueprintItems,
|
|
178
247
|
};
|
|
179
248
|
}
|
|
180
249
|
/**
|
|
181
250
|
* Per-component placement counts for a whole site — one grouped read, so the
|
|
182
251
|
* library list doesn't fan out into a usage query per row.
|
|
183
252
|
*
|
|
184
|
-
* The live/trashed split matches {@link getComponentUsage} exactly, so
|
|
185
|
-
* number in the library list is the same number the component's own usage
|
|
253
|
+
* The live/trashed/blueprint split matches {@link getComponentUsage} exactly, so
|
|
254
|
+
* the number in the library list is the same number the component's own usage
|
|
186
255
|
* dialog shows.
|
|
187
256
|
*/
|
|
188
257
|
export async function listComponentUsageCounts(db, siteId) {
|
|
189
|
-
|
|
258
|
+
// A page row that is live. The `content_id is not null` half is what keeps a
|
|
259
|
+
// blueprint row out of the page counts: its `deleted_at` is NULL too (there is
|
|
260
|
+
// no joined content row at all), so `deleted_at is null` alone would count it
|
|
261
|
+
// as a live page — the exact mistake the partition exists to avoid.
|
|
262
|
+
const livePage = sql `${kywiComponentInstances.contentId} is not null and ${kywiContent.deletedAt} is null`;
|
|
190
263
|
const rows = await db
|
|
191
264
|
.select({
|
|
192
265
|
componentId: kywiComponentInstances.componentId,
|
|
193
|
-
instances: sql `count(*) filter (where ${
|
|
194
|
-
pages: sql `count(distinct ${kywiComponentInstances.contentId}) filter (where ${
|
|
266
|
+
instances: sql `count(*) filter (where ${livePage})::int`,
|
|
267
|
+
pages: sql `count(distinct ${kywiComponentInstances.contentId}) filter (where ${livePage})::int`,
|
|
195
268
|
trashedInstances: sql `count(*) filter (where ${kywiContent.deletedAt} is not null)::int`,
|
|
269
|
+
blueprints: sql `count(distinct ${kywiComponentInstances.blueprintId})::int`,
|
|
196
270
|
})
|
|
197
271
|
.from(kywiComponentInstances)
|
|
198
272
|
.leftJoin(kywiContent, eq(kywiContent.id, kywiComponentInstances.contentId))
|
|
@@ -203,6 +277,7 @@ export async function listComponentUsageCounts(db, siteId) {
|
|
|
203
277
|
instances: Number(row.instances),
|
|
204
278
|
pages: Number(row.pages),
|
|
205
279
|
trashedInstances: Number(row.trashedInstances ?? 0),
|
|
280
|
+
blueprints: Number(row.blueprints ?? 0),
|
|
206
281
|
}));
|
|
207
282
|
}
|
|
208
283
|
/**
|
|
@@ -243,51 +318,52 @@ export async function listComponentUsageCounts(db, siteId) {
|
|
|
243
318
|
* overwritten (it waits, then the detach sees its result).
|
|
244
319
|
*/
|
|
245
320
|
export async function detachComponentEverywhere(db, component, options) {
|
|
246
|
-
if (!isIndexableComponentId(component.id))
|
|
247
|
-
return { pages: 0, instances: 0, skipped: [] };
|
|
321
|
+
if (!isIndexableComponentId(component.id)) {
|
|
322
|
+
return { pages: 0, blueprints: 0, instances: 0, skipped: [] };
|
|
323
|
+
}
|
|
248
324
|
const source = componentDetachSource(component);
|
|
249
325
|
// siteAdmin and above may introduce admin-only modules anyway, so the
|
|
250
326
|
// differential check is only meaningful (and only paid for) below that.
|
|
251
327
|
const checkAdminOnly = !hasMinRole(options.actorRole, 'siteAdmin');
|
|
252
328
|
return runInTransaction(db, async (tx) => {
|
|
253
|
-
const candidates = await tx
|
|
254
|
-
.select({
|
|
255
|
-
id: kywiContent.id,
|
|
256
|
-
siteId: kywiContent.siteId,
|
|
257
|
-
contentTypeName: kywiContent.contentTypeName,
|
|
258
|
-
layout: kywiContent.layout,
|
|
259
|
-
})
|
|
260
|
-
.from(kywiContent)
|
|
261
|
-
.where(and(eq(kywiContent.siteId, component.siteId), sql `${kywiContent.layout}::text like ${`%${component.id}%`}`))
|
|
262
|
-
.for('update');
|
|
263
329
|
let pages = 0;
|
|
330
|
+
let blueprints = 0;
|
|
264
331
|
let instances = 0;
|
|
265
332
|
const skipped = [];
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
333
|
+
/**
|
|
334
|
+
* Detach one holder's document and write it back, applying both per-holder
|
|
335
|
+
* guards. Returns how many placements were materialised — 0 when the
|
|
336
|
+
* document did not actually hold the link (a `LIKE` false positive), or when
|
|
337
|
+
* a guard skipped it.
|
|
338
|
+
*
|
|
339
|
+
* One implementation for pages and blueprints (kywi-cms#156). The guards are
|
|
340
|
+
* the reason: "the rewritten document must validate" and "the rewrite must
|
|
341
|
+
* not introduce a module this caller could not place by hand" are properties
|
|
342
|
+
* of the DOCUMENT, not of the table it lives in, and a second copy of them
|
|
343
|
+
* would be a second thing to keep in step.
|
|
344
|
+
*/
|
|
345
|
+
const detachHolder = async (before, holderSiteId, holder, write) => {
|
|
270
346
|
const { layout: after, detached } = detachComponentFromLayout(before, component.id, source);
|
|
271
347
|
if (detached === 0)
|
|
272
|
-
|
|
348
|
+
return 0;
|
|
273
349
|
const skip = async (reason, detail) => {
|
|
274
|
-
skipped.push({
|
|
350
|
+
skipped.push({
|
|
351
|
+
contentId: holder.kind === 'content' ? holder.contentId : holder.blueprintId,
|
|
352
|
+
contentType: holder.kind === 'content' ? holder.contentType : BLUEPRINT_CONTENT_TYPE,
|
|
353
|
+
holderKind: holder.kind,
|
|
354
|
+
reason,
|
|
355
|
+
detail,
|
|
356
|
+
});
|
|
275
357
|
// This document keeps its link, so make sure the index says so: the
|
|
276
358
|
// sweep below spares it, but only rows that already exist. Re-deriving
|
|
277
359
|
// from the untouched layout is idempotent and guarantees the count the
|
|
278
|
-
// delete gate reads includes this
|
|
279
|
-
await syncComponentInstances(tx, {
|
|
280
|
-
siteId: row.siteId,
|
|
281
|
-
contentId: row.id,
|
|
282
|
-
contentType: row.contentTypeName,
|
|
283
|
-
before: null,
|
|
284
|
-
after: before,
|
|
285
|
-
});
|
|
360
|
+
// delete gate reads includes this holder.
|
|
361
|
+
await syncComponentInstances(tx, { siteId: holderSiteId, holder, before: null, after: before });
|
|
286
362
|
};
|
|
287
363
|
const validation = validateLayoutDocument(after);
|
|
288
364
|
if (!validation.success) {
|
|
289
365
|
await skip('invalidLayout', validation.error);
|
|
290
|
-
|
|
366
|
+
return 0;
|
|
291
367
|
}
|
|
292
368
|
if (checkAdminOnly) {
|
|
293
369
|
// Resolve through any link the rewrite ADDS, exactly as the layout PUT
|
|
@@ -302,35 +378,93 @@ export async function detachComponentEverywhere(db, component, options) {
|
|
|
302
378
|
const offending = newlyIntroducedAdminOnlyTypes(after, before, lookup);
|
|
303
379
|
if (offending.length > 0) {
|
|
304
380
|
await skip('adminOnlyModule', `Your role may not add these module types: ${offending.join(', ')}`);
|
|
305
|
-
|
|
381
|
+
return 0;
|
|
306
382
|
}
|
|
307
383
|
}
|
|
308
|
-
await
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
384
|
+
await write(after);
|
|
385
|
+
await syncComponentInstances(tx, { siteId: holderSiteId, holder, before, after });
|
|
386
|
+
return detached;
|
|
387
|
+
};
|
|
388
|
+
// ── Pages ────────────────────────────────────────────────────────────────
|
|
389
|
+
const candidates = await tx
|
|
390
|
+
.select({
|
|
391
|
+
id: kywiContent.id,
|
|
392
|
+
siteId: kywiContent.siteId,
|
|
393
|
+
contentTypeName: kywiContent.contentTypeName,
|
|
394
|
+
layout: kywiContent.layout,
|
|
395
|
+
})
|
|
396
|
+
.from(kywiContent)
|
|
397
|
+
.where(and(eq(kywiContent.siteId, component.siteId), sql `${kywiContent.layout}::text like ${`%${component.id}%`}`))
|
|
398
|
+
.for('update');
|
|
399
|
+
for (const row of candidates) {
|
|
400
|
+
const before = (row.layout ?? null);
|
|
401
|
+
if (!before)
|
|
402
|
+
continue;
|
|
403
|
+
const detached = await detachHolder(before, row.siteId, { kind: 'content', contentId: row.id, contentType: row.contentTypeName }, async (after) => {
|
|
404
|
+
await tx
|
|
405
|
+
.update(kywiContent)
|
|
406
|
+
.set({ layout: after, updatedAt: new Date() })
|
|
407
|
+
.where(eq(kywiContent.id, row.id));
|
|
318
408
|
});
|
|
409
|
+
if (detached === 0)
|
|
410
|
+
continue;
|
|
319
411
|
pages++;
|
|
320
412
|
instances += detached;
|
|
321
413
|
}
|
|
322
|
-
//
|
|
323
|
-
//
|
|
324
|
-
//
|
|
325
|
-
//
|
|
326
|
-
//
|
|
327
|
-
|
|
414
|
+
// ── Blueprints (kywi-cms#156) ────────────────────────────────────────────
|
|
415
|
+
//
|
|
416
|
+
// A saved layout holding the link is exactly as much of a problem as a page
|
|
417
|
+
// holding it: leave it and the blueprint renders the node's fallback copy
|
|
418
|
+
// forever, and every page stamped out of it afterwards carries a link to a
|
|
419
|
+
// component that no longer exists. Same scan, same guards, same reporting.
|
|
420
|
+
const blueprintCandidates = await tx
|
|
421
|
+
.select({
|
|
422
|
+
id: kywiSectionTemplates.id,
|
|
423
|
+
siteId: kywiSectionTemplates.siteId,
|
|
424
|
+
definition: kywiSectionTemplates.definition,
|
|
425
|
+
})
|
|
426
|
+
.from(kywiSectionTemplates)
|
|
427
|
+
.where(and(eq(kywiSectionTemplates.siteId, component.siteId), sql `${kywiSectionTemplates.definition}::text like ${`%${component.id}%`}`))
|
|
428
|
+
.for('update');
|
|
429
|
+
for (const row of blueprintCandidates) {
|
|
430
|
+
const before = (row.definition ?? null);
|
|
431
|
+
if (!before)
|
|
432
|
+
continue;
|
|
433
|
+
const detached = await detachHolder(before, row.siteId, { kind: 'blueprint', blueprintId: row.id }, async (after) => {
|
|
434
|
+
await tx
|
|
435
|
+
.update(kywiSectionTemplates)
|
|
436
|
+
.set({ definition: after, updatedAt: new Date() })
|
|
437
|
+
.where(eq(kywiSectionTemplates.id, row.id));
|
|
438
|
+
});
|
|
439
|
+
if (detached === 0)
|
|
440
|
+
continue;
|
|
441
|
+
blueprints++;
|
|
442
|
+
instances += detached;
|
|
443
|
+
}
|
|
444
|
+
// Anything the scans didn't cover (a row for a holder whose document no
|
|
445
|
+
// longer holds the link at all) would keep inflating this component's count
|
|
446
|
+
// and block its delete. The link is gone from every document we rewrote, so
|
|
447
|
+
// sweep the rest — except the holders we skipped, which really do still hold
|
|
448
|
+
// it and whose rows are what keeps the delete gate honest.
|
|
449
|
+
//
|
|
450
|
+
// Each guard is written `is null OR not in (…)` rather than a bare
|
|
451
|
+
// `notInArray`: a blueprint row's `content_id` is NULL, and `NULL NOT IN
|
|
452
|
+
// (…)` is NULL, not true — so a bare predicate would silently spare every
|
|
453
|
+
// row of the other holder kind from the sweep.
|
|
454
|
+
const skippedContentIds = skipped.filter(s => s.holderKind === 'content').map(s => s.contentId);
|
|
455
|
+
const skippedBlueprintIds = skipped.filter(s => s.holderKind === 'blueprint').map(s => s.contentId);
|
|
456
|
+
const spare = [
|
|
457
|
+
...(skippedContentIds.length > 0
|
|
458
|
+
? [or(isNull(kywiComponentInstances.contentId), notInArray(kywiComponentInstances.contentId, skippedContentIds))]
|
|
459
|
+
: []),
|
|
460
|
+
...(skippedBlueprintIds.length > 0
|
|
461
|
+
? [or(isNull(kywiComponentInstances.blueprintId), notInArray(kywiComponentInstances.blueprintId, skippedBlueprintIds))]
|
|
462
|
+
: []),
|
|
463
|
+
];
|
|
328
464
|
await tx
|
|
329
465
|
.delete(kywiComponentInstances)
|
|
330
|
-
.where(
|
|
331
|
-
|
|
332
|
-
: and(eq(kywiComponentInstances.componentId, component.id), notInArray(kywiComponentInstances.contentId, skippedIds)));
|
|
333
|
-
return { pages, instances, skipped };
|
|
466
|
+
.where(and(eq(kywiComponentInstances.componentId, component.id), ...spare));
|
|
467
|
+
return { pages, blueprints, instances, skipped };
|
|
334
468
|
});
|
|
335
469
|
}
|
|
336
470
|
/**
|
|
@@ -342,9 +476,12 @@ export async function detachComponentEverywhere(db, component, options) {
|
|
|
342
476
|
* It is idempotent (it clears the scope it is about to rebuild) and doubles as
|
|
343
477
|
* the repair path if the index is ever suspected of drift.
|
|
344
478
|
*
|
|
479
|
+
* Both holders are rebuilt: pages (`kywi_content.layout`) and blueprints
|
|
480
|
+
* (`kywi_section_templates.definition`, kywi-cms#156).
|
|
481
|
+
*
|
|
345
482
|
* Only documents whose layout mentions a known component id are parsed, so the
|
|
346
|
-
* cost is one
|
|
347
|
-
* components — not a parse of every layout in the database.
|
|
483
|
+
* cost is one index-free scan per holder table plus a parse of the documents
|
|
484
|
+
* that actually use components — not a parse of every layout in the database.
|
|
348
485
|
*/
|
|
349
486
|
export async function reindexComponentInstances(db, siteId) {
|
|
350
487
|
const componentRows = await db
|
|
@@ -355,8 +492,9 @@ export async function reindexComponentInstances(db, siteId) {
|
|
|
355
492
|
await tx
|
|
356
493
|
.delete(kywiComponentInstances)
|
|
357
494
|
.where(siteId === undefined ? undefined : eq(kywiComponentInstances.siteId, siteId));
|
|
358
|
-
if (componentRows.length === 0)
|
|
359
|
-
return { documentsScanned: 0, instances: 0 };
|
|
495
|
+
if (componentRows.length === 0) {
|
|
496
|
+
return { documentsScanned: 0, blueprintsScanned: 0, instances: 0 };
|
|
497
|
+
}
|
|
360
498
|
// Which component ids are legitimate for a given site (per-site components).
|
|
361
499
|
const siteComponents = new Map();
|
|
362
500
|
for (const row of componentRows) {
|
|
@@ -364,7 +502,11 @@ export async function reindexComponentInstances(db, siteId) {
|
|
|
364
502
|
set.add(row.id);
|
|
365
503
|
siteComponents.set(row.siteId, set);
|
|
366
504
|
}
|
|
367
|
-
|
|
505
|
+
/** The `::text LIKE` candidate filter, over whichever jsonb column holds a layout. */
|
|
506
|
+
const mentionsAnyComponent = (column) => sql.join(componentRows.map(row => sql `${column}::text like ${`%${row.id}%`}`), sql ` or `);
|
|
507
|
+
const values = [];
|
|
508
|
+
// ── Pages ────────────────────────────────────────────────────────────────
|
|
509
|
+
const pageMentions = mentionsAnyComponent(kywiContent.layout);
|
|
368
510
|
const documents = await tx
|
|
369
511
|
.select({
|
|
370
512
|
id: kywiContent.id,
|
|
@@ -374,9 +516,8 @@ export async function reindexComponentInstances(db, siteId) {
|
|
|
374
516
|
})
|
|
375
517
|
.from(kywiContent)
|
|
376
518
|
.where(siteId === undefined
|
|
377
|
-
? sql `(${
|
|
378
|
-
: and(eq(kywiContent.siteId, siteId), sql `(${
|
|
379
|
-
const values = [];
|
|
519
|
+
? sql `(${pageMentions})`
|
|
520
|
+
: and(eq(kywiContent.siteId, siteId), sql `(${pageMentions})`));
|
|
380
521
|
for (const doc of documents) {
|
|
381
522
|
const known = siteComponents.get(doc.siteId);
|
|
382
523
|
if (!known)
|
|
@@ -387,19 +528,61 @@ export async function reindexComponentInstances(db, siteId) {
|
|
|
387
528
|
values.push({
|
|
388
529
|
componentId: ref.componentId,
|
|
389
530
|
siteId: doc.siteId,
|
|
531
|
+
holderKind: 'content',
|
|
390
532
|
contentId: doc.id,
|
|
533
|
+
blueprintId: null,
|
|
391
534
|
contentType: doc.contentTypeName,
|
|
392
535
|
nodeId: ref.nodeId,
|
|
393
536
|
});
|
|
394
537
|
}
|
|
395
538
|
}
|
|
539
|
+
// ── Blueprints (kywi-cms#156) ────────────────────────────────────────────
|
|
540
|
+
//
|
|
541
|
+
// The same scan over `kywi_section_templates.definition`. This is what makes
|
|
542
|
+
// #156 self-completing on an upgrade: `holder_kind`/`blueprint_id` ship with
|
|
543
|
+
// no blueprint rows at all, while existing installs already have saved
|
|
544
|
+
// layouts full of links, so without this every blueprint count would read
|
|
545
|
+
// zero until each blueprint happened to be re-saved.
|
|
546
|
+
const blueprintMentions = mentionsAnyComponent(kywiSectionTemplates.definition);
|
|
547
|
+
const blueprints = await tx
|
|
548
|
+
.select({
|
|
549
|
+
id: kywiSectionTemplates.id,
|
|
550
|
+
siteId: kywiSectionTemplates.siteId,
|
|
551
|
+
definition: kywiSectionTemplates.definition,
|
|
552
|
+
})
|
|
553
|
+
.from(kywiSectionTemplates)
|
|
554
|
+
.where(siteId === undefined
|
|
555
|
+
? sql `(${blueprintMentions})`
|
|
556
|
+
: and(eq(kywiSectionTemplates.siteId, siteId), sql `(${blueprintMentions})`));
|
|
557
|
+
for (const blueprint of blueprints) {
|
|
558
|
+
const known = siteComponents.get(blueprint.siteId);
|
|
559
|
+
if (!known)
|
|
560
|
+
continue;
|
|
561
|
+
for (const ref of collectComponentRefs((blueprint.definition ?? null))) {
|
|
562
|
+
if (!known.has(ref.componentId))
|
|
563
|
+
continue;
|
|
564
|
+
values.push({
|
|
565
|
+
componentId: ref.componentId,
|
|
566
|
+
siteId: blueprint.siteId,
|
|
567
|
+
holderKind: 'blueprint',
|
|
568
|
+
contentId: null,
|
|
569
|
+
blueprintId: blueprint.id,
|
|
570
|
+
contentType: BLUEPRINT_CONTENT_TYPE,
|
|
571
|
+
nodeId: ref.nodeId,
|
|
572
|
+
});
|
|
573
|
+
}
|
|
574
|
+
}
|
|
396
575
|
// Chunked so a site with thousands of placements doesn't build one
|
|
397
576
|
// multi-megabyte INSERT (and blow past the driver's parameter limit).
|
|
398
577
|
const CHUNK = 500;
|
|
399
578
|
for (let i = 0; i < values.length; i += CHUNK) {
|
|
400
579
|
await tx.insert(kywiComponentInstances).values(values.slice(i, i + CHUNK)).onConflictDoNothing();
|
|
401
580
|
}
|
|
402
|
-
return {
|
|
581
|
+
return {
|
|
582
|
+
documentsScanned: documents.length,
|
|
583
|
+
blueprintsScanned: blueprints.length,
|
|
584
|
+
instances: values.length,
|
|
585
|
+
};
|
|
403
586
|
});
|
|
404
587
|
}
|
|
405
588
|
//# sourceMappingURL=component-instance-queries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-instance-queries.js","sourceRoot":"","sources":["../../src/db/component-instance-queries.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"component-instance-queries.js","sourceRoot":"","sources":["../../src/db/component-instance-queries.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { KywiComponentRow } from '../schema/components.js';
|
|
2
|
-
import type { KywiSectionTemplateRow } from '../schema/base.js';
|
|
3
2
|
import type { KywiDb, PartialUndefined } from './client.js';
|
|
4
3
|
import type { ModuleNode } from '../layout/types.js';
|
|
5
4
|
export declare function createComponent(db: KywiDb, data: {
|
|
@@ -31,19 +30,5 @@ export declare function resolveModuleProps(node: ModuleNode, component: KywiComp
|
|
|
31
30
|
* into the node and removing the componentId link.
|
|
32
31
|
*/
|
|
33
32
|
export declare function disconnectFromComponent(node: ModuleNode, component: KywiComponentRow): ModuleNode;
|
|
34
|
-
export
|
|
35
|
-
siteId: string;
|
|
36
|
-
name: string;
|
|
37
|
-
category?: string;
|
|
38
|
-
definition: Record<string, unknown>;
|
|
39
|
-
createdBy?: string;
|
|
40
|
-
}): Promise<KywiSectionTemplateRow>;
|
|
41
|
-
export declare function getSectionTemplateById(db: KywiDb, id: string, siteId?: string): Promise<KywiSectionTemplateRow | null>;
|
|
42
|
-
export declare function listSectionTemplates(db: KywiDb, siteId: string, category?: string): Promise<KywiSectionTemplateRow[]>;
|
|
43
|
-
export declare function updateSectionTemplate(db: KywiDb, id: string, data: PartialUndefined<{
|
|
44
|
-
name: string;
|
|
45
|
-
category: string;
|
|
46
|
-
definition: Record<string, unknown>;
|
|
47
|
-
}>, siteId?: string): Promise<KywiSectionTemplateRow | null>;
|
|
48
|
-
export declare function deleteSectionTemplate(db: KywiDb, id: string, siteId?: string): Promise<boolean>;
|
|
33
|
+
export { createSectionTemplate, setSectionTemplateDefinition, updateSectionTemplate, deleteSectionTemplate, getSectionTemplateById, listSectionTemplates, } from './section-template-queries.js';
|
|
49
34
|
//# sourceMappingURL=component-queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-queries.d.ts","sourceRoot":"","sources":["../../src/db/component-queries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"component-queries.d.ts","sourceRoot":"","sources":["../../src/db/component-queries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAIpD,wBAAsB,eAAe,CACnC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;IACJ,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC/B,GACA,OAAO,CAAC,gBAAgB,CAAC,CAc3B;AAMD,wBAAsB,eAAe,CACnC,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,gBAAgB,CAAC;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACpC,CAAC,EACF,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CASlC;AAED,wBAAsB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAQ/F;AAED,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CASlC;AAED,wBAAsB,cAAc,CAClC,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAW7B;AAID;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,gBAAgB,GAAG,IAAI,GACjC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,gBAAgB,GAC1B,UAAU,CASZ;AAQD,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,EACrB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,+BAA+B,CAAA"}
|