@aigne/afs-did-space 1.12.0-beta.5
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.md +26 -0
- package/README.md +129 -0
- package/dist/_virtual/_@oxc-project_runtime@0.108.0/helpers/decorate.cjs +11 -0
- package/dist/_virtual/_@oxc-project_runtime@0.108.0/helpers/decorate.mjs +10 -0
- package/dist/_virtual/rolldown_runtime.cjs +29 -0
- package/dist/afs-metadata-context.cjs +20 -0
- package/dist/afs-metadata-context.d.cts +21 -0
- package/dist/afs-metadata-context.d.cts.map +1 -0
- package/dist/afs-metadata-context.d.mts +21 -0
- package/dist/afs-metadata-context.d.mts.map +1 -0
- package/dist/afs-metadata-context.mjs +18 -0
- package/dist/afs-metadata-context.mjs.map +1 -0
- package/dist/blocklet-hook.cjs +180 -0
- package/dist/blocklet-hook.d.cts +29 -0
- package/dist/blocklet-hook.d.cts.map +1 -0
- package/dist/blocklet-hook.d.mts +29 -0
- package/dist/blocklet-hook.d.mts.map +1 -0
- package/dist/blocklet-hook.mjs +178 -0
- package/dist/blocklet-hook.mjs.map +1 -0
- package/dist/changelog-schema.cjs +603 -0
- package/dist/changelog-schema.d.cts +395 -0
- package/dist/changelog-schema.d.cts.map +1 -0
- package/dist/changelog-schema.d.mts +395 -0
- package/dist/changelog-schema.d.mts.map +1 -0
- package/dist/changelog-schema.mjs +570 -0
- package/dist/changelog-schema.mjs.map +1 -0
- package/dist/changelog-write.cjs +80 -0
- package/dist/changelog-write.d.cts +70 -0
- package/dist/changelog-write.d.cts.map +1 -0
- package/dist/changelog-write.d.mts +70 -0
- package/dist/changelog-write.d.mts.map +1 -0
- package/dist/changelog-write.mjs +77 -0
- package/dist/changelog-write.mjs.map +1 -0
- package/dist/cid-byte-cache.cjs +126 -0
- package/dist/cid-byte-cache.d.cts +46 -0
- package/dist/cid-byte-cache.d.cts.map +1 -0
- package/dist/cid-byte-cache.d.mts +47 -0
- package/dist/cid-byte-cache.d.mts.map +1 -0
- package/dist/cid-byte-cache.mjs +125 -0
- package/dist/cid-byte-cache.mjs.map +1 -0
- package/dist/cid.cjs +68 -0
- package/dist/cid.d.cts +22 -0
- package/dist/cid.d.cts.map +1 -0
- package/dist/cid.d.mts +22 -0
- package/dist/cid.d.mts.map +1 -0
- package/dist/cid.mjs +65 -0
- package/dist/cid.mjs.map +1 -0
- package/dist/client.cjs +221 -0
- package/dist/client.d.cts +72 -0
- package/dist/client.d.cts.map +1 -0
- package/dist/client.d.mts +72 -0
- package/dist/client.d.mts.map +1 -0
- package/dist/client.mjs +220 -0
- package/dist/client.mjs.map +1 -0
- package/dist/cloudflare.cjs +510 -0
- package/dist/cloudflare.d.cts +307 -0
- package/dist/cloudflare.d.cts.map +1 -0
- package/dist/cloudflare.d.mts +308 -0
- package/dist/cloudflare.d.mts.map +1 -0
- package/dist/cloudflare.mjs +507 -0
- package/dist/cloudflare.mjs.map +1 -0
- package/dist/ctime-backfill.cjs +272 -0
- package/dist/ctime-backfill.d.cts +169 -0
- package/dist/ctime-backfill.d.cts.map +1 -0
- package/dist/ctime-backfill.d.mts +169 -0
- package/dist/ctime-backfill.d.mts.map +1 -0
- package/dist/ctime-backfill.mjs +267 -0
- package/dist/ctime-backfill.mjs.map +1 -0
- package/dist/d1-gc-queue.cjs +80 -0
- package/dist/d1-gc-queue.d.cts +59 -0
- package/dist/d1-gc-queue.d.cts.map +1 -0
- package/dist/d1-gc-queue.d.mts +59 -0
- package/dist/d1-gc-queue.d.mts.map +1 -0
- package/dist/d1-gc-queue.mjs +81 -0
- package/dist/d1-gc-queue.mjs.map +1 -0
- package/dist/d1-resolve-store.cjs +189 -0
- package/dist/d1-resolve-store.d.cts +93 -0
- package/dist/d1-resolve-store.d.cts.map +1 -0
- package/dist/d1-resolve-store.d.mts +93 -0
- package/dist/d1-resolve-store.d.mts.map +1 -0
- package/dist/d1-resolve-store.mjs +190 -0
- package/dist/d1-resolve-store.mjs.map +1 -0
- package/dist/d1-schema.cjs +361 -0
- package/dist/d1-schema.d.cts +237 -0
- package/dist/d1-schema.d.cts.map +1 -0
- package/dist/d1-schema.d.mts +237 -0
- package/dist/d1-schema.d.mts.map +1 -0
- package/dist/d1-schema.mjs +341 -0
- package/dist/d1-schema.mjs.map +1 -0
- package/dist/d1-share-store.cjs +0 -0
- package/dist/d1-share-store.d.cts +53 -0
- package/dist/d1-share-store.d.cts.map +1 -0
- package/dist/d1-share-store.d.mts +53 -0
- package/dist/d1-share-store.d.mts.map +1 -0
- package/dist/d1-share-store.mjs +0 -0
- package/dist/d1-share-store.mjs.map +1 -0
- package/dist/d1-tree-index.cjs +1098 -0
- package/dist/d1-tree-index.d.cts +203 -0
- package/dist/d1-tree-index.d.cts.map +1 -0
- package/dist/d1-tree-index.d.mts +203 -0
- package/dist/d1-tree-index.d.mts.map +1 -0
- package/dist/d1-tree-index.mjs +1094 -0
- package/dist/d1-tree-index.mjs.map +1 -0
- package/dist/data-backend.cjs +147 -0
- package/dist/data-backend.d.cts +30 -0
- package/dist/data-backend.d.cts.map +1 -0
- package/dist/data-backend.d.mts +30 -0
- package/dist/data-backend.d.mts.map +1 -0
- package/dist/data-backend.mjs +148 -0
- package/dist/data-backend.mjs.map +1 -0
- package/dist/dedup-backfill.cjs +278 -0
- package/dist/dedup-backfill.d.cts +165 -0
- package/dist/dedup-backfill.d.cts.map +1 -0
- package/dist/dedup-backfill.d.mts +165 -0
- package/dist/dedup-backfill.d.mts.map +1 -0
- package/dist/dedup-backfill.mjs +273 -0
- package/dist/dedup-backfill.mjs.map +1 -0
- package/dist/did-space-like.d.cts +2 -0
- package/dist/did-space-like.d.mts +2 -0
- package/dist/did-utils.cjs +44 -0
- package/dist/did-utils.d.cts +25 -0
- package/dist/did-utils.d.cts.map +1 -0
- package/dist/did-utils.d.mts +25 -0
- package/dist/did-utils.d.mts.map +1 -0
- package/dist/did-utils.mjs +43 -0
- package/dist/did-utils.mjs.map +1 -0
- package/dist/dirty-path-queue.cjs +31 -0
- package/dist/dirty-path-queue.d.cts +104 -0
- package/dist/dirty-path-queue.d.cts.map +1 -0
- package/dist/dirty-path-queue.d.mts +104 -0
- package/dist/dirty-path-queue.d.mts.map +1 -0
- package/dist/dirty-path-queue.mjs +31 -0
- package/dist/dirty-path-queue.mjs.map +1 -0
- package/dist/dirty-path-schema.cjs +142 -0
- package/dist/dirty-path-schema.d.cts +90 -0
- package/dist/dirty-path-schema.d.cts.map +1 -0
- package/dist/dirty-path-schema.d.mts +90 -0
- package/dist/dirty-path-schema.d.mts.map +1 -0
- package/dist/dirty-path-schema.mjs +136 -0
- package/dist/dirty-path-schema.mjs.map +1 -0
- package/dist/download-actions.cjs +43 -0
- package/dist/download-actions.mjs +40 -0
- package/dist/download-actions.mjs.map +1 -0
- package/dist/fs-object-store.cjs +153 -0
- package/dist/fs-object-store.d.cts +21 -0
- package/dist/fs-object-store.d.cts.map +1 -0
- package/dist/fs-object-store.d.mts +22 -0
- package/dist/fs-object-store.d.mts.map +1 -0
- package/dist/fs-object-store.mjs +153 -0
- package/dist/fs-object-store.mjs.map +1 -0
- package/dist/gc-queue.d.cts +43 -0
- package/dist/gc-queue.d.cts.map +1 -0
- package/dist/gc-queue.d.mts +43 -0
- package/dist/gc-queue.d.mts.map +1 -0
- package/dist/index.cjs +2712 -0
- package/dist/index.d.cts +504 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +505 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +2537 -0
- package/dist/index.mjs.map +1 -0
- package/dist/inline-content-migration.cjs +212 -0
- package/dist/inline-content-migration.d.cts +110 -0
- package/dist/inline-content-migration.d.cts.map +1 -0
- package/dist/inline-content-migration.d.mts +111 -0
- package/dist/inline-content-migration.d.mts.map +1 -0
- package/dist/inline-content-migration.mjs +207 -0
- package/dist/inline-content-migration.mjs.map +1 -0
- package/dist/inline-content.cjs +145 -0
- package/dist/inline-content.d.cts +98 -0
- package/dist/inline-content.d.cts.map +1 -0
- package/dist/inline-content.d.mts +98 -0
- package/dist/inline-content.d.mts.map +1 -0
- package/dist/inline-content.mjs +137 -0
- package/dist/inline-content.mjs.map +1 -0
- package/dist/local-changelog.cjs +241 -0
- package/dist/local-changelog.d.cts +119 -0
- package/dist/local-changelog.d.cts.map +1 -0
- package/dist/local-changelog.d.mts +119 -0
- package/dist/local-changelog.d.mts.map +1 -0
- package/dist/local-changelog.mjs +240 -0
- package/dist/local-changelog.mjs.map +1 -0
- package/dist/local.cjs +435 -0
- package/dist/local.d.cts +254 -0
- package/dist/local.d.cts.map +1 -0
- package/dist/local.d.mts +254 -0
- package/dist/local.d.mts.map +1 -0
- package/dist/local.mjs +427 -0
- package/dist/local.mjs.map +1 -0
- package/dist/memory-gc-queue.cjs +36 -0
- package/dist/memory-gc-queue.d.cts +22 -0
- package/dist/memory-gc-queue.d.cts.map +1 -0
- package/dist/memory-gc-queue.d.mts +22 -0
- package/dist/memory-gc-queue.d.mts.map +1 -0
- package/dist/memory-gc-queue.mjs +36 -0
- package/dist/memory-gc-queue.mjs.map +1 -0
- package/dist/memory-tree-index.cjs +734 -0
- package/dist/memory-tree-index.d.cts +159 -0
- package/dist/memory-tree-index.d.cts.map +1 -0
- package/dist/memory-tree-index.d.mts +159 -0
- package/dist/memory-tree-index.d.mts.map +1 -0
- package/dist/memory-tree-index.mjs +735 -0
- package/dist/memory-tree-index.mjs.map +1 -0
- package/dist/metadata-db.cjs +562 -0
- package/dist/metadata-db.d.cts +102 -0
- package/dist/metadata-db.d.cts.map +1 -0
- package/dist/metadata-db.d.mts +102 -0
- package/dist/metadata-db.d.mts.map +1 -0
- package/dist/metadata-db.mjs +562 -0
- package/dist/metadata-db.mjs.map +1 -0
- package/dist/mime-utils.cjs +2 -0
- package/dist/mime-utils.d.cts +2 -0
- package/dist/mime-utils.d.mts +2 -0
- package/dist/mime-utils.mjs +3 -0
- package/dist/object-key.cjs +41 -0
- package/dist/object-key.d.cts +25 -0
- package/dist/object-key.d.cts.map +1 -0
- package/dist/object-key.d.mts +25 -0
- package/dist/object-key.d.mts.map +1 -0
- package/dist/object-key.mjs +40 -0
- package/dist/object-key.mjs.map +1 -0
- package/dist/packages/session/dist/index.cjs +788 -0
- package/dist/packages/session/dist/index.mjs +782 -0
- package/dist/packages/session/dist/index.mjs.map +1 -0
- package/dist/platform/r2/dist/types.d.cts +49 -0
- package/dist/platform/r2/dist/types.d.cts.map +1 -0
- package/dist/prefix-range.cjs +33 -0
- package/dist/prefix-range.d.cts +29 -0
- package/dist/prefix-range.d.cts.map +1 -0
- package/dist/prefix-range.d.mts +29 -0
- package/dist/prefix-range.d.mts.map +1 -0
- package/dist/prefix-range.mjs +33 -0
- package/dist/prefix-range.mjs.map +1 -0
- package/dist/prefixed-tree-index.cjs +238 -0
- package/dist/prefixed-tree-index.d.cts +85 -0
- package/dist/prefixed-tree-index.d.cts.map +1 -0
- package/dist/prefixed-tree-index.d.mts +85 -0
- package/dist/prefixed-tree-index.d.mts.map +1 -0
- package/dist/prefixed-tree-index.mjs +239 -0
- package/dist/prefixed-tree-index.mjs.map +1 -0
- package/dist/presign-signer.cjs +7 -0
- package/dist/presign-signer.d.cts +99 -0
- package/dist/presign-signer.d.cts.map +1 -0
- package/dist/presign-signer.d.mts +99 -0
- package/dist/presign-signer.d.mts.map +1 -0
- package/dist/presign-signer.mjs +7 -0
- package/dist/presign-signer.mjs.map +1 -0
- package/dist/providers/platform/r2/dist/index.d.mts +3 -0
- package/dist/providers/platform/r2/dist/types.d.mts +49 -0
- package/dist/providers/platform/r2/dist/types.d.mts.map +1 -0
- package/dist/reconcile.cjs +184 -0
- package/dist/reconcile.d.cts +26 -0
- package/dist/reconcile.d.cts.map +1 -0
- package/dist/reconcile.d.mts +26 -0
- package/dist/reconcile.d.mts.map +1 -0
- package/dist/reconcile.mjs +184 -0
- package/dist/reconcile.mjs.map +1 -0
- package/dist/reference-check.cjs +49 -0
- package/dist/reference-check.d.cts +10 -0
- package/dist/reference-check.d.cts.map +1 -0
- package/dist/reference-check.d.mts +10 -0
- package/dist/reference-check.d.mts.map +1 -0
- package/dist/reference-check.mjs +48 -0
- package/dist/reference-check.mjs.map +1 -0
- package/dist/remote-afs.cjs +681 -0
- package/dist/remote-afs.d.cts +236 -0
- package/dist/remote-afs.d.cts.map +1 -0
- package/dist/remote-afs.d.mts +236 -0
- package/dist/remote-afs.d.mts.map +1 -0
- package/dist/remote-afs.mjs +676 -0
- package/dist/remote-afs.mjs.map +1 -0
- package/dist/rename-guard.cjs +18 -0
- package/dist/rename-guard.mjs +18 -0
- package/dist/rename-guard.mjs.map +1 -0
- package/dist/resolve.cjs +260 -0
- package/dist/resolve.d.cts +113 -0
- package/dist/resolve.d.cts.map +1 -0
- package/dist/resolve.d.mts +113 -0
- package/dist/resolve.d.mts.map +1 -0
- package/dist/resolve.mjs +260 -0
- package/dist/resolve.mjs.map +1 -0
- package/dist/rsync-content.cjs +33 -0
- package/dist/rsync-content.mjs +33 -0
- package/dist/rsync-content.mjs.map +1 -0
- package/dist/rsync.cjs +400 -0
- package/dist/rsync.d.cts +157 -0
- package/dist/rsync.d.cts.map +1 -0
- package/dist/rsync.d.mts +157 -0
- package/dist/rsync.d.mts.map +1 -0
- package/dist/rsync.mjs +397 -0
- package/dist/rsync.mjs.map +1 -0
- package/dist/run-gc.cjs +57 -0
- package/dist/run-gc.d.cts +40 -0
- package/dist/run-gc.d.cts.map +1 -0
- package/dist/run-gc.d.mts +41 -0
- package/dist/run-gc.d.mts.map +1 -0
- package/dist/run-gc.mjs +57 -0
- package/dist/run-gc.mjs.map +1 -0
- package/dist/scope-id.cjs +70 -0
- package/dist/scope-id.d.cts +35 -0
- package/dist/scope-id.d.cts.map +1 -0
- package/dist/scope-id.d.mts +35 -0
- package/dist/scope-id.d.mts.map +1 -0
- package/dist/scope-id.mjs +68 -0
- package/dist/scope-id.mjs.map +1 -0
- package/dist/scope-migration-node.cjs +172 -0
- package/dist/scope-migration-node.d.cts +44 -0
- package/dist/scope-migration-node.d.cts.map +1 -0
- package/dist/scope-migration-node.d.mts +44 -0
- package/dist/scope-migration-node.d.mts.map +1 -0
- package/dist/scope-migration-node.mjs +171 -0
- package/dist/scope-migration-node.mjs.map +1 -0
- package/dist/scope-migration.cjs +155 -0
- package/dist/scope-migration.d.cts +65 -0
- package/dist/scope-migration.d.cts.map +1 -0
- package/dist/scope-migration.d.mts +65 -0
- package/dist/scope-migration.d.mts.map +1 -0
- package/dist/scope-migration.mjs +154 -0
- package/dist/scope-migration.mjs.map +1 -0
- package/dist/share-declaration.cjs +225 -0
- package/dist/share-declaration.d.cts +30 -0
- package/dist/share-declaration.d.cts.map +1 -0
- package/dist/share-declaration.d.mts +32 -0
- package/dist/share-declaration.d.mts.map +1 -0
- package/dist/share-declaration.mjs +221 -0
- package/dist/share-declaration.mjs.map +1 -0
- package/dist/share-hook.cjs +63 -0
- package/dist/share-hook.mjs +62 -0
- package/dist/share-hook.mjs.map +1 -0
- package/dist/share-resolve.cjs +176 -0
- package/dist/share-resolve.d.cts +36 -0
- package/dist/share-resolve.d.cts.map +1 -0
- package/dist/share-resolve.d.mts +36 -0
- package/dist/share-resolve.d.mts.map +1 -0
- package/dist/share-resolve.mjs +177 -0
- package/dist/share-resolve.mjs.map +1 -0
- package/dist/share-serve.cjs +145 -0
- package/dist/share-serve.d.cts +30 -0
- package/dist/share-serve.d.cts.map +1 -0
- package/dist/share-serve.d.mts +30 -0
- package/dist/share-serve.d.mts.map +1 -0
- package/dist/share-serve.mjs +144 -0
- package/dist/share-serve.mjs.map +1 -0
- package/dist/share-store.cjs +25 -0
- package/dist/share-store.d.cts +65 -0
- package/dist/share-store.d.cts.map +1 -0
- package/dist/share-store.d.mts +65 -0
- package/dist/share-store.d.mts.map +1 -0
- package/dist/share-store.mjs +25 -0
- package/dist/share-store.mjs.map +1 -0
- package/dist/share-virtual-path.cjs +102 -0
- package/dist/share-virtual-path.mjs +101 -0
- package/dist/share-virtual-path.mjs.map +1 -0
- package/dist/space-resolver.cjs +54 -0
- package/dist/space-resolver.d.cts +34 -0
- package/dist/space-resolver.d.cts.map +1 -0
- package/dist/space-resolver.d.mts +34 -0
- package/dist/space-resolver.d.mts.map +1 -0
- package/dist/space-resolver.mjs +55 -0
- package/dist/space-resolver.mjs.map +1 -0
- package/dist/sqlite-gc-queue.cjs +51 -0
- package/dist/sqlite-gc-queue.d.cts +22 -0
- package/dist/sqlite-gc-queue.d.cts.map +1 -0
- package/dist/sqlite-gc-queue.d.mts +22 -0
- package/dist/sqlite-gc-queue.d.mts.map +1 -0
- package/dist/sqlite-gc-queue.mjs +52 -0
- package/dist/sqlite-gc-queue.mjs.map +1 -0
- package/dist/sqlite-resolve-store.cjs +163 -0
- package/dist/sqlite-resolve-store.d.cts +50 -0
- package/dist/sqlite-resolve-store.d.cts.map +1 -0
- package/dist/sqlite-resolve-store.d.mts +50 -0
- package/dist/sqlite-resolve-store.d.mts.map +1 -0
- package/dist/sqlite-resolve-store.mjs +164 -0
- package/dist/sqlite-resolve-store.mjs.map +1 -0
- package/dist/sqlite-share-store.cjs +157 -0
- package/dist/sqlite-share-store.d.cts +31 -0
- package/dist/sqlite-share-store.d.cts.map +1 -0
- package/dist/sqlite-share-store.d.mts +31 -0
- package/dist/sqlite-share-store.d.mts.map +1 -0
- package/dist/sqlite-share-store.mjs +157 -0
- package/dist/sqlite-share-store.mjs.map +1 -0
- package/dist/sqlite-tree-index.cjs +901 -0
- package/dist/sqlite-tree-index.d.cts +107 -0
- package/dist/sqlite-tree-index.d.cts.map +1 -0
- package/dist/sqlite-tree-index.d.mts +107 -0
- package/dist/sqlite-tree-index.d.mts.map +1 -0
- package/dist/sqlite-tree-index.mjs +902 -0
- package/dist/sqlite-tree-index.mjs.map +1 -0
- package/dist/sync-engine.cjs +1324 -0
- package/dist/sync-engine.d.cts +473 -0
- package/dist/sync-engine.d.cts.map +1 -0
- package/dist/sync-engine.d.mts +473 -0
- package/dist/sync-engine.d.mts.map +1 -0
- package/dist/sync-engine.mjs +1315 -0
- package/dist/sync-engine.mjs.map +1 -0
- package/dist/sync-state.cjs +303 -0
- package/dist/sync-state.d.cts +224 -0
- package/dist/sync-state.d.cts.map +1 -0
- package/dist/sync-state.d.mts +224 -0
- package/dist/sync-state.d.mts.map +1 -0
- package/dist/sync-state.mjs +297 -0
- package/dist/sync-state.mjs.map +1 -0
- package/dist/timestamp.cjs +92 -0
- package/dist/timestamp.mjs +91 -0
- package/dist/timestamp.mjs.map +1 -0
- package/dist/transports/http.cjs +54 -0
- package/dist/transports/http.d.cts +26 -0
- package/dist/transports/http.d.cts.map +1 -0
- package/dist/transports/http.d.mts +26 -0
- package/dist/transports/http.d.mts.map +1 -0
- package/dist/transports/http.mjs +54 -0
- package/dist/transports/http.mjs.map +1 -0
- package/dist/transports/static.cjs +55 -0
- package/dist/transports/static.d.cts +28 -0
- package/dist/transports/static.d.cts.map +1 -0
- package/dist/transports/static.d.mts +28 -0
- package/dist/transports/static.d.mts.map +1 -0
- package/dist/transports/static.mjs +55 -0
- package/dist/transports/static.mjs.map +1 -0
- package/dist/transports/types.cjs +13 -0
- package/dist/transports/types.d.cts +72 -0
- package/dist/transports/types.d.cts.map +1 -0
- package/dist/transports/types.d.mts +72 -0
- package/dist/transports/types.d.mts.map +1 -0
- package/dist/transports/types.mjs +13 -0
- package/dist/transports/types.mjs.map +1 -0
- package/dist/transports/ws.cjs +207 -0
- package/dist/transports/ws.d.cts +47 -0
- package/dist/transports/ws.d.cts.map +1 -0
- package/dist/transports/ws.d.mts +47 -0
- package/dist/transports/ws.d.mts.map +1 -0
- package/dist/transports/ws.mjs +206 -0
- package/dist/transports/ws.mjs.map +1 -0
- package/dist/tree-index.cjs +333 -0
- package/dist/tree-index.d.cts +524 -0
- package/dist/tree-index.d.cts.map +1 -0
- package/dist/tree-index.d.mts +524 -0
- package/dist/tree-index.d.mts.map +1 -0
- package/dist/tree-index.mjs +322 -0
- package/dist/tree-index.mjs.map +1 -0
- package/dist/tree-query.cjs +655 -0
- package/dist/tree-query.d.cts +70 -0
- package/dist/tree-query.d.cts.map +1 -0
- package/dist/tree-query.d.mts +70 -0
- package/dist/tree-query.d.mts.map +1 -0
- package/dist/tree-query.mjs +648 -0
- package/dist/tree-query.mjs.map +1 -0
- package/dist/upload-actions.cjs +97 -0
- package/dist/upload-actions.d.cts +19 -0
- package/dist/upload-actions.d.cts.map +1 -0
- package/dist/upload-actions.d.mts +21 -0
- package/dist/upload-actions.d.mts.map +1 -0
- package/dist/upload-actions.mjs +90 -0
- package/dist/upload-actions.mjs.map +1 -0
- package/dist/upload-session-store.cjs +185 -0
- package/dist/upload-session-store.d.cts +99 -0
- package/dist/upload-session-store.d.cts.map +1 -0
- package/dist/upload-session-store.d.mts +99 -0
- package/dist/upload-session-store.d.mts.map +1 -0
- package/dist/upload-session-store.mjs +184 -0
- package/dist/upload-session-store.mjs.map +1 -0
- package/dist/url-normalize.cjs +61 -0
- package/dist/url-normalize.d.cts +33 -0
- package/dist/url-normalize.d.cts.map +1 -0
- package/dist/url-normalize.d.mts +33 -0
- package/dist/url-normalize.d.mts.map +1 -0
- package/dist/url-normalize.mjs +61 -0
- package/dist/url-normalize.mjs.map +1 -0
- package/dist/versioned-content-backends.cjs +155 -0
- package/dist/versioned-content-backends.d.cts +49 -0
- package/dist/versioned-content-backends.d.cts.map +1 -0
- package/dist/versioned-content-backends.d.mts +49 -0
- package/dist/versioned-content-backends.d.mts.map +1 -0
- package/dist/versioned-content-backends.mjs +154 -0
- package/dist/versioned-content-backends.mjs.map +1 -0
- package/dist/versioned-content-index.cjs +102 -0
- package/dist/versioned-content-index.d.cts +46 -0
- package/dist/versioned-content-index.d.cts.map +1 -0
- package/dist/versioned-content-index.d.mts +46 -0
- package/dist/versioned-content-index.d.mts.map +1 -0
- package/dist/versioned-content-index.mjs +103 -0
- package/dist/versioned-content-index.mjs.map +1 -0
- package/dist/versioned-content-store.cjs +121 -0
- package/dist/versioned-content-store.d.cts +90 -0
- package/dist/versioned-content-store.d.cts.map +1 -0
- package/dist/versioned-content-store.d.mts +90 -0
- package/dist/versioned-content-store.d.mts.map +1 -0
- package/dist/versioned-content-store.mjs +122 -0
- package/dist/versioned-content-store.mjs.map +1 -0
- package/dist/versioned-scope.cjs +39 -0
- package/dist/versioned-scope.d.cts +57 -0
- package/dist/versioned-scope.d.cts.map +1 -0
- package/dist/versioned-scope.d.mts +57 -0
- package/dist/versioned-scope.d.mts.map +1 -0
- package/dist/versioned-scope.mjs +37 -0
- package/dist/versioned-scope.mjs.map +1 -0
- package/migrations/0001_tree_entries.sql +17 -0
- package/migrations/0002_resolve_entries.sql +7 -0
- package/migrations/0003_entries_v2.sql +38 -0
- package/migrations/0004_gc_queue.sql +5 -0
- package/migrations/0006_resolve_enhance.sql +14 -0
- package/migrations/0007_resolve_created_at.sql +10 -0
- package/migrations/0008_changelog.sql +34 -0
- package/migrations/0009_device_sync_state.sql +29 -0
- package/migrations/0010_scope_meta.sql +33 -0
- package/migrations/0011_shares.sql +25 -0
- package/migrations/0012_scope_meta_file_count.sql +41 -0
- package/migrations/0013_scope_meta_total_bytes.sql +47 -0
- package/migrations/0014_rename_tables.sql +62 -0
- package/package.json +102 -0
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { TreeQueryResult, TreeQuerySpec } from "./tree-query.cjs";
|
|
2
|
+
import { DirtyPathRow, ListDirtyPathOptions } from "./dirty-path-queue.cjs";
|
|
3
|
+
import { BatchDeleteEntry, BatchDeleteEntryResult, BatchIndexContext, BatchPutEntry, BatchPutEntryResult, ChangelogEntry, PutOpts, TreeEntry, TreeIndex, TreeIndexListEntriesResult, TreeIndexListOptions, TreeIndexListResult } from "./tree-index.cjs";
|
|
4
|
+
import { InlineContentOptions } from "./inline-content.cjs";
|
|
5
|
+
|
|
6
|
+
//#region src/memory-tree-index.d.ts
|
|
7
|
+
declare class MemoryTreeIndex implements TreeIndex {
|
|
8
|
+
private entries;
|
|
9
|
+
/**
|
|
10
|
+
* DIR rows with their timestamps. Was a `Set<string>` (existence only);
|
|
11
|
+
* upgraded to a `Map` carrying `{ ctime, mtime }` so Rule R2 (feed-sort
|
|
12
|
+
* §5.3) can stamp a direct parent's ctime and `collectChildren` can surface
|
|
13
|
+
* it (the SQL backends sort doc-mode dir rows by `e.ctime`) — keeping the
|
|
14
|
+
* memory backend in lockstep with D1/SQLite.
|
|
15
|
+
*/
|
|
16
|
+
private dirEntries;
|
|
17
|
+
/** Phase 2: in-memory mirror of the `changelog` table. */
|
|
18
|
+
private changelog;
|
|
19
|
+
/**
|
|
20
|
+
* index-follower-dirty-path — in-memory mirror of the `ds_dirty_path` table.
|
|
21
|
+
* Keyed `${scope}\x00${path}`, updated through {@link applyDirtyUpsert} on
|
|
22
|
+
* every changelog append so its merge/guard semantics match the SQL trigger
|
|
23
|
+
* byte-for-byte. There is no DB trigger here, so {@link pushChangelog} is the
|
|
24
|
+
* single hook every write path funnels through.
|
|
25
|
+
*/
|
|
26
|
+
private dirtyMap;
|
|
27
|
+
/** Monotonic seq counter mirroring `AUTOINCREMENT` in the SQL impl. */
|
|
28
|
+
private nextSeq;
|
|
29
|
+
/** Live Update Resilience §11.4 — in-memory mirror of `prefix_watermark`. */
|
|
30
|
+
private watermarks;
|
|
31
|
+
/**
|
|
32
|
+
* Dedup-on-write secondary index (#1159) — in-memory mirror of the
|
|
33
|
+
* `(scope, dedup_scope, dedup_key)` partial UNIQUE index. Keyed
|
|
34
|
+
* `${dedupScope}\x00${dedupKey}` → path. Maintained on put/delete; enforces
|
|
35
|
+
* uniqueness (the SQL backends get it from the DB index).
|
|
36
|
+
*/
|
|
37
|
+
private dedupIndex;
|
|
38
|
+
/** Logical scope string baked into every changelog row (default ""). */
|
|
39
|
+
private readonly scope;
|
|
40
|
+
private readonly inline;
|
|
41
|
+
constructor(opts?: {
|
|
42
|
+
scope?: string;
|
|
43
|
+
} & InlineContentOptions);
|
|
44
|
+
/**
|
|
45
|
+
* Return a read-only snapshot of the in-memory changelog.
|
|
46
|
+
*
|
|
47
|
+
* Used by unit tests to assert that the correct row shape was appended on
|
|
48
|
+
* each put/delete. Production code never calls this.
|
|
49
|
+
*/
|
|
50
|
+
getChangelogSnapshot(): readonly ChangelogEntry[];
|
|
51
|
+
/**
|
|
52
|
+
* The single append hook for the in-memory changelog. Mirrors the SQL
|
|
53
|
+
* `AFTER INSERT ON ds_changelog` trigger: it appends the row AND folds it into
|
|
54
|
+
* the dirty map via {@link applyDirtyUpsert} (same latest_seq guard + backoff
|
|
55
|
+
* reset). Every write path (`put` / `delete` / `deleteByPrefix`; `putBatch`
|
|
56
|
+
* and the batch* methods loop those) funnels through here, so the dirty map
|
|
57
|
+
* covers all six TreeIndex write methods for free — the Memory-backend twin of
|
|
58
|
+
* the trigger's "covers every write face by construction".
|
|
59
|
+
*/
|
|
60
|
+
private pushChangelog;
|
|
61
|
+
get(path: string, _opts?: {
|
|
62
|
+
includeContent?: boolean;
|
|
63
|
+
}): Promise<TreeEntry | null>;
|
|
64
|
+
getDirTimes(dirPath: string): Promise<{
|
|
65
|
+
ctime: number;
|
|
66
|
+
mtime: number;
|
|
67
|
+
} | null>;
|
|
68
|
+
put(path: string, entry: TreeEntry, opts: PutOpts): Promise<{
|
|
69
|
+
oldCid?: string;
|
|
70
|
+
}>;
|
|
71
|
+
/** Inline content this entry would store — drives loopBatchPutEntries' content-aware skip. */
|
|
72
|
+
inlineForEntry(entry: TreeEntry): Promise<string | null>;
|
|
73
|
+
private dedupMapKey;
|
|
74
|
+
/** Mirror the `(scope, dedup_scope, dedup_key)` UNIQUE constraint. */
|
|
75
|
+
private assertDedupUnique;
|
|
76
|
+
private dropDedupMapping;
|
|
77
|
+
/** Re-point the dedup map for `path`: drop its stale mapping, set the new one. */
|
|
78
|
+
private updateDedupMapping;
|
|
79
|
+
findByDedupKey(dedupScope: string, dedupKey: string): Promise<({
|
|
80
|
+
path: string;
|
|
81
|
+
} & TreeEntry) | null>;
|
|
82
|
+
setDedupKey(path: string, dedupScope: string, dedupKey: string, opts: PutOpts): Promise<void>;
|
|
83
|
+
/** Bump a collection root's watermark by 1 (lazy-create at 1). No-op for null. */
|
|
84
|
+
private bumpWatermark;
|
|
85
|
+
getPrefixWatermark(prefix: string): Promise<number | null>;
|
|
86
|
+
delete(path: string, opts: PutOpts): Promise<void>;
|
|
87
|
+
private cleanEmptyParents;
|
|
88
|
+
private static readonly VALID_ORDER_BY;
|
|
89
|
+
/**
|
|
90
|
+
* Ordered + keyset-paged listing shared by listEntries/listChildren when
|
|
91
|
+
* an explicit orderBy is set — same semantics as the SQL impls (NULL
|
|
92
|
+
* mimeType last in both directions, unique-tie keyset resume, v2 cursor).
|
|
93
|
+
*/
|
|
94
|
+
private orderedPage;
|
|
95
|
+
list(prefix: string, options?: TreeIndexListOptions): Promise<TreeIndexListResult>;
|
|
96
|
+
listEntries(prefix: string, options?: TreeIndexListOptions): Promise<TreeIndexListEntriesResult>;
|
|
97
|
+
hasChildren(prefix: string): Promise<boolean>;
|
|
98
|
+
count(prefix: string): Promise<number>;
|
|
99
|
+
deleteByPrefix(prefix: string, opts: PutOpts): Promise<number>;
|
|
100
|
+
/**
|
|
101
|
+
* THE single source of direct-children candidates — files with their own
|
|
102
|
+
* entry fields/content plus dir rows with the optional `<dir><docFile>`
|
|
103
|
+
* sub-file join. Shared by `listChildren` (join-free form post-T4.3) and
|
|
104
|
+
* `query` (doc surface) so the child-candidate semantics cannot drift —
|
|
105
|
+
* the in-memory mirror of `buildChildrenFrom` in tree-query.ts.
|
|
106
|
+
*/
|
|
107
|
+
private collectChildren;
|
|
108
|
+
listChildren(parent: string, options?: TreeIndexListOptions): Promise<TreeIndexListEntriesResult>;
|
|
109
|
+
countChildren(parent: string): Promise<number>;
|
|
110
|
+
/**
|
|
111
|
+
* Collection query (afs-collection-query Phase 1) — JS executor over the
|
|
112
|
+
* same candidate set the SQL impls compile (lockstep-tested).
|
|
113
|
+
*/
|
|
114
|
+
query(parent: string, spec: TreeQuerySpec): Promise<TreeQueryResult>;
|
|
115
|
+
countChildrenMany(parents: string[]): Promise<Map<string, number>>;
|
|
116
|
+
aggregate(prefix: string): Promise<{
|
|
117
|
+
fileCount: number;
|
|
118
|
+
totalSize: number;
|
|
119
|
+
}>;
|
|
120
|
+
/** Batch metadata read — loop over get (no IN-merge needed off-CF). */
|
|
121
|
+
getMany(paths: string[]): Promise<Map<string, TreeEntry | null>>;
|
|
122
|
+
/** Batch sync fast path — loop reference semantics (conformance-pinned
|
|
123
|
+
* equivalent of the merged D1 implementation). */
|
|
124
|
+
batchPutEntries(entries: BatchPutEntry[], ctx?: BatchIndexContext): Promise<BatchPutEntryResult[]>;
|
|
125
|
+
/** Delete twin of {@link batchPutEntries} (loop reference semantics). */
|
|
126
|
+
batchDeleteEntries(entries: BatchDeleteEntry[], ctx?: BatchIndexContext): Promise<BatchDeleteEntryResult[]>;
|
|
127
|
+
putBatch(entries: Array<{
|
|
128
|
+
path: string;
|
|
129
|
+
entry: TreeEntry;
|
|
130
|
+
}>, opts: PutOpts): Promise<void>;
|
|
131
|
+
listModifiedSince(prefix: string, since: number, options?: TreeIndexListOptions): Promise<TreeIndexListEntriesResult>;
|
|
132
|
+
getMaxSeq(): Promise<number>;
|
|
133
|
+
/**
|
|
134
|
+
* Read-auth reference check (design §4.1) — three-way, scoped, optionally
|
|
135
|
+
* prefix-local. See {@link TreeIndex.isReferenced}. This impl is single-scope
|
|
136
|
+
* (every row shares `this.scope`), so the scope filter is implicit; only the
|
|
137
|
+
* path-prefix restriction is applied.
|
|
138
|
+
*/
|
|
139
|
+
isReferenced(cid: string, pathPrefix?: string): Promise<boolean>;
|
|
140
|
+
/**
|
|
141
|
+
* Batch read-auth (design §7.2 / §14) — in-memory three-way equivalent to
|
|
142
|
+
* per-cid {@link isReferenced}. No bound-param cap (no sharding), but the
|
|
143
|
+
* result MUST agree cid-for-cid with the SQL backends.
|
|
144
|
+
*/
|
|
145
|
+
isReferencedMany(cids: string[], pathPrefix?: string): Promise<Set<string>>;
|
|
146
|
+
getChangelogSince(sinceSeq: number, limit: number): Promise<{
|
|
147
|
+
entries: ChangelogEntry[];
|
|
148
|
+
hasMore: boolean;
|
|
149
|
+
cursor: number;
|
|
150
|
+
}>;
|
|
151
|
+
getCompactedBelowSeq(): Promise<number>;
|
|
152
|
+
listDirtyPaths(options: ListDirtyPathOptions): Promise<DirtyPathRow[]>;
|
|
153
|
+
ackDirtyPath(path: string, latestSeq: number): Promise<boolean>;
|
|
154
|
+
markDirtyPathError(path: string, latestSeq: number, error: string, nextAttemptAt: number): Promise<boolean>;
|
|
155
|
+
private ensureParentDirs;
|
|
156
|
+
}
|
|
157
|
+
//#endregion
|
|
158
|
+
export { MemoryTreeIndex };
|
|
159
|
+
//# sourceMappingURL=memory-tree-index.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-tree-index.d.cts","names":[],"sources":["../src/memory-tree-index.ts"],"mappings":";;;;;;cAoGa,eAAA,YAA2B,SAAA;EAAA,QAC9B,OAAA;EAsFwC;;;;;;;EAAA,QA9ExC,UAAA;EAmPkC;EAAA,QAjPlC,SAAA;EAuPmC;;;;;;;EAAA,QA/OnC,QAAA;EA2iBqB;EAAA,QAziBrB,OAAA;EAijB6C;EAAA,QA/iB7C,UAAA;EAqqBG;;;;;;EAAA,QA9pBH,UAAA;EAmvBoC;EAAA,iBAjvB3B,KAAA;EAAA,iBACA,MAAA;cAEL,IAAA;IAAS,KAAA;EAAA,IAAmB,oBAAA;EAmxBhC;;;;;;EAxwBR,oBAAA,CAAA,YAAiC,cAAA;EAqxBoB;;;;;;;;;EAAA,QAxwB7C,aAAA;EAiBF,GAAA,CAAI,IAAA,UAAc,KAAA;IAAU,cAAA;EAAA,IAA6B,OAAA,CAAQ,SAAA;EAMjE,WAAA,CAAY,OAAA,WAAkB,OAAA;IAAU,KAAA;IAAe,KAAA;EAAA;EAKvD,GAAA,CAAI,IAAA,UAAc,KAAA,EAAO,SAAA,EAAW,IAAA,EAAM,OAAA,GAAU,OAAA;IAAU,MAAA;EAAA;EAvFrB;EAsL/C,cAAA,CAAe,KAAA,EAAO,SAAA,GAAY,OAAA;EAAA,QAM1B,WAAA;EA3LA;EAAA,QAgMA,iBAAA;EAAA,QAQA,gBAAA;EAtLA;EAAA,QA4LA,kBAAA;EAcF,cAAA,CACJ,UAAA,UACA,QAAA,WACC,OAAA;IAAW,IAAA;EAAA,IAAiB,SAAA;EAOzB,WAAA,CACJ,IAAA,UACA,UAAA,UACA,QAAA,UACA,IAAA,EAAM,OAAA,GACL,OAAA;;UAWK,aAAA;EAKF,kBAAA,CAAmB,MAAA,WAAiB,OAAA;EAMpC,MAAA,CAAO,IAAA,UAAc,IAAA,EAAM,OAAA,GAAU,OAAA;EAAA,QA8BnC,iBAAA;EAAA,wBA0BgB,cAAA;EA/PhB;;;;;EAAA,QA6QA,WAAA;EA8CF,IAAA,CAAK,MAAA,UAAgB,OAAA,GAAU,oBAAA,GAAuB,OAAA,CAAQ,mBAAA;EAoF9D,WAAA,CACJ,MAAA,UACA,OAAA,GAAU,oBAAA,GACT,OAAA,CAAQ,0BAAA;EA0GL,WAAA,CAAY,MAAA,WAAiB,OAAA;EAO7B,KAAA,CAAM,MAAA,WAAiB,OAAA;EAQvB,cAAA,CAAe,MAAA,UAAgB,IAAA,EAAM,OAAA,GAAU,OAAA;EApfQ;;;;;;;EAAA,QAqjBrD,eAAA;EAkDF,YAAA,CACJ,MAAA,UACA,OAAA,GAAU,oBAAA,GACT,OAAA,CAAQ,0BAAA;EAsDL,aAAA,CAAc,MAAA,WAAiB,OAAA;EA5jBf;;;;EA2kBhB,KAAA,CAAM,MAAA,UAAgB,IAAA,EAAM,aAAA,GAAgB,OAAA,CAAQ,eAAA;EAgBpD,iBAAA,CAAkB,OAAA,aAAoB,OAAA,CAAQ,GAAA;EAc9C,SAAA,CAAU,MAAA,WAAiB,OAAA;IAAU,SAAA;IAAmB,SAAA;EAAA;EA/jB3D;EA4kBG,OAAA,CAAQ,KAAA,aAAkB,OAAA,CAAQ,GAAA,SAAY,SAAA;EA5kBrB;;EAolBzB,eAAA,CACJ,OAAA,EAAS,aAAA,IACT,GAAA,GAAM,iBAAA,GACL,OAAA,CAAQ,mBAAA;EA9kBT;EAmlBI,kBAAA,CACJ,OAAA,EAAS,gBAAA,IACT,GAAA,GAAM,iBAAA,GACL,OAAA,CAAQ,sBAAA;EAIL,QAAA,CAAS,OAAA,EAAS,KAAA;IAAQ,IAAA;IAAc,KAAA,EAAO,SAAA;EAAA,IAAc,IAAA,EAAM,OAAA,GAAU,OAAA;EAM7E,iBAAA,CACJ,MAAA,UACA,KAAA,UACA,OAAA,GAAU,oBAAA,GACT,OAAA,CAAQ,0BAAA;EAyCL,SAAA,CAAA,GAAa,OAAA;EA1nBuB;;;;;;EAsoBpC,YAAA,CAAa,GAAA,UAAa,UAAA,YAAkB,OAAA;EAxkB1B;;;;;EAylBlB,gBAAA,CAAiB,IAAA,YAAgB,UAAA,YAAkB,OAAA,CAAQ,GAAA;EAiB3D,iBAAA,CACJ,QAAA,UACA,KAAA,WACC,OAAA;IAAU,OAAA,EAAS,cAAA;IAAkB,OAAA;IAAkB,MAAA;EAAA;EAUpD,oBAAA,CAAA,GAAwB,OAAA;EAWxB,cAAA,CAAe,OAAA,EAAS,oBAAA,GAAuB,OAAA,CAAQ,YAAA;EAqBvD,YAAA,CAAa,IAAA,UAAc,SAAA,WAAoB,OAAA;EAU/C,kBAAA,CACJ,IAAA,UACA,SAAA,UACA,KAAA,UACA,aAAA,WACC,OAAA;EAAA,QAiBK,gBAAA;AAAA"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { TreeQueryResult, TreeQuerySpec } from "./tree-query.mjs";
|
|
2
|
+
import { DirtyPathRow, ListDirtyPathOptions } from "./dirty-path-queue.mjs";
|
|
3
|
+
import { BatchDeleteEntry, BatchDeleteEntryResult, BatchIndexContext, BatchPutEntry, BatchPutEntryResult, ChangelogEntry, PutOpts, TreeEntry, TreeIndex, TreeIndexListEntriesResult, TreeIndexListOptions, TreeIndexListResult } from "./tree-index.mjs";
|
|
4
|
+
import { InlineContentOptions } from "./inline-content.mjs";
|
|
5
|
+
|
|
6
|
+
//#region src/memory-tree-index.d.ts
|
|
7
|
+
declare class MemoryTreeIndex implements TreeIndex {
|
|
8
|
+
private entries;
|
|
9
|
+
/**
|
|
10
|
+
* DIR rows with their timestamps. Was a `Set<string>` (existence only);
|
|
11
|
+
* upgraded to a `Map` carrying `{ ctime, mtime }` so Rule R2 (feed-sort
|
|
12
|
+
* §5.3) can stamp a direct parent's ctime and `collectChildren` can surface
|
|
13
|
+
* it (the SQL backends sort doc-mode dir rows by `e.ctime`) — keeping the
|
|
14
|
+
* memory backend in lockstep with D1/SQLite.
|
|
15
|
+
*/
|
|
16
|
+
private dirEntries;
|
|
17
|
+
/** Phase 2: in-memory mirror of the `changelog` table. */
|
|
18
|
+
private changelog;
|
|
19
|
+
/**
|
|
20
|
+
* index-follower-dirty-path — in-memory mirror of the `ds_dirty_path` table.
|
|
21
|
+
* Keyed `${scope}\x00${path}`, updated through {@link applyDirtyUpsert} on
|
|
22
|
+
* every changelog append so its merge/guard semantics match the SQL trigger
|
|
23
|
+
* byte-for-byte. There is no DB trigger here, so {@link pushChangelog} is the
|
|
24
|
+
* single hook every write path funnels through.
|
|
25
|
+
*/
|
|
26
|
+
private dirtyMap;
|
|
27
|
+
/** Monotonic seq counter mirroring `AUTOINCREMENT` in the SQL impl. */
|
|
28
|
+
private nextSeq;
|
|
29
|
+
/** Live Update Resilience §11.4 — in-memory mirror of `prefix_watermark`. */
|
|
30
|
+
private watermarks;
|
|
31
|
+
/**
|
|
32
|
+
* Dedup-on-write secondary index (#1159) — in-memory mirror of the
|
|
33
|
+
* `(scope, dedup_scope, dedup_key)` partial UNIQUE index. Keyed
|
|
34
|
+
* `${dedupScope}\x00${dedupKey}` → path. Maintained on put/delete; enforces
|
|
35
|
+
* uniqueness (the SQL backends get it from the DB index).
|
|
36
|
+
*/
|
|
37
|
+
private dedupIndex;
|
|
38
|
+
/** Logical scope string baked into every changelog row (default ""). */
|
|
39
|
+
private readonly scope;
|
|
40
|
+
private readonly inline;
|
|
41
|
+
constructor(opts?: {
|
|
42
|
+
scope?: string;
|
|
43
|
+
} & InlineContentOptions);
|
|
44
|
+
/**
|
|
45
|
+
* Return a read-only snapshot of the in-memory changelog.
|
|
46
|
+
*
|
|
47
|
+
* Used by unit tests to assert that the correct row shape was appended on
|
|
48
|
+
* each put/delete. Production code never calls this.
|
|
49
|
+
*/
|
|
50
|
+
getChangelogSnapshot(): readonly ChangelogEntry[];
|
|
51
|
+
/**
|
|
52
|
+
* The single append hook for the in-memory changelog. Mirrors the SQL
|
|
53
|
+
* `AFTER INSERT ON ds_changelog` trigger: it appends the row AND folds it into
|
|
54
|
+
* the dirty map via {@link applyDirtyUpsert} (same latest_seq guard + backoff
|
|
55
|
+
* reset). Every write path (`put` / `delete` / `deleteByPrefix`; `putBatch`
|
|
56
|
+
* and the batch* methods loop those) funnels through here, so the dirty map
|
|
57
|
+
* covers all six TreeIndex write methods for free — the Memory-backend twin of
|
|
58
|
+
* the trigger's "covers every write face by construction".
|
|
59
|
+
*/
|
|
60
|
+
private pushChangelog;
|
|
61
|
+
get(path: string, _opts?: {
|
|
62
|
+
includeContent?: boolean;
|
|
63
|
+
}): Promise<TreeEntry | null>;
|
|
64
|
+
getDirTimes(dirPath: string): Promise<{
|
|
65
|
+
ctime: number;
|
|
66
|
+
mtime: number;
|
|
67
|
+
} | null>;
|
|
68
|
+
put(path: string, entry: TreeEntry, opts: PutOpts): Promise<{
|
|
69
|
+
oldCid?: string;
|
|
70
|
+
}>;
|
|
71
|
+
/** Inline content this entry would store — drives loopBatchPutEntries' content-aware skip. */
|
|
72
|
+
inlineForEntry(entry: TreeEntry): Promise<string | null>;
|
|
73
|
+
private dedupMapKey;
|
|
74
|
+
/** Mirror the `(scope, dedup_scope, dedup_key)` UNIQUE constraint. */
|
|
75
|
+
private assertDedupUnique;
|
|
76
|
+
private dropDedupMapping;
|
|
77
|
+
/** Re-point the dedup map for `path`: drop its stale mapping, set the new one. */
|
|
78
|
+
private updateDedupMapping;
|
|
79
|
+
findByDedupKey(dedupScope: string, dedupKey: string): Promise<({
|
|
80
|
+
path: string;
|
|
81
|
+
} & TreeEntry) | null>;
|
|
82
|
+
setDedupKey(path: string, dedupScope: string, dedupKey: string, opts: PutOpts): Promise<void>;
|
|
83
|
+
/** Bump a collection root's watermark by 1 (lazy-create at 1). No-op for null. */
|
|
84
|
+
private bumpWatermark;
|
|
85
|
+
getPrefixWatermark(prefix: string): Promise<number | null>;
|
|
86
|
+
delete(path: string, opts: PutOpts): Promise<void>;
|
|
87
|
+
private cleanEmptyParents;
|
|
88
|
+
private static readonly VALID_ORDER_BY;
|
|
89
|
+
/**
|
|
90
|
+
* Ordered + keyset-paged listing shared by listEntries/listChildren when
|
|
91
|
+
* an explicit orderBy is set — same semantics as the SQL impls (NULL
|
|
92
|
+
* mimeType last in both directions, unique-tie keyset resume, v2 cursor).
|
|
93
|
+
*/
|
|
94
|
+
private orderedPage;
|
|
95
|
+
list(prefix: string, options?: TreeIndexListOptions): Promise<TreeIndexListResult>;
|
|
96
|
+
listEntries(prefix: string, options?: TreeIndexListOptions): Promise<TreeIndexListEntriesResult>;
|
|
97
|
+
hasChildren(prefix: string): Promise<boolean>;
|
|
98
|
+
count(prefix: string): Promise<number>;
|
|
99
|
+
deleteByPrefix(prefix: string, opts: PutOpts): Promise<number>;
|
|
100
|
+
/**
|
|
101
|
+
* THE single source of direct-children candidates — files with their own
|
|
102
|
+
* entry fields/content plus dir rows with the optional `<dir><docFile>`
|
|
103
|
+
* sub-file join. Shared by `listChildren` (join-free form post-T4.3) and
|
|
104
|
+
* `query` (doc surface) so the child-candidate semantics cannot drift —
|
|
105
|
+
* the in-memory mirror of `buildChildrenFrom` in tree-query.ts.
|
|
106
|
+
*/
|
|
107
|
+
private collectChildren;
|
|
108
|
+
listChildren(parent: string, options?: TreeIndexListOptions): Promise<TreeIndexListEntriesResult>;
|
|
109
|
+
countChildren(parent: string): Promise<number>;
|
|
110
|
+
/**
|
|
111
|
+
* Collection query (afs-collection-query Phase 1) — JS executor over the
|
|
112
|
+
* same candidate set the SQL impls compile (lockstep-tested).
|
|
113
|
+
*/
|
|
114
|
+
query(parent: string, spec: TreeQuerySpec): Promise<TreeQueryResult>;
|
|
115
|
+
countChildrenMany(parents: string[]): Promise<Map<string, number>>;
|
|
116
|
+
aggregate(prefix: string): Promise<{
|
|
117
|
+
fileCount: number;
|
|
118
|
+
totalSize: number;
|
|
119
|
+
}>;
|
|
120
|
+
/** Batch metadata read — loop over get (no IN-merge needed off-CF). */
|
|
121
|
+
getMany(paths: string[]): Promise<Map<string, TreeEntry | null>>;
|
|
122
|
+
/** Batch sync fast path — loop reference semantics (conformance-pinned
|
|
123
|
+
* equivalent of the merged D1 implementation). */
|
|
124
|
+
batchPutEntries(entries: BatchPutEntry[], ctx?: BatchIndexContext): Promise<BatchPutEntryResult[]>;
|
|
125
|
+
/** Delete twin of {@link batchPutEntries} (loop reference semantics). */
|
|
126
|
+
batchDeleteEntries(entries: BatchDeleteEntry[], ctx?: BatchIndexContext): Promise<BatchDeleteEntryResult[]>;
|
|
127
|
+
putBatch(entries: Array<{
|
|
128
|
+
path: string;
|
|
129
|
+
entry: TreeEntry;
|
|
130
|
+
}>, opts: PutOpts): Promise<void>;
|
|
131
|
+
listModifiedSince(prefix: string, since: number, options?: TreeIndexListOptions): Promise<TreeIndexListEntriesResult>;
|
|
132
|
+
getMaxSeq(): Promise<number>;
|
|
133
|
+
/**
|
|
134
|
+
* Read-auth reference check (design §4.1) — three-way, scoped, optionally
|
|
135
|
+
* prefix-local. See {@link TreeIndex.isReferenced}. This impl is single-scope
|
|
136
|
+
* (every row shares `this.scope`), so the scope filter is implicit; only the
|
|
137
|
+
* path-prefix restriction is applied.
|
|
138
|
+
*/
|
|
139
|
+
isReferenced(cid: string, pathPrefix?: string): Promise<boolean>;
|
|
140
|
+
/**
|
|
141
|
+
* Batch read-auth (design §7.2 / §14) — in-memory three-way equivalent to
|
|
142
|
+
* per-cid {@link isReferenced}. No bound-param cap (no sharding), but the
|
|
143
|
+
* result MUST agree cid-for-cid with the SQL backends.
|
|
144
|
+
*/
|
|
145
|
+
isReferencedMany(cids: string[], pathPrefix?: string): Promise<Set<string>>;
|
|
146
|
+
getChangelogSince(sinceSeq: number, limit: number): Promise<{
|
|
147
|
+
entries: ChangelogEntry[];
|
|
148
|
+
hasMore: boolean;
|
|
149
|
+
cursor: number;
|
|
150
|
+
}>;
|
|
151
|
+
getCompactedBelowSeq(): Promise<number>;
|
|
152
|
+
listDirtyPaths(options: ListDirtyPathOptions): Promise<DirtyPathRow[]>;
|
|
153
|
+
ackDirtyPath(path: string, latestSeq: number): Promise<boolean>;
|
|
154
|
+
markDirtyPathError(path: string, latestSeq: number, error: string, nextAttemptAt: number): Promise<boolean>;
|
|
155
|
+
private ensureParentDirs;
|
|
156
|
+
}
|
|
157
|
+
//#endregion
|
|
158
|
+
export { MemoryTreeIndex };
|
|
159
|
+
//# sourceMappingURL=memory-tree-index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory-tree-index.d.mts","names":[],"sources":["../src/memory-tree-index.ts"],"mappings":"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"}
|