rimecms 0.31.5 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +55 -60
- package/dist/adapter-sqlite/generate-schema/templates.server.js +110 -169
- 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 +237 -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,63 @@
|
|
|
1
|
+
import type { BuiltArea, BuiltCollection } from '../config/types.js';
|
|
2
|
+
import type { Component } from 'svelte';
|
|
3
|
+
import type { Dic } from '../../util/types.js';
|
|
4
|
+
import type { IconProps } from '@lucide/svelte';
|
|
5
|
+
import type { PanelConfig } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* The slug → icon map the panel navigates by, gathered from every prototype config.
|
|
8
|
+
*
|
|
9
|
+
* A feature-derived collection (upload's `<slug>Directories`, versions' aliases) has no entry:
|
|
10
|
+
* `panel` is listed before `upload` and `versions`, so they do not exist yet when this runs. That
|
|
11
|
+
* is the behaviour the chain had before the panel became a feature, and the feature list is where
|
|
12
|
+
* it is now declared — see index.ts.
|
|
13
|
+
*/
|
|
14
|
+
declare const withIcons: <const T extends {
|
|
15
|
+
collections?: BuiltCollection[];
|
|
16
|
+
areas?: BuiltArea[];
|
|
17
|
+
}>(config: T) => T & {
|
|
18
|
+
readonly icons: Dic<Component<import("@lucide/svelte").LucideProps, {}, string>>;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* What every config needs before a panel can render it: the slug → icon map, and `panel` itself
|
|
22
|
+
* with its navigation groups, language and header components filled in.
|
|
23
|
+
*
|
|
24
|
+
* Two steps and one order — the icon map covers the collections that exist when it runs, so it
|
|
25
|
+
* goes first, and `config/configure.ts` places this whole thing before the two steps that derive
|
|
26
|
+
* collections. They were two exports called from a one-line lambda in the config chain; the
|
|
27
|
+
* chain names one step per folder now.
|
|
28
|
+
*/
|
|
29
|
+
export declare const configurePanel: <T extends Parameters<typeof withIcons>[0]>(config: T) => {
|
|
30
|
+
panel?: Omit<PanelConfig, "$access">;
|
|
31
|
+
} & {
|
|
32
|
+
readonly panel: {
|
|
33
|
+
readonly routes: Record<string, import("./types.js").CustomPanelRoute>;
|
|
34
|
+
readonly language: "fr" | "en";
|
|
35
|
+
readonly navigation: {
|
|
36
|
+
readonly groups: readonly [...{
|
|
37
|
+
label: string;
|
|
38
|
+
icon: Component<IconProps>;
|
|
39
|
+
}[], {
|
|
40
|
+
readonly label: "content";
|
|
41
|
+
readonly icon: Component<import("@lucide/svelte").LucideProps, {}, "">;
|
|
42
|
+
}, {
|
|
43
|
+
readonly label: "system";
|
|
44
|
+
readonly icon: Component<import("@lucide/svelte").LucideProps, {}, "">;
|
|
45
|
+
}, {
|
|
46
|
+
readonly label: "collections";
|
|
47
|
+
readonly icon: Component<import("@lucide/svelte").LucideProps, {}, "">;
|
|
48
|
+
}, {
|
|
49
|
+
readonly label: "areas";
|
|
50
|
+
readonly icon: Component<import("@lucide/svelte").LucideProps, {}, "">;
|
|
51
|
+
}];
|
|
52
|
+
};
|
|
53
|
+
readonly components: {
|
|
54
|
+
readonly dashboard?: Component<{
|
|
55
|
+
entries: import("../../panel/pages/dashboard/types").DashboardEntry[];
|
|
56
|
+
user?: import("../auth/types").User;
|
|
57
|
+
}, {}, string> | undefined;
|
|
58
|
+
readonly header: Component<{}, {}, string>[];
|
|
59
|
+
};
|
|
60
|
+
readonly css?: string;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Book, BookCopy, BookType, SlidersVertical } from '@lucide/svelte';
|
|
2
|
+
/**
|
|
3
|
+
* The slug → icon map the panel navigates by, gathered from every prototype config.
|
|
4
|
+
*
|
|
5
|
+
* A feature-derived collection (upload's `<slug>Directories`, versions' aliases) has no entry:
|
|
6
|
+
* `panel` is listed before `upload` and `versions`, so they do not exist yet when this runs. That
|
|
7
|
+
* is the behaviour the chain had before the panel became a feature, and the feature list is where
|
|
8
|
+
* it is now declared — see index.ts.
|
|
9
|
+
*/
|
|
10
|
+
const withIcons = (config) => {
|
|
11
|
+
const icons = {};
|
|
12
|
+
// Add icons
|
|
13
|
+
for (const collection of config.collections || []) {
|
|
14
|
+
icons[collection.slug] = collection.icon;
|
|
15
|
+
}
|
|
16
|
+
for (const area of config.areas || []) {
|
|
17
|
+
icons[area.slug] = area.icon;
|
|
18
|
+
}
|
|
19
|
+
return { ...config, icons };
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* The panel's own config defaults: navigation groups, language, header components.
|
|
23
|
+
*
|
|
24
|
+
* Read `index.ts` for what this is part of. This file is one half of it; `icons.ts` is the other.
|
|
25
|
+
*/
|
|
26
|
+
const withDefaults = (config) => {
|
|
27
|
+
//
|
|
28
|
+
const panelNavigationGroups = [
|
|
29
|
+
...(config.panel?.navigation?.groups || []),
|
|
30
|
+
{ label: 'content', icon: BookType },
|
|
31
|
+
{ label: 'system', icon: SlidersVertical },
|
|
32
|
+
{ label: 'collections', icon: BookCopy },
|
|
33
|
+
{ label: 'areas', icon: Book }
|
|
34
|
+
];
|
|
35
|
+
const panel = {
|
|
36
|
+
...config.panel,
|
|
37
|
+
routes: config.panel?.routes ? config.panel.routes : {},
|
|
38
|
+
language: config.panel?.language || 'en',
|
|
39
|
+
navigation: { groups: panelNavigationGroups },
|
|
40
|
+
components: {
|
|
41
|
+
header: config.panel?.components?.header || [],
|
|
42
|
+
...(config.panel?.components?.dashboard && { dashboard: config.panel.components.dashboard })
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
return { ...config, panel };
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* What every config needs before a panel can render it: the slug → icon map, and `panel` itself
|
|
49
|
+
* with its navigation groups, language and header components filled in.
|
|
50
|
+
*
|
|
51
|
+
* Two steps and one order — the icon map covers the collections that exist when it runs, so it
|
|
52
|
+
* goes first, and `config/configure.ts` places this whole thing before the two steps that derive
|
|
53
|
+
* collections. They were two exports called from a one-line lambda in the config chain; the
|
|
54
|
+
* chain names one step per folder now.
|
|
55
|
+
*/
|
|
56
|
+
export const configurePanel = (config) => withDefaults(withIcons(config));
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { Component } from 'svelte';
|
|
2
|
+
import type { IconProps } from '@lucide/svelte';
|
|
3
|
+
import type { User } from '../auth/types.js';
|
|
4
|
+
import type { PanelLanguage } from '../i18n/index.js';
|
|
5
|
+
import type { DashboardEntry } from '../../panel/pages/dashboard/types.js';
|
|
6
|
+
import type { BuiltCollectionClient } from '../config/types.js';
|
|
7
|
+
/** The groups the panel's sidebar shows, and the icon each carries. */
|
|
8
|
+
export type NavigationConfig = {
|
|
9
|
+
groups: Array<{
|
|
10
|
+
label: string;
|
|
11
|
+
icon: Component<IconProps>;
|
|
12
|
+
}>;
|
|
13
|
+
};
|
|
14
|
+
/** What an author writes under `panel`. */
|
|
15
|
+
export type PanelConfig = {
|
|
16
|
+
/** who can accesss the panel */
|
|
17
|
+
$access?: (user: User | undefined) => boolean;
|
|
18
|
+
/** Custom panel routes that render a given component */
|
|
19
|
+
routes?: Record<string, CustomPanelRoute>;
|
|
20
|
+
/** The panel language, "en" or "fr" supports only */
|
|
21
|
+
language?: PanelLanguage;
|
|
22
|
+
/** Sidebar navigation groups labels and icons */
|
|
23
|
+
navigation?: NavigationConfig;
|
|
24
|
+
/** Specific components */
|
|
25
|
+
components?: {
|
|
26
|
+
/** Dashboard header */
|
|
27
|
+
header?: Component[];
|
|
28
|
+
/** Collection header */
|
|
29
|
+
collectionHeader?: Component<{
|
|
30
|
+
config: BuiltCollectionClient;
|
|
31
|
+
}>[];
|
|
32
|
+
/** Full dashboard component */
|
|
33
|
+
dashboard?: Component<{
|
|
34
|
+
entries: DashboardEntry[];
|
|
35
|
+
user?: User;
|
|
36
|
+
}>;
|
|
37
|
+
};
|
|
38
|
+
/** a relative path from the "static" directory or an external url
|
|
39
|
+
* @example
|
|
40
|
+
* // for static/assets/custom.css
|
|
41
|
+
* css : '/assets/custom.css'
|
|
42
|
+
*/
|
|
43
|
+
css?: string;
|
|
44
|
+
};
|
|
45
|
+
export type CollectionPanelConfig = false | {
|
|
46
|
+
/** Description for the collection/area, basically displayed on the dashboard */
|
|
47
|
+
description?: string;
|
|
48
|
+
/** Sidebar navigation group */
|
|
49
|
+
group?: string;
|
|
50
|
+
/** Dashboard settings */
|
|
51
|
+
dashboard?: {
|
|
52
|
+
layout?: 'rows' | 'grid';
|
|
53
|
+
maxEntries?: number;
|
|
54
|
+
} | false;
|
|
55
|
+
};
|
|
56
|
+
export type CustomPanelRoute = {
|
|
57
|
+
group?: string;
|
|
58
|
+
label: string;
|
|
59
|
+
icon?: Component<IconProps>;
|
|
60
|
+
component: Component;
|
|
61
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { DocumentRows } from '../adapter.js';
|
|
2
|
+
import type { BuiltArea, BuiltCollection } from '../config/types.js';
|
|
3
|
+
import type { GenericDoc } from '../prototype/types.js';
|
|
4
|
+
import type { RequestEvent } from '@sveltejs/kit';
|
|
5
|
+
/**
|
|
6
|
+
* Assembles one document out of the rows it is stored across.
|
|
7
|
+
*
|
|
8
|
+
* This half used to live in the adapter, which is why the database layer merged a blank document,
|
|
9
|
+
* read `event.params.panel` to decide which bookkeeping to keep, and called back up into the local
|
|
10
|
+
* API to walk relations. None of it needs a table: rows arrive keyed by document path, and what
|
|
11
|
+
* happens to them from here is a question about documents.
|
|
12
|
+
*/
|
|
13
|
+
export declare const buildDocument: <T extends GenericDoc = GenericDoc>(rows: DocumentRows, args: {
|
|
14
|
+
config: BuiltCollection | BuiltArea;
|
|
15
|
+
event: RequestEvent;
|
|
16
|
+
locale?: string | undefined;
|
|
17
|
+
depth?: number;
|
|
18
|
+
/** Merge the blank document, so every field the config declares is present. */
|
|
19
|
+
withBlank?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Keep a child row's own bookkeeping on it — `position`, `path`, `ownerId`, `locale` — and
|
|
22
|
+
* the edit lock on the document. An API read wants the document; an editor that writes blocks
|
|
23
|
+
* back in place wants the bookkeeping too.
|
|
24
|
+
*/
|
|
25
|
+
withRowMeta?: boolean;
|
|
26
|
+
}) => Promise<T>;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { isObjectLiteral, omit } from '../../util/object.js';
|
|
2
|
+
import deepmerge from 'deepmerge';
|
|
3
|
+
import { unflatten } from 'flat';
|
|
4
|
+
import { logger } from '../logger.server.js';
|
|
5
|
+
/**
|
|
6
|
+
* Assembles one document out of the rows it is stored across.
|
|
7
|
+
*
|
|
8
|
+
* This half used to live in the adapter, which is why the database layer merged a blank document,
|
|
9
|
+
* read `event.params.panel` to decide which bookkeeping to keep, and called back up into the local
|
|
10
|
+
* API to walk relations. None of it needs a table: rows arrive keyed by document path, and what
|
|
11
|
+
* happens to them from here is a question about documents.
|
|
12
|
+
*/
|
|
13
|
+
export const buildDocument = async (rows, args) => {
|
|
14
|
+
const { config, event, locale, depth = 0, withBlank = true, withRowMeta = false } = args;
|
|
15
|
+
const { rime } = event.locals;
|
|
16
|
+
const flatDoc = { ...rows.base };
|
|
17
|
+
for (const block of rows.blocks) {
|
|
18
|
+
flatDoc[`${block.path}.${block.position}`] = stripRowMeta(block, withRowMeta);
|
|
19
|
+
}
|
|
20
|
+
for (const node of rows.tree) {
|
|
21
|
+
if (!node._children)
|
|
22
|
+
node._children = [];
|
|
23
|
+
flatDoc[`${node.path}.${node.position}`] = stripRowMeta(node, withRowMeta);
|
|
24
|
+
}
|
|
25
|
+
for (const relation of rows.relations) {
|
|
26
|
+
if (!relation.documentId) {
|
|
27
|
+
logger.warn(`orphean ${config.slug} relation : ${relation.id}`);
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
// A relation row belongs to the locale it was written in, or to every locale if it has none.
|
|
31
|
+
if (relation.locale && relation.locale !== locale)
|
|
32
|
+
continue;
|
|
33
|
+
const path = relation.path;
|
|
34
|
+
const parentPath = path.split('.').slice(0, -1).join('.');
|
|
35
|
+
// A parent path ending in `.<digits>` means the relation sits inside a blocks or tree array,
|
|
36
|
+
// so its owner must have been placed above. If it was not, the row outlived it.
|
|
37
|
+
if (/.*\.[\d]+$/.test(parentPath) && !flatDoc[parentPath]) {
|
|
38
|
+
logger.warn(`Orphean ${config.slug} relation at ${path} with id ${relation.id} because parent path ${parentPath} doesn't exist in the document`);
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
let output;
|
|
42
|
+
if (depth > 0) {
|
|
43
|
+
output = await rime
|
|
44
|
+
.collection(relation.relationTo)
|
|
45
|
+
.findById({ id: relation.documentId, locale: relation.locale, depth: depth - 1 });
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
output = (withRowMeta ? relation : omit(['position', 'ownerId', 'path'], relation));
|
|
49
|
+
}
|
|
50
|
+
flatDoc[path] = [...(flatDoc[path] || []), output];
|
|
51
|
+
}
|
|
52
|
+
let doc = cleanEmptyElementsInArrays(unflatten(flatDoc));
|
|
53
|
+
if (withBlank) {
|
|
54
|
+
const blank = rime.config.isCollection(config.slug)
|
|
55
|
+
? rime.collection(config.slug).blank()
|
|
56
|
+
: rime.area(config.slug).blank();
|
|
57
|
+
doc = deepmerge(blank, doc, { arrayMerge: (_, incoming) => incoming });
|
|
58
|
+
}
|
|
59
|
+
return doc;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* A child row's own bookkeeping, dropped unless the caller asked to keep it.
|
|
63
|
+
*
|
|
64
|
+
* `path` and `position` are read before this to place the row, so they are only ever removed
|
|
65
|
+
* from what the document carries, never from what the assembly needs.
|
|
66
|
+
*/
|
|
67
|
+
const stripRowMeta = (row, withRowMeta) => withRowMeta ? row : omit(['position', 'path', 'ownerId', 'locale'], row);
|
|
68
|
+
/** Drop the holes left where a row was expected and none came back. */
|
|
69
|
+
const cleanEmptyElementsInArrays = (value) => {
|
|
70
|
+
if (Array.isArray(value)) {
|
|
71
|
+
return value
|
|
72
|
+
.map((item) => cleanEmptyElementsInArrays(item))
|
|
73
|
+
.filter((item) => item !== null && item !== undefined);
|
|
74
|
+
}
|
|
75
|
+
if (isObjectLiteral(value)) {
|
|
76
|
+
const cleaned = {};
|
|
77
|
+
for (const key in value) {
|
|
78
|
+
cleaned[key] = cleanEmptyElementsInArrays(value[key]);
|
|
79
|
+
}
|
|
80
|
+
return cleaned;
|
|
81
|
+
}
|
|
82
|
+
return value;
|
|
83
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PrototypeDefinition } from '../prototype/define.js';
|
|
2
|
+
import type { Dic } from '../../util/types.js';
|
|
3
|
+
/** One config, with its `$hooks` resolved: the authored hooks going in, the pipeline coming out. */
|
|
4
|
+
export declare const augmentHooks: <T extends Dic>(definition: Pick<PrototypeDefinition, "hooks">, config: T) => T & {
|
|
5
|
+
$hooks: Dic;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Resolves every prototype config's pipeline, once the whole config exists.
|
|
9
|
+
*
|
|
10
|
+
* The **last** step of the config chain, and the only place a pipeline is built. By the time it
|
|
11
|
+
* runs, the features have derived whatever they derive — upload's `<slug>Directories`, versions'
|
|
12
|
+
* version tables — so a derived config is resolved by the same line as an authored one, from the same
|
|
13
|
+
* three inputs: the prototype's own hooks, the hooks of the features this config enables, and the
|
|
14
|
+
* author's `$hooks`.
|
|
15
|
+
*
|
|
16
|
+
* That is why nothing carries a second copy of anything: a config derived before this runs never
|
|
17
|
+
* has a pipeline to inherit, and never needs one rebuilt.
|
|
18
|
+
*
|
|
19
|
+
* Each prototype's `features` comes off its **isomorphic** half and its hooks from the
|
|
20
|
+
* `hooks.server.ts` beside it — never through `definition.server.ts`, which spreads `{ ...base }`
|
|
21
|
+
* at module scope. See rule 3 in CONTRIBUTING.md; the failure has no symptom but a missing title.
|
|
22
|
+
*/
|
|
23
|
+
export declare const resolvePipelines: <T extends Dic>(config: T) => T;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { areaHooks } from '../prototype/area/hooks.server.js';
|
|
2
|
+
import { collectionHooks } from '../prototype/collection/hooks.server.js';
|
|
3
|
+
import { sortDocumentProps } from './hooks/sort-document-props.server.js';
|
|
4
|
+
/** Every timing a pipeline can carry. A prototype declares nothing for the ones it has no use
|
|
5
|
+
* for — an area has no create or delete. */
|
|
6
|
+
const TIMINGS = [
|
|
7
|
+
'beforeOperation',
|
|
8
|
+
'beforeRead',
|
|
9
|
+
'beforeCreate',
|
|
10
|
+
'afterCreate',
|
|
11
|
+
'beforeUpdate',
|
|
12
|
+
'afterUpdate',
|
|
13
|
+
'beforeDelete',
|
|
14
|
+
'afterDelete'
|
|
15
|
+
];
|
|
16
|
+
/**
|
|
17
|
+
* Composes one config's pipeline out of the two layers that contribute to it, and orders it.
|
|
18
|
+
*
|
|
19
|
+
* **The list order is the run order**, and that is the whole of it. Whether a hook applies to this
|
|
20
|
+
* config is the guard beside it in the list — `when(isAuth, …)` — so all this adds is the
|
|
21
|
+
* consumer's own hooks and the finaliser.
|
|
22
|
+
*/
|
|
23
|
+
const buildPipeline = (definition, config, consumer) => {
|
|
24
|
+
const pipeline = {};
|
|
25
|
+
for (const timing of TIMINGS) {
|
|
26
|
+
pipeline[timing] = [
|
|
27
|
+
// A hook belonging to a feature runs only where that feature is enabled; a hook belonging
|
|
28
|
+
// to none is the prototype's own and always runs.
|
|
29
|
+
// Every placed hook. Which of them *applies* to this config is the guard beside it in the
|
|
30
|
+
// list — `when(isAuth, …)` — asked when the hook runs rather than filtered here, so a
|
|
31
|
+
// config and its pipeline are the same list.
|
|
32
|
+
...(definition.hooks?.[timing] ?? []),
|
|
33
|
+
// A consumer's hooks are appended. They cannot interleave with the placed ones, which is
|
|
34
|
+
// the cost of a written order.
|
|
35
|
+
...(consumer?.[timing] ?? []),
|
|
36
|
+
/**
|
|
37
|
+
* And then the finaliser, after everything including the consumer's.
|
|
38
|
+
*
|
|
39
|
+
* `sortDocumentProps` is not a participant — nothing may precede it and nothing may follow,
|
|
40
|
+
* so it is appended rather than placed. In no list, because a list is for things whose
|
|
41
|
+
* position is a choice.
|
|
42
|
+
*/
|
|
43
|
+
...(timing === 'beforeRead' ? [sortDocumentProps] : [])
|
|
44
|
+
];
|
|
45
|
+
}
|
|
46
|
+
return pipeline;
|
|
47
|
+
};
|
|
48
|
+
/** One config, with its `$hooks` resolved: the authored hooks going in, the pipeline coming out. */
|
|
49
|
+
export const augmentHooks = (definition, config) => ({
|
|
50
|
+
...config,
|
|
51
|
+
$hooks: buildPipeline(definition, config, config.$hooks)
|
|
52
|
+
});
|
|
53
|
+
/**
|
|
54
|
+
* Resolves every prototype config's pipeline, once the whole config exists.
|
|
55
|
+
*
|
|
56
|
+
* The **last** step of the config chain, and the only place a pipeline is built. By the time it
|
|
57
|
+
* runs, the features have derived whatever they derive — upload's `<slug>Directories`, versions'
|
|
58
|
+
* version tables — so a derived config is resolved by the same line as an authored one, from the same
|
|
59
|
+
* three inputs: the prototype's own hooks, the hooks of the features this config enables, and the
|
|
60
|
+
* author's `$hooks`.
|
|
61
|
+
*
|
|
62
|
+
* That is why nothing carries a second copy of anything: a config derived before this runs never
|
|
63
|
+
* has a pipeline to inherit, and never needs one rebuilt.
|
|
64
|
+
*
|
|
65
|
+
* Each prototype's `features` comes off its **isomorphic** half and its hooks from the
|
|
66
|
+
* `hooks.server.ts` beside it — never through `definition.server.ts`, which spreads `{ ...base }`
|
|
67
|
+
* at module scope. See rule 3 in CONTRIBUTING.md; the failure has no symptom but a missing title.
|
|
68
|
+
*/
|
|
69
|
+
export const resolvePipelines = (config) => {
|
|
70
|
+
const resolve = (definition, configs) => (configs ?? []).map((c) => augmentHooks(definition, c));
|
|
71
|
+
return {
|
|
72
|
+
...config,
|
|
73
|
+
collections: resolve({ hooks: collectionHooks }, config.collections),
|
|
74
|
+
areas: resolve({ hooks: areaHooks }, config.areas)
|
|
75
|
+
};
|
|
76
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { TreeBlock } from '../../prototype/types.js';
|
|
2
|
+
import type { TreeBuilder } from '../../../fields/tree/index.js';
|
|
3
|
+
import type { ConfigMap } from './types.js';
|
|
4
|
+
export declare function buildTreeFieldsMap(treeConfig: TreeBuilder, treeItems: TreeBlock[], basePath: string): ConfigMap;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { FieldBuilder } from '../../fields/builders/field-builder.js';
|
|
2
|
+
import type { GenericDoc } from '../../prototype/types.js';
|
|
3
|
+
import type { Field } from '../../../fields/types.js';
|
|
4
|
+
import type { DeepPartial } from '../../../util/types.js';
|
|
5
|
+
import type { ConfigMap } from './types.js';
|
|
6
|
+
export declare const buildConfigMap: (data: DeepPartial<GenericDoc>, incomingFields: FieldBuilder<Field>[]) => ConfigMap;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { isFormField } from '../../fields/util.js';
|
|
2
|
+
import { BlocksBuilder } from '../../../fields/blocks/index.js';
|
|
3
|
+
import { GroupFieldBuilder } from '../../../fields/group/index.js';
|
|
4
|
+
import { TabsBuilder } from '../../../fields/tabs/index.js';
|
|
5
|
+
import { TreeBuilder } from '../../../fields/tree/index.js';
|
|
6
|
+
import { buildTreeFieldsMap } from './build-tree-map.js';
|
|
7
|
+
export const buildConfigMap = (data, incomingFields) => {
|
|
8
|
+
let map = {};
|
|
9
|
+
const traverseData = (data, fields, basePath) => {
|
|
10
|
+
if (!data)
|
|
11
|
+
return;
|
|
12
|
+
basePath = basePath === '' ? basePath : `${basePath}.`;
|
|
13
|
+
for (const field of fields) {
|
|
14
|
+
if (field instanceof TabsBuilder) {
|
|
15
|
+
for (const tab of field.get.tabs) {
|
|
16
|
+
if (tab.name in data) {
|
|
17
|
+
traverseData(data[tab.name], tab.get.fields, tab.name);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
if (!isFormField(field))
|
|
23
|
+
continue;
|
|
24
|
+
if (!(field.name in data))
|
|
25
|
+
continue;
|
|
26
|
+
const value = data[field.name];
|
|
27
|
+
const path = `${basePath}${field.name}`;
|
|
28
|
+
map[path] = field;
|
|
29
|
+
if (field instanceof BlocksBuilder && value && Array.isArray(value)) {
|
|
30
|
+
const blocks = value;
|
|
31
|
+
for (const [index, block] of blocks.entries()) {
|
|
32
|
+
try {
|
|
33
|
+
const blockConfig = field.get.blocks.find((b) => b.name === block.type);
|
|
34
|
+
if (blockConfig) {
|
|
35
|
+
traverseData(block, blockConfig.get.fields, `${path}.${index}`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
console.warn(`block at path ${path} and postition ${index} not found but there are some residual data owned by this block`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
else if (field instanceof TreeBuilder && value && Array.isArray(value)) {
|
|
44
|
+
const treeMap = buildTreeFieldsMap(field, value, path);
|
|
45
|
+
map = { ...map, ...treeMap };
|
|
46
|
+
}
|
|
47
|
+
else if (field instanceof GroupFieldBuilder) {
|
|
48
|
+
traverseData(value, field.get.fields, path);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
traverseData(data, incomingFields, '');
|
|
53
|
+
return map;
|
|
54
|
+
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { DocType } from '../prototype/types.js';
|
|
2
|
+
import type { Hook, HookBeforeOperation, Operation } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Types a hook to its timing. **The argument is the function.**
|
|
5
|
+
*
|
|
6
|
+
* ```ts
|
|
7
|
+
* export const removePrivateFields = Hooks.beforeRead(async function removePrivateFields(args) {
|
|
8
|
+
* …
|
|
9
|
+
* });
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* A **named function expression**, not an arrow: the chart and the order specs read `fn.name`, and
|
|
13
|
+
* an arrow passed as an argument has none.
|
|
14
|
+
*
|
|
15
|
+
* Each timing returns the function untouched — `run.server.ts` calls hooks directly, so a wrapper
|
|
16
|
+
* here would break every call site.
|
|
17
|
+
*
|
|
18
|
+
* Where a hook runs, and whether it applies, are both said where it is placed: a prototype's
|
|
19
|
+
* `hooks.server.ts`.
|
|
20
|
+
*/
|
|
21
|
+
export declare const Hooks: {
|
|
22
|
+
/** Creates a before operation hook */
|
|
23
|
+
beforeOperation: <S extends DocType = "raw">(run: HookBeforeOperation<S, Operation>) => HookBeforeOperation<S, Operation>;
|
|
24
|
+
/** Creates a before read hook */
|
|
25
|
+
beforeRead: <S extends DocType = "raw">(run: Hook<S, "read", "before">) => Hook<S, "read", "before">;
|
|
26
|
+
/** Creates a before create hook */
|
|
27
|
+
beforeCreate: <S extends DocType = "raw">(run: Hook<S, "create", "before">) => Hook<S, "create", "before">;
|
|
28
|
+
/** A hook that runs before both create and update — `augmentFieldsPassword` is the one. */
|
|
29
|
+
beforeUpsert: <S extends DocType = "raw">(run: Hook<S, "create" | "update", "before">) => Hook<S, "create" | "update", "before">;
|
|
30
|
+
/** Creates a before update hook */
|
|
31
|
+
beforeUpdate: <S extends DocType = "raw">(run: Hook<S, "update", "before">) => Hook<S, "update", "before">;
|
|
32
|
+
/** Creates a before delete hook */
|
|
33
|
+
beforeDelete: <S extends DocType = "raw">(run: Hook<S, "delete", "before">) => Hook<S, "delete", "before">;
|
|
34
|
+
/** Creates an after create hook */
|
|
35
|
+
afterCreate: <S extends DocType = "raw">(run: Hook<S, "create", "after">) => Hook<S, "create", "after">;
|
|
36
|
+
/** Creates a hook that runs after both create and update */
|
|
37
|
+
afterUpsert: <S extends DocType = "raw">(run: Hook<S, "create" | "update", "after">) => Hook<S, "create" | "update", "after">;
|
|
38
|
+
/** Creates an after update hook */
|
|
39
|
+
afterUpdate: <S extends DocType = "raw">(run: Hook<S, "update", "after">) => Hook<S, "update", "after">;
|
|
40
|
+
/** Creates an after delete hook */
|
|
41
|
+
afterDelete: <S extends DocType = "raw">(run: Hook<S, "delete", "after">) => Hook<S, "delete", "after">;
|
|
42
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types a hook to its timing. **The argument is the function.**
|
|
3
|
+
*
|
|
4
|
+
* ```ts
|
|
5
|
+
* export const removePrivateFields = Hooks.beforeRead(async function removePrivateFields(args) {
|
|
6
|
+
* …
|
|
7
|
+
* });
|
|
8
|
+
* ```
|
|
9
|
+
*
|
|
10
|
+
* A **named function expression**, not an arrow: the chart and the order specs read `fn.name`, and
|
|
11
|
+
* an arrow passed as an argument has none.
|
|
12
|
+
*
|
|
13
|
+
* Each timing returns the function untouched — `run.server.ts` calls hooks directly, so a wrapper
|
|
14
|
+
* here would break every call site.
|
|
15
|
+
*
|
|
16
|
+
* Where a hook runs, and whether it applies, are both said where it is placed: a prototype's
|
|
17
|
+
* `hooks.server.ts`.
|
|
18
|
+
*/
|
|
19
|
+
export const Hooks = {
|
|
20
|
+
/** Creates a before operation hook */
|
|
21
|
+
beforeOperation: (run) => run,
|
|
22
|
+
/** Creates a before read hook */
|
|
23
|
+
beforeRead: (run) => run,
|
|
24
|
+
/** Creates a before create hook */
|
|
25
|
+
beforeCreate: (run) => run,
|
|
26
|
+
/** A hook that runs before both create and update — `augmentFieldsPassword` is the one. */
|
|
27
|
+
beforeUpsert: (run) => run,
|
|
28
|
+
/** Creates a before update hook */
|
|
29
|
+
beforeUpdate: (run) => run,
|
|
30
|
+
/** Creates a before delete hook */
|
|
31
|
+
beforeDelete: (run) => run,
|
|
32
|
+
/** Creates an after create hook */
|
|
33
|
+
afterCreate: (run) => run,
|
|
34
|
+
/** Creates a hook that runs after both create and update */
|
|
35
|
+
afterUpsert: (run) => run,
|
|
36
|
+
/** Creates an after update hook */
|
|
37
|
+
afterUpdate: (run) => run,
|
|
38
|
+
/** Creates an after delete hook */
|
|
39
|
+
afterDelete: (run) => run
|
|
40
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { RequestEvent } from '@sveltejs/kit';
|
|
2
|
+
/**
|
|
3
|
+
* Turns an incoming request body into document data.
|
|
4
|
+
*
|
|
5
|
+
* Lives in operations/, not rest/: both the REST handlers and the panel's form actions call it,
|
|
6
|
+
* and what it produces is exactly what an operation consumes.
|
|
7
|
+
*
|
|
8
|
+
* Extracts data from a request based on its content type
|
|
9
|
+
* Handles both multipart/form-data, form-urlencoded and JSON requests
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* // In a route handler
|
|
13
|
+
* const [error, data] = await trycatch(() => extractData(event.request));
|
|
14
|
+
* if (error) {
|
|
15
|
+
* return handleError(error, { context: 'api' });
|
|
16
|
+
* }
|
|
17
|
+
*/
|
|
18
|
+
export declare const extractData: <T extends Record<string, any>>(request: RequestEvent["request"]) => Promise<T>;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { RimeFormError } from '../errors/index.js';
|
|
2
|
+
import { normalizeValue } from '../../util/coerce.js';
|
|
3
|
+
import { flatten, unflatten } from 'flat';
|
|
4
|
+
/**
|
|
5
|
+
* Converts FormData to a structured document object
|
|
6
|
+
* Normalizes form values and handles flattened key structures
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* const formData = new FormData();
|
|
10
|
+
* formData.append('user.name', 'John');
|
|
11
|
+
* formData.append('user.active', 'true');
|
|
12
|
+
* const data = formDataToData(formData);
|
|
13
|
+
* // Result: { user: { name: 'John', active: true } }
|
|
14
|
+
*/
|
|
15
|
+
const formDataToData = (formData) => {
|
|
16
|
+
const flatData = Object.fromEntries(formData.entries());
|
|
17
|
+
for (const key of Object.keys(flatData)) {
|
|
18
|
+
flatData[key] = normalizeValue(flatData[key]);
|
|
19
|
+
}
|
|
20
|
+
return unflatten(flatData);
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Converts a JSON object to a structured document object
|
|
24
|
+
* Normalizes values and ensures consistent data structure
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* const jsonData = { user: { name: 'John', active: 'true' } };
|
|
28
|
+
* const data = jsonDataToData(jsonData);
|
|
29
|
+
* // Result: { user: { name: 'John', active: true } }
|
|
30
|
+
*/
|
|
31
|
+
const jsonDataToData = (jsonData) => {
|
|
32
|
+
const flatData = flatten(jsonData);
|
|
33
|
+
for (const key of Object.keys(flatData)) {
|
|
34
|
+
flatData[key] = normalizeValue(flatData[key]);
|
|
35
|
+
}
|
|
36
|
+
return unflatten(flatData);
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Turns an incoming request body into document data.
|
|
40
|
+
*
|
|
41
|
+
* Lives in operations/, not rest/: both the REST handlers and the panel's form actions call it,
|
|
42
|
+
* and what it produces is exactly what an operation consumes.
|
|
43
|
+
*
|
|
44
|
+
* Extracts data from a request based on its content type
|
|
45
|
+
* Handles both multipart/form-data, form-urlencoded and JSON requests
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* // In a route handler
|
|
49
|
+
* const [error, data] = await trycatch(() => extractData(event.request));
|
|
50
|
+
* if (error) {
|
|
51
|
+
* return handleError(error, { context: 'api' });
|
|
52
|
+
* }
|
|
53
|
+
*/
|
|
54
|
+
export const extractData = async (request) => {
|
|
55
|
+
let data;
|
|
56
|
+
try {
|
|
57
|
+
const contentType = request.headers.get('content-type');
|
|
58
|
+
// One branch for both form encodings on purpose: request.formData() decodes
|
|
59
|
+
// multipart/form-data and application/x-www-form-urlencoded alike, per the Fetch spec, so
|
|
60
|
+
// the two only ever differ on the wire.
|
|
61
|
+
const isFormEncoded = contentType?.startsWith('multipart/form-data') ||
|
|
62
|
+
contentType?.startsWith('application/x-www-form-urlencoded');
|
|
63
|
+
if (isFormEncoded) {
|
|
64
|
+
/** Handle formData input */
|
|
65
|
+
const formData = await request.formData();
|
|
66
|
+
data = formDataToData(formData);
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
/** Handle JSON input */
|
|
70
|
+
const jsonData = await request.json();
|
|
71
|
+
data = jsonDataToData(jsonData);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
throw new RimeFormError({ _form: err.message });
|
|
76
|
+
}
|
|
77
|
+
return data;
|
|
78
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A hook's declared name, or `anonymous`.
|
|
3
|
+
*
|
|
4
|
+
* All that is left of `marksOf`. Names are set on the function at runtime by `Hooks.*` rather than
|
|
5
|
+
* carried in its type — a function's own `name` is non-writable, so `declare` uses
|
|
6
|
+
* `defineProperty`, which also makes the hook show up under it in stack traces.
|
|
7
|
+
*
|
|
8
|
+
* The fallback is not defensive padding: a hook can reach a pipeline without having gone through
|
|
9
|
+
* `Hooks.*` at all, and a consumer's bare function is exactly that.
|
|
10
|
+
*/
|
|
11
|
+
export declare const hookName: (hook: unknown) => string;
|