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,44 @@
|
|
|
1
|
+
import { runUpdate } from '../../../pipeline/run.server.js';
|
|
2
|
+
/**
|
|
3
|
+
* Updates an area's single document.
|
|
4
|
+
*
|
|
5
|
+
* The pipeline itself lives in operations/run.server.ts — shared with a collection's
|
|
6
|
+
* updateById. Only the two prototype-specific pieces are here: which adapter method writes the
|
|
7
|
+
* root row, and how the saved document is read back.
|
|
8
|
+
*/
|
|
9
|
+
export const update = async (args) => {
|
|
10
|
+
const { ctx, locale, latest, fork, versionId, autoSave, isLocaleCopy } = args;
|
|
11
|
+
const { config, event, isSystemOperation } = ctx;
|
|
12
|
+
const { rime } = event.locals;
|
|
13
|
+
const context = {
|
|
14
|
+
params: {
|
|
15
|
+
locale,
|
|
16
|
+
versionId,
|
|
17
|
+
latest,
|
|
18
|
+
fork,
|
|
19
|
+
autoSave
|
|
20
|
+
},
|
|
21
|
+
isSystemOperation,
|
|
22
|
+
isLocaleCopy
|
|
23
|
+
};
|
|
24
|
+
return runUpdate({
|
|
25
|
+
data: args.data,
|
|
26
|
+
config,
|
|
27
|
+
event,
|
|
28
|
+
context,
|
|
29
|
+
locale,
|
|
30
|
+
where: 'update',
|
|
31
|
+
// No `id`: an area's handle resolves its single row. See the collection's for the plan.
|
|
32
|
+
write: ({ plan, config }) => rime.adapter.area(config.slug).update({ ...plan, locale }),
|
|
33
|
+
/**
|
|
34
|
+
* Read back **the row the write went to** — see the collection's `reread` for the full note.
|
|
35
|
+
*
|
|
36
|
+
* Not `versionId`, the caller's parameter: the hooks answer "which row holds the content" on
|
|
37
|
+
* `context.contentOwnerId`, and on a new-version update that is a row the caller never named.
|
|
38
|
+
*/
|
|
39
|
+
reread: ({ config, context }) => rime.area(config.slug).find({
|
|
40
|
+
locale,
|
|
41
|
+
versionId: context.contentOwnerId
|
|
42
|
+
})
|
|
43
|
+
});
|
|
44
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { RequestEvent, RequestHandler } from '@sveltejs/kit';
|
|
2
|
+
/** See the collection wrapper for why this comes from the accessor and not from `../index`. */
|
|
3
|
+
type AreaApi = ReturnType<App.Locals['rime']['area']>;
|
|
4
|
+
type Run = (args: {
|
|
5
|
+
event: RequestEvent;
|
|
6
|
+
area: AreaApi;
|
|
7
|
+
}) => Promise<Response>;
|
|
8
|
+
/**
|
|
9
|
+
* The area counterpart of the collection wrapper — see the note there for why the check stays
|
|
10
|
+
* per-prototype rather than being folded into one shared helper: `isArea` narrows the slug, and
|
|
11
|
+
* that narrowing is what the accessor needs.
|
|
12
|
+
*/
|
|
13
|
+
export declare const endpoint: (run: Run) => RequestHandler;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ERROR_CONTEXT, handleError } from '../../../errors/handler.server.js';
|
|
2
|
+
import { RimeError } from '../../../errors/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* The area counterpart of the collection wrapper — see the note there for why the check stays
|
|
5
|
+
* per-prototype rather than being folded into one shared helper: `isArea` narrows the slug, and
|
|
6
|
+
* that narrowing is what the accessor needs.
|
|
7
|
+
*/
|
|
8
|
+
export const endpoint = (run) => (event) => {
|
|
9
|
+
const { rime } = event.locals;
|
|
10
|
+
const slug = event.params.slug;
|
|
11
|
+
if (!rime.config.isArea(slug)) {
|
|
12
|
+
return handleError(new RimeError(RimeError.NOT_FOUND), { context: ERROR_CONTEXT.API });
|
|
13
|
+
}
|
|
14
|
+
return run({ event, area: rime.area(slug) });
|
|
15
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { isStaff } from '../../../auth/access.js';
|
|
2
|
+
import { PARAMS } from '../../../constants.js';
|
|
3
|
+
import { handleError } from '../../../errors/handler.server.js';
|
|
4
|
+
import { selectWithTitle } from '../../shared/title/select.js';
|
|
5
|
+
import { trycatch } from '../../../../util/function.js';
|
|
6
|
+
import { json } from '@sveltejs/kit';
|
|
7
|
+
import { endpoint } from './endpoint.server.js';
|
|
8
|
+
/**
|
|
9
|
+
* GET handler for the area API endpoint.
|
|
10
|
+
*/
|
|
11
|
+
export const restGet = endpoint(async ({ event, area }) => {
|
|
12
|
+
//
|
|
13
|
+
const { rime } = event.locals;
|
|
14
|
+
const params = event.url.searchParams;
|
|
15
|
+
// A row other than the published one is staff's to see: from anyone else, `latest` and
|
|
16
|
+
// `versionId` read as absent.
|
|
17
|
+
const staff = isStaff(event.locals.user);
|
|
18
|
+
const apiParams = {
|
|
19
|
+
locale: rime.getLocale(),
|
|
20
|
+
latest: staff && params.get(PARAMS.LATEST) ? params.get(PARAMS.LATEST) === 'true' : undefined,
|
|
21
|
+
versionId: staff ? params.get(PARAMS.VERSION_ID) || undefined : undefined,
|
|
22
|
+
depth: params.get(PARAMS.DEPTH) ? parseInt(params.get(PARAMS.DEPTH)) : 0,
|
|
23
|
+
select: selectWithTitle(params.get(PARAMS.SELECT), area.config.asTitle)
|
|
24
|
+
};
|
|
25
|
+
// Call the area API to find the document based on the prepared parameters
|
|
26
|
+
const [error, doc] = await trycatch(() => area.find(apiParams));
|
|
27
|
+
if (error) {
|
|
28
|
+
return handleError(error, { context: 'api' });
|
|
29
|
+
}
|
|
30
|
+
return json({ doc });
|
|
31
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { RouteConfig } from '../../../config/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* The REST surface an area provides: one path, two methods.
|
|
4
|
+
*
|
|
5
|
+
* No `[id]` tier — a singleton has one document, so there is nothing to address. Its `''` path
|
|
6
|
+
* carries no POST or DELETE for the same reason: nothing to create, nothing to remove. That is not
|
|
7
|
+
* a switch turned off somewhere; it is simply what this prototype declares.
|
|
8
|
+
*/
|
|
9
|
+
export declare const rest: Record<string, RouteConfig>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { restGet } from './get.server.js';
|
|
2
|
+
import { restLock, restUnlock } from './lock.server.js';
|
|
3
|
+
import { restUpdate } from './update.server.js';
|
|
4
|
+
/**
|
|
5
|
+
* The REST surface an area provides: one path, two methods.
|
|
6
|
+
*
|
|
7
|
+
* No `[id]` tier — a singleton has one document, so there is nothing to address. Its `''` path
|
|
8
|
+
* carries no POST or DELETE for the same reason: nothing to create, nothing to remove. That is not
|
|
9
|
+
* a switch turned off somewhere; it is simply what this prototype declares.
|
|
10
|
+
*/
|
|
11
|
+
export const rest = {
|
|
12
|
+
'': { GET: restGet, PATCH: restUpdate },
|
|
13
|
+
lock: { POST: restLock, DELETE: restUnlock }
|
|
14
|
+
};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { PARAMS } from '../../../constants.js';
|
|
2
|
+
import { handleError } from '../../../errors/handler.server.js';
|
|
3
|
+
import { RimeError } from '../../../errors/index.js';
|
|
4
|
+
import { claimEditLock, releaseEditLock } from '../../shared/metas/lock.server.js';
|
|
5
|
+
import { trycatch } from '../../../../util/function.js';
|
|
6
|
+
import { json } from '@sveltejs/kit';
|
|
7
|
+
import { endpoint } from './endpoint.server.js';
|
|
8
|
+
/** The edit lock on an area — see the collection's, which this mirrors without the `[id]` tier. */
|
|
9
|
+
const run = (intent) => endpoint(async ({ event, area }) => {
|
|
10
|
+
const { user } = event.locals;
|
|
11
|
+
if (!user)
|
|
12
|
+
return handleError(new RimeError(RimeError.UNAUTHORIZED), { context: 'api' });
|
|
13
|
+
if (!area.config.access.update(user, {})) {
|
|
14
|
+
return handleError(new RimeError(RimeError.UNAUTHORIZED), { context: 'api' });
|
|
15
|
+
}
|
|
16
|
+
// The row on the caller's screen when they name one, else the newest — see the collection's.
|
|
17
|
+
const versionId = event.url.searchParams.get(PARAMS.VERSION_ID) || undefined;
|
|
18
|
+
const [readError, doc] = await trycatch(() => area.system().find({ versionId, latest: true }));
|
|
19
|
+
if (readError)
|
|
20
|
+
return handleError(readError, { context: 'api' });
|
|
21
|
+
// A `pagehide` beacon can only POST, so a release arriving that way says so in the query.
|
|
22
|
+
// DELETE stays the method for every release that has time to pick one.
|
|
23
|
+
const releasing = intent === 'release' || event.url.searchParams.get('release') === 'true';
|
|
24
|
+
const force = !releasing && event.url.searchParams.get('force') === 'true';
|
|
25
|
+
const args = { event, config: area.config, doc, userId: user.id, force };
|
|
26
|
+
const [error, held] = await trycatch(async () => {
|
|
27
|
+
if (releasing) {
|
|
28
|
+
await releaseEditLock(args);
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
return claimEditLock(args);
|
|
32
|
+
});
|
|
33
|
+
if (error)
|
|
34
|
+
return handleError(error, { context: 'api' });
|
|
35
|
+
return json({ held: !!held });
|
|
36
|
+
});
|
|
37
|
+
export const restLock = run('claim');
|
|
38
|
+
export const restUnlock = run('release');
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { PARAMS } from '../../../constants.js';
|
|
2
|
+
import { ERROR_CONTEXT, handleError } from '../../../errors/handler.server.js';
|
|
3
|
+
import { extractData } from '../../../pipeline/extract-data.server.js';
|
|
4
|
+
import { trycatch } from '../../../../util/function.js';
|
|
5
|
+
import { json } from '@sveltejs/kit';
|
|
6
|
+
import { endpoint } from './endpoint.server.js';
|
|
7
|
+
/**
|
|
8
|
+
* PATCH handler for the area API endpoint.
|
|
9
|
+
*/
|
|
10
|
+
export const restUpdate = endpoint(async ({ event, area }) => {
|
|
11
|
+
//
|
|
12
|
+
const { rime } = event.locals;
|
|
13
|
+
// Which row: `versionId`, else the newest with `latest`, else the published one. `fork` makes
|
|
14
|
+
// a new version from it instead of writing it.
|
|
15
|
+
const versionId = event.url.searchParams.get(PARAMS.VERSION_ID) || undefined;
|
|
16
|
+
const latest = event.url.searchParams.get(PARAMS.LATEST) === 'true' || undefined;
|
|
17
|
+
const fork = event.url.searchParams.get(PARAMS.FORK) === 'true' || undefined;
|
|
18
|
+
// Extract data from the request body
|
|
19
|
+
const [extractError, data] = await trycatch(() => extractData(event.request));
|
|
20
|
+
if (extractError) {
|
|
21
|
+
return handleError(extractError, { context: ERROR_CONTEXT.API });
|
|
22
|
+
}
|
|
23
|
+
// Set the locale if provided in the data
|
|
24
|
+
if (data.locale) {
|
|
25
|
+
rime.setLocale(data.locale);
|
|
26
|
+
}
|
|
27
|
+
const [error, doc] = await trycatch(() => area.update({
|
|
28
|
+
data,
|
|
29
|
+
versionId,
|
|
30
|
+
latest,
|
|
31
|
+
fork,
|
|
32
|
+
locale: rime.getLocale()
|
|
33
|
+
}));
|
|
34
|
+
if (error) {
|
|
35
|
+
return handleError(error, { context: ERROR_CONTEXT.API });
|
|
36
|
+
}
|
|
37
|
+
return json({ doc });
|
|
38
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import type { BuiltCollection } from '../../config/types.js';
|
|
2
|
+
import type { RegisterCollection } from '../../../index.js';
|
|
3
|
+
import type { PrototypeApiContext } from '../define.js';
|
|
4
|
+
import type { RequestEvent } from '@sveltejs/kit';
|
|
5
|
+
import type { Dic } from '../../../util/types.js';
|
|
6
|
+
import type { CollectionSlug } from '../types.js';
|
|
7
|
+
import type { OperationQuery } from '../../pipeline/types.js';
|
|
8
|
+
import { type CreateArgs } from './operations/create.js';
|
|
9
|
+
import { type DeleteByIdArgs } from './operations/delete-by-id.js';
|
|
10
|
+
import { type DeleteArgs } from './operations/delete.js';
|
|
11
|
+
import { type DuplicateArgs } from './operations/duplicate.js';
|
|
12
|
+
import { type FindByIdArgs } from './operations/find-by-id.js';
|
|
13
|
+
import { type FindArgs } from './operations/find.js';
|
|
14
|
+
import { type UpdateByIdArgs } from './operations/update-by-id.js';
|
|
15
|
+
/** What building a collection's API for one request needs. */
|
|
16
|
+
export type CollectionApiArgs = {
|
|
17
|
+
config: BuiltCollection;
|
|
18
|
+
event: RequestEvent;
|
|
19
|
+
defaultLocale: string | undefined;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Everything `rime.collection('pages')` can do, in the collection's own folder, beside the
|
|
23
|
+
* operations that implement it.
|
|
24
|
+
*
|
|
25
|
+
* A class, and the operations are handed `this`. It was a `context()` building a plumbing object,
|
|
26
|
+
* a `shape(ctx)` returning the verbs, a `build()` wiring `system` around them and a
|
|
27
|
+
* `collectionApi()` calling that — four functions to hand back one object, and a
|
|
28
|
+
* `ReturnType<typeof shape>` to name it afterwards.
|
|
29
|
+
*
|
|
30
|
+
* The plumbing members below `system` are what the operations reach for; `CollectionApi` at the
|
|
31
|
+
* foot of this file is the list a caller sees.
|
|
32
|
+
*/
|
|
33
|
+
declare class CollectionAPI<Doc extends RegisterCollection[CollectionSlug]> implements PrototypeApiContext<BuiltCollection> {
|
|
34
|
+
private readonly args;
|
|
35
|
+
readonly config: BuiltCollection;
|
|
36
|
+
readonly event: RequestEvent;
|
|
37
|
+
readonly defaultLocale: string | undefined;
|
|
38
|
+
/** True when rime itself is the caller: access checks and some hooks stand down. */
|
|
39
|
+
readonly isSystemOperation: boolean;
|
|
40
|
+
constructor(args: CollectionApiArgs, isSystemOperation?: boolean);
|
|
41
|
+
/**
|
|
42
|
+
* The same API, telling the pipeline that rime is the caller.
|
|
43
|
+
*
|
|
44
|
+
* A new instance rather than a flag, so a system call cannot leak back into the one it was
|
|
45
|
+
* escalated from. `system(false)` hands this one back, which is what lets `system(someBoolean)`
|
|
46
|
+
* read as "escalate if needed".
|
|
47
|
+
*/
|
|
48
|
+
system(isSystem?: boolean): CollectionAPI<Doc>;
|
|
49
|
+
/**
|
|
50
|
+
* A document of this collection's shape with every default applied, and no id.
|
|
51
|
+
*
|
|
52
|
+
* An auth collection hands back nothing private — the password, the better-auth link. Only a
|
|
53
|
+
* collection signs in, which is why this step is here and not on the area's.
|
|
54
|
+
*/
|
|
55
|
+
blank(): Doc;
|
|
56
|
+
/** The locale to act in: the one asked for, else the request's, else the config's default. */
|
|
57
|
+
fallbackLocale(locale?: string): string | undefined;
|
|
58
|
+
/** Which version row a read means — see `versionsReadQuery`. */
|
|
59
|
+
versionQuery(params: {
|
|
60
|
+
latest?: boolean;
|
|
61
|
+
versionId?: string;
|
|
62
|
+
}): OperationQuery | undefined;
|
|
63
|
+
/** Read through the API cache when it is on and this is not a system call. */
|
|
64
|
+
cached<T>(operation: string, key: Dic, read: () => Promise<T>): Promise<T>;
|
|
65
|
+
/**
|
|
66
|
+
* Creates a new document in the collection
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* const post = await rime.collection('posts').create({
|
|
70
|
+
* data: { title: 'Hello World', content: 'My first post' },
|
|
71
|
+
* locale: 'en'
|
|
72
|
+
* });
|
|
73
|
+
*/
|
|
74
|
+
create(args: CreateArgs<Doc>): Promise<Doc>;
|
|
75
|
+
/**
|
|
76
|
+
* Duplicate a document in the collection
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* const post = await rime.collection('posts').duplicate({ id: '1234' });
|
|
80
|
+
* // A given row rather than the newest real version
|
|
81
|
+
* const copy = await rime.collection('posts').duplicate({ id: '1234', versionId: 'abcd' });
|
|
82
|
+
*/
|
|
83
|
+
duplicate(args: DuplicateArgs): Promise<string>;
|
|
84
|
+
/**
|
|
85
|
+
* Finds documents in the collection matching the query
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* // Find published posts sorted by creation date
|
|
89
|
+
* const posts = await rime.collection('posts').find({
|
|
90
|
+
* query: { published: true },
|
|
91
|
+
* sort: '-createdAt',
|
|
92
|
+
* limit: 10
|
|
93
|
+
* });
|
|
94
|
+
*/
|
|
95
|
+
find(args?: FindArgs): Promise<Doc[]>;
|
|
96
|
+
/**
|
|
97
|
+
* Finds a document in the collection by ID
|
|
98
|
+
*
|
|
99
|
+
* For collections with versioning:
|
|
100
|
+
* - If versionId is provided: Retrieves that specific version
|
|
101
|
+
* - If no versionId and latest=true: Retrieves the newest version, whatever its status
|
|
102
|
+
* - If no versionId and draft=false: Retrieves the published version
|
|
103
|
+
*
|
|
104
|
+
* @example
|
|
105
|
+
* // Get published version
|
|
106
|
+
* const post = await rime.collection('posts').findById({ id: '12345' });
|
|
107
|
+
*
|
|
108
|
+
* // Get specific version
|
|
109
|
+
* const post = await rime.collection('posts').findById({
|
|
110
|
+
* id: '12345',
|
|
111
|
+
* versionId: 'v2',
|
|
112
|
+
* locale: 'en'
|
|
113
|
+
* });
|
|
114
|
+
*
|
|
115
|
+
* // Get latest draft version
|
|
116
|
+
* const post = await rime.collection('posts').findById({
|
|
117
|
+
* id: '12345',
|
|
118
|
+
* latest: true
|
|
119
|
+
* });
|
|
120
|
+
*/
|
|
121
|
+
findById(args: FindByIdArgs): Promise<Doc>;
|
|
122
|
+
/**
|
|
123
|
+
* Updates a document in the collection by ID.
|
|
124
|
+
*
|
|
125
|
+
* `versionId`, else `latest`, else the published version selects the row; `fork` makes a new
|
|
126
|
+
* version from it instead of writing it. A config with versions and no drafts keeps a version
|
|
127
|
+
* per save, so an update that names no row is a fork there.
|
|
128
|
+
*
|
|
129
|
+
* @example
|
|
130
|
+
* // Write the published version
|
|
131
|
+
* await rime.collection('posts').updateById({ id, data: { title: 'New title' } });
|
|
132
|
+
*
|
|
133
|
+
* // Write the newest version, draft or not
|
|
134
|
+
* await rime.collection('posts').updateById({ id, data, latest: true });
|
|
135
|
+
*
|
|
136
|
+
* // A new draft from the published version
|
|
137
|
+
* await rime.collection('posts').updateById({ id, data, fork: true });
|
|
138
|
+
*/
|
|
139
|
+
updateById(args: UpdateByIdArgs<Doc>): Promise<Doc>;
|
|
140
|
+
/**
|
|
141
|
+
* Deletes a document in the collection by ID
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* const post = await rime.collection('posts').deleteById({ id: '12345' });
|
|
145
|
+
*/
|
|
146
|
+
deleteById(args: DeleteByIdArgs): Promise<string>;
|
|
147
|
+
/**
|
|
148
|
+
* Deletes multiple documents in the collection. No query means no filter —
|
|
149
|
+
* `delete()` with no args deletes every document in the collection.
|
|
150
|
+
*
|
|
151
|
+
* @example
|
|
152
|
+
* const posts = await rime.collection('posts').delete({
|
|
153
|
+
* query: { published: true },
|
|
154
|
+
* limit: 10
|
|
155
|
+
* });
|
|
156
|
+
*/
|
|
157
|
+
delete(args?: DeleteArgs): Promise<string[]>;
|
|
158
|
+
}
|
|
159
|
+
/** Builds a collection's API for one request. What `rime.collection(slug)` calls. */
|
|
160
|
+
export declare const collectionApi: <Doc extends RegisterCollection[CollectionSlug]>(args: CollectionApiArgs) => CollectionApi<Doc>;
|
|
161
|
+
/**
|
|
162
|
+
* What `rime.collection(slug)` hands back — **written out**, not read off the class.
|
|
163
|
+
*
|
|
164
|
+
* The class also carries the plumbing its operations reach for (`event`, `cached`,
|
|
165
|
+
* `versionQuery`, `fallbackLocale`, `isSystemOperation`); none of that is a caller's business, and
|
|
166
|
+
* naming `RequestEvent` in this type would be worse than untidy. `event.locals.rime` is typed as
|
|
167
|
+
* this accessor's owner, so a surface that reached `RequestEvent` would be defined in terms of
|
|
168
|
+
* itself and every `rime.collection(...)` in the repo would resolve to `never`. Each operation
|
|
169
|
+
* exports its caller-facing arguments separately for the same reason.
|
|
170
|
+
*/
|
|
171
|
+
export type CollectionApi<Doc extends RegisterCollection[CollectionSlug] = RegisterCollection[CollectionSlug]> = Pick<CollectionAPI<Doc>, 'config' | 'blank' | 'create' | 'duplicate' | 'find' | 'findById' | 'updateById' | 'deleteById' | 'delete' | 'system'>;
|
|
172
|
+
export type CollectionAccessor = <Slug extends keyof RegisterCollection>(slug: Slug) => CollectionApi<RegisterCollection[Slug]>;
|
|
173
|
+
export {};
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import { RimeError } from '../../errors/index.js';
|
|
2
|
+
import { withoutPrivateFields } from '../../auth/constant.server.js';
|
|
3
|
+
import { isAuth } from '../../auth/enabled.js';
|
|
4
|
+
import { createBlankDocument } from '../doc.js';
|
|
5
|
+
import { versionsReadQuery } from '../shared/versions/read-query.js';
|
|
6
|
+
import { create } from './operations/create.js';
|
|
7
|
+
import { deleteById } from './operations/delete-by-id.js';
|
|
8
|
+
import { deleteDocs } from './operations/delete.js';
|
|
9
|
+
import { duplicate } from './operations/duplicate.js';
|
|
10
|
+
import { findById } from './operations/find-by-id.js';
|
|
11
|
+
import { find } from './operations/find.js';
|
|
12
|
+
import { updateById } from './operations/update-by-id.js';
|
|
13
|
+
/**
|
|
14
|
+
* Everything `rime.collection('pages')` can do, in the collection's own folder, beside the
|
|
15
|
+
* operations that implement it.
|
|
16
|
+
*
|
|
17
|
+
* A class, and the operations are handed `this`. It was a `context()` building a plumbing object,
|
|
18
|
+
* a `shape(ctx)` returning the verbs, a `build()` wiring `system` around them and a
|
|
19
|
+
* `collectionApi()` calling that — four functions to hand back one object, and a
|
|
20
|
+
* `ReturnType<typeof shape>` to name it afterwards.
|
|
21
|
+
*
|
|
22
|
+
* The plumbing members below `system` are what the operations reach for; `CollectionApi` at the
|
|
23
|
+
* foot of this file is the list a caller sees.
|
|
24
|
+
*/
|
|
25
|
+
class CollectionAPI {
|
|
26
|
+
args;
|
|
27
|
+
config;
|
|
28
|
+
event;
|
|
29
|
+
defaultLocale;
|
|
30
|
+
/** True when rime itself is the caller: access checks and some hooks stand down. */
|
|
31
|
+
isSystemOperation;
|
|
32
|
+
constructor(args, isSystemOperation = false) {
|
|
33
|
+
this.args = args;
|
|
34
|
+
this.config = args.config;
|
|
35
|
+
this.event = args.event;
|
|
36
|
+
this.defaultLocale = args.defaultLocale;
|
|
37
|
+
this.isSystemOperation = isSystemOperation;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The same API, telling the pipeline that rime is the caller.
|
|
41
|
+
*
|
|
42
|
+
* A new instance rather than a flag, so a system call cannot leak back into the one it was
|
|
43
|
+
* escalated from. `system(false)` hands this one back, which is what lets `system(someBoolean)`
|
|
44
|
+
* read as "escalate if needed".
|
|
45
|
+
*/
|
|
46
|
+
system(isSystem = true) {
|
|
47
|
+
return isSystem ? new CollectionAPI(this.args, true) : this;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* A document of this collection's shape with every default applied, and no id.
|
|
51
|
+
*
|
|
52
|
+
* An auth collection hands back nothing private — the password, the better-auth link. Only a
|
|
53
|
+
* collection signs in, which is why this step is here and not on the area's.
|
|
54
|
+
*/
|
|
55
|
+
blank() {
|
|
56
|
+
const doc = createBlankDocument(this.config, this.event);
|
|
57
|
+
return (isAuth(this.config) ? withoutPrivateFields(doc) : doc);
|
|
58
|
+
}
|
|
59
|
+
/** The locale to act in: the one asked for, else the request's, else the config's default. */
|
|
60
|
+
fallbackLocale(locale) {
|
|
61
|
+
return locale || this.event.locals.locale || this.defaultLocale;
|
|
62
|
+
}
|
|
63
|
+
/** Which version row a read means — see `versionsReadQuery`. */
|
|
64
|
+
versionQuery(params) {
|
|
65
|
+
return versionsReadQuery({ config: this.config, params });
|
|
66
|
+
}
|
|
67
|
+
/** Read through the API cache when it is on and this is not a system call. */
|
|
68
|
+
cached(operation, key, read) {
|
|
69
|
+
if (!this.event.locals.cacheEnabled || this.isSystemOperation)
|
|
70
|
+
return read();
|
|
71
|
+
const cacheKey = this.event.locals.rime.cache.createKey(operation, {
|
|
72
|
+
slug: this.config.slug,
|
|
73
|
+
userEmail: this.event.locals.user?.email,
|
|
74
|
+
userRoles: this.event.locals.user?.roles,
|
|
75
|
+
...key
|
|
76
|
+
});
|
|
77
|
+
return this.event.locals.rime.cache.get(cacheKey, read);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Creates a new document in the collection
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* const post = await rime.collection('posts').create({
|
|
84
|
+
* data: { title: 'Hello World', content: 'My first post' },
|
|
85
|
+
* locale: 'en'
|
|
86
|
+
* });
|
|
87
|
+
*/
|
|
88
|
+
create(args) {
|
|
89
|
+
return create({
|
|
90
|
+
ctx: this,
|
|
91
|
+
data: args.data,
|
|
92
|
+
locale: this.fallbackLocale(args.locale)
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Duplicate a document in the collection
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* const post = await rime.collection('posts').duplicate({ id: '1234' });
|
|
100
|
+
* // A given row rather than the newest real version
|
|
101
|
+
* const copy = await rime.collection('posts').duplicate({ id: '1234', versionId: 'abcd' });
|
|
102
|
+
*/
|
|
103
|
+
duplicate(args) {
|
|
104
|
+
return duplicate({ ctx: this, id: args.id, versionId: args.versionId });
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Finds documents in the collection matching the query
|
|
108
|
+
*
|
|
109
|
+
* @example
|
|
110
|
+
* // Find published posts sorted by creation date
|
|
111
|
+
* const posts = await rime.collection('posts').find({
|
|
112
|
+
* query: { published: true },
|
|
113
|
+
* sort: '-createdAt',
|
|
114
|
+
* limit: 10
|
|
115
|
+
* });
|
|
116
|
+
*/
|
|
117
|
+
find(args = {}) {
|
|
118
|
+
const { query, locale, sort = '-updatedAt', depth = 0, limit, offset, latest, select, localeFallback } = args;
|
|
119
|
+
// The key holds the locale as the *caller* gave it, not the resolved one — preserved from
|
|
120
|
+
// the class this replaces. Reachable only from a local-API call that omits `locale` while
|
|
121
|
+
// the API cache is on, which the REST layer never does: it always passes rime.getLocale().
|
|
122
|
+
return this.cached('collection.find', { select, sort, depth, limit, offset, locale, latest, query, localeFallback }, () => find({
|
|
123
|
+
ctx: this,
|
|
124
|
+
select,
|
|
125
|
+
query,
|
|
126
|
+
sort,
|
|
127
|
+
depth,
|
|
128
|
+
limit,
|
|
129
|
+
offset,
|
|
130
|
+
latest,
|
|
131
|
+
localeFallback,
|
|
132
|
+
locale: this.fallbackLocale(locale)
|
|
133
|
+
}));
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Finds a document in the collection by ID
|
|
137
|
+
*
|
|
138
|
+
* For collections with versioning:
|
|
139
|
+
* - If versionId is provided: Retrieves that specific version
|
|
140
|
+
* - If no versionId and latest=true: Retrieves the newest version, whatever its status
|
|
141
|
+
* - If no versionId and draft=false: Retrieves the published version
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* // Get published version
|
|
145
|
+
* const post = await rime.collection('posts').findById({ id: '12345' });
|
|
146
|
+
*
|
|
147
|
+
* // Get specific version
|
|
148
|
+
* const post = await rime.collection('posts').findById({
|
|
149
|
+
* id: '12345',
|
|
150
|
+
* versionId: 'v2',
|
|
151
|
+
* locale: 'en'
|
|
152
|
+
* });
|
|
153
|
+
*
|
|
154
|
+
* // Get latest draft version
|
|
155
|
+
* const post = await rime.collection('posts').findById({
|
|
156
|
+
* id: '12345',
|
|
157
|
+
* latest: true
|
|
158
|
+
* });
|
|
159
|
+
*/
|
|
160
|
+
findById(args) {
|
|
161
|
+
const { id, versionId, locale, select, latest, depth = 0, localeFallback } = args;
|
|
162
|
+
if (!id) {
|
|
163
|
+
throw new RimeError(RimeError.NOT_FOUND);
|
|
164
|
+
}
|
|
165
|
+
return this.cached('collection.findById', { id, versionId, select, depth, latest, locale, localeFallback }, () => findById({
|
|
166
|
+
ctx: this,
|
|
167
|
+
id,
|
|
168
|
+
versionId,
|
|
169
|
+
select,
|
|
170
|
+
depth,
|
|
171
|
+
latest,
|
|
172
|
+
localeFallback,
|
|
173
|
+
locale: this.fallbackLocale(locale)
|
|
174
|
+
}));
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Updates a document in the collection by ID.
|
|
178
|
+
*
|
|
179
|
+
* `versionId`, else `latest`, else the published version selects the row; `fork` makes a new
|
|
180
|
+
* version from it instead of writing it. A config with versions and no drafts keeps a version
|
|
181
|
+
* per save, so an update that names no row is a fork there.
|
|
182
|
+
*
|
|
183
|
+
* @example
|
|
184
|
+
* // Write the published version
|
|
185
|
+
* await rime.collection('posts').updateById({ id, data: { title: 'New title' } });
|
|
186
|
+
*
|
|
187
|
+
* // Write the newest version, draft or not
|
|
188
|
+
* await rime.collection('posts').updateById({ id, data, latest: true });
|
|
189
|
+
*
|
|
190
|
+
* // A new draft from the published version
|
|
191
|
+
* await rime.collection('posts').updateById({ id, data, fork: true });
|
|
192
|
+
*/
|
|
193
|
+
updateById(args) {
|
|
194
|
+
return updateById({
|
|
195
|
+
...args,
|
|
196
|
+
ctx: this,
|
|
197
|
+
locale: this.fallbackLocale(args.locale)
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Deletes a document in the collection by ID
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* const post = await rime.collection('posts').deleteById({ id: '12345' });
|
|
205
|
+
*/
|
|
206
|
+
deleteById(args) {
|
|
207
|
+
return deleteById({ ctx: this, id: args.id });
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Deletes multiple documents in the collection. No query means no filter —
|
|
211
|
+
* `delete()` with no args deletes every document in the collection.
|
|
212
|
+
*
|
|
213
|
+
* @example
|
|
214
|
+
* const posts = await rime.collection('posts').delete({
|
|
215
|
+
* query: { published: true },
|
|
216
|
+
* limit: 10
|
|
217
|
+
* });
|
|
218
|
+
*/
|
|
219
|
+
delete(args = {}) {
|
|
220
|
+
return deleteDocs({ ctx: this, ...args });
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
/** Builds a collection's API for one request. What `rime.collection(slug)` calls. */
|
|
224
|
+
export const collectionApi = (args) => new CollectionAPI(args);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CollectionLabel } from './types.js';
|
|
2
|
+
import type { Collection } from '../../../types.js';
|
|
3
|
+
export type WithNormalizedLabel<T> = Omit<T, 'label'> & {
|
|
4
|
+
label: CollectionLabel;
|
|
5
|
+
};
|
|
6
|
+
export declare const augmentLabel: <T extends Collection<any>>(config: T) => WithNormalizedLabel<T>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { BuiltCollection } from '../../config/types.js';
|
|
2
|
+
import type { CollectionWithoutSlug } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* A collection: many documents, addressed by id, with the full set of operations.
|
|
5
|
+
*
|
|
6
|
+
* The client half of the pair. It carries everything a client build needs — what a collection
|
|
7
|
+
* *is* — and none of what only a server can do: `api` and `rest` are declared in
|
|
8
|
+
* `definition.server.ts`, which re-exports this with those added.
|
|
9
|
+
*
|
|
10
|
+
* That split is what lets the definition hold `features` and `augments`: `create` runs them on
|
|
11
|
+
* both sides, so both lists have to be reachable from a client build, which a `.server.ts`
|
|
12
|
+
* definition never was.
|
|
13
|
+
*/
|
|
14
|
+
export declare const collection: import("../define.js").PrototypeDefinition<import("../define.js").BuiltPrototype>;
|
|
15
|
+
/**
|
|
16
|
+
* The public authoring API: `Collection.create('pages', {…})`.
|
|
17
|
+
*
|
|
18
|
+
* One line over `collection.create`, and it exists for the one thing a definition prop cannot
|
|
19
|
+
* state: the authoring type is generic in the slug — `Collection<S>` types `$hooks` and `$url`
|
|
20
|
+
* from it — and no type parameter can carry a generic type. So the composition lives in
|
|
21
|
+
* `definePrototype` and the signature lives here, next to the kind it belongs to.
|
|
22
|
+
*
|
|
23
|
+
* Isomorphic on purpose. A feature that derives a collection (`auth`'s `staff`) imports this file
|
|
24
|
+
* and not `definition.server.ts` — see rule 3 in CONTRIBUTING.md.
|
|
25
|
+
*/
|
|
26
|
+
export declare const create: <S extends string>(slug: S, config: CollectionWithoutSlug<S>) => BuiltCollection;
|