rimecms 0.31.5 → 0.32.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/dist/adapter-sqlite/area.server.d.ts +10 -46
- package/dist/adapter-sqlite/area.server.js +31 -309
- package/dist/adapter-sqlite/auth.server.d.ts +11 -19
- package/dist/adapter-sqlite/auth.server.js +20 -77
- package/dist/adapter-sqlite/blocks.server.d.ts +7 -8
- package/dist/adapter-sqlite/blocks.server.js +17 -12
- package/dist/adapter-sqlite/collection.server.d.ts +10 -67
- package/dist/adapter-sqlite/collection.server.js +22 -418
- package/dist/adapter-sqlite/columns.server.d.ts +140 -0
- package/dist/adapter-sqlite/columns.server.js +307 -0
- package/dist/adapter-sqlite/generate-schema/column.server.js +1 -1
- package/dist/adapter-sqlite/generate-schema/index.server.d.ts +3 -3
- package/dist/adapter-sqlite/generate-schema/index.server.js +64 -139
- package/dist/adapter-sqlite/generate-schema/relations/junction.server.d.ts +3 -2
- package/dist/adapter-sqlite/generate-schema/relations/junction.server.js +14 -7
- package/dist/adapter-sqlite/generate-schema/root.server.d.ts +31 -7
- package/dist/adapter-sqlite/generate-schema/root.server.js +35 -19
- package/dist/adapter-sqlite/generate-schema/templates.server.d.ts +62 -65
- package/dist/adapter-sqlite/generate-schema/templates.server.js +119 -175
- package/dist/adapter-sqlite/generate-schema/write.server.js +19 -6
- package/dist/adapter-sqlite/index.server.d.ts +17 -23
- package/dist/adapter-sqlite/index.server.js +33 -36
- package/dist/adapter-sqlite/locales.server.d.ts +31 -0
- package/dist/adapter-sqlite/locales.server.js +57 -0
- package/dist/adapter-sqlite/naming.server.d.ts +134 -0
- package/dist/adapter-sqlite/naming.server.js +98 -0
- package/dist/adapter-sqlite/order-by.server.d.ts +29 -0
- package/dist/adapter-sqlite/order-by.server.js +115 -0
- package/dist/adapter-sqlite/read.server.d.ts +78 -0
- package/dist/adapter-sqlite/read.server.js +188 -0
- package/dist/adapter-sqlite/registry.server.d.ts +45 -0
- package/dist/adapter-sqlite/registry.server.js +63 -0
- package/dist/adapter-sqlite/relations.server.d.ts +10 -12
- package/dist/adapter-sqlite/relations.server.js +24 -8
- package/dist/adapter-sqlite/rows.server.d.ts +36 -0
- package/dist/adapter-sqlite/rows.server.js +6 -0
- package/dist/adapter-sqlite/select.server.d.ts +25 -0
- package/dist/adapter-sqlite/select.server.js +274 -0
- package/dist/adapter-sqlite/table.server.d.ts +18 -0
- package/dist/adapter-sqlite/table.server.js +63 -0
- package/dist/adapter-sqlite/transform.server.d.ts +13 -12
- package/dist/adapter-sqlite/transform.server.js +118 -197
- package/dist/adapter-sqlite/tree.server.d.ts +7 -8
- package/dist/adapter-sqlite/tree.server.js +13 -12
- package/dist/adapter-sqlite/types.server.d.ts +6 -5
- package/dist/adapter-sqlite/where.server.d.ts +25 -3
- package/dist/adapter-sqlite/where.server.js +46 -36
- package/dist/adapter-sqlite/write.server.d.ts +166 -0
- package/dist/adapter-sqlite/write.server.js +272 -0
- package/dist/core/adapter.d.ts +456 -0
- package/dist/core/adapter.js +13 -0
- package/dist/core/auth/access.d.ts +73 -0
- package/dist/core/auth/augment.d.ts +18 -0
- package/dist/core/auth/augment.js +110 -0
- package/dist/core/auth/augment.server.d.ts +3 -0
- package/dist/core/auth/augment.server.js +23 -0
- package/dist/core/auth/better-auth/config.server.d.ts +2122 -0
- package/dist/core/auth/better-auth/config.server.js +81 -0
- package/dist/core/auth/better-auth/hooks.server.js +132 -0
- package/dist/core/auth/better-auth/instance.server.d.ts +4215 -0
- package/dist/core/auth/better-auth/instance.server.js +26 -0
- package/dist/core/auth/better-auth-tables.server.d.ts +33 -0
- package/dist/core/auth/better-auth-tables.server.js +50 -0
- package/dist/core/auth/configure.d.ts +21 -0
- package/dist/core/auth/configure.js +21 -0
- package/dist/core/auth/constant.server.d.ts +28 -0
- package/dist/core/auth/constant.server.js +43 -0
- package/dist/core/auth/enabled.d.ts +10 -0
- package/dist/core/auth/enabled.js +10 -0
- package/dist/core/auth/handler/index.server.js +159 -0
- package/dist/core/auth/hooks/augment-fields-password.server.d.ts +20 -0
- package/dist/core/auth/hooks/augment-fields-password.server.js +44 -0
- package/dist/core/auth/hooks/create-better-auth-user.server.d.ts +4 -0
- package/dist/core/auth/hooks/create-better-auth-user.server.js +212 -0
- package/dist/core/auth/hooks/delete-better-auth-user.server.d.ts +4 -0
- package/dist/core/auth/hooks/delete-better-auth-user.server.js +25 -0
- package/dist/core/auth/hooks/forward-roles.server.d.ts +12 -0
- package/dist/core/auth/hooks/forward-roles.server.js +58 -0
- package/dist/core/auth/hooks/index.server.d.ts +18 -0
- package/dist/core/auth/hooks/index.server.js +18 -0
- package/dist/core/auth/hooks/populate-api-key.server.d.ts +5 -0
- package/dist/core/auth/hooks/populate-api-key.server.js +22 -0
- package/dist/core/auth/hooks/prevent-superadmin-deletion.server.d.ts +6 -0
- package/dist/core/auth/hooks/prevent-superadmin-deletion.server.js +16 -0
- package/dist/core/auth/hooks/prevent-superadmin-mutation.server.d.ts +5 -0
- package/dist/core/auth/hooks/prevent-superadmin-mutation.server.js +28 -0
- package/dist/core/auth/hooks/prevent-user-mutations.server.d.ts +5 -0
- package/dist/core/auth/hooks/prevent-user-mutations.server.js +13 -0
- package/dist/core/auth/hooks/remove-private-fields.server.d.ts +7 -0
- package/dist/core/auth/hooks/remove-private-fields.server.js +11 -0
- package/dist/core/auth/hooks/sign-in-new-user.server.d.ts +12 -0
- package/dist/core/auth/hooks/sign-in-new-user.server.js +29 -0
- package/dist/core/auth/module.d.ts +2 -0
- package/dist/core/auth/module.js +2 -0
- package/dist/core/auth/module.server.d.ts +2 -0
- package/dist/core/auth/module.server.js +2 -0
- package/dist/core/auth/staff/configure.d.ts +7 -0
- package/dist/core/auth/staff/configure.js +13 -0
- package/dist/core/auth/staff/configure.server.d.ts +7 -0
- package/dist/core/auth/staff/configure.server.js +14 -0
- package/dist/core/auth/staff/derive.d.ts +23 -0
- package/dist/core/auth/staff/derive.js +58 -0
- package/dist/core/auth/tables.d.ts +38 -0
- package/dist/core/auth/tables.js +157 -0
- package/dist/core/auth/types.d.ts +47 -0
- package/dist/core/auth/user.server.d.ts +43 -0
- package/dist/core/auth/user.server.js +73 -0
- package/dist/core/auth/util.d.ts +13 -0
- package/dist/core/auth/validate-config.d.ts +13 -0
- package/dist/core/auth/validate-config.js +42 -0
- package/dist/core/boot.server.d.ts +4227 -0
- package/dist/core/boot.server.js +61 -0
- package/dist/core/codegen.server.d.ts +22 -0
- package/dist/core/codegen.server.js +58 -0
- package/dist/core/config/build.d.ts +23 -0
- package/dist/core/config/build.js +22 -0
- package/dist/core/config/build.server.d.ts +70 -0
- package/dist/core/config/build.server.js +33 -0
- package/dist/core/config/configure.d.ts +26 -0
- package/dist/core/config/configure.js +40 -0
- package/dist/core/config/context.server.d.ts +82 -0
- package/dist/core/config/context.server.js +118 -0
- package/dist/core/config/index.d.ts +4 -0
- package/dist/core/config/index.js +4 -0
- package/dist/core/config/index.server.d.ts +9 -0
- package/dist/core/config/index.server.js +11 -0
- package/dist/core/config/types.d.ts +88 -170
- package/dist/core/config/validate.server.d.ts +3 -0
- package/dist/core/config/validate.server.js +259 -0
- package/dist/core/constants.d.ts +69 -0
- package/dist/core/constants.js +69 -0
- package/dist/core/constants.server.d.ts +5 -0
- package/dist/core/constants.server.js +6 -0
- package/dist/core/cors/configure.server.d.ts +11 -0
- package/dist/core/cors/configure.server.js +14 -0
- package/dist/core/cors/handler.server.js +75 -0
- package/dist/core/cors/module.browser.js +1 -0
- package/dist/core/cors/module.server.d.ts +1 -0
- package/dist/core/cors/module.server.js +7 -0
- package/dist/core/dev/cache.server.d.ts +17 -0
- package/dist/core/dev/cache.server.js +65 -0
- package/dist/core/dev/cli/commands/build.js +70 -0
- package/dist/core/dev/cli/commands/clear.server.js +42 -0
- package/dist/core/dev/cli/commands/generate-exports.server.d.ts +26 -0
- package/dist/core/dev/cli/commands/generate-exports.server.js +155 -0
- package/dist/core/dev/cli/commands/generate.server.js +98 -0
- package/dist/core/dev/cli/commands/init.server.js +242 -0
- package/dist/core/dev/cli/index.js +16 -16
- package/dist/core/dev/cli/templates/build.js +45 -0
- package/dist/core/dev/cli/templates/init.js +117 -0
- package/dist/core/dev/cli/util/package-manager.server.js +7 -3
- package/dist/core/dev/cli/util/package.server.d.ts +0 -8
- package/dist/core/dev/cli/util/package.server.js +0 -10
- package/dist/core/dev/codegen/routes/common.server.d.ts +35 -0
- package/dist/core/dev/codegen/routes/common.server.js +437 -0
- package/dist/core/dev/codegen/routes/custom-css.server.js +86 -0
- package/dist/core/dev/codegen/routes/index.server.d.ts +17 -0
- package/dist/core/dev/codegen/routes/index.server.js +110 -0
- package/dist/core/dev/codegen/routes/util.server.d.ts +52 -0
- package/dist/core/dev/codegen/routes/util.server.js +118 -0
- package/dist/core/dev/codegen/runtime/index.server.d.ts +78 -0
- package/dist/core/dev/codegen/runtime/index.server.js +92 -0
- package/dist/core/dev/codegen/runtime/parse-exports.server.d.ts +16 -0
- package/dist/core/dev/codegen/runtime/parse-exports.server.js +60 -0
- package/dist/core/dev/codegen/sanitize/index.server.js +834 -0
- package/dist/core/dev/codegen/types/contributions.server.d.ts +37 -0
- package/dist/core/dev/codegen/types/contributions.server.js +25 -0
- package/dist/core/dev/codegen/types/index.server.js +132 -0
- package/dist/core/dev/codegen/types/templates.server.d.ts +13 -0
- package/dist/core/dev/codegen/types/templates.server.js +134 -0
- package/dist/core/dev/config-memo.server.js +85 -0
- package/dist/core/dev/constants.server.d.ts +20 -0
- package/dist/core/dev/constants.server.js +63 -0
- package/dist/core/dev/ensure.server.d.ts +30 -0
- package/dist/core/dev/ensure.server.js +82 -0
- package/dist/core/dev/prototype-routes.server.d.ts +16 -0
- package/dist/core/dev/prototype-routes.server.js +23 -0
- package/dist/core/dev/version.server.d.ts +12 -0
- package/dist/core/dev/version.server.js +27 -0
- package/dist/core/dev/vite.server.js +242 -0
- package/dist/core/errors/handler.server.d.ts +17 -1
- package/dist/core/errors/handler.server.js +4 -23
- package/dist/core/fields/builders/boolean-builder.d.ts +1 -1
- package/dist/core/fields/builders/field-builder.d.ts +12 -1
- package/dist/core/fields/builders/form-field-builder.d.ts +16 -5
- package/dist/core/fields/builders/form-field-builder.js +19 -8
- package/dist/core/fields/builders/select-builder.d.ts +1 -1
- package/dist/core/fields/types.d.ts +16 -0
- package/dist/core/fields/util.d.ts +60 -0
- package/dist/core/fields/util.js +84 -1
- package/dist/core/fields/validate.js +171 -0
- package/dist/core/handler.server.d.ts +4 -0
- package/dist/core/handler.server.js +25 -0
- package/dist/core/i18n/en/common.d.ts +18 -0
- package/dist/core/i18n/en/common.js +20 -1
- package/dist/core/i18n/fr/common.d.ts +18 -0
- package/dist/core/i18n/fr/common.js +20 -1
- package/dist/core/i18n/index.d.ts +0 -1
- package/dist/core/i18n/index.js +0 -1
- package/dist/core/locale/copy.server.d.ts +35 -0
- package/dist/core/locale/copy.server.js +93 -0
- package/dist/core/locale/types.d.ts +20 -0
- package/dist/core/panel/configure.d.ts +63 -0
- package/dist/core/panel/configure.js +56 -0
- package/dist/core/panel/types.d.ts +61 -0
- package/dist/core/pipeline/build-document.server.d.ts +26 -0
- package/dist/core/pipeline/build-document.server.js +83 -0
- package/dist/core/pipeline/build.server.d.ts +23 -0
- package/dist/core/pipeline/build.server.js +76 -0
- package/dist/core/pipeline/config-map/build-tree-map.d.ts +4 -0
- package/dist/core/pipeline/config-map/index.d.ts +6 -0
- package/dist/core/pipeline/config-map/index.js +54 -0
- package/dist/core/pipeline/define-hook.d.ts +42 -0
- package/dist/core/pipeline/define-hook.js +40 -0
- package/dist/core/pipeline/extract-data.server.d.ts +18 -0
- package/dist/core/pipeline/extract-data.server.js +78 -0
- package/dist/core/pipeline/hook-name.server.d.ts +11 -0
- package/dist/core/pipeline/hook-name.server.js +14 -0
- package/dist/core/pipeline/hooks/authorize.server.d.ts +6 -0
- package/dist/core/pipeline/hooks/authorize.server.js +37 -0
- package/dist/core/pipeline/hooks/data-config-map.server.d.ts +8 -0
- package/dist/core/pipeline/hooks/data-config-map.server.js +19 -0
- package/dist/core/pipeline/hooks/get-original-document.server.d.ts +9 -0
- package/dist/core/pipeline/hooks/get-original-document.server.js +34 -0
- package/dist/core/pipeline/hooks/normalize-resolved-references.server.d.ts +16 -0
- package/dist/core/pipeline/hooks/normalize-resolved-references.server.js +40 -0
- package/dist/core/pipeline/hooks/original-config-map.server.d.ts +8 -0
- package/dist/core/pipeline/hooks/original-config-map.server.js +23 -0
- package/dist/core/pipeline/hooks/process-document-fields.server.d.ts +5 -0
- package/dist/core/pipeline/hooks/process-document-fields.server.js +62 -0
- package/dist/core/pipeline/hooks/resolve-content-owner.server.d.ts +17 -0
- package/dist/core/pipeline/hooks/resolve-content-owner.server.js +24 -0
- package/dist/core/pipeline/hooks/set-default-values.server.d.ts +16 -0
- package/dist/core/pipeline/hooks/set-default-values.server.js +79 -0
- package/dist/core/pipeline/hooks/set-document-locale.server.d.ts +5 -0
- package/dist/core/pipeline/hooks/set-document-locale.server.js +19 -0
- package/dist/core/pipeline/hooks/set-document-type.server.d.ts +6 -0
- package/dist/core/pipeline/hooks/set-document-type.server.js +19 -0
- package/dist/core/pipeline/hooks/sort-document-props.server.d.ts +7 -0
- package/dist/core/pipeline/hooks/sort-document-props.server.js +71 -0
- package/dist/core/pipeline/hooks/validate-fields.server.d.ts +12 -0
- package/dist/core/pipeline/hooks/validate-fields.server.js +170 -0
- package/dist/core/pipeline/persist/blocks/diff.server.d.ts +15 -0
- package/dist/core/pipeline/persist/blocks/diff.server.js +69 -0
- package/dist/core/pipeline/persist/blocks/extract.server.d.ts +9 -0
- package/dist/core/pipeline/persist/blocks/extract.server.js +33 -0
- package/dist/core/pipeline/persist/blocks/index.server.d.ts +27 -0
- package/dist/core/pipeline/persist/blocks/index.server.js +68 -0
- package/dist/core/pipeline/persist/relations/diff.server.d.ts +14 -0
- package/dist/core/pipeline/persist/relations/diff.server.js +47 -0
- package/dist/core/pipeline/persist/relations/extract.server.d.ts +11 -0
- package/dist/core/pipeline/persist/relations/extract.server.js +59 -0
- package/dist/core/pipeline/persist/relations/index.server.d.ts +26 -0
- package/dist/core/pipeline/persist/relations/index.server.js +66 -0
- package/dist/core/pipeline/persist/tree/diff.server.d.ts +20 -0
- package/dist/core/pipeline/persist/tree/diff.server.js +51 -0
- package/dist/core/pipeline/persist/tree/extract.server.d.ts +9 -0
- package/dist/core/pipeline/persist/tree/extract.server.js +34 -0
- package/dist/core/pipeline/persist/tree/index.server.d.ts +14 -0
- package/dist/core/pipeline/persist/tree/index.server.js +50 -0
- package/dist/core/pipeline/query.d.ts +14 -0
- package/dist/core/pipeline/query.js +36 -0
- package/dist/core/pipeline/run.server.d.ts +146 -0
- package/dist/core/pipeline/run.server.js +256 -0
- package/dist/core/pipeline/types.d.ts +140 -0
- package/dist/core/pipeline/types.js +10 -0
- package/dist/core/plugins/api-init/index.server.js +84 -0
- package/dist/core/plugins/cache/cache.server.js +1 -1
- package/dist/core/plugins/cache/index.d.ts +1 -2
- package/dist/core/plugins/cache/index.js +3 -1
- package/dist/core/plugins/cache/types.d.ts +5 -0
- package/dist/core/plugins/configure.d.ts +12 -0
- package/dist/core/plugins/configure.js +26 -0
- package/dist/core/plugins/defaults/index.d.ts +1 -0
- package/dist/core/plugins/defaults/index.js +3 -0
- package/dist/core/plugins/defaults/module.d.ts +12 -0
- package/dist/core/plugins/defaults/module.js +14 -0
- package/dist/core/plugins/defaults/module.server.d.ts +4 -0
- package/dist/core/plugins/defaults/module.server.js +15 -0
- package/dist/core/plugins/defaults/types.d.ts +18 -0
- package/dist/core/plugins/defaults/types.js +1 -0
- package/dist/core/plugins/mailer/index.server.js +29 -0
- package/dist/core/plugins/plugins.server.js +10 -0
- package/dist/core/plugins/sse/bus.server.d.ts +16 -0
- package/dist/core/plugins/sse/bus.server.js +69 -0
- package/dist/core/plugins/sse/client.d.ts +14 -16
- package/dist/core/plugins/sse/client.js +42 -34
- package/dist/core/plugins/sse/index.d.ts +10 -2
- package/dist/core/plugins/sse/index.js +9 -1
- package/dist/core/plugins/sse/index.server.d.ts +29 -0
- package/dist/core/plugins/sse/index.server.js +18 -0
- package/dist/core/plugins/sse/types.d.ts +15 -7
- package/dist/core/prototype/area/api.server.d.ts +91 -0
- package/dist/core/prototype/area/api.server.js +117 -0
- package/dist/core/prototype/area/augment-label.d.ts +16 -0
- package/dist/core/prototype/area/augment-label.js +13 -0
- package/dist/core/prototype/area/definition.d.ts +18 -0
- package/dist/core/prototype/area/definition.js +44 -0
- package/dist/core/prototype/area/definition.server.d.ts +9 -0
- package/dist/core/prototype/area/definition.server.js +40 -0
- package/dist/core/prototype/area/hooks.server.d.ts +17 -0
- package/dist/core/prototype/area/hooks.server.js +61 -0
- package/dist/core/prototype/area/index.d.ts +1 -0
- package/dist/core/prototype/area/index.js +1 -0
- package/dist/core/prototype/area/operations/find.d.ts +18 -0
- package/dist/core/prototype/area/operations/find.js +43 -0
- package/dist/core/prototype/area/operations/update.d.ts +29 -0
- package/dist/core/prototype/area/operations/update.js +44 -0
- package/dist/core/prototype/area/rest/endpoint.server.d.ts +14 -0
- package/dist/core/prototype/area/rest/endpoint.server.js +15 -0
- package/dist/core/prototype/area/rest/get.server.d.ts +4 -0
- package/dist/core/prototype/area/rest/get.server.js +31 -0
- package/dist/core/prototype/area/rest/index.server.d.ts +9 -0
- package/dist/core/prototype/area/rest/index.server.js +14 -0
- package/dist/core/prototype/area/rest/lock.server.d.ts +2 -0
- package/dist/core/prototype/area/rest/lock.server.js +38 -0
- package/dist/core/prototype/area/rest/update.server.d.ts +4 -0
- package/dist/core/prototype/area/rest/update.server.js +38 -0
- package/dist/core/prototype/area/types.js +1 -0
- package/dist/core/prototype/collection/api.server.d.ts +173 -0
- package/dist/core/prototype/collection/api.server.js +224 -0
- package/dist/core/prototype/collection/augment-label.d.ts +6 -0
- package/dist/core/prototype/collection/definition.d.ts +26 -0
- package/dist/core/prototype/collection/definition.js +74 -0
- package/dist/core/prototype/collection/definition.server.d.ts +8 -0
- package/dist/core/prototype/collection/definition.server.js +24 -0
- package/dist/core/prototype/collection/hooks/merge-with-blank.server.d.ts +5 -0
- package/dist/core/prototype/collection/hooks/merge-with-blank.server.js +28 -0
- package/dist/core/prototype/collection/hooks.server.d.ts +28 -0
- package/dist/core/prototype/collection/hooks.server.js +133 -0
- package/dist/core/prototype/collection/index.d.ts +1 -0
- package/dist/core/prototype/collection/index.js +1 -0
- package/dist/core/prototype/collection/nested/enabled.d.ts +8 -0
- package/dist/core/prototype/collection/nested/enabled.js +7 -0
- package/dist/core/prototype/collection/nested/hooks/add-children.server.d.ts +4 -0
- package/dist/core/prototype/collection/nested/hooks/add-children.server.js +40 -0
- package/dist/core/prototype/collection/nested/hooks/index.server.d.ts +9 -0
- package/dist/core/prototype/collection/nested/hooks/index.server.js +9 -0
- package/dist/core/prototype/collection/nested/module.d.ts +15 -0
- package/dist/core/prototype/collection/nested/module.js +17 -0
- package/dist/core/prototype/collection/nested/module.server.d.ts +16 -0
- package/dist/core/prototype/collection/nested/module.server.js +21 -0
- package/dist/core/prototype/collection/operations/create.d.ts +18 -0
- package/dist/core/prototype/collection/operations/create.js +68 -0
- package/dist/core/prototype/collection/operations/delete-by-id.d.ts +11 -0
- package/dist/core/prototype/collection/operations/delete-by-id.js +44 -0
- package/dist/core/prototype/collection/operations/delete.d.ts +15 -0
- package/dist/core/prototype/collection/operations/delete.js +34 -0
- package/dist/core/prototype/collection/operations/duplicate.d.ts +12 -0
- package/dist/core/prototype/collection/operations/duplicate.js +112 -0
- package/dist/core/prototype/collection/operations/find-by-id.d.ts +22 -0
- package/dist/core/prototype/collection/operations/find-by-id.js +47 -0
- package/dist/core/prototype/collection/operations/find.d.ts +22 -0
- package/dist/core/prototype/collection/operations/find.js +65 -0
- package/dist/core/prototype/collection/operations/update-by-id.d.ts +30 -0
- package/dist/core/prototype/collection/operations/update-by-id.js +52 -0
- package/dist/core/prototype/collection/rest/create.server.d.ts +4 -0
- package/dist/core/prototype/collection/rest/create.server.js +26 -0
- package/dist/core/prototype/collection/rest/delete-by-id.server.d.ts +4 -0
- package/dist/core/prototype/collection/rest/delete-by-id.server.js +16 -0
- package/dist/core/prototype/collection/rest/delete.server.d.ts +4 -0
- package/dist/core/prototype/collection/rest/delete.server.js +33 -0
- package/dist/core/prototype/collection/rest/duplicate.server.d.ts +1 -0
- package/dist/core/prototype/collection/rest/duplicate.server.js +17 -0
- package/dist/core/prototype/collection/rest/endpoint.server.d.ts +27 -0
- package/dist/core/prototype/collection/rest/endpoint.server.js +23 -0
- package/dist/core/prototype/collection/rest/get-by-id.server.d.ts +4 -0
- package/dist/core/prototype/collection/rest/get-by-id.server.js +40 -0
- package/dist/core/prototype/collection/rest/get.server.d.ts +4 -0
- package/dist/core/prototype/collection/rest/get.server.js +38 -0
- package/dist/core/prototype/collection/rest/index.server.d.ts +12 -0
- package/dist/core/prototype/collection/rest/index.server.js +24 -0
- package/dist/core/prototype/collection/rest/lock.server.d.ts +2 -0
- package/dist/core/prototype/collection/rest/lock.server.js +59 -0
- package/dist/core/prototype/collection/rest/update-by-id.server.d.ts +4 -0
- package/dist/core/prototype/collection/rest/update-by-id.server.js +44 -0
- package/dist/core/prototype/collection/thumbnail/augment.d.ts +13 -0
- package/dist/core/prototype/collection/thumbnail/augment.js +15 -0
- package/dist/core/prototype/collection/thumbnail/find-thumbnail.d.ts +9 -0
- package/dist/core/prototype/collection/thumbnail/find-thumbnail.js +34 -0
- package/dist/core/prototype/collection/thumbnail/hooks/index.server.d.ts +9 -0
- package/dist/core/prototype/collection/thumbnail/hooks/index.server.js +9 -0
- package/dist/core/prototype/collection/thumbnail/hooks/set-document-thumbnail.server.d.ts +7 -0
- package/dist/core/prototype/collection/thumbnail/hooks/set-document-thumbnail.server.js +40 -0
- package/dist/core/prototype/collection/types.d.ts +14 -0
- package/dist/core/prototype/collection/types.js +1 -0
- package/dist/core/prototype/collection/upload/boot/index.server.d.ts +13 -0
- package/dist/core/prototype/collection/upload/boot/index.server.js +11 -0
- package/dist/core/prototype/collection/upload/constant.d.ts +10 -0
- package/dist/core/prototype/collection/upload/constant.js +10 -0
- package/dist/core/prototype/collection/upload/directories/configure.d.ts +14 -0
- package/dist/core/prototype/collection/upload/directories/configure.js +19 -0
- package/dist/core/prototype/collection/upload/directories/configure.server.d.ts +12 -0
- package/dist/core/prototype/collection/upload/directories/configure.server.js +35 -0
- package/dist/core/prototype/collection/upload/directories/derive.d.ts +7 -0
- package/dist/core/prototype/collection/upload/directories/derive.js +56 -0
- package/dist/core/prototype/collection/upload/directories/pipeline.server.d.ts +10 -0
- package/dist/core/prototype/collection/upload/directories/pipeline.server.js +22 -0
- package/dist/core/prototype/collection/upload/disk/delete.server.d.ts +9 -0
- package/dist/core/prototype/collection/upload/disk/delete.server.js +106 -0
- package/dist/core/prototype/collection/upload/disk/save.server.d.ts +32 -0
- package/dist/core/prototype/collection/upload/disk/save.server.js +190 -0
- package/dist/core/prototype/collection/upload/doc-type.d.ts +14 -0
- package/dist/core/prototype/collection/upload/doc-type.js +28 -0
- package/dist/core/prototype/collection/upload/enabled.d.ts +8 -0
- package/dist/core/prototype/collection/upload/enabled.js +7 -0
- package/dist/core/prototype/collection/upload/ensure.server.d.ts +12 -0
- package/dist/core/prototype/collection/upload/ensure.server.js +19 -0
- package/dist/core/prototype/collection/upload/hooks/clean-up-files.server.d.ts +10 -0
- package/dist/core/prototype/collection/upload/hooks/clean-up-files.server.js +17 -0
- package/dist/core/prototype/collection/upload/hooks/convert-base64.server.d.ts +13 -0
- package/dist/core/prototype/collection/upload/hooks/convert-base64.server.js +36 -0
- package/dist/core/prototype/collection/upload/hooks/extract-path.server.d.ts +6 -0
- package/dist/core/prototype/collection/upload/hooks/extract-path.server.js +25 -0
- package/dist/core/prototype/collection/upload/hooks/handle-path-creation.server.d.ts +6 -0
- package/dist/core/prototype/collection/upload/hooks/handle-path-creation.server.js +82 -0
- package/dist/core/prototype/collection/upload/hooks/index.server.d.ts +13 -0
- package/dist/core/prototype/collection/upload/hooks/index.server.js +13 -0
- package/dist/core/prototype/collection/upload/hooks/populate-sizes.server.d.ts +4 -0
- package/dist/core/prototype/collection/upload/hooks/populate-sizes.server.js +48 -0
- package/dist/core/prototype/collection/upload/hooks/process-file-upload.server.d.ts +20 -0
- package/dist/core/prototype/collection/upload/hooks/process-file-upload.server.js +60 -0
- package/dist/core/prototype/collection/upload/hooks/update-directory-children.server.d.ts +10 -0
- package/dist/core/prototype/collection/upload/hooks/update-directory-children.server.js +47 -0
- package/dist/core/prototype/collection/upload/module.d.ts +15 -0
- package/dist/core/prototype/collection/upload/module.js +92 -0
- package/dist/core/prototype/collection/upload/module.server.d.ts +24 -0
- package/dist/core/prototype/collection/upload/module.server.js +36 -0
- package/dist/core/prototype/collection/upload/naming.d.ts +23 -0
- package/dist/core/prototype/collection/upload/naming.js +37 -0
- package/dist/core/prototype/collection/upload/types.d.ts +102 -0
- package/dist/core/prototype/collection/upload/types.js +1 -0
- package/dist/core/prototype/collection/upload/util/config.d.ts +16 -0
- package/dist/core/prototype/collection/upload/util/converter.server.d.ts +29 -0
- package/dist/core/prototype/collection/upload/util/converter.server.js +127 -0
- package/dist/core/prototype/collection/upload/util/path.d.ts +69 -0
- package/dist/core/prototype/collection/upload/util/path.js +143 -0
- package/dist/core/prototype/define.d.ts +112 -0
- package/dist/core/prototype/define.js +50 -0
- package/dist/core/prototype/doc.d.ts +31 -0
- package/dist/core/prototype/doc.js +118 -0
- package/dist/core/prototype/index.d.ts +14 -0
- package/dist/core/prototype/index.js +14 -0
- package/dist/core/prototype/naming.d.ts +22 -0
- package/dist/core/prototype/naming.js +23 -0
- package/dist/core/prototype/shared/metas/constant.d.ts +16 -0
- package/dist/core/prototype/shared/metas/constant.js +16 -0
- package/dist/core/prototype/shared/metas/fields.d.ts +8 -0
- package/dist/core/prototype/shared/metas/fields.js +27 -0
- package/dist/core/prototype/shared/metas/hooks/delete-panel-lock-metas.server.d.ts +9 -0
- package/dist/core/prototype/shared/metas/hooks/delete-panel-lock-metas.server.js +20 -0
- package/dist/core/prototype/shared/metas/hooks/index.server.d.ts +7 -0
- package/dist/core/prototype/shared/metas/hooks/index.server.js +7 -0
- package/dist/core/prototype/shared/metas/hooks/stamp-authorship.server.d.ts +2 -0
- package/dist/core/prototype/shared/metas/hooks/stamp-authorship.server.js +27 -0
- package/dist/core/prototype/shared/metas/lock.d.ts +15 -0
- package/dist/core/prototype/shared/metas/lock.js +30 -0
- package/dist/core/prototype/shared/metas/lock.server.d.ts +46 -0
- package/dist/core/prototype/shared/metas/lock.server.js +91 -0
- package/dist/core/prototype/shared/metas/module.d.ts +38 -0
- package/dist/core/prototype/shared/metas/module.js +38 -0
- package/dist/core/prototype/shared/metas/module.server.d.ts +30 -0
- package/dist/core/prototype/shared/metas/module.server.js +38 -0
- package/dist/core/prototype/shared/title/augment.d.ts +27 -0
- package/dist/core/prototype/shared/title/augment.js +19 -0
- package/dist/core/prototype/shared/title/find-title.d.ts +14 -0
- package/dist/core/prototype/shared/title/find-title.js +35 -0
- package/dist/core/prototype/shared/title/hooks/index.server.d.ts +9 -0
- package/dist/core/prototype/shared/title/hooks/index.server.js +9 -0
- package/dist/core/prototype/shared/title/hooks/set-document-title.server.d.ts +4 -0
- package/dist/core/prototype/shared/title/hooks/set-document-title.server.js +32 -0
- package/dist/core/prototype/shared/title/select.d.ts +16 -0
- package/dist/core/prototype/shared/title/select.js +24 -0
- package/dist/core/prototype/shared/url/augment.d.ts +13 -0
- package/dist/core/prototype/shared/url/augment.js +11 -0
- package/dist/core/prototype/shared/url/enabled.d.ts +8 -0
- package/dist/core/prototype/shared/url/enabled.js +7 -0
- package/dist/core/prototype/shared/url/hooks/index.server.d.ts +9 -0
- package/dist/core/prototype/shared/url/hooks/index.server.js +9 -0
- package/dist/core/prototype/shared/url/hooks/populate-url.server.d.ts +4 -0
- package/dist/core/prototype/shared/url/hooks/populate-url.server.js +120 -0
- package/dist/core/prototype/shared/versions/augment.d.ts +23 -0
- package/dist/core/prototype/shared/versions/augment.js +47 -0
- package/dist/core/prototype/shared/versions/auto-saves.server.d.ts +16 -0
- package/dist/core/prototype/shared/versions/auto-saves.server.js +29 -0
- package/dist/core/prototype/shared/versions/blank.d.ts +13 -0
- package/dist/core/prototype/shared/versions/blank.js +15 -0
- package/dist/core/prototype/shared/versions/configure.server.d.ts +7 -0
- package/dist/core/prototype/shared/versions/configure.server.js +75 -0
- package/dist/core/prototype/shared/versions/constant.d.ts +14 -0
- package/dist/core/prototype/shared/versions/constant.js +13 -0
- package/dist/core/prototype/shared/versions/doc-type.d.ts +8 -0
- package/dist/core/prototype/shared/versions/doc-type.js +9 -0
- package/dist/core/prototype/shared/versions/enabled.d.ts +10 -0
- package/dist/core/prototype/shared/versions/enabled.js +9 -0
- package/dist/core/prototype/shared/versions/hooks/define-version-operation.server.d.ts +19 -0
- package/dist/core/prototype/shared/versions/hooks/define-version-operation.server.js +37 -0
- package/dist/core/prototype/shared/versions/hooks/demote-other-versions.d.ts +17 -0
- package/dist/core/prototype/shared/versions/hooks/demote-other-versions.js +37 -0
- package/dist/core/prototype/shared/versions/hooks/discard-auto-saves-of.server.d.ts +8 -0
- package/dist/core/prototype/shared/versions/hooks/discard-auto-saves-of.server.js +17 -0
- package/dist/core/prototype/shared/versions/hooks/expose-version-id.d.ts +12 -0
- package/dist/core/prototype/shared/versions/hooks/expose-version-id.js +17 -0
- package/dist/core/prototype/shared/versions/hooks/fallback-data-from-original.d.ts +9 -0
- package/dist/core/prototype/shared/versions/hooks/fallback-data-from-original.js +31 -0
- package/dist/core/prototype/shared/versions/hooks/handle-new-version.server.d.ts +32 -0
- package/dist/core/prototype/shared/versions/hooks/handle-new-version.server.js +194 -0
- package/dist/core/prototype/shared/versions/hooks/index.server.d.ts +15 -0
- package/dist/core/prototype/shared/versions/hooks/index.server.js +15 -0
- package/dist/core/prototype/shared/versions/hooks/prevent-last-version-deletion.server.d.ts +7 -0
- package/dist/core/prototype/shared/versions/hooks/prevent-last-version-deletion.server.js +21 -0
- package/dist/core/prototype/shared/versions/hooks/strip-auto-save-flag.server.d.ts +7 -0
- package/dist/core/prototype/shared/versions/hooks/strip-auto-save-flag.server.js +14 -0
- package/dist/core/prototype/shared/versions/module.browser.js +1 -0
- package/dist/core/prototype/shared/versions/module.server.d.ts +1 -0
- package/dist/core/prototype/shared/versions/module.server.js +4 -0
- package/dist/core/prototype/shared/versions/naming.d.ts +7 -0
- package/dist/core/prototype/shared/versions/naming.js +21 -0
- package/dist/core/prototype/shared/versions/read-query.d.ts +27 -0
- package/dist/core/prototype/shared/versions/read-query.js +35 -0
- package/dist/core/prototype/shared/versions/retire-auto-saves.server.d.ts +16 -0
- package/dist/core/prototype/shared/versions/retire-auto-saves.server.js +29 -0
- package/dist/core/prototype/shared/versions/strategy.d.ts +86 -0
- package/dist/core/prototype/shared/versions/strategy.js +93 -0
- package/dist/core/prototype/shared/versions/types.d.ts +37 -0
- package/dist/core/prototype/shared/versions/types.js +1 -0
- package/dist/core/prototype/shared/versions/validate-config.server.d.ts +8 -0
- package/dist/core/prototype/shared/versions/validate-config.server.js +21 -0
- package/dist/core/prototype/shared/versions/write-plan.d.ts +30 -0
- package/dist/core/prototype/shared/versions/write-plan.js +38 -0
- package/dist/core/prototype/types.d.ts +79 -0
- package/dist/core/prototype/types.js +1 -0
- package/dist/core/prototype/when.d.ts +25 -0
- package/dist/core/prototype/when.js +32 -0
- package/dist/core/rime.server.d.ts +64 -4363
- package/dist/core/rime.server.js +45 -93
- package/dist/core/routes/constants.d.ts +12 -0
- package/dist/core/routes/constants.js +16 -0
- package/dist/core/routes/constants.server.d.ts +5 -0
- package/dist/core/routes/constants.server.js +9 -0
- package/dist/core/routes/context.server.d.ts +17 -0
- package/dist/core/routes/context.server.js +29 -0
- package/dist/core/routes/handler.server.d.ts +58 -0
- package/dist/core/routes/handler.server.js +107 -0
- package/dist/core/routes/panel-navigation.d.ts +18 -0
- package/dist/core/routes/panel-navigation.js +64 -0
- package/dist/core/routes/util.d.ts +24 -0
- package/dist/core/routes/util.js +44 -0
- package/dist/fields/blocks/component/AddBlockButton.svelte +1 -1
- package/dist/fields/blocks/component/AddBlockButton.svelte.d.ts +1 -1
- package/dist/fields/blocks/component/Block.svelte +1 -1
- package/dist/fields/blocks/component/Blocks.svelte +1 -1
- package/dist/fields/blocks/index.d.ts +2 -1
- package/dist/fields/blocks/index.js +18 -2
- package/dist/fields/email/index.js +1 -1
- package/dist/fields/group/component/Group.svelte +1 -1
- package/dist/fields/group/component/Group.svelte.d.ts +1 -1
- package/dist/fields/group/index.d.ts +2 -2
- package/dist/fields/link/component/RessourceInput.svelte +2 -2
- package/dist/fields/link/index.d.ts +1 -1
- package/dist/fields/link/index.js +57 -60
- package/dist/fields/link/module.server.js +1 -1
- package/dist/fields/number/index.d.ts +1 -1
- package/dist/fields/relation/component/Cell.svelte +2 -2
- package/dist/fields/relation/component/Relation.svelte +13 -22
- package/dist/fields/relation/component/default/Default.svelte +4 -3
- package/dist/fields/relation/component/types.d.ts +2 -1
- package/dist/fields/relation/component/upload/Browse.svelte +4 -4
- package/dist/fields/relation/component/upload/Upload.svelte +2 -2
- package/dist/fields/relation/index.d.ts +11 -1
- package/dist/fields/relation/index.js +81 -63
- package/dist/fields/relation/module.server.js +3 -8
- package/dist/fields/rich-text/core/features/link/component/link-selector.svelte +2 -2
- package/dist/fields/rich-text/core/features/resource/resource-extension.d.ts +1 -1
- package/dist/fields/rich-text/core/features/resource/resource.svelte +2 -2
- package/dist/fields/rich-text/core/features/upload/upload.svelte +2 -2
- package/dist/fields/slug/index.d.ts +1 -1
- package/dist/fields/tabs/index.d.ts +1 -1
- package/dist/fields/text/index.d.ts +1 -1
- package/dist/fields/textarea/index.d.ts +1 -1
- package/dist/fields/toggle/index.d.ts +1 -1
- package/dist/fields/tree/component/TreeBlock.svelte +1 -1
- package/dist/fields/tree/component/TreeBlock.svelte.d.ts +1 -1
- package/dist/fields/tree/component/props.d.ts +1 -1
- package/dist/fields/tree/index.d.ts +1 -1
- package/dist/fields/tree/index.js +12 -1
- package/dist/fields/types.d.ts +4 -9
- package/dist/index.d.ts +5 -2
- package/dist/index.js +2 -1
- package/dist/panel/components/Root.svelte +12 -8
- package/dist/panel/components/Root.svelte.d.ts +1 -1
- package/dist/panel/components/sections/auth/AuthForm.svelte +3 -0
- package/dist/panel/components/sections/collection/StatusDot.svelte +2 -1
- package/dist/panel/components/sections/collection/StatusDot.svelte.d.ts +1 -1
- package/dist/panel/components/sections/collection/bulk-upload/DropZone.svelte +1 -1
- package/dist/panel/components/sections/collection/folder/FolderEdit.svelte +2 -2
- package/dist/panel/components/sections/collection/folder/FolderEdit.svelte.d.ts +1 -1
- package/dist/panel/components/sections/collection/folder/FolderWithActions.svelte +8 -8
- package/dist/panel/components/sections/collection/folder/FolderWithActions.svelte.d.ts +1 -1
- package/dist/panel/components/sections/collection/grid/create-directory-dialog/CreateDirectoryDialog.svelte +1 -1
- package/dist/panel/components/sections/collection/grid/grid-item/GridItem.svelte +7 -5
- package/dist/panel/components/sections/collection/grid/grid-item/GridItem.svelte.d.ts +1 -1
- package/dist/panel/components/sections/collection/header/ButtonCreate.svelte +9 -6
- package/dist/panel/components/sections/collection/header/DisplayMode.svelte +1 -2
- package/dist/panel/components/sections/collection/header/Header.svelte +2 -5
- package/dist/panel/components/sections/collection/list/CollectionList.svelte +1 -1
- package/dist/panel/components/sections/collection/list/header/Header.svelte +7 -1
- package/dist/panel/components/sections/collection/list/row/Row.svelte +9 -4
- package/dist/panel/components/sections/collection/list/row/Row.svelte.d.ts +1 -1
- package/dist/panel/components/sections/collection/tree/CollectionTreeNode.svelte +2 -2
- package/dist/panel/components/sections/collection/tree/CollectionTreeNode.svelte.d.ts +1 -1
- package/dist/panel/components/sections/collection/upload-thumb-cell/UploadThumbCell.svelte +1 -1
- package/dist/panel/components/sections/document/AuthFooter.svelte +3 -3
- package/dist/panel/components/sections/document/AutoSaveBanner.svelte +115 -0
- package/dist/panel/components/sections/document/AutoSaveBanner.svelte.d.ts +16 -0
- package/dist/panel/components/sections/document/ButtonStatus.svelte +12 -5
- package/dist/panel/components/sections/document/CurrentlyEdited.svelte +10 -27
- package/dist/panel/components/sections/document/CurrentlyEdited.svelte.d.ts +6 -5
- package/dist/panel/components/sections/document/Document.svelte +220 -18
- package/dist/panel/components/sections/document/Document.svelte.d.ts +1 -1
- package/dist/panel/components/sections/document/Header.svelte +49 -5
- package/dist/panel/components/sections/document/Header.svelte.d.ts +2 -0
- package/dist/panel/components/sections/document/Settings.svelte +77 -21
- package/dist/panel/components/sections/document/Versions.svelte +140 -51
- package/dist/panel/components/sections/document/Versions.svelte.d.ts +11 -8
- package/dist/panel/components/sections/document/upload-header/UploadHeader.svelte +4 -2
- package/dist/panel/components/sections/document/upload-header/UploadHeader.svelte.d.ts +1 -1
- package/dist/panel/components/sections/document/upload-header/drop-zone/DropZone.svelte +1 -1
- package/dist/panel/components/sections/document/upload-header/drop-zone/DropZone.svelte.d.ts +2 -2
- package/dist/panel/components/sections/document/versions-list.d.ts +10 -0
- package/dist/panel/components/sections/document/versions-list.js +10 -0
- package/dist/panel/components/sections/live/Consumer.svelte +1 -1
- package/dist/panel/components/sections/live/Consumer.svelte.d.ts +1 -1
- package/dist/panel/components/sections/live/LiveEdit.svelte +1 -1
- package/dist/panel/components/ui/card-resource/card-resource.svelte +13 -2
- package/dist/panel/components/ui/nav/Nav.svelte +3 -3
- package/dist/panel/components/ui/nav/NavItem.svelte +2 -1
- package/dist/panel/components/ui/nav/UserButton.svelte +1 -1
- package/dist/panel/context/collection.svelte.d.ts +2 -2
- package/dist/panel/context/collection.svelte.js +6 -7
- package/dist/panel/context/config.svelte.d.ts +1 -1
- package/dist/panel/context/documentForm.svelte.d.ts +19 -3
- package/dist/panel/context/documentForm.svelte.js +210 -36
- package/dist/panel/context/live.svelte.d.ts +1 -1
- package/dist/panel/context/live.svelte.js +2 -2
- package/dist/panel/context/user.svelte.d.ts +1 -1
- package/dist/panel/context/versions.svelte.d.ts +8 -0
- package/dist/panel/context/versions.svelte.js +34 -0
- package/dist/panel/index.d.ts +15 -12
- package/dist/panel/index.js +1 -3
- package/dist/panel/pages/area/Area.svelte +7 -2
- package/dist/panel/pages/area/Area.svelte.d.ts +1 -1
- package/dist/panel/pages/area/actions.server.js +31 -17
- package/dist/panel/pages/area/load.server.d.ts +1 -1
- package/dist/panel/pages/area/load.server.js +10 -25
- package/dist/panel/pages/auth/fields.js +1 -1
- package/dist/panel/pages/auth/forgot-password/ForgotPassword.svelte +1 -1
- package/dist/panel/pages/auth/forgot-password/load.server.js +3 -2
- package/dist/panel/pages/auth/reset-password/ResetPassword.svelte +1 -1
- package/dist/panel/pages/auth/reset-password/load.server.js +3 -2
- package/dist/panel/pages/auth/sign-in/SignIn.svelte +1 -1
- package/dist/panel/pages/auth/sign-in/load.server.d.ts +1 -1
- package/dist/panel/pages/auth/sign-in/load.server.js +5 -4
- package/dist/panel/pages/collection/Collection.svelte +15 -138
- package/dist/panel/pages/collection/Collection.svelte.d.ts +5 -8
- package/dist/panel/pages/collection/CollectionPage.svelte +146 -0
- package/dist/panel/pages/collection/CollectionPage.svelte.d.ts +18 -0
- package/dist/panel/pages/collection/load.server.d.ts +3 -3
- package/dist/panel/pages/collection/load.server.js +8 -10
- package/dist/panel/pages/collection-document/CollectionDocument.svelte +7 -2
- package/dist/panel/pages/collection-document/CollectionDocument.svelte.d.ts +1 -1
- package/dist/panel/pages/collection-document/actions.server.js +28 -12
- package/dist/panel/pages/collection-document/load.server.d.ts +1 -1
- package/dist/panel/pages/collection-document/load.server.js +16 -25
- package/dist/panel/pages/dashboard/Dashboard.svelte +1 -1
- package/dist/panel/pages/dashboard/Dashboard.svelte.d.ts +1 -1
- package/dist/panel/pages/dashboard/load.server.js +23 -21
- package/dist/panel/pages/dashboard/types.d.ts +1 -1
- package/dist/panel/pages/live/Live.svelte +1 -2
- package/dist/panel/pages/live/load.server.js +1 -1
- package/dist/panel/types.d.ts +2 -2
- package/dist/panel/util/live.server.d.ts +1 -1
- package/dist/panel/util/live.server.js +2 -2
- package/dist/panel/util/url.d.ts +0 -35
- package/dist/panel/util/url.js +1 -43
- package/dist/server.d.ts +6 -5
- package/dist/server.js +6 -5
- package/dist/types.d.ts +12 -6
- package/dist/util/coerce.d.ts +12 -0
- package/dist/util/coerce.js +38 -0
- package/dist/util/index.d.ts +16 -9
- package/dist/util/index.js +14 -12
- package/dist/util/object.d.ts +10 -0
- package/dist/util/object.js +14 -1
- package/dist/util/path.d.ts +16 -0
- package/dist/util/path.js +19 -0
- package/dist/util/string.d.ts +25 -0
- package/dist/util/string.js +30 -0
- package/dist/util/types.d.ts +5 -10
- package/dist/util/types.js +5 -0
- package/package.json +83 -21
- package/dist/.rime-modules.d.ts +0 -23
- package/dist/.rime-modules.json +0 -1
- package/dist/adapter-sqlite/generate-schema/relations/definition.server.d.ts +0 -55
- package/dist/adapter-sqlite/generate-schema/relations/definition.server.js +0 -52
- package/dist/adapter-sqlite/generate-schema/util.server.d.ts +0 -49
- package/dist/adapter-sqlite/generate-schema/util.server.js +0 -58
- package/dist/adapter-sqlite/orderBy.server.d.ts +0 -11
- package/dist/adapter-sqlite/orderBy.server.js +0 -98
- package/dist/adapter-sqlite/url.server.d.ts +0 -14
- package/dist/adapter-sqlite/url.server.js +0 -77
- package/dist/adapter-sqlite/util.server.d.ts +0 -174
- package/dist/adapter-sqlite/util.server.js +0 -357
- package/dist/adapter-sqlite/with.server.d.ts +0 -9
- package/dist/adapter-sqlite/with.server.js +0 -266
- package/dist/core/areas/config/augment-hooks.server.d.ts +0 -10
- package/dist/core/areas/config/augment-hooks.server.js +0 -51
- package/dist/core/areas/config/augment-metas.d.ts +0 -10
- package/dist/core/areas/config/augment-metas.js +0 -13
- package/dist/core/areas/config/augment-title.d.ts +0 -9
- package/dist/core/areas/config/augment-title.js +0 -8
- package/dist/core/areas/config/augment-url.d.ts +0 -10
- package/dist/core/areas/config/augment-url.js +0 -14
- package/dist/core/areas/config/augment-versions.d.ts +0 -14
- package/dist/core/areas/config/augment-versions.js +0 -25
- package/dist/core/areas/config/builder.d.ts +0 -3
- package/dist/core/areas/config/builder.js +0 -33
- package/dist/core/areas/config/builder.server.d.ts +0 -15
- package/dist/core/areas/config/builder.server.js +0 -35
- package/dist/core/areas/local-api.server.d.ts +0 -80
- package/dist/core/areas/local-api.server.js +0 -126
- package/dist/core/areas/operations/find.d.ts +0 -15
- package/dist/core/areas/operations/find.js +0 -52
- package/dist/core/areas/operations/update.d.ts +0 -15
- package/dist/core/areas/operations/update.js +0 -101
- package/dist/core/areas/rest/get.server.d.ts +0 -18
- package/dist/core/areas/rest/get.server.js +0 -45
- package/dist/core/areas/rest/index.server.d.ts +0 -6
- package/dist/core/areas/rest/index.server.js +0 -3
- package/dist/core/areas/rest/update.server.d.ts +0 -18
- package/dist/core/areas/rest/update.server.js +0 -43
- package/dist/core/collections/auth/constant.server.d.ts +0 -9
- package/dist/core/collections/auth/constant.server.js +0 -9
- package/dist/core/collections/auth/fields.d.ts +0 -13
- package/dist/core/collections/auth/fields.js +0 -55
- package/dist/core/collections/auth/hooks/after-create/populate-api-key.server.d.ts +0 -5
- package/dist/core/collections/auth/hooks/after-create/populate-api-key.server.js +0 -22
- package/dist/core/collections/auth/hooks/after-delete/delete-better-auth-user.server.d.ts +0 -4
- package/dist/core/collections/auth/hooks/after-delete/delete-better-auth-user.server.js +0 -25
- package/dist/core/collections/auth/hooks/before-create/create-better-auth-user.server.d.ts +0 -4
- package/dist/core/collections/auth/hooks/before-create/create-better-auth-user.server.js +0 -187
- package/dist/core/collections/auth/hooks/before-delete/prevent-superadmin-deletion.server.d.ts +0 -1
- package/dist/core/collections/auth/hooks/before-delete/prevent-superadmin-deletion.server.js +0 -10
- package/dist/core/collections/auth/hooks/before-read/remove-private-fields.server.d.ts +0 -1
- package/dist/core/collections/auth/hooks/before-read/remove-private-fields.server.js +0 -8
- package/dist/core/collections/auth/hooks/before-update/forward-roles.server.d.ts +0 -4
- package/dist/core/collections/auth/hooks/before-update/forward-roles.server.js +0 -54
- package/dist/core/collections/auth/hooks/before-update/prevent-superadmin-mutation.server.d.ts +0 -5
- package/dist/core/collections/auth/hooks/before-update/prevent-superadmin-mutation.server.js +0 -27
- package/dist/core/collections/auth/hooks/before-update/prevent-user-mutations.server.d.ts +0 -5
- package/dist/core/collections/auth/hooks/before-update/prevent-user-mutations.server.js +0 -18
- package/dist/core/collections/auth/hooks/before-upsert/augment-fields-password.server.d.ts +0 -6
- package/dist/core/collections/auth/hooks/before-upsert/augment-fields-password.server.js +0 -21
- package/dist/core/collections/auth/hooks/hooks.server.d.ts +0 -8
- package/dist/core/collections/auth/hooks/hooks.server.js +0 -8
- package/dist/core/collections/auth/types.d.ts +0 -8
- package/dist/core/collections/auth/util.d.ts +0 -13
- package/dist/core/collections/config/augment-auth.d.ts +0 -17
- package/dist/core/collections/config/augment-auth.js +0 -88
- package/dist/core/collections/config/augment-auth.server.d.ts +0 -3
- package/dist/core/collections/config/augment-auth.server.js +0 -23
- package/dist/core/collections/config/augment-hooks.server.d.ts +0 -14
- package/dist/core/collections/config/augment-hooks.server.js +0 -98
- package/dist/core/collections/config/augment-label.d.ts +0 -6
- package/dist/core/collections/config/augment-metas.d.ts +0 -9
- package/dist/core/collections/config/augment-metas.js +0 -12
- package/dist/core/collections/config/augment-nested.d.ts +0 -12
- package/dist/core/collections/config/augment-nested.js +0 -15
- package/dist/core/collections/config/augment-nested.server.d.ts +0 -12
- package/dist/core/collections/config/augment-nested.server.js +0 -18
- package/dist/core/collections/config/augment-panel.d.ts +0 -13
- package/dist/core/collections/config/augment-panel.js +0 -19
- package/dist/core/collections/config/augment-thumbnail.d.ts +0 -16
- package/dist/core/collections/config/augment-thumbnail.js +0 -15
- package/dist/core/collections/config/augment-title.d.ts +0 -16
- package/dist/core/collections/config/augment-title.js +0 -27
- package/dist/core/collections/config/augment-upload.d.ts +0 -10
- package/dist/core/collections/config/augment-upload.js +0 -59
- package/dist/core/collections/config/augment-upload.server.d.ts +0 -7
- package/dist/core/collections/config/augment-upload.server.js +0 -19
- package/dist/core/collections/config/augment-url.d.ts +0 -10
- package/dist/core/collections/config/augment-url.js +0 -14
- package/dist/core/collections/config/augment-versions.d.ts +0 -14
- package/dist/core/collections/config/augment-versions.js +0 -24
- package/dist/core/collections/config/builder.d.ts +0 -3
- package/dist/core/collections/config/builder.js +0 -51
- package/dist/core/collections/config/builder.server.d.ts +0 -15
- package/dist/core/collections/config/builder.server.js +0 -47
- package/dist/core/collections/config/types.d.ts +0 -3
- package/dist/core/collections/local-api.server.d.ts +0 -166
- package/dist/core/collections/local-api.server.js +0 -303
- package/dist/core/collections/nested/hooks/index.server.d.ts +0 -4
- package/dist/core/collections/nested/hooks/index.server.js +0 -33
- package/dist/core/collections/operations/create.d.ts +0 -16
- package/dist/core/collections/operations/create.js +0 -119
- package/dist/core/collections/operations/delete.d.ts +0 -17
- package/dist/core/collections/operations/delete.js +0 -32
- package/dist/core/collections/operations/deleteById.d.ts +0 -13
- package/dist/core/collections/operations/deleteById.js +0 -48
- package/dist/core/collections/operations/duplicate.d.ts +0 -12
- package/dist/core/collections/operations/duplicate.js +0 -142
- package/dist/core/collections/operations/find.d.ts +0 -21
- package/dist/core/collections/operations/find.js +0 -70
- package/dist/core/collections/operations/findById.d.ts +0 -16
- package/dist/core/collections/operations/findById.js +0 -53
- package/dist/core/collections/operations/updateById.d.ts +0 -20
- package/dist/core/collections/operations/updateById.js +0 -111
- package/dist/core/collections/rest/create.server.d.ts +0 -18
- package/dist/core/collections/rest/create.server.js +0 -37
- package/dist/core/collections/rest/delete.server.d.ts +0 -18
- package/dist/core/collections/rest/delete.server.js +0 -37
- package/dist/core/collections/rest/deleteById.server.d.ts +0 -18
- package/dist/core/collections/rest/deleteById.server.js +0 -21
- package/dist/core/collections/rest/duplicate.server.d.ts +0 -15
- package/dist/core/collections/rest/duplicate.server.js +0 -20
- package/dist/core/collections/rest/get.server.d.ts +0 -18
- package/dist/core/collections/rest/get.server.js +0 -50
- package/dist/core/collections/rest/getById.server.d.ts +0 -18
- package/dist/core/collections/rest/getById.server.js +0 -35
- package/dist/core/collections/rest/index.server.d.ts +0 -16
- package/dist/core/collections/rest/index.server.js +0 -16
- package/dist/core/collections/rest/updateById.server.d.ts +0 -18
- package/dist/core/collections/rest/updateById.server.js +0 -44
- package/dist/core/collections/upload/disk/delete.server.d.ts +0 -9
- package/dist/core/collections/upload/disk/delete.server.js +0 -77
- package/dist/core/collections/upload/disk/save.server.d.ts +0 -32
- package/dist/core/collections/upload/disk/save.server.js +0 -190
- package/dist/core/collections/upload/hooks/clean-up-files.server.d.ts +0 -10
- package/dist/core/collections/upload/hooks/clean-up-files.server.js +0 -17
- package/dist/core/collections/upload/hooks/convert-base64.server.d.ts +0 -13
- package/dist/core/collections/upload/hooks/convert-base64.server.js +0 -36
- package/dist/core/collections/upload/hooks/extract-path.server.d.ts +0 -6
- package/dist/core/collections/upload/hooks/extract-path.server.js +0 -25
- package/dist/core/collections/upload/hooks/handle-path-creation.server.d.ts +0 -6
- package/dist/core/collections/upload/hooks/handle-path-creation.server.js +0 -64
- package/dist/core/collections/upload/hooks/populate-sizes.server.d.ts +0 -1
- package/dist/core/collections/upload/hooks/populate-sizes.server.js +0 -45
- package/dist/core/collections/upload/hooks/process-file-upload.server.d.ts +0 -20
- package/dist/core/collections/upload/hooks/process-file-upload.server.js +0 -60
- package/dist/core/collections/upload/hooks/update-directory-children.server.d.ts +0 -2
- package/dist/core/collections/upload/hooks/update-directory-children.server.js +0 -41
- package/dist/core/collections/upload/upload.d.ts +0 -16
- package/dist/core/collections/upload/util/config.d.ts +0 -16
- package/dist/core/collections/upload/util/converter.server.d.ts +0 -16
- package/dist/core/collections/upload/util/converter.server.js +0 -105
- package/dist/core/collections/upload/util/path.d.ts +0 -66
- package/dist/core/collections/upload/util/path.js +0 -139
- package/dist/core/collections/versions/operations.d.ts +0 -93
- package/dist/core/collections/versions/operations.js +0 -117
- package/dist/core/config/auth/better-auth-hooks.server.js +0 -138
- package/dist/core/config/auth/better-auth.server.d.ts +0 -2121
- package/dist/core/config/auth/better-auth.server.js +0 -81
- package/dist/core/config/client/augment-directories.d.ts +0 -6
- package/dist/core/config/client/augment-directories.js +0 -11
- package/dist/core/config/client/augment-panel.d.ts +0 -35
- package/dist/core/config/client/augment-panel.js +0 -22
- package/dist/core/config/client/augment-plugins.d.ts +0 -4
- package/dist/core/config/client/augment-plugins.js +0 -13
- package/dist/core/config/client/augment-staff.d.ts +0 -7
- package/dist/core/config/client/augment-staff.js +0 -6
- package/dist/core/config/client/build-config.d.ts +0 -41
- package/dist/core/config/client/build-config.js +0 -13
- package/dist/core/config/client/index.d.ts +0 -4
- package/dist/core/config/client/index.js +0 -4
- package/dist/core/config/config-context.server.d.ts +0 -70
- package/dist/core/config/config-context.server.js +0 -113
- package/dist/core/config/server/augment-cors.server.d.ts +0 -4
- package/dist/core/config/server/augment-cors.server.js +0 -7
- package/dist/core/config/server/augment-directories.server.d.ts +0 -6
- package/dist/core/config/server/augment-directories.server.js +0 -37
- package/dist/core/config/server/augment-panel-access.server.d.ts +0 -28
- package/dist/core/config/server/augment-panel-access.server.js +0 -8
- package/dist/core/config/server/augment-plugins.server.d.ts +0 -5
- package/dist/core/config/server/augment-plugins.server.js +0 -45
- package/dist/core/config/server/augment-staff.server.d.ts +0 -7
- package/dist/core/config/server/augment-staff.server.js +0 -6
- package/dist/core/config/server/build-config.server.d.ts +0 -123
- package/dist/core/config/server/build-config.server.js +0 -28
- package/dist/core/config/server/index.server.d.ts +0 -9
- package/dist/core/config/server/index.server.js +0 -11
- package/dist/core/config/server/validate.server.d.ts +0 -3
- package/dist/core/config/server/validate.server.js +0 -234
- package/dist/core/config/server/write.server.js +0 -77
- package/dist/core/config/shared/augment-icons.d.ts +0 -9
- package/dist/core/config/shared/augment-icons.js +0 -11
- package/dist/core/config/shared/augment-prototypes.d.ts +0 -8
- package/dist/core/config/shared/augment-prototypes.js +0 -7
- package/dist/core/config/shared/compile.d.ts +0 -19
- package/dist/core/config/shared/compile.js +0 -26
- package/dist/core/config/shared/find-thumbnail.d.ts +0 -9
- package/dist/core/config/shared/find-thumbnail.js +0 -34
- package/dist/core/config/shared/find-title.d.ts +0 -14
- package/dist/core/config/shared/find-title.js +0 -35
- package/dist/core/config/shared/get-staff-collection.d.ts +0 -22
- package/dist/core/config/shared/get-staff-collection.js +0 -55
- package/dist/core/config/shared/upload-directories.d.ts +0 -7
- package/dist/core/config/shared/upload-directories.js +0 -55
- package/dist/core/config/shared/versions-alias.server.d.ts +0 -10
- package/dist/core/config/shared/versions-alias.server.js +0 -59
- package/dist/core/constant.d.ts +0 -62
- package/dist/core/constant.js +0 -73
- package/dist/core/constant.server.d.ts +0 -2
- package/dist/core/constant.server.js +0 -3
- package/dist/core/dev/cache/index.server.d.ts +0 -11
- package/dist/core/dev/cache/index.server.js +0 -37
- package/dist/core/dev/cli/build/index.js +0 -70
- package/dist/core/dev/cli/build/templates.js +0 -45
- package/dist/core/dev/cli/clear/index.server.js +0 -42
- package/dist/core/dev/cli/generate/index.server.js +0 -98
- package/dist/core/dev/cli/generate-manifest/index.server.d.ts +0 -17
- package/dist/core/dev/cli/generate-manifest/index.server.js +0 -221
- package/dist/core/dev/cli/init/index.server.js +0 -241
- package/dist/core/dev/cli/init/templates.js +0 -116
- package/dist/core/dev/cli/util/log.server.d.ts +0 -1
- package/dist/core/dev/cli/util/log.server.js +0 -4
- package/dist/core/dev/constants.d.ts +0 -34
- package/dist/core/dev/constants.js +0 -76
- package/dist/core/dev/generate/routes/common.server.d.ts +0 -17
- package/dist/core/dev/generate/routes/common.server.js +0 -500
- package/dist/core/dev/generate/routes/custom-css.server.js +0 -86
- package/dist/core/dev/generate/routes/index.server.d.ts +0 -15
- package/dist/core/dev/generate/routes/index.server.js +0 -89
- package/dist/core/dev/generate/routes/util.server.d.ts +0 -50
- package/dist/core/dev/generate/routes/util.server.js +0 -112
- package/dist/core/dev/generate/runtime/index.server.d.ts +0 -44
- package/dist/core/dev/generate/runtime/index.server.js +0 -92
- package/dist/core/dev/generate/runtime/parse-exports.server.d.ts +0 -7
- package/dist/core/dev/generate/runtime/parse-exports.server.js +0 -40
- package/dist/core/dev/generate/sanitize/index.server.js +0 -834
- package/dist/core/dev/generate/types/index.server.js +0 -368
- package/dist/core/dev/vite/index.server.js +0 -308
- package/dist/core/ensure.server.d.ts +0 -34
- package/dist/core/ensure.server.js +0 -91
- package/dist/core/handlers/auth.server.js +0 -162
- package/dist/core/handlers/cors.server.js +0 -73
- package/dist/core/handlers/index.d.ts +0 -3
- package/dist/core/handlers/index.js +0 -16
- package/dist/core/handlers/main.server.d.ts +0 -4
- package/dist/core/handlers/main.server.js +0 -14
- package/dist/core/handlers/plugins.server.js +0 -10
- package/dist/core/handlers/routes.server.d.ts +0 -71
- package/dist/core/handlers/routes.server.js +0 -89
- package/dist/core/naming.d.ts +0 -82
- package/dist/core/naming.js +0 -86
- package/dist/core/operations/blocks/diff.server.d.ts +0 -15
- package/dist/core/operations/blocks/diff.server.js +0 -82
- package/dist/core/operations/blocks/extract.server.d.ts +0 -9
- package/dist/core/operations/blocks/extract.server.js +0 -33
- package/dist/core/operations/blocks/index.server.d.ts +0 -26
- package/dist/core/operations/blocks/index.server.js +0 -71
- package/dist/core/operations/configMap/buildTreeMap.d.ts +0 -4
- package/dist/core/operations/configMap/index.d.ts +0 -6
- package/dist/core/operations/configMap/index.js +0 -54
- package/dist/core/operations/extract-data.server.d.ts +0 -37
- package/dist/core/operations/extract-data.server.js +0 -101
- package/dist/core/operations/hooks/before-create/merge-with-blank.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-create/merge-with-blank.server.js +0 -24
- package/dist/core/operations/hooks/before-operation/authorize.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-operation/authorize.server.js +0 -32
- package/dist/core/operations/hooks/before-read/populate-url.server.d.ts +0 -4
- package/dist/core/operations/hooks/before-read/populate-url.server.js +0 -108
- package/dist/core/operations/hooks/before-read/process-document-fields.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-read/process-document-fields.server.js +0 -58
- package/dist/core/operations/hooks/before-read/set-document-locale.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-read/set-document-locale.server.js +0 -15
- package/dist/core/operations/hooks/before-read/set-document-thumbnail.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-read/set-document-thumbnail.server.js +0 -34
- package/dist/core/operations/hooks/before-read/set-document-title.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-read/set-document-title.server.js +0 -29
- package/dist/core/operations/hooks/before-read/set-document-type.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-read/set-document-type.server.js +0 -14
- package/dist/core/operations/hooks/before-read/sort-document-props.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-read/sort-document-props.server.js +0 -63
- package/dist/core/operations/hooks/before-update/define-version-operation.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-update/define-version-operation.server.js +0 -18
- package/dist/core/operations/hooks/before-update/get-original-document.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-update/get-original-document.server.js +0 -37
- package/dist/core/operations/hooks/before-upsert/data-config-map.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-upsert/data-config-map.server.js +0 -12
- package/dist/core/operations/hooks/before-upsert/handle-new-version.server.d.ts +0 -5
- package/dist/core/operations/hooks/before-upsert/handle-new-version.server.js +0 -98
- package/dist/core/operations/hooks/before-upsert/original-config-map.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-upsert/original-config-map.server.js +0 -16
- package/dist/core/operations/hooks/before-upsert/set-default-values.server.d.ts +0 -10
- package/dist/core/operations/hooks/before-upsert/set-default-values.server.js +0 -70
- package/dist/core/operations/hooks/before-upsert/validate-fields.server.d.ts +0 -1
- package/dist/core/operations/hooks/before-upsert/validate-fields.server.js +0 -150
- package/dist/core/operations/hooks/index.server.d.ts +0 -128
- package/dist/core/operations/hooks/index.server.js +0 -45
- package/dist/core/operations/relations/diff.server.d.ts +0 -14
- package/dist/core/operations/relations/diff.server.js +0 -47
- package/dist/core/operations/relations/extract.server.d.ts +0 -11
- package/dist/core/operations/relations/extract.server.js +0 -59
- package/dist/core/operations/relations/index.server.d.ts +0 -25
- package/dist/core/operations/relations/index.server.js +0 -68
- package/dist/core/operations/shared/fallback-data-from-original.d.ts +0 -9
- package/dist/core/operations/shared/fallback-data-from-original.js +0 -31
- package/dist/core/operations/tree/diff.server.d.ts +0 -20
- package/dist/core/operations/tree/diff.server.js +0 -64
- package/dist/core/operations/tree/extract.server.d.ts +0 -9
- package/dist/core/operations/tree/extract.server.js +0 -34
- package/dist/core/operations/tree/index.server.d.ts +0 -12
- package/dist/core/operations/tree/index.server.js +0 -52
- package/dist/core/plugins/api-init/index.d.ts +0 -2
- package/dist/core/plugins/api-init/index.js +0 -1
- package/dist/core/plugins/api-init/module.server.js +0 -83
- package/dist/core/plugins/mailer/index.d.ts +0 -2
- package/dist/core/plugins/mailer/index.js +0 -1
- package/dist/core/plugins/mailer/module.server.js +0 -32
- package/dist/core/plugins/sse/broadcast.d.ts +0 -13
- package/dist/core/plugins/sse/broadcast.js +0 -30
- package/dist/core/plugins/sse/module.server.d.ts +0 -16
- package/dist/core/plugins/sse/module.server.js +0 -52
- package/dist/core/types/doc.d.ts +0 -74
- package/dist/core/types/index.d.ts +0 -5
- package/dist/panel/navigation.d.ts +0 -18
- package/dist/panel/navigation.js +0 -64
- package/dist/panel/pages/area/AreaVersionsDoc.svelte +0 -24
- package/dist/panel/pages/area/AreaVersionsDoc.svelte.d.ts +0 -7
- package/dist/panel/pages/collection-document/CollectionDocVersions.svelte +0 -29
- package/dist/panel/pages/collection-document/CollectionDocVersions.svelte.d.ts +0 -7
- package/dist/util/access/index.d.ts +0 -73
- package/dist/util/cases.d.ts +0 -39
- package/dist/util/cases.js +0 -58
- package/dist/util/doc.d.ts +0 -50
- package/dist/util/doc.js +0 -140
- package/dist/util/validate.js +0 -171
- /package/dist/{util/access/index.js → core/auth/access.js} +0 -0
- /package/dist/core/{config/auth/better-auth-hooks.server.d.ts → auth/better-auth/hooks.server.d.ts} +0 -0
- /package/dist/core/{config/auth/better-auth-permissions.d.ts → auth/better-auth/permissions.d.ts} +0 -0
- /package/dist/core/{config/auth/better-auth-permissions.js → auth/better-auth/permissions.js} +0 -0
- /package/dist/core/{handlers/auth.server.d.ts → auth/handler/index.server.d.ts} +0 -0
- /package/dist/core/{areas/config → auth}/types.js +0 -0
- /package/dist/core/{collections/auth → auth}/util.js +0 -0
- /package/dist/core/{handlers/cors.server.d.ts → cors/handler.server.d.ts} +0 -0
- /package/dist/core/dev/cli/{build/index.d.ts → commands/build.d.ts} +0 -0
- /package/dist/core/dev/cli/{clear/index.server.d.ts → commands/clear.server.d.ts} +0 -0
- /package/dist/core/dev/cli/{generate/index.server.d.ts → commands/generate.server.d.ts} +0 -0
- /package/dist/core/dev/cli/{init/index.server.d.ts → commands/init.server.d.ts} +0 -0
- /package/dist/core/dev/cli/{build/templates.d.ts → templates/build.d.ts} +0 -0
- /package/dist/core/dev/cli/{init/templates.d.ts → templates/init.d.ts} +0 -0
- /package/dist/core/dev/{generate → codegen}/routes/custom-css.server.d.ts +0 -0
- /package/dist/core/dev/{generate → codegen}/sanitize/index.server.d.ts +0 -0
- /package/dist/core/dev/{generate → codegen}/types/index.server.d.ts +0 -0
- /package/dist/core/{config/server/write.server.d.ts → dev/config-memo.server.d.ts} +0 -0
- /package/dist/core/dev/{vite/index.server.d.ts → vite.server.d.ts} +0 -0
- /package/dist/core/{collections/auth → fields}/types.js +0 -0
- /package/dist/{util → core/fields}/validate.d.ts +0 -0
- /package/dist/core/{collections/config → locale}/types.js +0 -0
- /package/dist/core/{logger/index.server.d.ts → logger.server.d.ts} +0 -0
- /package/dist/core/{logger/index.server.js → logger.server.js} +0 -0
- /package/dist/core/{operations/configMap → panel}/types.js +0 -0
- /package/dist/core/{operations/configMap/buildTreeMap.js → pipeline/config-map/build-tree-map.js} +0 -0
- /package/dist/core/{operations/configMap → pipeline/config-map}/types.d.ts +0 -0
- /package/dist/core/{types/doc.js → pipeline/config-map/types.js} +0 -0
- /package/dist/core/plugins/api-init/{module.server.d.ts → index.server.d.ts} +0 -0
- /package/dist/core/{types/index.js → plugins/cache/types.js} +0 -0
- /package/dist/core/plugins/mailer/{module.server.d.ts → index.server.d.ts} +0 -0
- /package/dist/core/{handlers → plugins}/plugins.server.d.ts +0 -0
- /package/dist/core/{areas/config → prototype/area}/types.d.ts +0 -0
- /package/dist/core/{collections/config → prototype/collection}/augment-label.js +0 -0
- /package/dist/core/{collections → prototype/collection}/upload/util/client.d.ts +0 -0
- /package/dist/core/{collections → prototype/collection}/upload/util/client.js +0 -0
- /package/dist/core/{collections → prototype/collection}/upload/util/config.js +0 -0
- /package/dist/core/{collections → prototype/collection}/upload/util/mime.d.ts +0 -0
- /package/dist/core/{collections → prototype/collection}/upload/util/mime.js +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Decides what this update does to the row it selected, and puts it on
|
|
3
|
+
* `context.versionOperation` — see `defineVersionUpdateOperation` for the table.
|
|
4
|
+
*
|
|
5
|
+
* Which row, is already decided: `getOriginalDocument` ran above and read the row `versionId`
|
|
6
|
+
* names, else the newest with `latest`, else the published one, exactly as a read would. Two
|
|
7
|
+
* groupings follow, and they are what the other hooks read (`VersionOperations`):
|
|
8
|
+
*
|
|
9
|
+
* - a **new-version** operation (`NEW_VERSION`, `NEW_AUTO_SAVE_FROM_VERSION`) is inserted by
|
|
10
|
+
* `handleNewVersion` before the write plan is built, from the original plus the submission — so
|
|
11
|
+
* the plan names no content row for it, and the row carries the `status` the body gave it,
|
|
12
|
+
* `draft` by default; an auto-save carries the status of the row it branched from, which is
|
|
13
|
+
* what it becomes when saved;
|
|
14
|
+
* - `UPDATE_VERSION` writes the row the original was read from. When that write is not an
|
|
15
|
+
* auto-save it also clears `isAutoSave` on its row: that is how an auto-save is promoted.
|
|
16
|
+
*
|
|
17
|
+
* `demoteOtherVersions` runs for either group when the body says `published`.
|
|
18
|
+
*/
|
|
19
|
+
export declare const defineVersionOperation: import("../../../../pipeline/types").Hook<"raw", "update", "before">;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Hooks } from '../../../../pipeline/define-hook.js';
|
|
2
|
+
import { defineVersionUpdateOperation } from '../strategy.js';
|
|
3
|
+
/**
|
|
4
|
+
* Decides what this update does to the row it selected, and puts it on
|
|
5
|
+
* `context.versionOperation` — see `defineVersionUpdateOperation` for the table.
|
|
6
|
+
*
|
|
7
|
+
* Which row, is already decided: `getOriginalDocument` ran above and read the row `versionId`
|
|
8
|
+
* names, else the newest with `latest`, else the published one, exactly as a read would. Two
|
|
9
|
+
* groupings follow, and they are what the other hooks read (`VersionOperations`):
|
|
10
|
+
*
|
|
11
|
+
* - a **new-version** operation (`NEW_VERSION`, `NEW_AUTO_SAVE_FROM_VERSION`) is inserted by
|
|
12
|
+
* `handleNewVersion` before the write plan is built, from the original plus the submission — so
|
|
13
|
+
* the plan names no content row for it, and the row carries the `status` the body gave it,
|
|
14
|
+
* `draft` by default; an auto-save carries the status of the row it branched from, which is
|
|
15
|
+
* what it becomes when saved;
|
|
16
|
+
* - `UPDATE_VERSION` writes the row the original was read from. When that write is not an
|
|
17
|
+
* auto-save it also clears `isAutoSave` on its row: that is how an auto-save is promoted.
|
|
18
|
+
*
|
|
19
|
+
* `demoteOtherVersions` runs for either group when the body says `published`.
|
|
20
|
+
*/
|
|
21
|
+
export const defineVersionOperation = Hooks.beforeUpdate(async function defineVersionOperation(args) {
|
|
22
|
+
const { config } = args;
|
|
23
|
+
const versionOperation = defineVersionUpdateOperation({
|
|
24
|
+
versionId: args.context.params.versionId,
|
|
25
|
+
fork: args.context.params.fork,
|
|
26
|
+
autoSave: args.context.params.autoSave,
|
|
27
|
+
originalIsAutoSave: !!args.context.originalDoc?.isAutoSave,
|
|
28
|
+
config
|
|
29
|
+
});
|
|
30
|
+
return {
|
|
31
|
+
...args,
|
|
32
|
+
context: {
|
|
33
|
+
...args.context,
|
|
34
|
+
versionOperation
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Exactly one version of a document is published at a time, so publishing one steps the others
|
|
3
|
+
* down first.
|
|
4
|
+
*
|
|
5
|
+
* Runs before the write, as every `beforeUpdate` hook does, and demotes every other version of
|
|
6
|
+
* the document. The one being published is `context.contentOwnerId` — the selected row, or the
|
|
7
|
+
* row `handleNewVersion` has just inserted for a fork, which the write plan will not touch again —
|
|
8
|
+
* and it is left alone. An auto-save carries the status of the row it branched from and
|
|
9
|
+
* publishes nothing, so it is left out.
|
|
10
|
+
*
|
|
11
|
+
* The two statements are not in a transaction (there are none in the adapter), so a reader
|
|
12
|
+
* between them sees the document with no published version.
|
|
13
|
+
*
|
|
14
|
+
* Isomorphic: it reaches the adapter through `event.locals`, so it imports nothing server-only
|
|
15
|
+
* and needs no `$rime/modules` pair — the feature can carry it directly.
|
|
16
|
+
*/
|
|
17
|
+
export declare const demoteOtherVersions: import("../../../../pipeline/types").Hook<"raw", "update", "before">;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Hooks } from '../../../../pipeline/define-hook.js';
|
|
2
|
+
import { VERSIONS_STATUS } from '../constant.js';
|
|
3
|
+
import { VersionOperations } from '../strategy.js';
|
|
4
|
+
/**
|
|
5
|
+
* Exactly one version of a document is published at a time, so publishing one steps the others
|
|
6
|
+
* down first.
|
|
7
|
+
*
|
|
8
|
+
* Runs before the write, as every `beforeUpdate` hook does, and demotes every other version of
|
|
9
|
+
* the document. The one being published is `context.contentOwnerId` — the selected row, or the
|
|
10
|
+
* row `handleNewVersion` has just inserted for a fork, which the write plan will not touch again —
|
|
11
|
+
* and it is left alone. An auto-save carries the status of the row it branched from and
|
|
12
|
+
* publishes nothing, so it is left out.
|
|
13
|
+
*
|
|
14
|
+
* The two statements are not in a transaction (there are none in the adapter), so a reader
|
|
15
|
+
* between them sees the document with no published version.
|
|
16
|
+
*
|
|
17
|
+
* Isomorphic: it reaches the adapter through `event.locals`, so it imports nothing server-only
|
|
18
|
+
* and needs no `$rime/modules` pair — the feature can carry it directly.
|
|
19
|
+
*/
|
|
20
|
+
export const demoteOtherVersions = Hooks.beforeUpdate(async function demoteOtherVersions(args) {
|
|
21
|
+
const { config, data, event, context } = args;
|
|
22
|
+
// Only a config with drafts has a published version to be the only one of.
|
|
23
|
+
if (!config.versions || !config.versions.draft)
|
|
24
|
+
return args;
|
|
25
|
+
if (context.params.autoSave)
|
|
26
|
+
return args;
|
|
27
|
+
if (VersionOperations.isAutoSaveCreation(context.versionOperation))
|
|
28
|
+
return args;
|
|
29
|
+
if (data.status !== VERSIONS_STATUS.PUBLISHED)
|
|
30
|
+
return args;
|
|
31
|
+
// On the versions table `id` is the row itself; `contentOwnerId` names it.
|
|
32
|
+
await event.locals.rime.adapter.contentOwner(config.slug).updateWhere({
|
|
33
|
+
query: `where[and][0][ownerId][equals]=${context.originalDoc.id}&where[and][1][id][not_equals]=${context.contentOwnerId}`,
|
|
34
|
+
data: { status: VERSIONS_STATUS.DRAFT }
|
|
35
|
+
});
|
|
36
|
+
return args;
|
|
37
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A staff member's auto-saved rows go with them.
|
|
3
|
+
*
|
|
4
|
+
* Runs on the staff collection's delete, before the row is gone: the foreign key would set
|
|
5
|
+
* `updatedBy` to null and leave a row nobody owns and nobody can resume. Every config that
|
|
6
|
+
* auto-saves is swept.
|
|
7
|
+
*/
|
|
8
|
+
export declare const discardAutoSavesOf: import("../../../../pipeline/types.js").Hook<"raw", "delete", "before">;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Hooks } from '../../../../pipeline/define-hook.js';
|
|
2
|
+
import { retireAutoSaves } from '../retire-auto-saves.server.js';
|
|
3
|
+
/**
|
|
4
|
+
* A staff member's auto-saved rows go with them.
|
|
5
|
+
*
|
|
6
|
+
* Runs on the staff collection's delete, before the row is gone: the foreign key would set
|
|
7
|
+
* `updatedBy` to null and leave a row nobody owns and nobody can resume. Every config that
|
|
8
|
+
* auto-saves is swept.
|
|
9
|
+
*/
|
|
10
|
+
export const discardAutoSavesOf = Hooks.beforeDelete(async function discardAutoSavesOf(args) {
|
|
11
|
+
const { event, doc } = args;
|
|
12
|
+
const { config } = event.locals.rime;
|
|
13
|
+
for (const prototype of [...Object.values(config.collections), ...Object.values(config.areas)]) {
|
|
14
|
+
await retireAutoSaves({ event, config: prototype, userId: doc.id });
|
|
15
|
+
}
|
|
16
|
+
return args;
|
|
17
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Puts `versionId` on the document.
|
|
3
|
+
*
|
|
4
|
+
* The adapter folds a base row and its content row into one document and says which row the
|
|
5
|
+
* content came from — as `contentId`, its own word, the one `insert` returns and `find` takes.
|
|
6
|
+
* What that row *is* called on a versioned document is this feature's business, and it is the
|
|
7
|
+
* public property the panel, the REST params and every consumer already read.
|
|
8
|
+
*
|
|
9
|
+
* Additive — `contentId` stays, and the code that wants the row rather than the name reads that
|
|
10
|
+
* one, which is why `url` and `upload` need not run after this.
|
|
11
|
+
*/
|
|
12
|
+
export declare const exposeVersionId: import("../../../../pipeline/types").Hook<"raw", "read", "before">;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Hooks } from '../../../../pipeline/define-hook.js';
|
|
2
|
+
/**
|
|
3
|
+
* Puts `versionId` on the document.
|
|
4
|
+
*
|
|
5
|
+
* The adapter folds a base row and its content row into one document and says which row the
|
|
6
|
+
* content came from — as `contentId`, its own word, the one `insert` returns and `find` takes.
|
|
7
|
+
* What that row *is* called on a versioned document is this feature's business, and it is the
|
|
8
|
+
* public property the panel, the REST params and every consumer already read.
|
|
9
|
+
*
|
|
10
|
+
* Additive — `contentId` stays, and the code that wants the row rather than the name reads that
|
|
11
|
+
* one, which is why `url` and `upload` need not run after this.
|
|
12
|
+
*/
|
|
13
|
+
export const exposeVersionId = Hooks.beforeRead(async function exposeVersionId(args) {
|
|
14
|
+
if (!args.doc.contentId)
|
|
15
|
+
return args;
|
|
16
|
+
return { ...args, doc: { ...args.doc, versionId: args.doc.contentId } };
|
|
17
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Dic } from '../../../../../util/types.js';
|
|
2
|
+
import type { ConfigMap } from '../../../../pipeline/config-map/types.js';
|
|
3
|
+
export declare const fallbackDataFromOriginal: <T extends Dic>(args: {
|
|
4
|
+
data: T;
|
|
5
|
+
original: T;
|
|
6
|
+
configMap: ConfigMap;
|
|
7
|
+
ignore: string[];
|
|
8
|
+
mode?: "required" | "all";
|
|
9
|
+
}) => Promise<T>;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { logger } from '../../../../logger.server.js';
|
|
2
|
+
import { getValueAtPath, setValueAtPath } from '../../../../../util/object.js';
|
|
3
|
+
export const fallbackDataFromOriginal = async (args) => {
|
|
4
|
+
//
|
|
5
|
+
const mode = args.mode || 'all';
|
|
6
|
+
const { original, configMap, ignore } = args;
|
|
7
|
+
let output = { ...args.data };
|
|
8
|
+
for (const [key, config] of Object.entries(configMap)) {
|
|
9
|
+
// skip keys in ignore list
|
|
10
|
+
if (ignore.includes(key))
|
|
11
|
+
continue;
|
|
12
|
+
// skip if not required and mode is 'required'
|
|
13
|
+
const shouldUpdate = (config.get.required && mode === 'required') || mode === 'all';
|
|
14
|
+
if (!shouldUpdate)
|
|
15
|
+
continue;
|
|
16
|
+
let value = getValueAtPath(key, output);
|
|
17
|
+
let isEmpty;
|
|
18
|
+
try {
|
|
19
|
+
isEmpty = config.use.isEmpty(value);
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
isEmpty = false;
|
|
23
|
+
logger.warn(`Error while checking if field ${key} is empty`);
|
|
24
|
+
}
|
|
25
|
+
if (isEmpty) {
|
|
26
|
+
value = await getValueAtPath(key, original);
|
|
27
|
+
output = setValueAtPath(key, output, value);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return output;
|
|
31
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where a versioned document's content lives for *this* update — overriding the default.
|
|
3
|
+
*
|
|
4
|
+
* `resolveContentOwner` has already said "the document's own row", which is right for every
|
|
5
|
+
* prototype with no versions. This runs after it, only on a config that enables `versions`, and
|
|
6
|
+
* answers again:
|
|
7
|
+
*
|
|
8
|
+
* - **a specific version** — that row.
|
|
9
|
+
* - **a new version** — the row this hook creates, through the public API, which is what makes
|
|
10
|
+
* the write plan's third case ("already written") true.
|
|
11
|
+
*
|
|
12
|
+
* On a config that auto-saves it also says what the row is. An auto-save keeps its row
|
|
13
|
+
* auto-saved; any other write on a specific version clears the flag, which is how an auto-save
|
|
14
|
+
* becomes a version. A new auto-save replaces the caller's previous one on the document — one per
|
|
15
|
+
* user and document — and the flag is set on the row after the insert, because
|
|
16
|
+
* `stripAutoSaveFlag` takes it out of every submission, this create's included.
|
|
17
|
+
*
|
|
18
|
+
* An auto-saved row's `status` is what the row becomes when it is saved: the status of the row it
|
|
19
|
+
* branched from, kept as is afterwards, and never the body's. No read can return the row
|
|
20
|
+
* whatever it says — `versionsReadQuery` filters on `isAutoSave` first — so a row branched from
|
|
21
|
+
* the published version reads `published`, and saving it keeps the document published.
|
|
22
|
+
*
|
|
23
|
+
* **Two things pin where it sits in the list**, and both are silent if broken:
|
|
24
|
+
*
|
|
25
|
+
* - It runs after `buildOriginalDocConfigMap`, because `prepareDataForNewVersion` reads
|
|
26
|
+
* `originalConfigMap` — the throw below says so.
|
|
27
|
+
* - It runs before `setDefaultValues`, because it reads the caller's submission *as sent*:
|
|
28
|
+
* whatever was not sent, `fallbackDataFromOriginal` fills from the previous version. Let the
|
|
29
|
+
* defaults land first and editing one field resets every unsent field to its default instead of
|
|
30
|
+
* carrying it forward.
|
|
31
|
+
*/
|
|
32
|
+
export declare const handleNewVersion: import("../../../../pipeline/types.js").Hook<"raw", "create" | "update", "before">;
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import { RimeError } from '../../../../errors/index.js';
|
|
2
|
+
import { Hooks } from '../../../../pipeline/define-hook.js';
|
|
3
|
+
import { copyLocales } from '../../../../locale/copy.server.js';
|
|
4
|
+
import { moveEditLock } from '../../metas/lock.server.js';
|
|
5
|
+
import { fileForDocument } from '../../../collection/upload/util/converter.server.js';
|
|
6
|
+
import { VERSIONS_STATUS } from '../constant.js';
|
|
7
|
+
import { withVersionsSuffix } from '../naming.js';
|
|
8
|
+
import { VersionOperations } from '../strategy.js';
|
|
9
|
+
import { omit, recursiveRemoveKeys } from '../../../../../util/object.js';
|
|
10
|
+
import { retireAutoSaves } from '../retire-auto-saves.server.js';
|
|
11
|
+
import { fallbackDataFromOriginal } from './fallback-data-from-original.js';
|
|
12
|
+
/**
|
|
13
|
+
* Where a versioned document's content lives for *this* update — overriding the default.
|
|
14
|
+
*
|
|
15
|
+
* `resolveContentOwner` has already said "the document's own row", which is right for every
|
|
16
|
+
* prototype with no versions. This runs after it, only on a config that enables `versions`, and
|
|
17
|
+
* answers again:
|
|
18
|
+
*
|
|
19
|
+
* - **a specific version** — that row.
|
|
20
|
+
* - **a new version** — the row this hook creates, through the public API, which is what makes
|
|
21
|
+
* the write plan's third case ("already written") true.
|
|
22
|
+
*
|
|
23
|
+
* On a config that auto-saves it also says what the row is. An auto-save keeps its row
|
|
24
|
+
* auto-saved; any other write on a specific version clears the flag, which is how an auto-save
|
|
25
|
+
* becomes a version. A new auto-save replaces the caller's previous one on the document — one per
|
|
26
|
+
* user and document — and the flag is set on the row after the insert, because
|
|
27
|
+
* `stripAutoSaveFlag` takes it out of every submission, this create's included.
|
|
28
|
+
*
|
|
29
|
+
* An auto-saved row's `status` is what the row becomes when it is saved: the status of the row it
|
|
30
|
+
* branched from, kept as is afterwards, and never the body's. No read can return the row
|
|
31
|
+
* whatever it says — `versionsReadQuery` filters on `isAutoSave` first — so a row branched from
|
|
32
|
+
* the published version reads `published`, and saving it keeps the document published.
|
|
33
|
+
*
|
|
34
|
+
* **Two things pin where it sits in the list**, and both are silent if broken:
|
|
35
|
+
*
|
|
36
|
+
* - It runs after `buildOriginalDocConfigMap`, because `prepareDataForNewVersion` reads
|
|
37
|
+
* `originalConfigMap` — the throw below says so.
|
|
38
|
+
* - It runs before `setDefaultValues`, because it reads the caller's submission *as sent*:
|
|
39
|
+
* whatever was not sent, `fallbackDataFromOriginal` fills from the previous version. Let the
|
|
40
|
+
* defaults land first and editing one field resets every unsent field to its default instead of
|
|
41
|
+
* carrying it forward.
|
|
42
|
+
*/
|
|
43
|
+
export const handleNewVersion = Hooks.beforeUpsert(async (args) => {
|
|
44
|
+
const { config, event } = args;
|
|
45
|
+
const { rime } = event.locals;
|
|
46
|
+
const { versionOperation, originalDoc, originalConfigMap, params } = args.context;
|
|
47
|
+
if (!originalConfigMap)
|
|
48
|
+
throw new RimeError(RimeError.OPERATION_ERROR, 'missing originalConfigMap @handleNewVersion');
|
|
49
|
+
if (!originalDoc)
|
|
50
|
+
throw new RimeError(RimeError.OPERATION_ERROR, 'missing originalDoc @handleNewVersion');
|
|
51
|
+
if (!versionOperation)
|
|
52
|
+
throw new RimeError(RimeError.OPERATION_ERROR, 'missing versionOperation @handleNewVersion');
|
|
53
|
+
const autoSaves = !!config.versions?.autoSave;
|
|
54
|
+
if (VersionOperations.isSpecificVersionUpdate(versionOperation)) {
|
|
55
|
+
// A promoted auto-save states the status it inherited, so a published one is seen by
|
|
56
|
+
// `demoteOtherVersions` and stays the only published version. The body's own status wins.
|
|
57
|
+
const promoted = !!originalDoc.isAutoSave && !params.autoSave;
|
|
58
|
+
const inherited = promoted && originalDoc.status ? { status: originalDoc.status } : {};
|
|
59
|
+
const data = !autoSaves
|
|
60
|
+
? args.data
|
|
61
|
+
: params.autoSave
|
|
62
|
+
? { ...omit(['status'], args.data), isAutoSave: true }
|
|
63
|
+
: { ...inherited, ...args.data, isAutoSave: false };
|
|
64
|
+
return {
|
|
65
|
+
...args,
|
|
66
|
+
data,
|
|
67
|
+
context: { ...args.context, contentOwnerId: originalDoc.versionId }
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
if (VersionOperations.isNewVersionCreation(versionOperation)) {
|
|
71
|
+
const isAutoSave = VersionOperations.isAutoSaveCreation(versionOperation);
|
|
72
|
+
const userId = event.locals.user?.id;
|
|
73
|
+
if (isAutoSave && !userId) {
|
|
74
|
+
throw new RimeError(RimeError.UNAUTHORIZED, 'an auto-save belongs to a user');
|
|
75
|
+
}
|
|
76
|
+
const data = await prepareDataForNewVersion({
|
|
77
|
+
data: args.data,
|
|
78
|
+
originalDoc,
|
|
79
|
+
config,
|
|
80
|
+
originalConfigMap
|
|
81
|
+
});
|
|
82
|
+
if (isAutoSave)
|
|
83
|
+
data.status = originalDoc.status;
|
|
84
|
+
const versionsSlug = withVersionsSuffix(config.slug);
|
|
85
|
+
if (isAutoSave) {
|
|
86
|
+
await retireAutoSaves({ event, config, docId: originalDoc.id, userId: userId });
|
|
87
|
+
}
|
|
88
|
+
const document = await rime.collection(versionsSlug).create({
|
|
89
|
+
data,
|
|
90
|
+
locale: params.locale
|
|
91
|
+
});
|
|
92
|
+
// The edit continues on the new row: the claim its maker holds on the original goes with it,
|
|
93
|
+
// so the panel has nothing to hand back or take.
|
|
94
|
+
if (userId) {
|
|
95
|
+
await moveEditLock({
|
|
96
|
+
event,
|
|
97
|
+
config,
|
|
98
|
+
doc: originalDoc,
|
|
99
|
+
to: { id: originalDoc.id, versionId: document.id },
|
|
100
|
+
userId
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
// The other locales come from the version this one branches from, raw: a translation the
|
|
104
|
+
// original has is carried over, one it has not stays unwritten and falls back on read. Before
|
|
105
|
+
// the auto-save flag below, since the copy is a write to the new row like any other.
|
|
106
|
+
const otherLocales = rime.config.getLocalesCodes().filter((code) => code !== params.locale);
|
|
107
|
+
if (params.locale && otherLocales.length) {
|
|
108
|
+
const created = config.type === 'collection'
|
|
109
|
+
? await rime.collection(config.slug).findById({
|
|
110
|
+
id: originalDoc.id,
|
|
111
|
+
locale: params.locale,
|
|
112
|
+
versionId: document.id,
|
|
113
|
+
localeFallback: false
|
|
114
|
+
})
|
|
115
|
+
: await rime.area(config.slug).find({
|
|
116
|
+
locale: params.locale,
|
|
117
|
+
versionId: document.id,
|
|
118
|
+
localeFallback: false
|
|
119
|
+
});
|
|
120
|
+
await copyLocales({
|
|
121
|
+
event,
|
|
122
|
+
config,
|
|
123
|
+
source: { id: originalDoc.id, versionId: originalDoc.versionId },
|
|
124
|
+
target: { id: originalDoc.id, versionId: document.id, doc: created },
|
|
125
|
+
locales: otherLocales
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
if (isAutoSave) {
|
|
129
|
+
await rime.adapter.contentOwner(config.slug).updateWhere({
|
|
130
|
+
query: `where[id][equals]=${document.id}`,
|
|
131
|
+
data: { isAutoSave: true }
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
else if (config.versions && config.versions.maxVersions) {
|
|
135
|
+
// The versions beyond `maxVersions`, oldest first, go. A published version stays, and an
|
|
136
|
+
// auto-save is not a version — each clause only where the config has the field, since a
|
|
137
|
+
// clause on a missing column matches nothing and the pruning would never happen.
|
|
138
|
+
const spared = [];
|
|
139
|
+
if (config.versions.draft)
|
|
140
|
+
spared.push({ status: { not_equals: VERSIONS_STATUS.PUBLISHED } });
|
|
141
|
+
if (autoSaves)
|
|
142
|
+
spared.push({ isAutoSave: { not_equals: true } });
|
|
143
|
+
// Bookkeeping, as rime itself: the editor writing a version need not hold `access.delete`.
|
|
144
|
+
await rime
|
|
145
|
+
.collection(versionsSlug)
|
|
146
|
+
.system()
|
|
147
|
+
.delete({
|
|
148
|
+
sort: '-updatedAt',
|
|
149
|
+
query: spared.length
|
|
150
|
+
? { where: spared.length === 1 ? spared[0] : { and: spared } }
|
|
151
|
+
: undefined,
|
|
152
|
+
offset: config.versions.maxVersions
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
return { ...args, context: { ...args.context, contentOwnerId: document.id } };
|
|
156
|
+
}
|
|
157
|
+
// Versioned, but this update writes neither a named version nor a new one — the default
|
|
158
|
+
// `resolveContentOwner` set stands.
|
|
159
|
+
return args;
|
|
160
|
+
});
|
|
161
|
+
async function prepareDataForNewVersion(args) {
|
|
162
|
+
const { config, originalDoc, originalConfigMap } = args;
|
|
163
|
+
let data = { ...args.data };
|
|
164
|
+
/**
|
|
165
|
+
* A new version of an upload document inherits the file the old one had, unless the write brings
|
|
166
|
+
* a new one — the version row has its own `filename`, so without this a revision of a document
|
|
167
|
+
* nobody re-uploaded to comes out with no file.
|
|
168
|
+
*
|
|
169
|
+
* This asked `upload` for two things: where it keeps its files, and how to turn a path into a
|
|
170
|
+
* `File`. It asks for one now. The remaining import is the genuine cross-feature dependency
|
|
171
|
+
* what a new content row inherits is a question this feature
|
|
172
|
+
* has and only that one can answer — and it is one call rather than a copy of a convention.
|
|
173
|
+
*/
|
|
174
|
+
if (config.type === 'collection' && config.upload && !data.file) {
|
|
175
|
+
data.file = (await fileForDocument(originalDoc)) ?? data.file;
|
|
176
|
+
}
|
|
177
|
+
// Use missing required data from original version
|
|
178
|
+
data = await fallbackDataFromOriginal({
|
|
179
|
+
data,
|
|
180
|
+
original: originalDoc,
|
|
181
|
+
configMap: originalConfigMap,
|
|
182
|
+
ignore: ['status'],
|
|
183
|
+
mode: 'all'
|
|
184
|
+
});
|
|
185
|
+
// Set default status to "draft" if no data.status
|
|
186
|
+
if (!data.status) {
|
|
187
|
+
data.status = VERSIONS_STATUS.DRAFT;
|
|
188
|
+
}
|
|
189
|
+
// Remove ownerId and id props from data this force new relation/blocks creations
|
|
190
|
+
data = recursiveRemoveKeys('ownerId', 'id').from(data);
|
|
191
|
+
data.ownerId = originalDoc.id;
|
|
192
|
+
delete data.id;
|
|
193
|
+
return data;
|
|
194
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This feature's hooks, by name, so a prototype can place them as `versions.someHook`.
|
|
3
|
+
*
|
|
4
|
+
* A barrel and nothing else — `module.server.ts` beside it is the pair half `$rime/modules:` resolves, and
|
|
5
|
+
* only files named exactly `module(.server).ts` are, so this one is invisible to that mechanism.
|
|
6
|
+
* It exists because a prototype's `hooks.server.ts` writes the run order and would otherwise carry
|
|
7
|
+
* one import line per hook.
|
|
8
|
+
*/
|
|
9
|
+
export { defineVersionOperation } from './define-version-operation.server.js';
|
|
10
|
+
export { demoteOtherVersions } from './demote-other-versions.js';
|
|
11
|
+
export { discardAutoSavesOf } from './discard-auto-saves-of.server.js';
|
|
12
|
+
export { exposeVersionId } from './expose-version-id.js';
|
|
13
|
+
export { handleNewVersion } from './handle-new-version.server.js';
|
|
14
|
+
export { preventLastVersionDeletion } from './prevent-last-version-deletion.server.js';
|
|
15
|
+
export { stripAutoSaveFlag } from './strip-auto-save-flag.server.js';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This feature's hooks, by name, so a prototype can place them as `versions.someHook`.
|
|
3
|
+
*
|
|
4
|
+
* A barrel and nothing else — `module.server.ts` beside it is the pair half `$rime/modules:` resolves, and
|
|
5
|
+
* only files named exactly `module(.server).ts` are, so this one is invisible to that mechanism.
|
|
6
|
+
* It exists because a prototype's `hooks.server.ts` writes the run order and would otherwise carry
|
|
7
|
+
* one import line per hook.
|
|
8
|
+
*/
|
|
9
|
+
export { defineVersionOperation } from './define-version-operation.server.js';
|
|
10
|
+
export { demoteOtherVersions } from './demote-other-versions.js';
|
|
11
|
+
export { discardAutoSavesOf } from './discard-auto-saves-of.server.js';
|
|
12
|
+
export { exposeVersionId } from './expose-version-id.js';
|
|
13
|
+
export { handleNewVersion } from './handle-new-version.server.js';
|
|
14
|
+
export { preventLastVersionDeletion } from './prevent-last-version-deletion.server.js';
|
|
15
|
+
export { stripAutoSaveFlag } from './strip-auto-save-flag.server.js';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A document keeps at least one version.
|
|
3
|
+
*
|
|
4
|
+
* Runs on the versions collection's delete. A base row with no content row reads as absent
|
|
5
|
+
* everywhere, so the last version goes with the document or not at all.
|
|
6
|
+
*/
|
|
7
|
+
export declare const preventLastVersionDeletion: import("../../../../pipeline/types").Hook<"raw", "delete", "before">;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Hooks } from '../../../../pipeline/define-hook.js';
|
|
2
|
+
import { RimeError } from '../../../../errors/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* A document keeps at least one version.
|
|
5
|
+
*
|
|
6
|
+
* Runs on the versions collection's delete. A base row with no content row reads as absent
|
|
7
|
+
* everywhere, so the last version goes with the document or not at all.
|
|
8
|
+
*/
|
|
9
|
+
export const preventLastVersionDeletion = Hooks.beforeDelete(async function preventLastVersionDeletion(args) {
|
|
10
|
+
const { config, doc, event } = args;
|
|
11
|
+
if (args.context.isSystemOperation)
|
|
12
|
+
return args;
|
|
13
|
+
const rows = await event.locals.rime.adapter.collection(config.slug).findMany({
|
|
14
|
+
query: { where: { ownerId: { equals: doc.ownerId } } },
|
|
15
|
+
select: ['id']
|
|
16
|
+
});
|
|
17
|
+
if (rows.length <= 1) {
|
|
18
|
+
throw new RimeError(RimeError.BAD_REQUEST, 'the last version of a document cannot be deleted, delete the document');
|
|
19
|
+
}
|
|
20
|
+
return args;
|
|
21
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Drops `isAutoSave` from the submission. The server sets it; a request body cannot.
|
|
3
|
+
*
|
|
4
|
+
* `hidden()` is a panel concern only — any hidden field is writable through a request body, so
|
|
5
|
+
* a flag the server owns has to be taken out before anything reads the data.
|
|
6
|
+
*/
|
|
7
|
+
export declare const stripAutoSaveFlag: import("../../../../pipeline/types").Hook<"raw", "create" | "update", "before">;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Hooks } from '../../../../pipeline/define-hook.js';
|
|
2
|
+
/**
|
|
3
|
+
* Drops `isAutoSave` from the submission. The server sets it; a request body cannot.
|
|
4
|
+
*
|
|
5
|
+
* `hidden()` is a panel concern only — any hidden field is writable through a request body, so
|
|
6
|
+
* a flag the server owns has to be taken out before anything reads the data.
|
|
7
|
+
*/
|
|
8
|
+
export const stripAutoSaveFlag = Hooks.beforeUpsert(async function stripAutoSaveFlag(args) {
|
|
9
|
+
if (!('isAutoSave' in args.data))
|
|
10
|
+
return args;
|
|
11
|
+
const data = { ...args.data };
|
|
12
|
+
delete data.isAutoSave;
|
|
13
|
+
return { ...args, data };
|
|
14
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const configureVersions = undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { configureVersions } from './configure.server.js';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
// Server half. The aliases are built from `collectionHooks`, which is server-only, so there is no
|
|
2
|
+
// client half to pair this with — a client build resolves the name to `undefined` and the feature
|
|
3
|
+
// simply carries no `configure` there. Same shape as `features/url`'s hooks.
|
|
4
|
+
export { configureVersions } from './configure.server.js';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CollectionSlug } from '../../../../types.js';
|
|
2
|
+
/** `pages` -> `$pages__versions` */
|
|
3
|
+
export declare const withVersionsSuffix: (name: string) => CollectionSlug;
|
|
4
|
+
/** `$pages__versions` -> `pages`; anything else unchanged. */
|
|
5
|
+
export declare const withoutVersionsSuffix: (name: string) => CollectionSlug;
|
|
6
|
+
/** `$pages__versions` -> true */
|
|
7
|
+
export declare const hasVersionsSuffix: (slug: string) => boolean;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The versions table naming convention, in slug space.
|
|
3
|
+
*
|
|
4
|
+
* A derived slug is `$` + the base + `__` + the marker:
|
|
5
|
+
*
|
|
6
|
+
* pages -> $pages__versions -> table pages__versions -> url pages--versions
|
|
7
|
+
*
|
|
8
|
+
* The `$` says rime made this, matching how `$hooks`/`$url`/`$adapter` already mark
|
|
9
|
+
* rime-owned config keys. The `__` says *versions of*, and it is a segment boundary rather than
|
|
10
|
+
* a word break — which is why every case conversion goes through mapSegments and why an author
|
|
11
|
+
* slug may not contain it (see core/config/validate.server.ts). Without that rule a
|
|
12
|
+
* collection named `pagesVersions` would snake-case onto the same table as this versions.
|
|
13
|
+
*/
|
|
14
|
+
const DERIVED = '$';
|
|
15
|
+
const MARKER = '__versions';
|
|
16
|
+
/** `pages` -> `$pages__versions` */
|
|
17
|
+
export const withVersionsSuffix = (name) => `${DERIVED}${name.replace(/^\$/, '')}${MARKER}`;
|
|
18
|
+
/** `$pages__versions` -> `pages`; anything else unchanged. */
|
|
19
|
+
export const withoutVersionsSuffix = (name) => name.replace(/^\$/, '').replace(MARKER, '');
|
|
20
|
+
/** `$pages__versions` -> true */
|
|
21
|
+
export const hasVersionsSuffix = (slug) => slug.endsWith(MARKER);
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { OperationQuery } from '../../../pipeline/types.js';
|
|
2
|
+
import type { BuiltArea, BuiltCollection } from '../../../config/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Which version a read means.
|
|
5
|
+
*
|
|
6
|
+
* ```
|
|
7
|
+
* versionId given that row, whatever its status, auto-saved or not
|
|
8
|
+
* config auto-saves never an auto-saved row — and, with drafts:
|
|
9
|
+
* config has no drafts no narrowing — the adapter reads that as the newest row
|
|
10
|
+
* latest asked for the newest row
|
|
11
|
+
* otherwise the published one
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* The same answer for a read and for the row an update starts from: `latest` and `versionId`
|
|
15
|
+
* select a row, and that is all they do. What an update then does to it, case by case, is tabled
|
|
16
|
+
* on `defineVersionUpdateOperation` in `strategy.ts`.
|
|
17
|
+
*
|
|
18
|
+
* `versionId` and not `id`, because on a versions table `id` means the document — see
|
|
19
|
+
* `normalizedForShadow` in the where builder.
|
|
20
|
+
*/
|
|
21
|
+
export declare const versionsReadQuery: (args: {
|
|
22
|
+
config: BuiltArea | BuiltCollection;
|
|
23
|
+
params: {
|
|
24
|
+
latest?: boolean;
|
|
25
|
+
versionId?: string;
|
|
26
|
+
};
|
|
27
|
+
}) => OperationQuery | undefined;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { VERSIONS_STATUS } from './constant.js';
|
|
2
|
+
/**
|
|
3
|
+
* Which version a read means.
|
|
4
|
+
*
|
|
5
|
+
* ```
|
|
6
|
+
* versionId given that row, whatever its status, auto-saved or not
|
|
7
|
+
* config auto-saves never an auto-saved row — and, with drafts:
|
|
8
|
+
* config has no drafts no narrowing — the adapter reads that as the newest row
|
|
9
|
+
* latest asked for the newest row
|
|
10
|
+
* otherwise the published one
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* The same answer for a read and for the row an update starts from: `latest` and `versionId`
|
|
14
|
+
* select a row, and that is all they do. What an update then does to it, case by case, is tabled
|
|
15
|
+
* on `defineVersionUpdateOperation` in `strategy.ts`.
|
|
16
|
+
*
|
|
17
|
+
* `versionId` and not `id`, because on a versions table `id` means the document — see
|
|
18
|
+
* `normalizedForShadow` in the where builder.
|
|
19
|
+
*/
|
|
20
|
+
export const versionsReadQuery = (args) => {
|
|
21
|
+
const { config, params } = args;
|
|
22
|
+
if (params.versionId)
|
|
23
|
+
return { where: { versionId: { equals: params.versionId } } };
|
|
24
|
+
if (!config.versions)
|
|
25
|
+
return undefined;
|
|
26
|
+
const clauses = [];
|
|
27
|
+
if (config.versions.autoSave)
|
|
28
|
+
clauses.push({ isAutoSave: { not_equals: true } });
|
|
29
|
+
if (config.versions.draft && !params.latest) {
|
|
30
|
+
clauses.push({ status: { equals: VERSIONS_STATUS.PUBLISHED } });
|
|
31
|
+
}
|
|
32
|
+
if (clauses.length === 0)
|
|
33
|
+
return undefined;
|
|
34
|
+
return { where: clauses.length === 1 ? clauses[0] : { and: clauses } };
|
|
35
|
+
};
|