@jini-ai/cms 0.1.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/LICENSE +201 -0
- package/README.md +84 -0
- package/dist/content-types/agent-tools.d.ts +65 -0
- package/dist/content-types/agent-tools.d.ts.map +1 -0
- package/dist/content-types/agent-tools.js +172 -0
- package/dist/content-types/agent-tools.js.map +1 -0
- package/dist/content-types/cleanup.d.ts +118 -0
- package/dist/content-types/cleanup.d.ts.map +1 -0
- package/dist/content-types/cleanup.js +65 -0
- package/dist/content-types/cleanup.js.map +1 -0
- package/dist/content-types/errors.d.ts +90 -0
- package/dist/content-types/errors.d.ts.map +1 -0
- package/dist/content-types/errors.js +119 -0
- package/dist/content-types/errors.js.map +1 -0
- package/dist/content-types/field-defs.d.ts +25 -0
- package/dist/content-types/field-defs.d.ts.map +1 -0
- package/dist/content-types/field-defs.js +155 -0
- package/dist/content-types/field-defs.js.map +1 -0
- package/dist/content-types/index-provisioning.d.ts +94 -0
- package/dist/content-types/index-provisioning.d.ts.map +1 -0
- package/dist/content-types/index-provisioning.js +133 -0
- package/dist/content-types/index-provisioning.js.map +1 -0
- package/dist/content-types/index.d.ts +63 -0
- package/dist/content-types/index.d.ts.map +1 -0
- package/dist/content-types/index.js +36 -0
- package/dist/content-types/index.js.map +1 -0
- package/dist/content-types/lifecycle-dispatch.d.ts +38 -0
- package/dist/content-types/lifecycle-dispatch.d.ts.map +1 -0
- package/dist/content-types/lifecycle-dispatch.js +28 -0
- package/dist/content-types/lifecycle-dispatch.js.map +1 -0
- package/dist/content-types/lifecycle.d.ts +104 -0
- package/dist/content-types/lifecycle.d.ts.map +1 -0
- package/dist/content-types/lifecycle.js +143 -0
- package/dist/content-types/lifecycle.js.map +1 -0
- package/dist/content-types/list.d.ts +44 -0
- package/dist/content-types/list.d.ts.map +1 -0
- package/dist/content-types/list.js +13 -0
- package/dist/content-types/list.js.map +1 -0
- package/dist/content-types/repo.memory.d.ts +72 -0
- package/dist/content-types/repo.memory.d.ts.map +1 -0
- package/dist/content-types/repo.memory.js +71 -0
- package/dist/content-types/repo.memory.js.map +1 -0
- package/dist/content-types/tool-registrations.d.ts +65 -0
- package/dist/content-types/tool-registrations.d.ts.map +1 -0
- package/dist/content-types/tool-registrations.js +180 -0
- package/dist/content-types/tool-registrations.js.map +1 -0
- package/dist/content-types/types.d.ts +78 -0
- package/dist/content-types/types.d.ts.map +1 -0
- package/dist/content-types/types.js +32 -0
- package/dist/content-types/types.js.map +1 -0
- package/dist/content-types/write-service.d.ts +141 -0
- package/dist/content-types/write-service.d.ts.map +1 -0
- package/dist/content-types/write-service.js +180 -0
- package/dist/content-types/write-service.js.map +1 -0
- package/dist/core/commands/change-set.d.ts +98 -0
- package/dist/core/commands/change-set.d.ts.map +1 -0
- package/dist/core/commands/change-set.js +2 -0
- package/dist/core/commands/change-set.js.map +1 -0
- package/dist/core/commands/command.d.ts +168 -0
- package/dist/core/commands/command.d.ts.map +1 -0
- package/dist/core/commands/command.js +173 -0
- package/dist/core/commands/command.js.map +1 -0
- package/dist/core/index.d.ts +45 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +43 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/ports.d.ts +139 -0
- package/dist/core/ports.d.ts.map +1 -0
- package/dist/core/ports.js +2 -0
- package/dist/core/ports.js.map +1 -0
- package/dist/core/tools/registration-kit.d.ts +308 -0
- package/dist/core/tools/registration-kit.d.ts.map +1 -0
- package/dist/core/tools/registration-kit.js +381 -0
- package/dist/core/tools/registration-kit.js.map +1 -0
- package/dist/entries/agent-tools.d.ts +78 -0
- package/dist/entries/agent-tools.d.ts.map +1 -0
- package/dist/entries/agent-tools.js +158 -0
- package/dist/entries/agent-tools.js.map +1 -0
- package/dist/entries/errors.d.ts +43 -0
- package/dist/entries/errors.d.ts.map +1 -0
- package/dist/entries/errors.js +59 -0
- package/dist/entries/errors.js.map +1 -0
- package/dist/entries/field-validation.d.ts +70 -0
- package/dist/entries/field-validation.d.ts.map +1 -0
- package/dist/entries/field-validation.js +87 -0
- package/dist/entries/field-validation.js.map +1 -0
- package/dist/entries/index.d.ts +55 -0
- package/dist/entries/index.d.ts.map +1 -0
- package/dist/entries/index.js +38 -0
- package/dist/entries/index.js.map +1 -0
- package/dist/entries/lifecycle-dispatch.d.ts +15 -0
- package/dist/entries/lifecycle-dispatch.d.ts.map +1 -0
- package/dist/entries/lifecycle-dispatch.js +16 -0
- package/dist/entries/lifecycle-dispatch.js.map +1 -0
- package/dist/entries/list.d.ts +47 -0
- package/dist/entries/list.d.ts.map +1 -0
- package/dist/entries/list.js +12 -0
- package/dist/entries/list.js.map +1 -0
- package/dist/entries/repo.memory.d.ts +64 -0
- package/dist/entries/repo.memory.d.ts.map +1 -0
- package/dist/entries/repo.memory.js +73 -0
- package/dist/entries/repo.memory.js.map +1 -0
- package/dist/entries/tool-registrations.d.ts +52 -0
- package/dist/entries/tool-registrations.d.ts.map +1 -0
- package/dist/entries/tool-registrations.js +141 -0
- package/dist/entries/tool-registrations.js.map +1 -0
- package/dist/entries/types.d.ts +55 -0
- package/dist/entries/types.d.ts.map +1 -0
- package/dist/entries/types.js +2 -0
- package/dist/entries/types.js.map +1 -0
- package/dist/entries/write-service.d.ts +202 -0
- package/dist/entries/write-service.d.ts.map +1 -0
- package/dist/entries/write-service.js +204 -0
- package/dist/entries/write-service.js.map +1 -0
- package/dist/identity/admin-crud-service.d.ts +252 -0
- package/dist/identity/admin-crud-service.d.ts.map +1 -0
- package/dist/identity/admin-crud-service.js +437 -0
- package/dist/identity/admin-crud-service.js.map +1 -0
- package/dist/identity/agent-tool-input.d.ts +58 -0
- package/dist/identity/agent-tool-input.d.ts.map +1 -0
- package/dist/identity/agent-tool-input.js +126 -0
- package/dist/identity/agent-tool-input.js.map +1 -0
- package/dist/identity/agent-tools.d.ts +101 -0
- package/dist/identity/agent-tools.d.ts.map +1 -0
- package/dist/identity/agent-tools.js +290 -0
- package/dist/identity/agent-tools.js.map +1 -0
- package/dist/identity/auth-service.d.ts +87 -0
- package/dist/identity/auth-service.d.ts.map +1 -0
- package/dist/identity/auth-service.js +141 -0
- package/dist/identity/auth-service.js.map +1 -0
- package/dist/identity/authorize.d.ts +90 -0
- package/dist/identity/authorize.d.ts.map +1 -0
- package/dist/identity/authorize.js +94 -0
- package/dist/identity/authorize.js.map +1 -0
- package/dist/identity/grant-service.d.ts +198 -0
- package/dist/identity/grant-service.d.ts.map +1 -0
- package/dist/identity/grant-service.js +361 -0
- package/dist/identity/grant-service.js.map +1 -0
- package/dist/identity/hasher.d.ts +39 -0
- package/dist/identity/hasher.d.ts.map +1 -0
- package/dist/identity/hasher.js +39 -0
- package/dist/identity/hasher.js.map +1 -0
- package/dist/identity/index.d.ts +59 -0
- package/dist/identity/index.d.ts.map +1 -0
- package/dist/identity/index.js +51 -0
- package/dist/identity/index.js.map +1 -0
- package/dist/identity/password-policy.d.ts +58 -0
- package/dist/identity/password-policy.d.ts.map +1 -0
- package/dist/identity/password-policy.js +67 -0
- package/dist/identity/password-policy.js.map +1 -0
- package/dist/identity/permission-migrations.d.ts +86 -0
- package/dist/identity/permission-migrations.d.ts.map +1 -0
- package/dist/identity/permission-migrations.js +67 -0
- package/dist/identity/permission-migrations.js.map +1 -0
- package/dist/identity/permissions.d.ts +35 -0
- package/dist/identity/permissions.d.ts.map +1 -0
- package/dist/identity/permissions.js +603 -0
- package/dist/identity/permissions.js.map +1 -0
- package/dist/identity/ports.d.ts +201 -0
- package/dist/identity/ports.d.ts.map +1 -0
- package/dist/identity/ports.js +2 -0
- package/dist/identity/ports.js.map +1 -0
- package/dist/identity/repo.memory.d.ts +164 -0
- package/dist/identity/repo.memory.d.ts.map +1 -0
- package/dist/identity/repo.memory.js +224 -0
- package/dist/identity/repo.memory.js.map +1 -0
- package/dist/identity/seed.d.ts +42 -0
- package/dist/identity/seed.d.ts.map +1 -0
- package/dist/identity/seed.js +277 -0
- package/dist/identity/seed.js.map +1 -0
- package/dist/identity/tool-registrations.d.ts +50 -0
- package/dist/identity/tool-registrations.d.ts.map +1 -0
- package/dist/identity/tool-registrations.js +419 -0
- package/dist/identity/tool-registrations.js.map +1 -0
- package/dist/identity/types.d.ts +185 -0
- package/dist/identity/types.d.ts.map +1 -0
- package/dist/identity/types.js +64 -0
- package/dist/identity/types.js.map +1 -0
- package/dist/identity/username.d.ts +12 -0
- package/dist/identity/username.d.ts.map +1 -0
- package/dist/identity/username.js +14 -0
- package/dist/identity/username.js.map +1 -0
- package/dist/media/agent-tools.d.ts +66 -0
- package/dist/media/agent-tools.d.ts.map +1 -0
- package/dist/media/agent-tools.js +131 -0
- package/dist/media/agent-tools.js.map +1 -0
- package/dist/media/blob-gc-lock.d.ts +37 -0
- package/dist/media/blob-gc-lock.d.ts.map +1 -0
- package/dist/media/blob-gc-lock.js +55 -0
- package/dist/media/blob-gc-lock.js.map +1 -0
- package/dist/media/blob-gc.d.ts +246 -0
- package/dist/media/blob-gc.d.ts.map +1 -0
- package/dist/media/blob-gc.js +254 -0
- package/dist/media/blob-gc.js.map +1 -0
- package/dist/media/blob-key.d.ts +28 -0
- package/dist/media/blob-key.d.ts.map +1 -0
- package/dist/media/blob-key.js +11 -0
- package/dist/media/blob-key.js.map +1 -0
- package/dist/media/blob-store.fs.d.ts +23 -0
- package/dist/media/blob-store.fs.d.ts.map +1 -0
- package/dist/media/blob-store.fs.js +48 -0
- package/dist/media/blob-store.fs.js.map +1 -0
- package/dist/media/blob-store.memory.d.ts +22 -0
- package/dist/media/blob-store.memory.d.ts.map +1 -0
- package/dist/media/blob-store.memory.js +23 -0
- package/dist/media/blob-store.memory.js.map +1 -0
- package/dist/media/content-type-sniffer.d.ts +49 -0
- package/dist/media/content-type-sniffer.d.ts.map +1 -0
- package/dist/media/content-type-sniffer.js +141 -0
- package/dist/media/content-type-sniffer.js.map +1 -0
- package/dist/media/image-transformer.d.ts +45 -0
- package/dist/media/image-transformer.d.ts.map +1 -0
- package/dist/media/image-transformer.js +23 -0
- package/dist/media/image-transformer.js.map +1 -0
- package/dist/media/image-transformer.sharp.d.ts +26 -0
- package/dist/media/image-transformer.sharp.d.ts.map +1 -0
- package/dist/media/image-transformer.sharp.js +91 -0
- package/dist/media/image-transformer.sharp.js.map +1 -0
- package/dist/media/index.d.ts +43 -0
- package/dist/media/index.d.ts.map +1 -0
- package/dist/media/index.js +31 -0
- package/dist/media/index.js.map +1 -0
- package/dist/media/media-service.d.ts +244 -0
- package/dist/media/media-service.d.ts.map +1 -0
- package/dist/media/media-service.js +345 -0
- package/dist/media/media-service.js.map +1 -0
- package/dist/media/ports.d.ts +142 -0
- package/dist/media/ports.d.ts.map +1 -0
- package/dist/media/ports.js +2 -0
- package/dist/media/ports.js.map +1 -0
- package/dist/media/rendition-service.d.ts +66 -0
- package/dist/media/rendition-service.d.ts.map +1 -0
- package/dist/media/rendition-service.js +135 -0
- package/dist/media/rendition-service.js.map +1 -0
- package/dist/media/repo.memory.d.ts +107 -0
- package/dist/media/repo.memory.d.ts.map +1 -0
- package/dist/media/repo.memory.js +131 -0
- package/dist/media/repo.memory.js.map +1 -0
- package/dist/media/tool-registrations.d.ts +42 -0
- package/dist/media/tool-registrations.d.ts.map +1 -0
- package/dist/media/tool-registrations.js +121 -0
- package/dist/media/tool-registrations.js.map +1 -0
- package/dist/media/transform-lock.d.ts +36 -0
- package/dist/media/transform-lock.d.ts.map +1 -0
- package/dist/media/transform-lock.js +50 -0
- package/dist/media/transform-lock.js.map +1 -0
- package/dist/media/transform-registry.d.ts +103 -0
- package/dist/media/transform-registry.d.ts.map +1 -0
- package/dist/media/transform-registry.js +87 -0
- package/dist/media/transform-registry.js.map +1 -0
- package/dist/media/transform-types.d.ts +82 -0
- package/dist/media/transform-types.d.ts.map +1 -0
- package/dist/media/transform-types.js +47 -0
- package/dist/media/transform-types.js.map +1 -0
- package/dist/media/types.d.ts +150 -0
- package/dist/media/types.d.ts.map +1 -0
- package/dist/media/types.js +26 -0
- package/dist/media/types.js.map +1 -0
- package/dist/navigation/agent-tools.d.ts +90 -0
- package/dist/navigation/agent-tools.d.ts.map +1 -0
- package/dist/navigation/agent-tools.js +225 -0
- package/dist/navigation/agent-tools.js.map +1 -0
- package/dist/navigation/contracts.d.ts +98 -0
- package/dist/navigation/contracts.d.ts.map +1 -0
- package/dist/navigation/contracts.js +70 -0
- package/dist/navigation/contracts.js.map +1 -0
- package/dist/navigation/index.d.ts +39 -0
- package/dist/navigation/index.d.ts.map +1 -0
- package/dist/navigation/index.js +30 -0
- package/dist/navigation/index.js.map +1 -0
- package/dist/navigation/menu-service.d.ts +256 -0
- package/dist/navigation/menu-service.d.ts.map +1 -0
- package/dist/navigation/menu-service.js +382 -0
- package/dist/navigation/menu-service.js.map +1 -0
- package/dist/navigation/ports.d.ts +147 -0
- package/dist/navigation/ports.d.ts.map +1 -0
- package/dist/navigation/ports.js +2 -0
- package/dist/navigation/ports.js.map +1 -0
- package/dist/navigation/read-model.d.ts +11 -0
- package/dist/navigation/read-model.d.ts.map +1 -0
- package/dist/navigation/read-model.js +27 -0
- package/dist/navigation/read-model.js.map +1 -0
- package/dist/navigation/reconcile.d.ts +57 -0
- package/dist/navigation/reconcile.d.ts.map +1 -0
- package/dist/navigation/reconcile.js +33 -0
- package/dist/navigation/reconcile.js.map +1 -0
- package/dist/navigation/repo.memory.d.ts +137 -0
- package/dist/navigation/repo.memory.d.ts.map +1 -0
- package/dist/navigation/repo.memory.js +95 -0
- package/dist/navigation/repo.memory.js.map +1 -0
- package/dist/navigation/resolver.d.ts +110 -0
- package/dist/navigation/resolver.d.ts.map +1 -0
- package/dist/navigation/resolver.js +131 -0
- package/dist/navigation/resolver.js.map +1 -0
- package/dist/navigation/tool-registrations.d.ts +43 -0
- package/dist/navigation/tool-registrations.d.ts.map +1 -0
- package/dist/navigation/tool-registrations.js +126 -0
- package/dist/navigation/tool-registrations.js.map +1 -0
- package/dist/navigation/types.d.ts +207 -0
- package/dist/navigation/types.d.ts.map +1 -0
- package/dist/navigation/types.js +14 -0
- package/dist/navigation/types.js.map +1 -0
- package/dist/presentation/index.d.ts +15 -0
- package/dist/presentation/index.d.ts.map +1 -0
- package/dist/presentation/index.js +15 -0
- package/dist/presentation/index.js.map +1 -0
- package/dist/presentation/presentation.d.ts +72 -0
- package/dist/presentation/presentation.d.ts.map +1 -0
- package/dist/presentation/presentation.js +51 -0
- package/dist/presentation/presentation.js.map +1 -0
- package/dist/presentation/repo.memory.d.ts +9 -0
- package/dist/presentation/repo.memory.d.ts.map +1 -0
- package/dist/presentation/repo.memory.js +21 -0
- package/dist/presentation/repo.memory.js.map +1 -0
- package/dist/server/index.d.ts +28 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +28 -0
- package/dist/server/index.js.map +1 -0
- package/dist/settings/agent-tools.d.ts +83 -0
- package/dist/settings/agent-tools.d.ts.map +1 -0
- package/dist/settings/agent-tools.js +200 -0
- package/dist/settings/agent-tools.js.map +1 -0
- package/dist/settings/agent-writable-preferences.d.ts +67 -0
- package/dist/settings/agent-writable-preferences.d.ts.map +1 -0
- package/dist/settings/agent-writable-preferences.js +144 -0
- package/dist/settings/agent-writable-preferences.js.map +1 -0
- package/dist/settings/change-feed.d.ts +74 -0
- package/dist/settings/change-feed.d.ts.map +1 -0
- package/dist/settings/change-feed.js +61 -0
- package/dist/settings/change-feed.js.map +1 -0
- package/dist/settings/definitions-dispatch.d.ts +51 -0
- package/dist/settings/definitions-dispatch.d.ts.map +1 -0
- package/dist/settings/definitions-dispatch.js +86 -0
- package/dist/settings/definitions-dispatch.js.map +1 -0
- package/dist/settings/dictionaries/index.d.ts +45 -0
- package/dist/settings/dictionaries/index.d.ts.map +1 -0
- package/dist/settings/dictionaries/index.js +69 -0
- package/dist/settings/dictionaries/index.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ar.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.ar.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ar.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.ar.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.bn.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.bn.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.bn.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.bn.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.de.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.de.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.de.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.de.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.es.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.es.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.es.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.es.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.fa.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.fa.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.fa.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.fa.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.fr.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.fr.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.fr.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.fr.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.hi.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.hi.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.hi.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.hi.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.hu.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.hu.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.hu.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.hu.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.id.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.id.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.id.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.id.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.it.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.it.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.it.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.it.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ja.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.ja.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ja.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.ja.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ko.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.ko.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ko.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.ko.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.pl.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.pl.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.pl.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.pl.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.pt-BR.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.pt-BR.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.pt-BR.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.pt-BR.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ru.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.ru.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ru.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.ru.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.th.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.th.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.th.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.th.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.tr.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.tr.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.tr.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.tr.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.uk.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.uk.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.uk.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.uk.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ur.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.ur.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.ur.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.ur.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.zh-CN.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.zh-CN.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.zh-CN.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.zh-CN.js.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.zh-TW.d.ts +3 -0
- package/dist/settings/dictionaries/settings-dialog.zh-TW.d.ts.map +1 -0
- package/dist/settings/dictionaries/settings-dialog.zh-TW.js +28 -0
- package/dist/settings/dictionaries/settings-dialog.zh-TW.js.map +1 -0
- package/dist/settings/ensure-definitions.d.ts +88 -0
- package/dist/settings/ensure-definitions.d.ts.map +1 -0
- package/dist/settings/ensure-definitions.js +91 -0
- package/dist/settings/ensure-definitions.js.map +1 -0
- package/dist/settings/errors.d.ts +36 -0
- package/dist/settings/errors.d.ts.map +1 -0
- package/dist/settings/errors.js +40 -0
- package/dist/settings/errors.js.map +1 -0
- package/dist/settings/index.d.ts +37 -0
- package/dist/settings/index.d.ts.map +1 -0
- package/dist/settings/index.js +36 -0
- package/dist/settings/index.js.map +1 -0
- package/dist/settings/ports.d.ts +117 -0
- package/dist/settings/ports.d.ts.map +1 -0
- package/dist/settings/ports.js +2 -0
- package/dist/settings/ports.js.map +1 -0
- package/dist/settings/purge-service.d.ts +53 -0
- package/dist/settings/purge-service.d.ts.map +1 -0
- package/dist/settings/purge-service.js +105 -0
- package/dist/settings/purge-service.js.map +1 -0
- package/dist/settings/repo.memory.d.ts +119 -0
- package/dist/settings/repo.memory.d.ts.map +1 -0
- package/dist/settings/repo.memory.js +199 -0
- package/dist/settings/repo.memory.js.map +1 -0
- package/dist/settings/settings.d.ts +124 -0
- package/dist/settings/settings.d.ts.map +1 -0
- package/dist/settings/settings.js +238 -0
- package/dist/settings/settings.js.map +1 -0
- package/dist/settings/tool-registrations.d.ts +56 -0
- package/dist/settings/tool-registrations.d.ts.map +1 -0
- package/dist/settings/tool-registrations.js +240 -0
- package/dist/settings/tool-registrations.js.map +1 -0
- package/dist/settings/types.d.ts +125 -0
- package/dist/settings/types.d.ts.map +1 -0
- package/dist/settings/types.js +3 -0
- package/dist/settings/types.js.map +1 -0
- package/dist/settings/ui-tab-definitions.d.ts +41 -0
- package/dist/settings/ui-tab-definitions.d.ts.map +1 -0
- package/dist/settings/ui-tab-definitions.js +148 -0
- package/dist/settings/ui-tab-definitions.js.map +1 -0
- package/dist/settings/write-service.d.ts +314 -0
- package/dist/settings/write-service.d.ts.map +1 -0
- package/dist/settings/write-service.js +677 -0
- package/dist/settings/write-service.js.map +1 -0
- package/dist/taxonomy/agent-tools.d.ts +76 -0
- package/dist/taxonomy/agent-tools.d.ts.map +1 -0
- package/dist/taxonomy/agent-tools.js +178 -0
- package/dist/taxonomy/agent-tools.js.map +1 -0
- package/dist/taxonomy/content-lookup.d.ts +45 -0
- package/dist/taxonomy/content-lookup.d.ts.map +1 -0
- package/dist/taxonomy/content-lookup.js +9 -0
- package/dist/taxonomy/content-lookup.js.map +1 -0
- package/dist/taxonomy/index.d.ts +38 -0
- package/dist/taxonomy/index.d.ts.map +1 -0
- package/dist/taxonomy/index.js +38 -0
- package/dist/taxonomy/index.js.map +1 -0
- package/dist/taxonomy/list.d.ts +39 -0
- package/dist/taxonomy/list.d.ts.map +1 -0
- package/dist/taxonomy/list.js +19 -0
- package/dist/taxonomy/list.js.map +1 -0
- package/dist/taxonomy/merge-term.d.ts +94 -0
- package/dist/taxonomy/merge-term.d.ts.map +1 -0
- package/dist/taxonomy/merge-term.js +65 -0
- package/dist/taxonomy/merge-term.js.map +1 -0
- package/dist/taxonomy/repo.memory.d.ts +160 -0
- package/dist/taxonomy/repo.memory.d.ts.map +1 -0
- package/dist/taxonomy/repo.memory.js +171 -0
- package/dist/taxonomy/repo.memory.js.map +1 -0
- package/dist/taxonomy/validation-chain.d.ts +114 -0
- package/dist/taxonomy/validation-chain.d.ts.map +1 -0
- package/dist/taxonomy/validation-chain.js +152 -0
- package/dist/taxonomy/validation-chain.js.map +1 -0
- package/dist/taxonomy/write-service.d.ts +387 -0
- package/dist/taxonomy/write-service.d.ts.map +1 -0
- package/dist/taxonomy/write-service.js +350 -0
- package/dist/taxonomy/write-service.js.map +1 -0
- package/dist/workspace/agent-tools.d.ts +67 -0
- package/dist/workspace/agent-tools.d.ts.map +1 -0
- package/dist/workspace/agent-tools.js +103 -0
- package/dist/workspace/agent-tools.js.map +1 -0
- package/dist/workspace/create.d.ts +116 -0
- package/dist/workspace/create.d.ts.map +1 -0
- package/dist/workspace/create.js +69 -0
- package/dist/workspace/create.js.map +1 -0
- package/dist/workspace/delete.d.ts +50 -0
- package/dist/workspace/delete.d.ts.map +1 -0
- package/dist/workspace/delete.js +24 -0
- package/dist/workspace/delete.js.map +1 -0
- package/dist/workspace/index.d.ts +27 -0
- package/dist/workspace/index.d.ts.map +1 -0
- package/dist/workspace/index.js +27 -0
- package/dist/workspace/index.js.map +1 -0
- package/dist/workspace/repo.memory.d.ts +34 -0
- package/dist/workspace/repo.memory.d.ts.map +1 -0
- package/dist/workspace/repo.memory.js +50 -0
- package/dist/workspace/repo.memory.js.map +1 -0
- package/dist/workspace/tool-registrations.d.ts +38 -0
- package/dist/workspace/tool-registrations.d.ts.map +1 -0
- package/dist/workspace/tool-registrations.js +71 -0
- package/dist/workspace/tool-registrations.js.map +1 -0
- package/dist/workspace/update.d.ts +52 -0
- package/dist/workspace/update.d.ts.map +1 -0
- package/dist/workspace/update.js +41 -0
- package/dist/workspace/update.js.map +1 -0
- package/package.json +149 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-service.js","sourceRoot":"","sources":["../../src/settings/write-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file The Taxonomy agent-tool catalog — this domain's instance of the per-domain
|
|
3
|
+
* `agent-tools.ts` convention `features/content-types/agent-tools.ts`,
|
|
4
|
+
* `features/database/agent-tools.ts`, and every other domain catalog already use.
|
|
5
|
+
*
|
|
6
|
+
* Purpose:
|
|
7
|
+
* A static, in-process catalog describing every agent-callable tool this domain exposes. Every
|
|
8
|
+
* WRITE entry maps 1:1 onto a real exported function of `features/taxonomy/write-service.ts`
|
|
9
|
+
* (`createTaxonomy`, `createTerm`, `renameTerm`, `assignTerms`); the one read maps onto
|
|
10
|
+
* `features/taxonomy/list.ts`'s `listTaxonomiesWithTerms`.
|
|
11
|
+
*
|
|
12
|
+
* `mergeTerm` (`merge-term.ts`) — read carefully, treated with the same scrutiny Database's
|
|
13
|
+
* `migrate-forward` and Recovery's `restore` ceremonies got:
|
|
14
|
+
* Merge is destructive and can silently lose pre-merge `entry_terms` assignment history for content
|
|
15
|
+
* already assigned to both terms (`merge-term.ts`'s own file header: "Destructive term
|
|
16
|
+
* merge" failure mode). That is why it alone, of every taxonomy mutation, gets a plan/confirm/
|
|
17
|
+
* execute ceremony through `core/gated-mutations` rather than an ordinary authorize-then-write.
|
|
18
|
+
* Reading `core/gated-mutations/gateway.ts` directly settles what is and is not safe to hand an
|
|
19
|
+
* agent:
|
|
20
|
+
* - `plan()` "Never invokes `hooks.executeMutation()` — a plan is read-only by construction
|
|
21
|
+
* (AC-10)" (`gateway.ts`'s own doc comment). It authorizes `admin.taxonomy.manage`, recomputes
|
|
22
|
+
* the live overlap-loss disclosure, and returns a plan. Persists nothing. Safe to wire as a
|
|
23
|
+
* READ, mirroring `features/database/agent-tools.ts`'s identical `database_plan_migrate_forward`
|
|
24
|
+
* precedent (same file's own comment: "the step that actually redeems a plan into a mutation
|
|
25
|
+
* (confirm()) can never be reached by an agent principal at all").
|
|
26
|
+
* - `confirm()` structurally refuses an agent: `gateway.ts`'s own body — "if (principalKind ===
|
|
27
|
+
* 'agent') throw new ForbiddenError('agent principals may not confirm a gated mutation', ...)"
|
|
28
|
+
* — before any permission check even runs. No `taxonomy_confirm_merge_term`-equivalent tool
|
|
29
|
+
* exists in this catalog, and no description below may even imply that step (mirrors
|
|
30
|
+
* `features/recovery/agent-tools.ts`'s own discipline for `backup_execute_restore`: "the
|
|
31
|
+
* human confirmation step is exactly the one act the gated-mutations gateway reserves for
|
|
32
|
+
* kind='user'/api_key principals").
|
|
33
|
+
* - `execute()` needs a confirmation token a human already minted through the admin UI's own
|
|
34
|
+
* ceremony (`server/routes/admin/taxonomy/merge-term.ts`'s `/merge/confirm` route) — the same
|
|
35
|
+
* `confirmer-must-equal-own-delegatedBy` actor-class rule `database_execute_migrate_forward`/
|
|
36
|
+
* `backup_execute_restore` carry, which `assistant/tool-registration-kit.ts`'s
|
|
37
|
+
* `ACTOR_CLASS_RULES_REQUIRING_CONFIRMATION_TRANSPORT` refuses to build regardless of this
|
|
38
|
+
* catalog's own choice, because the host's `ToolExecutor` has no confirmation transport wired.
|
|
39
|
+
* `taxonomy_execute_merge_term` is declared here (so the exclusion is a structural build-time
|
|
40
|
+
* refusal, not just an absent handler) but is NEVER wired by `tool-registrations.ts`.
|
|
41
|
+
*
|
|
42
|
+
* Naming: `taxonomy_*`, matching this package's own name — distinct from `features/content-types`'
|
|
43
|
+
* `collections_*` prefix (a different pairing) and from `features/entries`' own
|
|
44
|
+
* `collections_entry_*` prefix.
|
|
45
|
+
*
|
|
46
|
+
* How it relates to the project:
|
|
47
|
+
* `features/taxonomy/tool-registrations.ts` maps these entries into `@jini-ai/core`
|
|
48
|
+
* `ToolRegistration`s.
|
|
49
|
+
*
|
|
50
|
+
* Architectural role:
|
|
51
|
+
* `features/taxonomy` domain declaration. Imports only `TAXONOMY_ALLOWED_CONTENT_TYPES` from its
|
|
52
|
+
* own `write-service.ts`, so the published `contentType` enum cannot drift from what the domain
|
|
53
|
+
* actually accepts.
|
|
54
|
+
*/
|
|
55
|
+
export type AgentToolSideEffect = "none" | "mutates-durable-state" | "mints-token";
|
|
56
|
+
export type AgentToolActorClassRule = "confirmer-must-equal-own-delegatedBy" | "user-only" | "none";
|
|
57
|
+
export interface AgentToolDefinition {
|
|
58
|
+
name: string;
|
|
59
|
+
description: string;
|
|
60
|
+
sideEffects: AgentToolSideEffect;
|
|
61
|
+
authorization: {
|
|
62
|
+
permission: string;
|
|
63
|
+
};
|
|
64
|
+
actorClassRule?: AgentToolActorClassRule;
|
|
65
|
+
/**
|
|
66
|
+
* JSON Schema for this tool's `input`, published to the model via `ToolDescriptor.inputSchema`
|
|
67
|
+
* (`assistant/tool-registration-kit.ts`'s `buildDomainRegistrations`, which refuses to wire any
|
|
68
|
+
* tool lacking one). Optional — `taxonomy_execute_merge_term` is never wired, so it carries none.
|
|
69
|
+
*/
|
|
70
|
+
inputSchema?: Readonly<Record<string, unknown>>;
|
|
71
|
+
}
|
|
72
|
+
/** The Taxonomy domain's fixed agent-tool catalog: 6 wired (1 read, 4 ordinary writes, 1 gated-plan
|
|
73
|
+
* read) + 1 declared-but-never-wired destructive tool — see this file's header for the full
|
|
74
|
+
* `mergeTerm` safety analysis. */
|
|
75
|
+
export declare const taxonomyAgentToolCatalog: AgentToolDefinition[];
|
|
76
|
+
//# sourceMappingURL=agent-tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-tools.d.ts","sourceRoot":"","sources":["../../src/taxonomy/agent-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAIH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,uBAAuB,GAAG,aAAa,CAAC;AAEnF,MAAM,MAAM,uBAAuB,GAAG,sCAAsC,GAAG,WAAW,GAAG,MAAM,CAAC;AAEpG,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,mBAAmB,CAAC;IACjC,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC;;;;OAIG;IACH,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACjD;AAoBD;;kCAEkC;AAClC,eAAO,MAAM,wBAAwB,EAAE,mBAAmB,EA2GzD,CAAC"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file The Taxonomy agent-tool catalog — this domain's instance of the per-domain
|
|
3
|
+
* `agent-tools.ts` convention `features/content-types/agent-tools.ts`,
|
|
4
|
+
* `features/database/agent-tools.ts`, and every other domain catalog already use.
|
|
5
|
+
*
|
|
6
|
+
* Purpose:
|
|
7
|
+
* A static, in-process catalog describing every agent-callable tool this domain exposes. Every
|
|
8
|
+
* WRITE entry maps 1:1 onto a real exported function of `features/taxonomy/write-service.ts`
|
|
9
|
+
* (`createTaxonomy`, `createTerm`, `renameTerm`, `assignTerms`); the one read maps onto
|
|
10
|
+
* `features/taxonomy/list.ts`'s `listTaxonomiesWithTerms`.
|
|
11
|
+
*
|
|
12
|
+
* `mergeTerm` (`merge-term.ts`) — read carefully, treated with the same scrutiny Database's
|
|
13
|
+
* `migrate-forward` and Recovery's `restore` ceremonies got:
|
|
14
|
+
* Merge is destructive and can silently lose pre-merge `entry_terms` assignment history for content
|
|
15
|
+
* already assigned to both terms (`merge-term.ts`'s own file header: "Destructive term
|
|
16
|
+
* merge" failure mode). That is why it alone, of every taxonomy mutation, gets a plan/confirm/
|
|
17
|
+
* execute ceremony through `core/gated-mutations` rather than an ordinary authorize-then-write.
|
|
18
|
+
* Reading `core/gated-mutations/gateway.ts` directly settles what is and is not safe to hand an
|
|
19
|
+
* agent:
|
|
20
|
+
* - `plan()` "Never invokes `hooks.executeMutation()` — a plan is read-only by construction
|
|
21
|
+
* (AC-10)" (`gateway.ts`'s own doc comment). It authorizes `admin.taxonomy.manage`, recomputes
|
|
22
|
+
* the live overlap-loss disclosure, and returns a plan. Persists nothing. Safe to wire as a
|
|
23
|
+
* READ, mirroring `features/database/agent-tools.ts`'s identical `database_plan_migrate_forward`
|
|
24
|
+
* precedent (same file's own comment: "the step that actually redeems a plan into a mutation
|
|
25
|
+
* (confirm()) can never be reached by an agent principal at all").
|
|
26
|
+
* - `confirm()` structurally refuses an agent: `gateway.ts`'s own body — "if (principalKind ===
|
|
27
|
+
* 'agent') throw new ForbiddenError('agent principals may not confirm a gated mutation', ...)"
|
|
28
|
+
* — before any permission check even runs. No `taxonomy_confirm_merge_term`-equivalent tool
|
|
29
|
+
* exists in this catalog, and no description below may even imply that step (mirrors
|
|
30
|
+
* `features/recovery/agent-tools.ts`'s own discipline for `backup_execute_restore`: "the
|
|
31
|
+
* human confirmation step is exactly the one act the gated-mutations gateway reserves for
|
|
32
|
+
* kind='user'/api_key principals").
|
|
33
|
+
* - `execute()` needs a confirmation token a human already minted through the admin UI's own
|
|
34
|
+
* ceremony (`server/routes/admin/taxonomy/merge-term.ts`'s `/merge/confirm` route) — the same
|
|
35
|
+
* `confirmer-must-equal-own-delegatedBy` actor-class rule `database_execute_migrate_forward`/
|
|
36
|
+
* `backup_execute_restore` carry, which `assistant/tool-registration-kit.ts`'s
|
|
37
|
+
* `ACTOR_CLASS_RULES_REQUIRING_CONFIRMATION_TRANSPORT` refuses to build regardless of this
|
|
38
|
+
* catalog's own choice, because the host's `ToolExecutor` has no confirmation transport wired.
|
|
39
|
+
* `taxonomy_execute_merge_term` is declared here (so the exclusion is a structural build-time
|
|
40
|
+
* refusal, not just an absent handler) but is NEVER wired by `tool-registrations.ts`.
|
|
41
|
+
*
|
|
42
|
+
* Naming: `taxonomy_*`, matching this package's own name — distinct from `features/content-types`'
|
|
43
|
+
* `collections_*` prefix (a different pairing) and from `features/entries`' own
|
|
44
|
+
* `collections_entry_*` prefix.
|
|
45
|
+
*
|
|
46
|
+
* How it relates to the project:
|
|
47
|
+
* `features/taxonomy/tool-registrations.ts` maps these entries into `@jini-ai/core`
|
|
48
|
+
* `ToolRegistration`s.
|
|
49
|
+
*
|
|
50
|
+
* Architectural role:
|
|
51
|
+
* `features/taxonomy` domain declaration. Imports only `TAXONOMY_ALLOWED_CONTENT_TYPES` from its
|
|
52
|
+
* own `write-service.ts`, so the published `contentType` enum cannot drift from what the domain
|
|
53
|
+
* actually accepts.
|
|
54
|
+
*/
|
|
55
|
+
import { TAXONOMY_ALLOWED_CONTENT_TYPES } from "./write-service.js";
|
|
56
|
+
const TAXONOMY_ID_SCHEMA = {
|
|
57
|
+
type: "string",
|
|
58
|
+
minLength: 1,
|
|
59
|
+
description: "A taxonomy id, as returned by taxonomy_create_taxonomy or taxonomy_list.",
|
|
60
|
+
};
|
|
61
|
+
const TERM_ID_SCHEMA = {
|
|
62
|
+
type: "string",
|
|
63
|
+
minLength: 1,
|
|
64
|
+
description: "A term id, as returned by taxonomy_create_term or taxonomy_list.",
|
|
65
|
+
};
|
|
66
|
+
const CONTENT_TYPE_SCHEMA = {
|
|
67
|
+
type: "string",
|
|
68
|
+
enum: [...TAXONOMY_ALLOWED_CONTENT_TYPES],
|
|
69
|
+
description: "The content kind the target row actually is. Only 'post' and 'page' are eligible for term assignment (a permanent allow-list) — any other value is rejected before anything is written.",
|
|
70
|
+
};
|
|
71
|
+
/** The Taxonomy domain's fixed agent-tool catalog: 6 wired (1 read, 4 ordinary writes, 1 gated-plan
|
|
72
|
+
* read) + 1 declared-but-never-wired destructive tool — see this file's header for the full
|
|
73
|
+
* `mergeTerm` safety analysis. */
|
|
74
|
+
export const taxonomyAgentToolCatalog = [
|
|
75
|
+
{
|
|
76
|
+
name: "taxonomy_list",
|
|
77
|
+
description: "Lists every taxonomy in the workspace together with its terms — the Categories & Tags screen's own two-pane source.",
|
|
78
|
+
sideEffects: "none",
|
|
79
|
+
authorization: { permission: "admin.taxonomy.manage" },
|
|
80
|
+
inputSchema: { type: "object", additionalProperties: false, required: [], properties: {} },
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
name: "taxonomy_create_taxonomy",
|
|
84
|
+
description: "Creates a new taxonomy (a 'category'-shaped hierarchical grouping, or a 'tag'-shaped flat one — same shared table, distinguished only " +
|
|
85
|
+
"by the hierarchical flag).",
|
|
86
|
+
sideEffects: "mutates-durable-state",
|
|
87
|
+
authorization: { permission: "admin.taxonomy.manage" },
|
|
88
|
+
inputSchema: {
|
|
89
|
+
type: "object",
|
|
90
|
+
additionalProperties: false,
|
|
91
|
+
required: ["name", "hierarchical"],
|
|
92
|
+
properties: {
|
|
93
|
+
name: { type: "string", minLength: 1, description: "Human-readable taxonomy name, e.g. 'Category' or 'Tag'." },
|
|
94
|
+
hierarchical: { type: "boolean", description: "true = category-shaped (terms may nest under a parent); false = tag-shaped (flat, no parentId allowed)." },
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: "taxonomy_create_term",
|
|
100
|
+
description: "Creates a new term under an existing taxonomy. If parentId is supplied, the taxonomy must be hierarchical, the parent must exist and " +
|
|
101
|
+
"belong to the SAME taxonomy, and assigning it must not create a cycle — a freshly-created term has no descendants yet, so a cycle can " +
|
|
102
|
+
"never actually occur here, but the same validation chain runs regardless.",
|
|
103
|
+
sideEffects: "mutates-durable-state",
|
|
104
|
+
authorization: { permission: "admin.taxonomy.manage" },
|
|
105
|
+
inputSchema: {
|
|
106
|
+
type: "object",
|
|
107
|
+
additionalProperties: false,
|
|
108
|
+
required: ["taxonomyId", "name"],
|
|
109
|
+
properties: {
|
|
110
|
+
taxonomyId: TAXONOMY_ID_SCHEMA,
|
|
111
|
+
name: { type: "string", minLength: 1, description: "The term's name." },
|
|
112
|
+
parentId: { type: "string", description: "An existing term id in the SAME taxonomy to nest this term under. Omit for a top-level term (required to be omitted for a non-hierarchical taxonomy)." },
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
name: "taxonomy_rename_term",
|
|
118
|
+
description: "Renames an existing term in place (its id, taxonomy, parent, and status are unchanged).",
|
|
119
|
+
sideEffects: "mutates-durable-state",
|
|
120
|
+
authorization: { permission: "admin.taxonomy.manage" },
|
|
121
|
+
inputSchema: {
|
|
122
|
+
type: "object",
|
|
123
|
+
additionalProperties: false,
|
|
124
|
+
required: ["termId", "newName"],
|
|
125
|
+
properties: { termId: TERM_ID_SCHEMA, newName: { type: "string", minLength: 1, description: "The term's new name." } },
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
name: "taxonomy_assign_terms",
|
|
130
|
+
description: "Assigns one or more existing terms to a piece of content (the same <TermPicker> operation the Collections editor and the Categories & " +
|
|
131
|
+
"Tags screen both use). Additive only — this call ADDS assignments; it never removes a term not present in termIds, and calling it twice " +
|
|
132
|
+
"with the same term is a no-op (idempotent). Every termId is validated (must exist; its taxonomy must be applicable to contentType) " +
|
|
133
|
+
"before ANY row is written, so a bad id in the list rejects the whole call rather than partially assigning.",
|
|
134
|
+
sideEffects: "mutates-durable-state",
|
|
135
|
+
authorization: { permission: "admin.taxonomy.manage" },
|
|
136
|
+
inputSchema: {
|
|
137
|
+
type: "object",
|
|
138
|
+
additionalProperties: false,
|
|
139
|
+
required: ["contentType", "contentId", "termIds"],
|
|
140
|
+
properties: {
|
|
141
|
+
contentType: CONTENT_TYPE_SCHEMA,
|
|
142
|
+
contentId: { type: "string", minLength: 1, description: "The id of the post/page row to assign terms to." },
|
|
143
|
+
termIds: { type: "array", items: { type: "string" }, description: "Term ids to assign. May be empty (a no-op)." },
|
|
144
|
+
},
|
|
145
|
+
},
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
name: "taxonomy_plan_merge_term",
|
|
149
|
+
description: "Previews merging one term into another: recomputes and returns the current overlap-loss disclosure (how many pieces of content are " +
|
|
150
|
+
"already assigned to BOTH terms, whose duplicate assignment would be silently lost by the merge's own dedup step) plus a planId/planHash " +
|
|
151
|
+
"a human can use in the admin UI's own merge confirmation ceremony. Read-only — performs no merge. Rejects immediately if fromTermId " +
|
|
152
|
+
"equals intoTermId, before computing anything. This tool can only PLAN a merge; actually executing one requires a human to confirm " +
|
|
153
|
+
"through the admin UI — no tool in this catalog can do that step (by design: merges are destructive and irreversible for the merged-away " +
|
|
154
|
+
"term's own identity).",
|
|
155
|
+
sideEffects: "none",
|
|
156
|
+
authorization: { permission: "admin.taxonomy.manage" },
|
|
157
|
+
inputSchema: {
|
|
158
|
+
type: "object",
|
|
159
|
+
additionalProperties: false,
|
|
160
|
+
required: ["fromTermId", "intoTermId"],
|
|
161
|
+
properties: {
|
|
162
|
+
fromTermId: { ...TERM_ID_SCHEMA, description: "The term that would be merged away (deprecated) and re-pointed from." },
|
|
163
|
+
intoTermId: { ...TERM_ID_SCHEMA, description: "The term that would receive every re-pointed assignment." },
|
|
164
|
+
},
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
// EXCLUDED BY DESIGN, never wired: see this file's header. Token-gated; `core/gated-mutations`'s
|
|
169
|
+
// own confirm() step structurally refuses an agent principal, and no confirmation transport
|
|
170
|
+
// exists for an agent to be handed a human-minted token through anyway.
|
|
171
|
+
name: "taxonomy_execute_merge_term",
|
|
172
|
+
description: "Executes a previously confirmed term merge using a human-minted confirmation token. NEVER agent-callable — see file header.",
|
|
173
|
+
sideEffects: "mutates-durable-state",
|
|
174
|
+
authorization: { permission: "admin.taxonomy.manage" },
|
|
175
|
+
actorClassRule: "confirmer-must-equal-own-delegatedBy",
|
|
176
|
+
},
|
|
177
|
+
];
|
|
178
|
+
//# sourceMappingURL=agent-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-tools.js","sourceRoot":"","sources":["../../src/taxonomy/agent-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { ContentLookupPort } from "./write-service.js";
|
|
2
|
+
/**
|
|
3
|
+
* @file The `ContentLookupPort` adapter backed by a host's own post/page repository.
|
|
4
|
+
*
|
|
5
|
+
* `TAXONOMY_ALLOWED_CONTENT_TYPES` (write-service.ts) is exactly `{post, page}` today, and in the
|
|
6
|
+
* CMS runtime this is ported from both live in the SAME `posts` table (a `kind` column
|
|
7
|
+
* distinguishes them) — so this adapter only ever needs a by-id content lookup, never a separate
|
|
8
|
+
* entries table. A future content type extending the allow-list would extend this adapter (or add
|
|
9
|
+
* a sibling), not replace it.
|
|
10
|
+
*
|
|
11
|
+
* ## Why the dependency is declared structurally
|
|
12
|
+
*
|
|
13
|
+
* In the source repo this file imported that host's concrete `PostRepoPort` — a 5-method interface
|
|
14
|
+
* on a 686-line module — and the sibling tool-registration layer imported the same type through
|
|
15
|
+
* that feature's barrel, which additionally re-exported two SQLite adapters and a search index.
|
|
16
|
+
* Taxonomy calls exactly ONE method and reads exactly TWO fields off the result, so the barrel hop
|
|
17
|
+
* put a whole content feature (and, through its adapters, a host database schema) into this
|
|
18
|
+
* domain's dependency closure to obtain a single signature.
|
|
19
|
+
*
|
|
20
|
+
* {@link ContentRecordLookupPort} declares that one method instead. A host satisfies it by passing
|
|
21
|
+
* the post repository it already has — the shape is the contract, so no host type is named here,
|
|
22
|
+
* and the mutual import between taxonomy and the host's content feature disappears rather than
|
|
23
|
+
* being inverted into a new one.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* The single capability taxonomy needs from a host's content repository: resolve a content id to
|
|
27
|
+
* the workspace it belongs to and the kind of row it actually is.
|
|
28
|
+
*
|
|
29
|
+
* Deliberately narrower than any real repository. A host's own richer record type satisfies this
|
|
30
|
+
* structurally — returning extra fields is always assignable — so implementing it costs nothing.
|
|
31
|
+
*/
|
|
32
|
+
export interface ContentRecordLookupPort {
|
|
33
|
+
findById(required: {
|
|
34
|
+
workspaceId: string;
|
|
35
|
+
id: string;
|
|
36
|
+
}): Promise<{
|
|
37
|
+
workspaceId: string;
|
|
38
|
+
kind: string;
|
|
39
|
+
} | null>;
|
|
40
|
+
}
|
|
41
|
+
export declare function createPostBackedContentLookup(deps: {
|
|
42
|
+
postRepo: ContentRecordLookupPort;
|
|
43
|
+
workspaceId: string;
|
|
44
|
+
}): ContentLookupPort;
|
|
45
|
+
//# sourceMappingURL=content-lookup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-lookup.d.ts","sourceRoot":"","sources":["../../src/taxonomy/content-lookup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;CAChH;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE;IAClD,QAAQ,EAAE,uBAAuB,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,iBAAiB,CAOpB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export function createPostBackedContentLookup(deps) {
|
|
2
|
+
return {
|
|
3
|
+
async resolve({ contentId }) {
|
|
4
|
+
const post = await deps.postRepo.findById({ workspaceId: deps.workspaceId, id: contentId });
|
|
5
|
+
return post ? { workspaceId: post.workspaceId, kind: post.kind } : null;
|
|
6
|
+
},
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=content-lookup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-lookup.js","sourceRoot":"","sources":["../../src/taxonomy/content-lookup.ts"],"names":[],"mappings":"AAqCA,MAAM,UAAU,6BAA6B,CAAC,IAG7C;IACC,OAAO;QACL,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE;YACzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YAC5F,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Public surface (barrel) for the `taxonomy` library — categories, tags, and term assignment.
|
|
3
|
+
*
|
|
4
|
+
* A module's public contract is its `index.ts`; deep imports from outside this directory should go
|
|
5
|
+
* through here.
|
|
6
|
+
*
|
|
7
|
+
* ## What is deliberately NOT here
|
|
8
|
+
*
|
|
9
|
+
* **No SQLite adapter and no wiring.** A concrete taxonomy repository names a host's own database
|
|
10
|
+
* schema, so composing one here would put that host's persistence choice on this library's public
|
|
11
|
+
* contract and drag its schema into every consumer's dependency closure. Hosts compose their own
|
|
12
|
+
* against the ports exported below.
|
|
13
|
+
*
|
|
14
|
+
* **No gated-mutation composition.** The `mergeTerm` ceremony's plan/confirm/execute ordering,
|
|
15
|
+
* token TTL, and actor-class rule belong to a mutation-gateway kernel that is not part of this
|
|
16
|
+
* package. What ports here is the domain's own half — the structural self-merge guard and the
|
|
17
|
+
* overlap-loss disclosure ({@link planMergeTerm}) — which takes the gateway's three steps as
|
|
18
|
+
* injected closures. A host binds them to whichever gateway it runs. This is why `merge-term.ts`
|
|
19
|
+
* has no imports at all: the ceremony is a parameter, not a dependency.
|
|
20
|
+
*/
|
|
21
|
+
export { TaxonomyNotApplicableError, WorkspaceMismatchError, ContentTypeMismatchError, TaxonomyNotHierarchicalError, ParentCrossTaxonomyError, TermNotFoundError, HierarchyCycleDetectedError, wouldCreateCycle, validateContentJoin, validateHierarchyAssignment, type TermTreeLookup, } from "./validation-chain.js";
|
|
22
|
+
export { TAXONOMY_ALLOWED_CONTENT_TYPES, isContentTypeOnAllowList, TaxonomyRecordNotFoundError, TermRecordNotFoundError, ContentRecordNotFoundError, TermHasAssignedContentError, TermHasChildTermsError, TaxonomyHasAssignedContentError, createTaxonomy, createTerm, renameTerm, assignTerms, deleteTerm, deleteTaxonomy, onContentDeleted, type AuthorizeFn, type Taxonomy, type Term, type TaxonomyRepoPort, type TermRepoPort, type EntryTermRepoPort, type ContentLookupPort, type TaxonomyRevisionRow, type TaxonomyRevisionRepoPort, type ClockPort, type IdGeneratorPort, type WriteServiceDeps, type CreateTaxonomyRequired, type CreateTermRequired, type RenameTermRequired, type AssignTermsRequired, type DeleteTermRequired, type DeleteTaxonomyRequired, type DeletableTaxonomyRepoPort, type DeletableTermRepoPort, type AssignmentCountEntryTermRepoPort, type TransactionalRepoPort, type EntryTermsCleanupPort, type OnContentDeletedRequired, } from "./write-service.js";
|
|
23
|
+
export { listTaxonomiesWithTerms, type TaxonomyListPort, type TermListPort, type TaxonomyWithTerms, } from "./list.js";
|
|
24
|
+
/**
|
|
25
|
+
* The domain half of the `mergeTerm` ceremony — see this file's header for why the gateway itself
|
|
26
|
+
* is injected rather than imported.
|
|
27
|
+
*/
|
|
28
|
+
export { SameTermMergeError, planMergeTerm, confirmMergeTerm, executeMergeTerm, type MergeTermPlanDetails, type PlanMergeTermRequired, type ConfirmMergeTermRequired, type ExecuteMergeTermRequired, } from "./merge-term.js";
|
|
29
|
+
export { InMemoryTaxonomyRepo, InMemoryTermRepo, InMemoryEntryTermRepo, InMemoryTaxonomyRevisionRepo, InMemoryContentLookup, noopStampWatermark, toTaxonomyOutbox, } from "./repo.memory.js";
|
|
30
|
+
/**
|
|
31
|
+
* `ContentRecordLookupPort` is the narrow structural shape a host's post/page repository must
|
|
32
|
+
* satisfy — see `content-lookup.ts` for why it is declared here rather than imported from a
|
|
33
|
+
* content feature.
|
|
34
|
+
*/
|
|
35
|
+
export { createPostBackedContentLookup, type ContentRecordLookupPort, } from "./content-lookup.js";
|
|
36
|
+
/** The agent-tool surface for this domain (see `agent-tools.ts` for what is deliberately omitted). */
|
|
37
|
+
export { taxonomyAgentToolCatalog, type AgentToolDefinition as TaxonomyAgentToolDefinition, type AgentToolSideEffect as TaxonomyAgentToolSideEffect, type AgentToolActorClassRule as TaxonomyAgentToolActorClassRule, } from "./agent-tools.js";
|
|
38
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/taxonomy/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,8BAA8B,EAC9B,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,+BAA+B,EAC/B,cAAc,EACd,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,IAAI,EACT,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,gCAAgC,EACrC,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,GAC9B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,iBAAiB,GACvB,MAAM,WAAW,CAAC;AAEnB;;;GAGG;AACH,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,GAC9B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B;;;;GAIG;AACH,OAAO,EACL,6BAA6B,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,qBAAqB,CAAC;AAE7B,sGAAsG;AACtG,OAAO,EACL,wBAAwB,EACxB,KAAK,mBAAmB,IAAI,2BAA2B,EACvD,KAAK,mBAAmB,IAAI,2BAA2B,EACvD,KAAK,uBAAuB,IAAI,+BAA+B,GAChE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Public surface (barrel) for the `taxonomy` library — categories, tags, and term assignment.
|
|
3
|
+
*
|
|
4
|
+
* A module's public contract is its `index.ts`; deep imports from outside this directory should go
|
|
5
|
+
* through here.
|
|
6
|
+
*
|
|
7
|
+
* ## What is deliberately NOT here
|
|
8
|
+
*
|
|
9
|
+
* **No SQLite adapter and no wiring.** A concrete taxonomy repository names a host's own database
|
|
10
|
+
* schema, so composing one here would put that host's persistence choice on this library's public
|
|
11
|
+
* contract and drag its schema into every consumer's dependency closure. Hosts compose their own
|
|
12
|
+
* against the ports exported below.
|
|
13
|
+
*
|
|
14
|
+
* **No gated-mutation composition.** The `mergeTerm` ceremony's plan/confirm/execute ordering,
|
|
15
|
+
* token TTL, and actor-class rule belong to a mutation-gateway kernel that is not part of this
|
|
16
|
+
* package. What ports here is the domain's own half — the structural self-merge guard and the
|
|
17
|
+
* overlap-loss disclosure ({@link planMergeTerm}) — which takes the gateway's three steps as
|
|
18
|
+
* injected closures. A host binds them to whichever gateway it runs. This is why `merge-term.ts`
|
|
19
|
+
* has no imports at all: the ceremony is a parameter, not a dependency.
|
|
20
|
+
*/
|
|
21
|
+
export { TaxonomyNotApplicableError, WorkspaceMismatchError, ContentTypeMismatchError, TaxonomyNotHierarchicalError, ParentCrossTaxonomyError, TermNotFoundError, HierarchyCycleDetectedError, wouldCreateCycle, validateContentJoin, validateHierarchyAssignment, } from "./validation-chain.js";
|
|
22
|
+
export { TAXONOMY_ALLOWED_CONTENT_TYPES, isContentTypeOnAllowList, TaxonomyRecordNotFoundError, TermRecordNotFoundError, ContentRecordNotFoundError, TermHasAssignedContentError, TermHasChildTermsError, TaxonomyHasAssignedContentError, createTaxonomy, createTerm, renameTerm, assignTerms, deleteTerm, deleteTaxonomy, onContentDeleted, } from "./write-service.js";
|
|
23
|
+
export { listTaxonomiesWithTerms, } from "./list.js";
|
|
24
|
+
/**
|
|
25
|
+
* The domain half of the `mergeTerm` ceremony — see this file's header for why the gateway itself
|
|
26
|
+
* is injected rather than imported.
|
|
27
|
+
*/
|
|
28
|
+
export { SameTermMergeError, planMergeTerm, confirmMergeTerm, executeMergeTerm, } from "./merge-term.js";
|
|
29
|
+
export { InMemoryTaxonomyRepo, InMemoryTermRepo, InMemoryEntryTermRepo, InMemoryTaxonomyRevisionRepo, InMemoryContentLookup, noopStampWatermark, toTaxonomyOutbox, } from "./repo.memory.js";
|
|
30
|
+
/**
|
|
31
|
+
* `ContentRecordLookupPort` is the narrow structural shape a host's post/page repository must
|
|
32
|
+
* satisfy — see `content-lookup.ts` for why it is declared here rather than imported from a
|
|
33
|
+
* content feature.
|
|
34
|
+
*/
|
|
35
|
+
export { createPostBackedContentLookup, } from "./content-lookup.js";
|
|
36
|
+
/** The agent-tool surface for this domain (see `agent-tools.ts` for what is deliberately omitted). */
|
|
37
|
+
export { taxonomyAgentToolCatalog, } from "./agent-tools.js";
|
|
38
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/taxonomy/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACxB,iBAAiB,EACjB,2BAA2B,EAC3B,gBAAgB,EAChB,mBAAmB,EACnB,2BAA2B,GAE5B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,8BAA8B,EAC9B,wBAAwB,EACxB,2BAA2B,EAC3B,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,+BAA+B,EAC/B,cAAc,EACd,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,cAAc,EACd,gBAAgB,GAyBjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,uBAAuB,GAIxB,MAAM,WAAW,CAAC;AAEnB;;;GAGG;AACH,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GAKjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B;;;;GAIG;AACH,OAAO,EACL,6BAA6B,GAE9B,MAAM,qBAAqB,CAAC;AAE7B,sGAAsG;AACtG,OAAO,EACL,wBAAwB,GAIzB,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { Taxonomy, Term } from "./write-service.js";
|
|
2
|
+
/**
|
|
3
|
+
* @file Admin-UI backend-gap closure (design-spec.md §2.8) — the taxonomy/term registry's missing
|
|
4
|
+
* read side. Mirrors `features/content-types/list.ts`'s shape: a thin pass-through over injected
|
|
5
|
+
* read ports, no authorization of its own.
|
|
6
|
+
*
|
|
7
|
+
* Architectural role:
|
|
8
|
+
* `features/taxonomy` domain logic. Depends only on `write-service.ts`'s `Taxonomy`/`Term` shapes.
|
|
9
|
+
*/
|
|
10
|
+
export interface TaxonomyListPort {
|
|
11
|
+
/** Every taxonomy in the workspace (v1 has exactly 2 seeded rows, `category`/`tag` — but this
|
|
12
|
+
* port stays general rather than hard-coding that count). */
|
|
13
|
+
list(): Promise<Taxonomy[]>;
|
|
14
|
+
}
|
|
15
|
+
export interface TermListPort {
|
|
16
|
+
/** Every term belonging to `taxonomyId`. */
|
|
17
|
+
listByTaxonomy(params: {
|
|
18
|
+
taxonomyId: string;
|
|
19
|
+
}): Promise<Term[]>;
|
|
20
|
+
}
|
|
21
|
+
export interface TaxonomyWithTerms {
|
|
22
|
+
taxonomy: Taxonomy;
|
|
23
|
+
terms: Term[];
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Lists every taxonomy together with its terms (the Categories & Tags screen's two-pane source,
|
|
27
|
+
* design-spec.md §2.2).
|
|
28
|
+
*
|
|
29
|
+
* @complexity O(t) in the number of taxonomies — one `listByTaxonomy()` call per taxonomy, each
|
|
30
|
+
* bounded by that taxonomy's own term count (small: v1 has 2 taxonomies).
|
|
31
|
+
* @overallScore 100
|
|
32
|
+
*/
|
|
33
|
+
export declare function listTaxonomiesWithTerms(required: {
|
|
34
|
+
taxonomies: TaxonomyListPort;
|
|
35
|
+
terms: TermListPort;
|
|
36
|
+
}, _optional?: Record<string, never>): Promise<{
|
|
37
|
+
items: TaxonomyWithTerms[];
|
|
38
|
+
}>;
|
|
39
|
+
//# sourceMappingURL=list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/taxonomy/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAEzD;;;;;;;GAOG;AAEH,MAAM,WAAW,gBAAgB;IAC/B;iEAC6D;IAC7D,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,4CAA4C;IAC5C,cAAc,CAAC,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE;IAAE,UAAU,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,EAC/D,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAM,GACpC,OAAO,CAAC;IAAE,KAAK,EAAE,iBAAiB,EAAE,CAAA;CAAE,CAAC,CAUzC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lists every taxonomy together with its terms (the Categories & Tags screen's two-pane source,
|
|
3
|
+
* design-spec.md §2.2).
|
|
4
|
+
*
|
|
5
|
+
* @complexity O(t) in the number of taxonomies — one `listByTaxonomy()` call per taxonomy, each
|
|
6
|
+
* bounded by that taxonomy's own term count (small: v1 has 2 taxonomies).
|
|
7
|
+
* @overallScore 100
|
|
8
|
+
*/
|
|
9
|
+
export async function listTaxonomiesWithTerms(required, _optional = {}) {
|
|
10
|
+
const { taxonomies, terms } = required;
|
|
11
|
+
const taxonomyRows = await taxonomies.list();
|
|
12
|
+
const items = [];
|
|
13
|
+
for (const taxonomy of taxonomyRows) {
|
|
14
|
+
const taxonomyTerms = await terms.listByTaxonomy({ taxonomyId: taxonomy.id });
|
|
15
|
+
items.push({ taxonomy, terms: taxonomyTerms });
|
|
16
|
+
}
|
|
17
|
+
return { items };
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/taxonomy/list.ts"],"names":[],"mappings":"AA2BA;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAA+D,EAC/D,YAAmC,EAAE;IAErC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC;IAEvC,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;IAC7C,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,KAAK,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;QACpC,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9E,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC"}
|