@noy-db/hub 0.3.0-pre.10 → 0.3.0-pre.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aggregate/index.js +4 -4
- package/dist/api-3TH2GOFQ.js +20 -0
- package/dist/as/index.js +11 -11
- package/dist/attestation/index.js +18 -18
- package/dist/backup-2WVBIVXW.js +225 -0
- package/dist/blobs/index.js +10 -10
- package/dist/broker/index.js +92 -0
- package/dist/broker/index.js.map +1 -0
- package/dist/bundle/index.js +20 -20
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +30 -30
- package/dist/chunk-2MTRJCBI.js +75 -0
- package/dist/chunk-37WOJQWY.js +404 -0
- package/dist/chunk-3QSOFZQB.js +589 -0
- package/dist/chunk-44IL5G3W.js +99 -0
- package/dist/chunk-45QPICLE.js +69 -0
- package/dist/chunk-4BQXMCE5.js +164 -0
- package/dist/chunk-4GPE63GU.js +111 -0
- package/dist/chunk-4GPE63GU.js.map +1 -0
- package/dist/chunk-5HNX4OD4.js +30 -0
- package/dist/chunk-65VLRG3I.js +54 -0
- package/dist/chunk-6MA575R5.js +59 -0
- package/dist/chunk-6S7ENMRE.js +524 -0
- package/dist/chunk-6S7ENMRE.js.map +1 -0
- package/dist/chunk-7GAXFU2O.js +123 -0
- package/dist/chunk-7QLY64AD.js +202 -0
- package/dist/chunk-7ZOSHEVS.js +235 -0
- package/dist/chunk-AAIIDAUC.js +371 -0
- package/dist/chunk-AAIIDAUC.js.map +1 -0
- package/dist/chunk-AKEOHKMT.js +282 -0
- package/dist/chunk-AKEOHKMT.js.map +1 -0
- package/dist/chunk-APHLCXVC.js +124 -0
- package/dist/chunk-BDEMZD4F.js +129 -0
- package/dist/chunk-BDPAVYGJ.js +662 -0
- package/dist/chunk-BLUT46UP.js +42 -0
- package/dist/chunk-CCIR2OJH.js +778 -0
- package/dist/chunk-CXC3JLAQ.js +155 -0
- package/dist/chunk-CZMCOFEA.js +1221 -0
- package/dist/chunk-DIB2BOIH.js +164 -0
- package/dist/chunk-DJ7MRXNA.js +344 -0
- package/dist/chunk-DJ7MRXNA.js.map +1 -0
- package/dist/chunk-EHW5KTTA.js +150 -0
- package/dist/chunk-EHW5KTTA.js.map +1 -0
- package/dist/chunk-EIZ4YOG2.js +70 -0
- package/dist/chunk-EVHBK7BN.js +515 -0
- package/dist/chunk-EXGDL2UQ.js +74 -0
- package/dist/chunk-F3LGBRSV.js +453 -0
- package/dist/chunk-F44XWXOA.js +392 -0
- package/dist/chunk-FF7S3XDW.js +230 -0
- package/dist/chunk-FJTWLQV3.js +155 -0
- package/dist/chunk-FYNE4WLC.js +36 -0
- package/dist/chunk-FZCGIJEJ.js +1505 -0
- package/dist/chunk-FZCGIJEJ.js.map +1 -0
- package/dist/chunk-GL3JV5EV.js +130 -0
- package/dist/chunk-GXLZXD2W.js +29 -0
- package/dist/chunk-HA6ZQWA2.js +1056 -0
- package/dist/chunk-HA6ZQWA2.js.map +1 -0
- package/dist/chunk-HBBZWEC5.js +686 -0
- package/dist/chunk-HG76BZ6G.js +188 -0
- package/dist/chunk-HGAB325C.js +38 -0
- package/dist/chunk-HIOLCOK3.js +30 -0
- package/dist/chunk-HIOLCOK3.js.map +1 -0
- package/dist/chunk-HK4XTXO4.js +49 -0
- package/dist/chunk-HYG32HCM.js +14 -0
- package/dist/chunk-ILF5GARW.js +135 -0
- package/dist/chunk-INBQ43DI.js +382 -0
- package/dist/chunk-IQIVD7TP.js +247 -0
- package/dist/chunk-J3JIYFYL.js +45 -0
- package/dist/chunk-JC75UBMT.js +32 -0
- package/dist/chunk-JC75UBMT.js.map +1 -0
- package/dist/chunk-JGUZMC3I.js +150 -0
- package/dist/chunk-JRKE5MAZ.js +80 -0
- package/dist/chunk-K2DLLK34.js +255 -0
- package/dist/chunk-KKYEZCQG.js +34 -0
- package/dist/chunk-NAR6IDKH.js +54 -0
- package/dist/chunk-NEYKOESM.js +117 -0
- package/dist/chunk-NM3IFKBL.js +29 -0
- package/dist/chunk-NRYNRSGV.js +99 -0
- package/dist/chunk-NT2ZO4KI.js +59 -0
- package/dist/chunk-P2LJI6JE.js +94 -0
- package/dist/chunk-PH7G7ZI7.js +823 -0
- package/dist/chunk-PN5332SU.js +209 -0
- package/dist/chunk-QF5LGMSV.js +45 -0
- package/dist/chunk-QG5RQQBO.js +367 -0
- package/dist/chunk-QYPDYN23.js +23 -0
- package/dist/chunk-R3NHNVS5.js +478 -0
- package/dist/chunk-R3NHNVS5.js.map +1 -0
- package/dist/chunk-RNXJ2VO6.js +280 -0
- package/dist/chunk-RXTMLYJS.js +97 -0
- package/dist/chunk-S2OWPVSO.js +30 -0
- package/dist/chunk-S7TAPIRS.js +205 -0
- package/dist/chunk-SAL5X5OK.js +40 -0
- package/dist/chunk-SGJGWBSC.js +85 -0
- package/dist/chunk-SIAIYP6G.js +50 -0
- package/dist/chunk-SXPCZ6LL.js +1697 -0
- package/dist/chunk-SXPCZ6LL.js.map +1 -0
- package/dist/chunk-TBNF5DV5.js +261 -0
- package/dist/chunk-TVOHSPVK.js +21 -0
- package/dist/chunk-TVS6BUUR.js +41 -0
- package/dist/chunk-UMC5QZTX.js +86 -0
- package/dist/chunk-US34HTOI.js +367 -0
- package/dist/chunk-VCUQR6ZL.js +621 -0
- package/dist/chunk-VXZNSPJM.js +957 -0
- package/dist/chunk-VXZNSPJM.js.map +1 -0
- package/dist/chunk-WEHIQYQH.js +71 -0
- package/dist/chunk-WHQHTNT7.js +265 -0
- package/dist/chunk-X6Y5MXTH.js +74 -0
- package/dist/chunk-XJ47GS53.js +291 -0
- package/dist/chunk-XS6DLN67.js +95 -0
- package/dist/chunk-Y5TWPBNW.js +91 -0
- package/dist/chunk-YCXKFB7J.js +14181 -0
- package/dist/chunk-YCXKFB7J.js.map +1 -0
- package/dist/chunk-ZHOJOT6S.js +36 -0
- package/dist/chunk-ZL6PRULX.js +167 -0
- package/dist/chunk-ZL6PRULX.js.map +1 -0
- package/dist/classified/index.js +5 -5
- package/dist/classified-marker-M7K3OJPM.js +28 -0
- package/dist/classified-marker-M7K3OJPM.js.map +1 -0
- package/dist/collection-facade-DWA735G2.js +39 -0
- package/dist/computed-ORCGM5JE.js +11 -0
- package/dist/consent/index.js +9 -9
- package/dist/crdt/index.js +1 -1
- package/dist/dead-filter-OV5FGKOG.js +28 -0
- package/dist/delegation-YVSHMIZZ.js +25 -0
- package/dist/derivations/index.js +12 -12
- package/dist/derive-BUO555L5.js +21 -0
- package/dist/enclave-XXFUKJC6.js +135 -0
- package/dist/executor-6OCCE5VM.js +25 -0
- package/dist/executor-JFVAJY42.js +9 -0
- package/dist/executor-UPSH5O3F.js +9 -0
- package/dist/export-accessible-L4A2QZA5.js +23 -0
- package/dist/extract-partition-ZHQ4RGGM.js +36 -0
- package/dist/fanout-sidecar-IO2KDUWV.js +74 -0
- package/dist/find-ZFZDZQ2U.js +11 -0
- package/dist/forget/index.js +10 -10
- package/dist/forget/index.js.map +1 -1
- package/dist/guards/index.js +3 -3
- package/dist/history/index.js +11 -11
- package/dist/i18n/index.js +15 -15
- package/dist/index.d.ts +303 -1492
- package/dist/index.js +172 -171
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +5 -5
- package/dist/indexing/index.js.map +1 -1
- package/dist/issue-OG4V23SQ.js +19 -0
- package/dist/kernel/best-effort-revert.d.ts +52 -0
- package/dist/kernel/cache/index.d.ts +10 -0
- package/dist/kernel/cache/lru.d.ts +97 -0
- package/dist/kernel/cache/policy.d.ts +32 -0
- package/dist/kernel/collection-config.d.ts +789 -0
- package/dist/kernel/collection.d.ts +1519 -0
- package/dist/kernel/constants.d.ts +18 -0
- package/dist/kernel/debug.d.ts +25 -0
- package/dist/kernel/enclave/broker/proof.d.ts +154 -0
- package/dist/kernel/enclave/classify/bidx.d.ts +77 -0
- package/dist/kernel/enclave/classify/compare.d.ts +10 -0
- package/dist/kernel/enclave/classify/digest.d.ts +8 -0
- package/dist/kernel/enclave/classify/find.d.ts +36 -0
- package/dist/kernel/enclave/classify/kofn.d.ts +7 -0
- package/dist/kernel/enclave/classify/normalize.d.ts +7 -0
- package/dist/kernel/enclave/classify/reveal.d.ts +10 -0
- package/dist/kernel/enclave/classify/vdig.d.ts +39 -0
- package/dist/kernel/enclave/classify/verify.d.ts +33 -0
- package/dist/kernel/enclave/classify/write.d.ts +8 -0
- package/dist/kernel/enclave/crypto.d.ts +263 -0
- package/dist/kernel/enclave/index.d.ts +78 -0
- package/dist/kernel/enclave/record-keys/deterministic.d.ts +54 -0
- package/dist/kernel/enclave/record-keys/envelope-body.d.ts +79 -0
- package/dist/kernel/enclave/record-keys/lifecycle.d.ts +57 -0
- package/dist/kernel/enclave/record-keys/record-codec.d.ts +301 -0
- package/dist/kernel/enclave/record-keys/sealed-slot.d.ts +14 -0
- package/dist/kernel/enclave/record-keys/sealed-slots.d.ts +123 -0
- package/dist/kernel/enclave/record-keys/sealing.d.ts +70 -0
- package/dist/kernel/enclave/record-keys/tombstone.d.ts +57 -0
- package/dist/kernel/env-check.d.ts +1 -0
- package/dist/kernel/errors.d.ts +1848 -0
- package/dist/kernel/events.d.ts +11 -0
- package/dist/kernel/memory-store.d.ts +17 -0
- package/dist/kernel/mutation.d.ts +14 -0
- package/dist/kernel/noydb.d.ts +826 -0
- package/dist/kernel/paths.d.ts +25 -0
- package/dist/kernel/query/builder.d.ts +520 -0
- package/dist/kernel/query/index.d.ts +31 -0
- package/dist/kernel/query/join.d.ts +205 -0
- package/dist/kernel/query/live.d.ts +111 -0
- package/dist/kernel/query/predicate.d.ts +139 -0
- package/dist/kernel/query/scan-builder.d.ts +334 -0
- package/dist/kernel/refs.d.ts +205 -0
- package/dist/kernel/schema.d.ts +134 -0
- package/dist/kernel/sync-policy.d.ts +188 -0
- package/dist/kernel/types.d.ts +3166 -0
- package/dist/kernel/util/discriminant.d.ts +58 -0
- package/dist/kernel/util/index.d.ts +14 -0
- package/dist/kernel/util/sanitize-filename.d.ts +75 -0
- package/dist/kernel/validation.d.ts +130 -0
- package/dist/kernel/vault.d.ts +1737 -0
- package/dist/kernel/via/compose.d.ts +144 -0
- package/dist/kernel/via/dispatch.d.ts +185 -0
- package/dist/kernel/via/graph-wiring.d.ts +145 -0
- package/dist/kernel/via/graph.d.ts +166 -0
- package/dist/kernel/via/index.d.ts +200 -0
- package/dist/kernel/via/pipeline.d.ts +266 -0
- package/dist/kernel/via/reconcile.d.ts +153 -0
- package/dist/kernel/via/taint-binding.d.ts +66 -0
- package/dist/kernel/write-queue.d.ts +46 -0
- package/dist/ledger-UAQKPWNM.js +42 -0
- package/dist/legacy/bundle.d.ts +30 -0
- package/dist/legacy/kernel.d.ts +33 -0
- package/dist/liberate-GFUQJRK5.js +24 -0
- package/dist/link-set-DGYUOFVD.js +31 -0
- package/dist/materialized-views/index.js +19 -19
- package/dist/noydb-AKH4AMCR.js +67 -0
- package/dist/on/index.js +9 -9
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +12 -12
- package/dist/pod/index.js +11 -11
- package/dist/policy-5POYLI26.js +41 -0
- package/dist/port/as/index.d.ts +26 -0
- package/dist/port/at/index.d.ts +18 -0
- package/dist/port/by/default-provider.d.ts +9 -0
- package/dist/port/by/index.d.ts +17 -0
- package/dist/port/by/types.d.ts +86 -0
- package/dist/port/in/index.d.ts +21 -0
- package/dist/port/on/index.d.ts +27 -0
- package/dist/port/to/index.d.ts +19 -0
- package/dist/port/ui/index.d.ts +21 -0
- package/dist/port/with/blob-strategy.d.ts +81 -0
- package/dist/port/with/broker-strategy.d.ts +84 -0
- package/dist/port/with/capabilities.d.ts +31 -0
- package/dist/port/with/classified-marker.d.ts +9 -0
- package/dist/port/with/classified-strategy.d.ts +62 -0
- package/dist/port/with/computed-strategy.d.ts +19 -0
- package/dist/port/with/i18n-strategy.d.ts +175 -0
- package/dist/port/with/index.d.ts +18 -0
- package/dist/port/with/lazy-strategy.d.ts +48 -0
- package/dist/port/with/lookup-strategy.d.ts +129 -0
- package/dist/port/with/service-bus.d.ts +156 -0
- package/dist/port/with/team-strategy.d.ts +36 -0
- package/dist/port/with/write-hooks.d.ts +34 -0
- package/dist/portability/index.js +8 -8
- package/dist/post-register-LB3P4XQU.js +60 -0
- package/dist/post-register-LB3P4XQU.js.map +1 -0
- package/dist/public-envelope-GOG4LUM7.js +32 -0
- package/dist/purge-scope-FGNNLWHD.js +24 -0
- package/dist/purge-scope-FGNNLWHD.js.map +1 -0
- package/dist/query/index.js +5 -5
- package/dist/register-ZI7YI7US.js +23 -0
- package/dist/registry-DZ2T4LL7.js +9 -0
- package/dist/registry-NVWEQ2GU.js +18 -0
- package/dist/registry-SEKL74ET.js +19 -0
- package/dist/request-withdrawal-ZP3JIRVS.js +31 -0
- package/dist/reveal-NPVROV4D.js +38 -0
- package/dist/revoke-VF6TAJK2.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/sealed-record/index.js +12 -12
- package/dist/seed-VI4FU7UH.js +231 -0
- package/dist/seed-VI4FU7UH.js.map +1 -0
- package/dist/session/index.js +9 -9
- package/dist/shadow/index.js +2 -2
- package/dist/signer-DRDDCCHW.js +25 -0
- package/dist/snapshots/index.js +10 -10
- package/dist/stale-TJXFQKOJ.js +14 -0
- package/dist/storage-GR7KZRH4.js +23 -0
- package/dist/store-coordination-provider-5KDS2RRP.js +142 -0
- package/dist/sync/index.js +9 -9
- package/dist/team/index.js +15 -15
- package/dist/tiers/index.js +10 -10
- package/dist/to/index.js +1 -1
- package/dist/tx/index.js +3 -3
- package/dist/util/index.js +1 -1
- package/dist/verify-QK76NJ4G.js +139 -0
- package/dist/via/blob/active.d.ts +34 -0
- package/dist/via/blob/binding.d.ts +86 -0
- package/dist/via/blob/index.d.ts +34 -0
- package/dist/via/classified/active.d.ts +3 -0
- package/dist/via/classified/binding.d.ts +83 -0
- package/dist/via/classified/config-drift.d.ts +34 -0
- package/dist/via/classified/descriptor.d.ts +66 -0
- package/dist/via/classified/errors.d.ts +19 -0
- package/dist/via/classified/guards.d.ts +23 -0
- package/dist/via/classified/index.d.ts +11 -0
- package/dist/via/classified/presets.d.ts +65 -0
- package/dist/via/classified/resolve.d.ts +9 -0
- package/dist/via/classified/strategy.d.ts +11 -0
- package/dist/via/classified/validators.d.ts +3 -0
- package/dist/via/classified/write.d.ts +4 -0
- package/dist/via/computed/binding.d.ts +34 -0
- package/dist/via/computed/descriptor.d.ts +35 -0
- package/dist/via/i18n/active.d.ts +28 -0
- package/dist/via/i18n/binding.d.ts +36 -0
- package/dist/via/i18n/core.d.ts +267 -0
- package/dist/via/i18n/densify.d.ts +24 -0
- package/dist/via/i18n/dictionary.d.ts +200 -0
- package/dist/via/i18n/index.d.ts +21 -0
- package/dist/via/i18n/policy.d.ts +44 -0
- package/dist/via/i18n/script.d.ts +26 -0
- package/dist/via/i18n/strategy.d.ts +13 -0
- package/dist/via/lookup/active.d.ts +19 -0
- package/dist/via/lookup/binding.d.ts +99 -0
- package/dist/via/lookup/descriptor.d.ts +123 -0
- package/dist/via/lookup/handle.d.ts +220 -0
- package/dist/via/lookup/index.d.ts +17 -0
- package/dist/via/lookup/registry.d.ts +228 -0
- package/dist/via/lookup/snapshot.d.ts +67 -0
- package/dist/via/money/arith.d.ts +68 -0
- package/dist/via/money/binding.d.ts +21 -0
- package/dist/via/money/branded.d.ts +61 -0
- package/dist/via/money/descriptor.d.ts +73 -0
- package/dist/via/money/fixed-point.d.ts +51 -0
- package/dist/via/money/index.d.ts +15 -0
- package/dist/via/money/iso4217.d.ts +6 -0
- package/dist/via/money/money-reducer.d.ts +33 -0
- package/dist/via/money/normalize.d.ts +105 -0
- package/dist/via/money/paths.d.ts +61 -0
- package/dist/via/money/where.d.ts +127 -0
- package/dist/walk-XQCBKSBW.js +241 -0
- package/dist/with/index.js +11 -11
- package/dist/with-audit/attestation/active.d.ts +10 -0
- package/dist/with-audit/attestation/index.d.ts +16 -0
- package/dist/with-audit/attestation/issue.d.ts +29 -0
- package/dist/with-audit/attestation/revoke.d.ts +15 -0
- package/dist/with-audit/attestation/signer.d.ts +33 -0
- package/dist/with-audit/attestation/strategy.d.ts +44 -0
- package/dist/with-audit/attestation/vault-facade.d.ts +62 -0
- package/dist/with-audit/consent/active.d.ts +14 -0
- package/dist/with-audit/consent/consent.d.ts +114 -0
- package/dist/with-audit/consent/index.d.ts +14 -0
- package/dist/with-audit/consent/strategy.d.ts +36 -0
- package/dist/with-audit/forget/active.d.ts +31 -0
- package/dist/with-audit/forget/index.d.ts +28 -0
- package/dist/with-audit/forget/purge-scope.d.ts +54 -0
- package/dist/with-audit/forget/strategy.d.ts +177 -0
- package/dist/with-audit/forget/subject-index.d.ts +83 -0
- package/dist/with-audit/guards/executor.d.ts +26 -0
- package/dist/with-audit/guards/immutable-guard.d.ts +63 -0
- package/dist/with-audit/guards/index.d.ts +10 -0
- package/dist/with-audit/guards/read-only-facade.d.ts +31 -0
- package/dist/with-audit/guards/registry.d.ts +83 -0
- package/dist/with-audit/guards/transition-guard.d.ts +82 -0
- package/dist/with-audit/guards/types.d.ts +134 -0
- package/dist/with-audit/guards/with-guard.d.ts +15 -0
- package/dist/with-audit/periods/active.d.ts +11 -0
- package/dist/with-audit/periods/index.d.ts +18 -0
- package/dist/with-audit/periods/periods.d.ts +417 -0
- package/dist/with-audit/periods/strategy.d.ts +32 -0
- package/dist/with-audit/periods/vault-facade.d.ts +95 -0
- package/dist/with-audit/portability/active.d.ts +11 -0
- package/dist/with-audit/portability/export-accessible.d.ts +46 -0
- package/dist/with-audit/portability/index.d.ts +18 -0
- package/dist/with-audit/portability/request-withdrawal.d.ts +85 -0
- package/dist/with-audit/portability/strategy.d.ts +31 -0
- package/dist/with-audit/portability/withdraw-accessible.d.ts +82 -0
- package/dist/with-audit/sealed-record/active.d.ts +9 -0
- package/dist/with-audit/sealed-record/index.d.ts +55 -0
- package/dist/with-audit/sealed-record/strategy.d.ts +34 -0
- package/dist/with-audit/sealed-record/types.d.ts +27 -0
- package/dist/with-audit/tiers/active.d.ts +9 -0
- package/dist/with-audit/tiers/index.d.ts +122 -0
- package/dist/with-audit/tiers/strategy.d.ts +35 -0
- package/dist/with-cargo/active.d.ts +11 -0
- package/dist/with-cargo/adopt-partition.d.ts +81 -0
- package/dist/with-cargo/decrypt-partition.d.ts +19 -0
- package/dist/with-cargo/describe-extraction.d.ts +33 -0
- package/dist/with-cargo/extract-partition.d.ts +147 -0
- package/dist/with-cargo/index.d.ts +33 -0
- package/dist/with-cargo/strategy.d.ts +30 -0
- package/dist/with-cargo/vault-diff.d.ts +144 -0
- package/dist/with-cargo/walk-closure.d.ts +38 -0
- package/dist/with-commit/crdt/active.d.ts +25 -0
- package/dist/with-commit/crdt/crdt.d.ts +42 -0
- package/dist/with-commit/crdt/index.d.ts +16 -0
- package/dist/with-commit/crdt/strategy.d.ts +25 -0
- package/dist/with-commit/history/active.d.ts +40 -0
- package/dist/with-commit/history/diff.d.ts +23 -0
- package/dist/with-commit/history/history.d.ts +27 -0
- package/dist/with-commit/history/index.d.ts +30 -0
- package/dist/with-commit/history/ledger/constants.d.ts +37 -0
- package/dist/with-commit/history/ledger/entry.d.ts +195 -0
- package/dist/with-commit/history/ledger/hash.d.ts +30 -0
- package/dist/with-commit/history/ledger/index.d.ts +19 -0
- package/dist/with-commit/history/ledger/patch.d.ts +99 -0
- package/dist/with-commit/history/ledger/store.d.ts +335 -0
- package/dist/with-commit/history/strategy.d.ts +126 -0
- package/dist/with-commit/history/time-machine.d.ts +179 -0
- package/dist/with-commit/numbering/descriptor.d.ts +27 -0
- package/dist/with-commit/numbering/index.d.ts +69 -0
- package/dist/with-commit/sequence/active.d.ts +10 -0
- package/dist/with-commit/sequence/index.d.ts +150 -0
- package/dist/with-commit/sequence/strategy.d.ts +26 -0
- package/dist/with-commit/tx/active.d.ts +27 -0
- package/dist/with-commit/tx/dry-run.d.ts +29 -0
- package/dist/with-commit/tx/elevated-handle.d.ts +58 -0
- package/dist/with-commit/tx/index.d.ts +13 -0
- package/dist/with-commit/tx/invariants.d.ts +68 -0
- package/dist/with-commit/tx/strategy.d.ts +23 -0
- package/dist/with-commit/tx/transaction.d.ts +212 -0
- package/dist/with-fork/archive/engine.d.ts +71 -0
- package/dist/with-fork/archive/index.d.ts +23 -0
- package/dist/with-fork/shadow/active.d.ts +6 -0
- package/dist/with-fork/shadow/index.d.ts +14 -0
- package/dist/with-fork/shadow/strategy.d.ts +28 -0
- package/dist/with-fork/shadow/vault-frame.d.ts +93 -0
- package/dist/with-fork/snapshots/active.d.ts +20 -0
- package/dist/with-fork/snapshots/engine.d.ts +36 -0
- package/dist/with-fork/snapshots/index.d.ts +5 -0
- package/dist/with-fork/snapshots/noydb-facade.d.ts +64 -0
- package/dist/with-fork/snapshots/policy.d.ts +23 -0
- package/dist/with-fork/snapshots/scheduler.d.ts +34 -0
- package/dist/with-fork/snapshots/strategy.d.ts +48 -0
- package/dist/with-formula/computed/index.d.ts +48 -0
- package/dist/with-formula/computed/lazy.d.ts +13 -0
- package/dist/with-formula/derivations/executor.d.ts +61 -0
- package/dist/with-formula/derivations/fanout-sidecar.d.ts +75 -0
- package/dist/with-formula/derivations/index.d.ts +6 -0
- package/dist/with-formula/derivations/registry.d.ts +67 -0
- package/dist/with-formula/derivations/stale.d.ts +39 -0
- package/dist/with-formula/derivations/strategy-hash.d.ts +1 -0
- package/dist/with-formula/derivations/types.d.ts +248 -0
- package/dist/with-formula/derivations/with-derivation.d.ts +10 -0
- package/dist/with-formula/derivations/with-rollup.d.ts +34 -0
- package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +58 -0
- package/dist/with-formula/materialized-views/executor.d.ts +71 -0
- package/dist/with-formula/materialized-views/index.d.ts +11 -0
- package/dist/with-formula/materialized-views/query-hash.d.ts +23 -0
- package/dist/with-formula/materialized-views/registry.d.ts +99 -0
- package/dist/with-formula/materialized-views/stale.d.ts +62 -0
- package/dist/with-formula/materialized-views/types.d.ts +318 -0
- package/dist/with-formula/materialized-views/with-materialized-view.d.ts +24 -0
- package/dist/with-formula/overlay-views/index.d.ts +5 -0
- package/dist/with-formula/overlay-views/registry.d.ts +42 -0
- package/dist/with-formula/overlay-views/types.d.ts +97 -0
- package/dist/with-formula/overlay-views/virtual-collection.d.ts +90 -0
- package/dist/with-formula/overlay-views/with-overlayed-view.d.ts +9 -0
- package/dist/with-lookup/aggregate/active.d.ts +33 -0
- package/dist/with-lookup/aggregate/aggregation.d.ts +166 -0
- package/dist/with-lookup/aggregate/canonical-key.d.ts +16 -0
- package/dist/with-lookup/aggregate/groupby.d.ts +280 -0
- package/dist/with-lookup/aggregate/index.d.ts +23 -0
- package/dist/with-lookup/aggregate/reducers.d.ts +257 -0
- package/dist/with-lookup/aggregate/strategy.d.ts +59 -0
- package/dist/with-lookup/embeddings/cosine.d.ts +2 -0
- package/dist/with-lookup/embeddings/descriptor.d.ts +8 -0
- package/dist/with-lookup/embeddings/index.d.ts +3 -0
- package/dist/with-lookup/embeddings/vector-set.d.ts +19 -0
- package/dist/with-lookup/indexing/active.d.ts +30 -0
- package/dist/with-lookup/indexing/collection-facade.d.ts +120 -0
- package/dist/with-lookup/indexing/eager-indexes.d.ts +122 -0
- package/dist/with-lookup/indexing/index.d.ts +27 -0
- package/dist/with-lookup/indexing/lazy-builder.d.ts +102 -0
- package/dist/with-lookup/indexing/persisted-indexes.d.ts +229 -0
- package/dist/with-lookup/indexing/strategy.d.ts +56 -0
- package/dist/with-lookup/indexing/unique-constraints.d.ts +74 -0
- package/dist/with-lookup/search/active.d.ts +10 -0
- package/dist/with-lookup/search/build-docs.d.ts +15 -0
- package/dist/with-lookup/search/collection-facade.d.ts +123 -0
- package/dist/with-lookup/search/fuse.d.ts +22 -0
- package/dist/with-lookup/search/index-store.d.ts +19 -0
- package/dist/with-lookup/search/index.d.ts +19 -0
- package/dist/with-lookup/search/inverted-index.d.ts +47 -0
- package/dist/with-lookup/search/persisted-index-store.d.ts +41 -0
- package/dist/with-lookup/search/retrieve-types.d.ts +29 -0
- package/dist/with-lookup/search/scan.d.ts +28 -0
- package/dist/with-lookup/search/segment.d.ts +15 -0
- package/dist/with-lookup/search/serialize.d.ts +4 -0
- package/dist/with-lookup/search/snippet.d.ts +5 -0
- package/dist/with-lookup/search/strategy.d.ts +37 -0
- package/dist/with-lookup/search/tokenize.d.ts +12 -0
- package/dist/with-party/auth-introspection/index.d.ts +44 -0
- package/dist/with-party/broker/active.d.ts +23 -0
- package/dist/with-party/broker/index.d.ts +28 -0
- package/dist/with-party/broker/seed.d.ts +77 -0
- package/dist/with-party/custody/active.d.ts +10 -0
- package/dist/with-party/custody/index.d.ts +69 -0
- package/dist/with-party/custody/liberate.d.ts +64 -0
- package/dist/with-party/custody/strategy.d.ts +48 -0
- package/dist/with-party/directory/index.d.ts +11 -0
- package/dist/with-party/directory/public-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/public-envelope/schema.d.ts +24 -0
- package/dist/with-party/directory/public-envelope/storage.d.ts +59 -0
- package/dist/with-party/directory/public-envelope/types.d.ts +80 -0
- package/dist/with-party/directory/storage.d.ts +33 -0
- package/dist/with-party/directory/types.d.ts +43 -0
- package/dist/with-party/directory/user-envelope/api.d.ts +201 -0
- package/dist/with-party/directory/user-envelope/index.d.ts +12 -0
- package/dist/with-party/directory/user-envelope/storage.d.ts +54 -0
- package/dist/with-party/directory/visibility.d.ts +47 -0
- package/dist/with-party/policy/engine.d.ts +60 -0
- package/dist/with-party/policy/index.d.ts +15 -0
- package/dist/with-party/policy/noydb-facade.d.ts +39 -0
- package/dist/with-party/policy/presets.d.ts +38 -0
- package/dist/with-party/policy/storage.d.ts +31 -0
- package/dist/with-party/session/active.d.ts +34 -0
- package/dist/with-party/session/dev-unlock.d.ts +128 -0
- package/dist/with-party/session/index.d.ts +23 -0
- package/dist/with-party/session/session-policy.d.ts +92 -0
- package/dist/with-party/session/session.d.ts +131 -0
- package/dist/with-party/session/strategy.d.ts +42 -0
- package/dist/with-party/session/unlock-state.d.ts +47 -0
- package/dist/with-party/sync/index.d.ts +31 -0
- package/dist/with-party/tab-coordination.d.ts +73 -0
- package/dist/with-party/tab-write-relay.d.ts +39 -0
- package/dist/with-party/team/active.d.ts +13 -0
- package/dist/with-party/team/authenticators.d.ts +95 -0
- package/dist/with-party/team/deed.d.ts +97 -0
- package/dist/with-party/team/delegation.d.ts +88 -0
- package/dist/with-party/team/index.d.ts +38 -0
- package/dist/with-party/team/keyring.d.ts +318 -0
- package/dist/with-party/team/magic-link-grant.d.ts +152 -0
- package/dist/with-party/team/managed-passphrase.d.ts +280 -0
- package/dist/with-party/team/noydb-facade.d.ts +484 -0
- package/dist/with-party/team/peer-recover.d.ts +81 -0
- package/dist/with-party/team/presence.d.ts +81 -0
- package/dist/with-party/team/recovery.d.ts +191 -0
- package/dist/with-party/team/reserved-secret-collections.d.ts +41 -0
- package/dist/with-party/team/rotate-recover.d.ts +275 -0
- package/dist/with-party/team/shamir-recovery-provider.d.ts +15 -0
- package/dist/with-party/team/strategy.d.ts +9 -0
- package/dist/with-party/team/sync-active.d.ts +33 -0
- package/dist/with-party/team/sync-credentials.d.ts +113 -0
- package/dist/with-party/team/sync-strategy.d.ts +67 -0
- package/dist/with-party/team/sync-transaction.d.ts +39 -0
- package/dist/with-party/team/sync.d.ts +174 -0
- package/dist/with-party/team/tiers.d.ts +39 -0
- package/dist/with-party/team/wrapped-deks.d.ts +86 -0
- package/dist/with-pod/backup.d.ts +74 -0
- package/dist/with-pod/bundle.d.ts +414 -0
- package/dist/with-pod/format.d.ts +203 -0
- package/dist/with-pod/index.d.ts +20 -0
- package/dist/with-pod/pod-store.d.ts +54 -0
- package/dist/with-pod/ulid.d.ts +64 -0
- package/dist/with-shape/blobs/blob-compaction.d.ts +170 -0
- package/dist/with-shape/blobs/blob-set.d.ts +342 -0
- package/dist/with-shape/blobs/export-blobs.d.ts +110 -0
- package/dist/with-shape/blobs/import-external.d.ts +50 -0
- package/dist/with-shape/blobs/mime-magic.d.ts +48 -0
- package/dist/with-shape/blobs/object-projection.d.ts +70 -0
- package/dist/with-shape/introspection/describe.d.ts +237 -0
- package/dist/with-shape/introspection/field-meta.d.ts +61 -0
- package/dist/with-shape/introspection/fields.d.ts +14 -0
- package/dist/with-shape/introspection/index.d.ts +12 -0
- package/dist/with-shape/introspection/json-schema.d.ts +13 -0
- package/dist/with-shape/introspection/meta.d.ts +22 -0
- package/dist/with-shape/introspection/projection.d.ts +13 -0
- package/dist/with-shape/introspection/types.d.ts +154 -0
- package/dist/with-shape/introspection/walk.d.ts +50 -0
- package/dist/with-shape/links/lazy-handle.d.ts +36 -0
- package/dist/with-shape/links/link-set.d.ts +67 -0
- package/dist/with-shape/links/names.d.ts +65 -0
- package/dist/with-shape/links/vault-facade.d.ts +211 -0
- package/dist/with-shape/persisted-schemas/canonicalize.d.ts +11 -0
- package/dist/with-shape/persisted-schemas/derive.d.ts +29 -0
- package/dist/with-shape/persisted-schemas/index.d.ts +21 -0
- package/dist/with-shape/persisted-schemas/register.d.ts +66 -0
- package/dist/with-shape/persisted-schemas/storage.d.ts +61 -0
- package/dist/with-shape/persisted-schemas/types.d.ts +54 -0
- package/dist/with-shape/satellites/dead-filter.d.ts +21 -0
- package/dist/with-shape/satellites/declare.d.ts +60 -0
- package/dist/with-shape/satellites/existence.d.ts +5 -0
- package/dist/with-shape/satellites/fanout.d.ts +38 -0
- package/dist/with-shape/satellites/forget.d.ts +47 -0
- package/dist/with-shape/satellites/index.d.ts +3 -0
- package/dist/with-shape/satellites/joined.d.ts +19 -0
- package/dist/with-shape/satellites/marker.d.ts +10 -0
- package/dist/with-shape/satellites/migrate-cek.d.ts +26 -0
- package/dist/with-shape/satellites/post-register.d.ts +6 -0
- package/dist/with-shape/satellites/proxy.d.ts +37 -0
- package/dist/with-shape/satellites/raw-target.d.ts +14 -0
- package/dist/with-shape/satellites/registry.d.ts +19 -0
- package/dist/with-shape/satellites/types.d.ts +37 -0
- package/dist/with-shape/satellites/validate.d.ts +17 -0
- package/dist/with-shape/schema-update/client-registry.d.ts +35 -0
- package/dist/with-shape/schema-update/cutover.d.ts +5 -0
- package/dist/with-shape/schema-update/delta.d.ts +2 -0
- package/dist/with-shape/schema-update/dispatch.d.ts +3 -0
- package/dist/with-shape/schema-update/fence-controller.d.ts +62 -0
- package/dist/with-shape/schema-update/fence-watcher.d.ts +37 -0
- package/dist/with-shape/schema-update/fence.d.ts +15 -0
- package/dist/with-shape/schema-update/gate.d.ts +16 -0
- package/dist/with-shape/schema-update/index.d.ts +6 -0
- package/dist/with-shape/schema-update/store-coordination-provider.d.ts +29 -0
- package/dist/with-shape/schema-update/strategies.d.ts +12 -0
- package/dist/with-shape/schema-update/types.d.ts +53 -0
- package/dist/with-store/index.d.ts +15 -0
- package/dist/with-store/lazy/active.d.ts +12 -0
- package/dist/with-store/lazy/index.d.ts +14 -0
- package/dist/with-store/lazy/strategy.d.ts +9 -0
- package/dist/with-store/route-store.d.ts +259 -0
- package/dist/with-store/store-middleware.d.ts +189 -0
- package/dist/withdraw-accessible-FMN4LPJZ.js +28 -0
- package/package.json +47 -43
- package/dist/aggregate/index.d.ts +0 -41
- package/dist/api-TX2EX2FX.js +0 -20
- package/dist/as/index.d.ts +0 -6
- package/dist/at/index.d.ts +0 -4
- package/dist/attestation/index.d.ts +0 -19
- package/dist/backup-R7NTDFKY.js +0 -225
- package/dist/blobs/index.d.ts +0 -43
- package/dist/bundle/index.d.ts +0 -121
- package/dist/bundle-D6GxiUfq.d.ts +0 -548
- package/dist/by/index.d.ts +0 -1
- package/dist/cargo/index.d.ts +0 -7
- package/dist/chunk-2OV5NVE7.js +0 -95
- package/dist/chunk-2OZXVKVP.js +0 -367
- package/dist/chunk-2REPHKET.js +0 -54
- package/dist/chunk-3JXPAHOZ.js +0 -686
- package/dist/chunk-3MATJ6O4.js +0 -367
- package/dist/chunk-3OPY6MK2.js +0 -404
- package/dist/chunk-3QSIU3UT.js +0 -291
- package/dist/chunk-4OMCIY6F.js +0 -99
- package/dist/chunk-5I35DOHK.js +0 -94
- package/dist/chunk-5VG4IJR7.js +0 -235
- package/dist/chunk-5YESYH2C.js +0 -155
- package/dist/chunk-6G5ORS5D.js +0 -202
- package/dist/chunk-6P5XCKSD.js +0 -71
- package/dist/chunk-6S7T6WC4.js +0 -111
- package/dist/chunk-6S7T6WC4.js.map +0 -1
- package/dist/chunk-7BWJHO2A.js +0 -34
- package/dist/chunk-7P2SDJG3.js +0 -279
- package/dist/chunk-7P2SDJG3.js.map +0 -1
- package/dist/chunk-ANB77BVV.js +0 -150
- package/dist/chunk-ANB77BVV.js.map +0 -1
- package/dist/chunk-BKARNZJN.js +0 -382
- package/dist/chunk-BQISD5ZV.js +0 -261
- package/dist/chunk-BUAQ7YI3.js +0 -1697
- package/dist/chunk-BUAQ7YI3.js.map +0 -1
- package/dist/chunk-CB7CWSKW.js +0 -430
- package/dist/chunk-CB7CWSKW.js.map +0 -1
- package/dist/chunk-DFVUTGT2.js +0 -515
- package/dist/chunk-DJ7KIPLV.js +0 -23
- package/dist/chunk-DSKDQP3G.js +0 -14066
- package/dist/chunk-DSKDQP3G.js.map +0 -1
- package/dist/chunk-DV4HUP5G.js +0 -99
- package/dist/chunk-EOXAAJTY.js +0 -621
- package/dist/chunk-ET67AY6B.js +0 -74
- package/dist/chunk-F4CEK5YM.js +0 -123
- package/dist/chunk-FORYWFN6.js +0 -130
- package/dist/chunk-FRP6D2DM.js +0 -91
- package/dist/chunk-FUOE7UUV.js +0 -341
- package/dist/chunk-FUOE7UUV.js.map +0 -1
- package/dist/chunk-G4JYND6L.js +0 -42
- package/dist/chunk-G6XV4H65.js +0 -59
- package/dist/chunk-GNMXXTMN.js +0 -85
- package/dist/chunk-HPWKV3YB.js +0 -21
- package/dist/chunk-HY3AUMFI.js +0 -41
- package/dist/chunk-HYR4WZZ3.js +0 -69
- package/dist/chunk-ICXIFFYZ.js +0 -355
- package/dist/chunk-ICXIFFYZ.js.map +0 -1
- package/dist/chunk-IVLTXX4W.js +0 -280
- package/dist/chunk-J4LPNIGK.js +0 -777
- package/dist/chunk-JJZ2LW6T.js +0 -36
- package/dist/chunk-KJ2BCBTL.js +0 -589
- package/dist/chunk-KNZB6JMR.js +0 -129
- package/dist/chunk-LEJIKBBB.js +0 -124
- package/dist/chunk-LL2NIVUR.js +0 -188
- package/dist/chunk-MCHVVJIA.js +0 -968
- package/dist/chunk-MCHVVJIA.js.map +0 -1
- package/dist/chunk-NUEQU36L.js +0 -392
- package/dist/chunk-O45M6LDB.js +0 -38
- package/dist/chunk-OBKWYKYC.js +0 -117
- package/dist/chunk-OHHKHSJP.js +0 -209
- package/dist/chunk-OT76OZL6.js +0 -45
- package/dist/chunk-OVYRLHPE.js +0 -150
- package/dist/chunk-OXCSVM3B.js +0 -155
- package/dist/chunk-P33LUIML.js +0 -205
- package/dist/chunk-PLS64NCS.js +0 -59
- package/dist/chunk-PS2NEWEX.js +0 -36
- package/dist/chunk-QA2KUPCP.js +0 -45
- package/dist/chunk-QOC3VYL2.js +0 -30
- package/dist/chunk-QSFOZUYL.js +0 -823
- package/dist/chunk-RHK32N73.js +0 -30
- package/dist/chunk-RW3Y22MW.js +0 -97
- package/dist/chunk-S7VFUQM2.js +0 -1484
- package/dist/chunk-S7VFUQM2.js.map +0 -1
- package/dist/chunk-T7WSLRAU.js +0 -49
- package/dist/chunk-TAKWLZZX.js +0 -944
- package/dist/chunk-TAKWLZZX.js.map +0 -1
- package/dist/chunk-TMBXVJKT.js +0 -75
- package/dist/chunk-TWKKOM55.js +0 -54
- package/dist/chunk-U3WZCU7E.js +0 -14
- package/dist/chunk-UF362QVH.js +0 -70
- package/dist/chunk-UN4FVIBH.js +0 -135
- package/dist/chunk-VEAVKDDB.js +0 -29
- package/dist/chunk-VEPTFUJY.js +0 -29
- package/dist/chunk-VJV7GKQK.js +0 -662
- package/dist/chunk-VQRAIPYF.js +0 -50
- package/dist/chunk-VRIYFLBA.js +0 -74
- package/dist/chunk-VWM3DAVB.js +0 -265
- package/dist/chunk-VWRRVE6D.js +0 -80
- package/dist/chunk-WBJIQSLL.js +0 -167
- package/dist/chunk-WBJIQSLL.js.map +0 -1
- package/dist/chunk-WIGQB62E.js +0 -164
- package/dist/chunk-WZSCE6RM.js +0 -466
- package/dist/chunk-WZSCE6RM.js.map +0 -1
- package/dist/chunk-XGDAPN6M.js +0 -255
- package/dist/chunk-XH7XP3OL.js +0 -1221
- package/dist/chunk-XREOISSI.js +0 -40
- package/dist/chunk-XUBPSPKD.js +0 -164
- package/dist/chunk-Y3A5CB5G.js +0 -247
- package/dist/chunk-YCXCR7VG.js +0 -230
- package/dist/chunk-YMVQD5Q5.js +0 -453
- package/dist/chunk-YN5IAHN6.js +0 -32
- package/dist/chunk-YN5IAHN6.js.map +0 -1
- package/dist/chunk-ZYJ55N7N.js +0 -86
- package/dist/classified/index.d.ts +0 -16
- package/dist/classified-marker-H6YSHYNK.js +0 -24
- package/dist/classified-marker-H6YSHYNK.js.map +0 -1
- package/dist/collection-facade-LVD22JLM.js +0 -39
- package/dist/computed-EXDMQODG.js +0 -11
- package/dist/consent/index.d.ts +0 -22
- package/dist/crdt/index.d.ts +0 -33
- package/dist/dead-filter-HQIE2YG7.js +0 -28
- package/dist/decrypt-partition-IHtxEnTi.d.ts +0 -21
- package/dist/delegation-BJP73GAP.js +0 -25
- package/dist/derivations/index.d.ts +0 -69
- package/dist/derive-BME7HDWO.js +0 -21
- package/dist/dev-unlock-Bmm2pgJ0.d.ts +0 -263
- package/dist/discriminant-BN9REW3o.d.ts +0 -60
- package/dist/enclave-NHORSWSF.js +0 -125
- package/dist/executor-FE6X4LFX.js +0 -9
- package/dist/executor-KSHKRJXP.js +0 -25
- package/dist/executor-ZHTJJICG.js +0 -9
- package/dist/export-accessible-DACHM5VT.js +0 -23
- package/dist/extract-partition-RNENZZ4T.js +0 -36
- package/dist/fanout-sidecar-OFWN3NM7.js +0 -74
- package/dist/find-BNGBJNKP.js +0 -11
- package/dist/forget/index.d.ts +0 -36
- package/dist/guards/index.d.ts +0 -34
- package/dist/hash-DAJjMsCE.d.ts +0 -72
- package/dist/history/index.d.ts +0 -60
- package/dist/i18n/index.d.ts +0 -56
- package/dist/in/index.d.ts +0 -4
- package/dist/index-B9QdHytu.d.ts +0 -123
- package/dist/index-DjWbxsjb.d.ts +0 -23579
- package/dist/index-qwuNvO2B.d.ts +0 -144
- package/dist/indexing/index.d.ts +0 -38
- package/dist/issue-NDI4CVZU.js +0 -19
- package/dist/lazy/index.d.ts +0 -20
- package/dist/ledger-6NDS2EO4.js +0 -42
- package/dist/liberate-HN3RIGIP.js +0 -24
- package/dist/link-set-SJB2MVJV.js +0 -31
- package/dist/materialized-views/index.d.ts +0 -189
- package/dist/mime-magic-bBj5OgUC.d.ts +0 -103
- package/dist/noydb-BWF6EPIR.js +0 -66
- package/dist/on/index.d.ts +0 -4
- package/dist/overlay-views/index.d.ts +0 -97
- package/dist/periods/index.d.ts +0 -19
- package/dist/pod/index.d.ts +0 -62
- package/dist/policy-WGNAG5H6.js +0 -41
- package/dist/portability/index.d.ts +0 -19
- package/dist/post-register-CWKBQRC7.js +0 -55
- package/dist/post-register-CWKBQRC7.js.map +0 -1
- package/dist/public-envelope-EJLVIFX7.js +0 -32
- package/dist/query/index.d.ts +0 -4
- package/dist/register-SBIX7TVV.js +0 -23
- package/dist/registry-3EQG6OOE.js +0 -18
- package/dist/registry-CA327ACV.js +0 -9
- package/dist/registry-E7OXOTSV.js +0 -19
- package/dist/request-withdrawal-KAH2AAXC.js +0 -31
- package/dist/reveal-R3JLHMUF.js +0 -38
- package/dist/revoke-IXLOJ3IH.js +0 -24
- package/dist/satellites/index.d.ts +0 -4
- package/dist/sealed-record/index.d.ts +0 -68
- package/dist/session/index.d.ts +0 -43
- package/dist/shadow/index.d.ts +0 -14
- package/dist/signer-Y46N2GJ3.js +0 -25
- package/dist/snapshots/index.d.ts +0 -25
- package/dist/stale-Z7IW6RIL.js +0 -14
- package/dist/storage-ADNP2UWI.js +0 -23
- package/dist/store-coordination-provider-DTDMI6VL.js +0 -142
- package/dist/subject-index-CyOgGMJL.d.ts +0 -380
- package/dist/sync/index.d.ts +0 -40
- package/dist/team/index.d.ts +0 -154
- package/dist/tiers/index.d.ts +0 -4
- package/dist/to/index.d.ts +0 -4
- package/dist/transition-guard-DI-krBsZ.d.ts +0 -165
- package/dist/tx/index.d.ts +0 -34
- package/dist/ui/index.d.ts +0 -4
- package/dist/ulid-DRH25k3y.d.ts +0 -66
- package/dist/util/index.d.ts +0 -79
- package/dist/validators-BUcli5Nh.d.ts +0 -101
- package/dist/vault-diff-Z2DUayMe.d.ts +0 -147
- package/dist/verify-JPF2YR5E.js +0 -139
- package/dist/walk-XYA2O3LW.js +0 -241
- package/dist/with/index.d.ts +0 -37
- package/dist/with-materialized-view-BUmzlXue.d.ts +0 -27
- package/dist/with-overlayed-view-m4FaXXTO.d.ts +0 -12
- package/dist/with-rollup-DEKGI9vb.d.ts +0 -47
- package/dist/withdraw-accessible-WLV4MTEN.js +0 -28
- /package/dist/{api-TX2EX2FX.js.map → api-3TH2GOFQ.js.map} +0 -0
- /package/dist/{backup-R7NTDFKY.js.map → backup-2WVBIVXW.js.map} +0 -0
- /package/dist/{chunk-TMBXVJKT.js.map → chunk-2MTRJCBI.js.map} +0 -0
- /package/dist/{chunk-3OPY6MK2.js.map → chunk-37WOJQWY.js.map} +0 -0
- /package/dist/{chunk-KJ2BCBTL.js.map → chunk-3QSOFZQB.js.map} +0 -0
- /package/dist/{chunk-DV4HUP5G.js.map → chunk-44IL5G3W.js.map} +0 -0
- /package/dist/{chunk-HYR4WZZ3.js.map → chunk-45QPICLE.js.map} +0 -0
- /package/dist/{chunk-XUBPSPKD.js.map → chunk-4BQXMCE5.js.map} +0 -0
- /package/dist/{chunk-RHK32N73.js.map → chunk-5HNX4OD4.js.map} +0 -0
- /package/dist/{chunk-2REPHKET.js.map → chunk-65VLRG3I.js.map} +0 -0
- /package/dist/{chunk-G6XV4H65.js.map → chunk-6MA575R5.js.map} +0 -0
- /package/dist/{chunk-F4CEK5YM.js.map → chunk-7GAXFU2O.js.map} +0 -0
- /package/dist/{chunk-6G5ORS5D.js.map → chunk-7QLY64AD.js.map} +0 -0
- /package/dist/{chunk-5VG4IJR7.js.map → chunk-7ZOSHEVS.js.map} +0 -0
- /package/dist/{chunk-LEJIKBBB.js.map → chunk-APHLCXVC.js.map} +0 -0
- /package/dist/{chunk-KNZB6JMR.js.map → chunk-BDEMZD4F.js.map} +0 -0
- /package/dist/{chunk-VJV7GKQK.js.map → chunk-BDPAVYGJ.js.map} +0 -0
- /package/dist/{chunk-G4JYND6L.js.map → chunk-BLUT46UP.js.map} +0 -0
- /package/dist/{chunk-J4LPNIGK.js.map → chunk-CCIR2OJH.js.map} +0 -0
- /package/dist/{chunk-5YESYH2C.js.map → chunk-CXC3JLAQ.js.map} +0 -0
- /package/dist/{chunk-XH7XP3OL.js.map → chunk-CZMCOFEA.js.map} +0 -0
- /package/dist/{chunk-WIGQB62E.js.map → chunk-DIB2BOIH.js.map} +0 -0
- /package/dist/{chunk-UF362QVH.js.map → chunk-EIZ4YOG2.js.map} +0 -0
- /package/dist/{chunk-DFVUTGT2.js.map → chunk-EVHBK7BN.js.map} +0 -0
- /package/dist/{chunk-ET67AY6B.js.map → chunk-EXGDL2UQ.js.map} +0 -0
- /package/dist/{chunk-YMVQD5Q5.js.map → chunk-F3LGBRSV.js.map} +0 -0
- /package/dist/{chunk-NUEQU36L.js.map → chunk-F44XWXOA.js.map} +0 -0
- /package/dist/{chunk-YCXCR7VG.js.map → chunk-FF7S3XDW.js.map} +0 -0
- /package/dist/{chunk-OXCSVM3B.js.map → chunk-FJTWLQV3.js.map} +0 -0
- /package/dist/{chunk-PS2NEWEX.js.map → chunk-FYNE4WLC.js.map} +0 -0
- /package/dist/{chunk-FORYWFN6.js.map → chunk-GL3JV5EV.js.map} +0 -0
- /package/dist/{chunk-VEAVKDDB.js.map → chunk-GXLZXD2W.js.map} +0 -0
- /package/dist/{chunk-3JXPAHOZ.js.map → chunk-HBBZWEC5.js.map} +0 -0
- /package/dist/{chunk-LL2NIVUR.js.map → chunk-HG76BZ6G.js.map} +0 -0
- /package/dist/{chunk-O45M6LDB.js.map → chunk-HGAB325C.js.map} +0 -0
- /package/dist/{chunk-T7WSLRAU.js.map → chunk-HK4XTXO4.js.map} +0 -0
- /package/dist/{chunk-U3WZCU7E.js.map → chunk-HYG32HCM.js.map} +0 -0
- /package/dist/{chunk-UN4FVIBH.js.map → chunk-ILF5GARW.js.map} +0 -0
- /package/dist/{chunk-BKARNZJN.js.map → chunk-INBQ43DI.js.map} +0 -0
- /package/dist/{chunk-Y3A5CB5G.js.map → chunk-IQIVD7TP.js.map} +0 -0
- /package/dist/{chunk-QA2KUPCP.js.map → chunk-J3JIYFYL.js.map} +0 -0
- /package/dist/{chunk-OVYRLHPE.js.map → chunk-JGUZMC3I.js.map} +0 -0
- /package/dist/{chunk-VWRRVE6D.js.map → chunk-JRKE5MAZ.js.map} +0 -0
- /package/dist/{chunk-XGDAPN6M.js.map → chunk-K2DLLK34.js.map} +0 -0
- /package/dist/{chunk-7BWJHO2A.js.map → chunk-KKYEZCQG.js.map} +0 -0
- /package/dist/{chunk-TWKKOM55.js.map → chunk-NAR6IDKH.js.map} +0 -0
- /package/dist/{chunk-OBKWYKYC.js.map → chunk-NEYKOESM.js.map} +0 -0
- /package/dist/{chunk-VEPTFUJY.js.map → chunk-NM3IFKBL.js.map} +0 -0
- /package/dist/{chunk-4OMCIY6F.js.map → chunk-NRYNRSGV.js.map} +0 -0
- /package/dist/{chunk-PLS64NCS.js.map → chunk-NT2ZO4KI.js.map} +0 -0
- /package/dist/{chunk-5I35DOHK.js.map → chunk-P2LJI6JE.js.map} +0 -0
- /package/dist/{chunk-QSFOZUYL.js.map → chunk-PH7G7ZI7.js.map} +0 -0
- /package/dist/{chunk-OHHKHSJP.js.map → chunk-PN5332SU.js.map} +0 -0
- /package/dist/{chunk-OT76OZL6.js.map → chunk-QF5LGMSV.js.map} +0 -0
- /package/dist/{chunk-3MATJ6O4.js.map → chunk-QG5RQQBO.js.map} +0 -0
- /package/dist/{chunk-DJ7KIPLV.js.map → chunk-QYPDYN23.js.map} +0 -0
- /package/dist/{chunk-IVLTXX4W.js.map → chunk-RNXJ2VO6.js.map} +0 -0
- /package/dist/{chunk-RW3Y22MW.js.map → chunk-RXTMLYJS.js.map} +0 -0
- /package/dist/{chunk-QOC3VYL2.js.map → chunk-S2OWPVSO.js.map} +0 -0
- /package/dist/{chunk-P33LUIML.js.map → chunk-S7TAPIRS.js.map} +0 -0
- /package/dist/{chunk-XREOISSI.js.map → chunk-SAL5X5OK.js.map} +0 -0
- /package/dist/{chunk-GNMXXTMN.js.map → chunk-SGJGWBSC.js.map} +0 -0
- /package/dist/{chunk-VQRAIPYF.js.map → chunk-SIAIYP6G.js.map} +0 -0
- /package/dist/{chunk-BQISD5ZV.js.map → chunk-TBNF5DV5.js.map} +0 -0
- /package/dist/{chunk-HPWKV3YB.js.map → chunk-TVOHSPVK.js.map} +0 -0
- /package/dist/{chunk-HY3AUMFI.js.map → chunk-TVS6BUUR.js.map} +0 -0
- /package/dist/{chunk-ZYJ55N7N.js.map → chunk-UMC5QZTX.js.map} +0 -0
- /package/dist/{chunk-2OZXVKVP.js.map → chunk-US34HTOI.js.map} +0 -0
- /package/dist/{chunk-EOXAAJTY.js.map → chunk-VCUQR6ZL.js.map} +0 -0
- /package/dist/{chunk-6P5XCKSD.js.map → chunk-WEHIQYQH.js.map} +0 -0
- /package/dist/{chunk-VWM3DAVB.js.map → chunk-WHQHTNT7.js.map} +0 -0
- /package/dist/{chunk-VRIYFLBA.js.map → chunk-X6Y5MXTH.js.map} +0 -0
- /package/dist/{chunk-3QSIU3UT.js.map → chunk-XJ47GS53.js.map} +0 -0
- /package/dist/{chunk-2OV5NVE7.js.map → chunk-XS6DLN67.js.map} +0 -0
- /package/dist/{chunk-FRP6D2DM.js.map → chunk-Y5TWPBNW.js.map} +0 -0
- /package/dist/{chunk-JJZ2LW6T.js.map → chunk-ZHOJOT6S.js.map} +0 -0
- /package/dist/{collection-facade-LVD22JLM.js.map → collection-facade-DWA735G2.js.map} +0 -0
- /package/dist/{computed-EXDMQODG.js.map → computed-ORCGM5JE.js.map} +0 -0
- /package/dist/{dead-filter-HQIE2YG7.js.map → dead-filter-OV5FGKOG.js.map} +0 -0
- /package/dist/{delegation-BJP73GAP.js.map → delegation-YVSHMIZZ.js.map} +0 -0
- /package/dist/{derive-BME7HDWO.js.map → derive-BUO555L5.js.map} +0 -0
- /package/dist/{enclave-NHORSWSF.js.map → enclave-XXFUKJC6.js.map} +0 -0
- /package/dist/{executor-FE6X4LFX.js.map → executor-6OCCE5VM.js.map} +0 -0
- /package/dist/{executor-KSHKRJXP.js.map → executor-JFVAJY42.js.map} +0 -0
- /package/dist/{executor-ZHTJJICG.js.map → executor-UPSH5O3F.js.map} +0 -0
- /package/dist/{export-accessible-DACHM5VT.js.map → export-accessible-L4A2QZA5.js.map} +0 -0
- /package/dist/{extract-partition-RNENZZ4T.js.map → extract-partition-ZHQ4RGGM.js.map} +0 -0
- /package/dist/{fanout-sidecar-OFWN3NM7.js.map → fanout-sidecar-IO2KDUWV.js.map} +0 -0
- /package/dist/{find-BNGBJNKP.js.map → find-ZFZDZQ2U.js.map} +0 -0
- /package/dist/{issue-NDI4CVZU.js.map → issue-OG4V23SQ.js.map} +0 -0
- /package/dist/{ledger-6NDS2EO4.js.map → ledger-UAQKPWNM.js.map} +0 -0
- /package/dist/{liberate-HN3RIGIP.js.map → liberate-GFUQJRK5.js.map} +0 -0
- /package/dist/{link-set-SJB2MVJV.js.map → link-set-DGYUOFVD.js.map} +0 -0
- /package/dist/{noydb-BWF6EPIR.js.map → noydb-AKH4AMCR.js.map} +0 -0
- /package/dist/{policy-WGNAG5H6.js.map → policy-5POYLI26.js.map} +0 -0
- /package/dist/{public-envelope-EJLVIFX7.js.map → public-envelope-GOG4LUM7.js.map} +0 -0
- /package/dist/{register-SBIX7TVV.js.map → register-ZI7YI7US.js.map} +0 -0
- /package/dist/{registry-3EQG6OOE.js.map → registry-DZ2T4LL7.js.map} +0 -0
- /package/dist/{registry-CA327ACV.js.map → registry-NVWEQ2GU.js.map} +0 -0
- /package/dist/{registry-E7OXOTSV.js.map → registry-SEKL74ET.js.map} +0 -0
- /package/dist/{request-withdrawal-KAH2AAXC.js.map → request-withdrawal-ZP3JIRVS.js.map} +0 -0
- /package/dist/{reveal-R3JLHMUF.js.map → reveal-NPVROV4D.js.map} +0 -0
- /package/dist/{revoke-IXLOJ3IH.js.map → revoke-VF6TAJK2.js.map} +0 -0
- /package/dist/{signer-Y46N2GJ3.js.map → signer-DRDDCCHW.js.map} +0 -0
- /package/dist/{stale-Z7IW6RIL.js.map → stale-TJXFQKOJ.js.map} +0 -0
- /package/dist/{storage-ADNP2UWI.js.map → storage-GR7KZRH4.js.map} +0 -0
- /package/dist/{store-coordination-provider-DTDMI6VL.js.map → store-coordination-provider-5KDS2RRP.js.map} +0 -0
- /package/dist/{verify-JPF2YR5E.js.map → verify-QK76NJ4G.js.map} +0 -0
- /package/dist/{walk-XYA2O3LW.js.map → walk-XQCBKSBW.js.map} +0 -0
- /package/dist/{withdraw-accessible-WLV4MTEN.js.map → withdraw-accessible-FMN4LPJZ.js.map} +0 -0
package/dist/chunk-XREOISSI.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
NOYDB_FORMAT_VERSION
|
|
3
|
-
} from "./chunk-YN5IAHN6.js";
|
|
4
|
-
|
|
5
|
-
// src/with-shape/schema-update/fence.ts
|
|
6
|
-
var FENCE_RECORD_ID = "schema-fence";
|
|
7
|
-
var META_COLLECTION = "_meta";
|
|
8
|
-
var DEFAULT_FENCE = { currentSchemaVersion: 0, fenceState: "normal" };
|
|
9
|
-
async function loadFence(store, vault) {
|
|
10
|
-
const envelope = await store.get(vault, META_COLLECTION, FENCE_RECORD_ID);
|
|
11
|
-
if (!envelope) return DEFAULT_FENCE;
|
|
12
|
-
try {
|
|
13
|
-
const parsed = JSON.parse(envelope._data);
|
|
14
|
-
if (!isFenceDoc(parsed)) return DEFAULT_FENCE;
|
|
15
|
-
return parsed;
|
|
16
|
-
} catch {
|
|
17
|
-
return DEFAULT_FENCE;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
async function saveFence(store, vault, fence) {
|
|
21
|
-
const envelope = {
|
|
22
|
-
_noydb: NOYDB_FORMAT_VERSION,
|
|
23
|
-
_v: 1,
|
|
24
|
-
_ts: (/* @__PURE__ */ new Date()).toISOString(),
|
|
25
|
-
_iv: "",
|
|
26
|
-
_data: JSON.stringify(fence)
|
|
27
|
-
};
|
|
28
|
-
await store.put(vault, META_COLLECTION, FENCE_RECORD_ID, envelope);
|
|
29
|
-
}
|
|
30
|
-
function isFenceDoc(x) {
|
|
31
|
-
if (x === null || typeof x !== "object") return false;
|
|
32
|
-
const o = x;
|
|
33
|
-
return typeof o["currentSchemaVersion"] === "number" && (o["fenceState"] === "normal" || o["fenceState"] === "draining" || o["fenceState"] === "migrating" || o["fenceState"] === "complete");
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export {
|
|
37
|
-
loadFence,
|
|
38
|
-
saveFence
|
|
39
|
-
};
|
|
40
|
-
//# sourceMappingURL=chunk-XREOISSI.js.map
|
package/dist/chunk-XUBPSPKD.js
DELETED
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ViaGraph
|
|
3
|
-
} from "./chunk-FUOE7UUV.js";
|
|
4
|
-
import {
|
|
5
|
-
sha256Hex
|
|
6
|
-
} from "./chunk-3OPY6MK2.js";
|
|
7
|
-
import {
|
|
8
|
-
DerivationCycleError
|
|
9
|
-
} from "./chunk-S7VFUQM2.js";
|
|
10
|
-
|
|
11
|
-
// src/with-formula/derivations/strategy-hash.ts
|
|
12
|
-
async function computeStrategyHash(source, outputKeys, derive, sources) {
|
|
13
|
-
const canonical = JSON.stringify({
|
|
14
|
-
source,
|
|
15
|
-
outputs: [...outputKeys].sort(),
|
|
16
|
-
derive: derive.toString(),
|
|
17
|
-
// Declared sibling sources — adding/removing a trigger
|
|
18
|
-
// collection invalidates cached derived records. Omitted when empty
|
|
19
|
-
// so strategies without siblings keep their existing hash.
|
|
20
|
-
...sources?.length ? { sources: [...sources].sort() } : {}
|
|
21
|
-
});
|
|
22
|
-
const bytes = new TextEncoder().encode(canonical);
|
|
23
|
-
return sha256Hex(bytes);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
// src/with-formula/derivations/registry.ts
|
|
27
|
-
var WHOLE_RECORD = "*";
|
|
28
|
-
function stripArtifactSuffix(displayId) {
|
|
29
|
-
const suffix = `.${WHOLE_RECORD}`;
|
|
30
|
-
return displayId.endsWith(suffix) ? displayId.slice(0, -suffix.length) : displayId;
|
|
31
|
-
}
|
|
32
|
-
var DerivationRegistry = class {
|
|
33
|
-
_bySource = /* @__PURE__ */ new Map();
|
|
34
|
-
_byOutput = /* @__PURE__ */ new Map();
|
|
35
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
36
|
-
async register(spec) {
|
|
37
|
-
const outputKeys = Object.keys(spec.outputs);
|
|
38
|
-
const strategyHash = await computeStrategyHash(spec.source, outputKeys, spec.derive, spec.sources);
|
|
39
|
-
const reg = { spec, strategyHash };
|
|
40
|
-
const fromSource = this._bySource.get(spec.source);
|
|
41
|
-
if (fromSource) fromSource.push(reg);
|
|
42
|
-
else this._bySource.set(spec.source, [reg]);
|
|
43
|
-
for (const extra of spec.sources ?? []) {
|
|
44
|
-
const fromExtra = this._bySource.get(extra);
|
|
45
|
-
if (fromExtra) fromExtra.push(reg);
|
|
46
|
-
else this._bySource.set(extra, [reg]);
|
|
47
|
-
}
|
|
48
|
-
for (const t of spec.triggerBy ?? []) {
|
|
49
|
-
const fromTrigger = this._bySource.get(t.collection);
|
|
50
|
-
if (fromTrigger) fromTrigger.push(reg);
|
|
51
|
-
else this._bySource.set(t.collection, [reg]);
|
|
52
|
-
}
|
|
53
|
-
if (spec.rollup) {
|
|
54
|
-
const fromRollup = this._bySource.get(spec.rollup.from);
|
|
55
|
-
if (fromRollup) fromRollup.push(reg);
|
|
56
|
-
else this._bySource.set(spec.rollup.from, [reg]);
|
|
57
|
-
}
|
|
58
|
-
for (const key of outputKeys) {
|
|
59
|
-
const output = spec.outputs[key];
|
|
60
|
-
if (!output) continue;
|
|
61
|
-
const outputCollection = output.collection;
|
|
62
|
-
const arr = this._byOutput.get(outputCollection);
|
|
63
|
-
if (arr) arr.push(reg);
|
|
64
|
-
else this._byOutput.set(outputCollection, [reg]);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
strategiesForSource(source) {
|
|
68
|
-
return this._bySource.get(source) ?? [];
|
|
69
|
-
}
|
|
70
|
-
strategiesProducingOutput(collection) {
|
|
71
|
-
return this._byOutput.get(collection) ?? [];
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* All registered strategies as a flat, deduplicated array.
|
|
75
|
-
* Each strategy is indexed once per source (not once per output key),
|
|
76
|
-
* so iterating `_bySource.values()` naturally yields each strategy
|
|
77
|
-
* exactly once per source — deduplication is handled by flattening
|
|
78
|
-
* the per-source arrays and collecting into a Set by identity.
|
|
79
|
-
*
|
|
80
|
-
* Used by `dumpSchema()` / `describeDerivations()` in the introspection
|
|
81
|
-
* walker to populate the derivations map.
|
|
82
|
-
*/
|
|
83
|
-
all() {
|
|
84
|
-
const seen = /* @__PURE__ */ new Set();
|
|
85
|
-
for (const strategies of this._bySource.values()) {
|
|
86
|
-
for (const s of strategies) seen.add(s);
|
|
87
|
-
}
|
|
88
|
-
return [...seen];
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Graph edges for #638 Task 2: one `'derivation'`/`'record'` edge per
|
|
92
|
-
* (non-self-write) output key — target = the output collection (a
|
|
93
|
-
* `WHOLE_RECORD` artifact node), sources = every collection that can
|
|
94
|
-
* trigger this strategy (`source`, `sources[]`, `triggerBy[].collection`,
|
|
95
|
-
* and — for a rollup — `rollup.from`), mirroring EXACTLY the trigger keys
|
|
96
|
-
* `register()` indexes under `_bySource`. The self-write reverse-denorm
|
|
97
|
-
* output (`output.collection === source` with `denorm` declared) is
|
|
98
|
-
* skipped — the SAME condition the old local DFS used; it is not a cycle
|
|
99
|
-
* (see the comment `validate()` used to carry, now on this skip).
|
|
100
|
-
* Rollups ADDITIONALLY get a dedicated `'rollup'`/`'aggregate'` edge
|
|
101
|
-
* targeting the real `rollup.field` on the parent (`source`) — the
|
|
102
|
-
* self-write output above only covers the cycle-DFS skip, not
|
|
103
|
-
* dispatch/taint (Tasks 3/4/6), which need the real field.
|
|
104
|
-
*/
|
|
105
|
-
edges() {
|
|
106
|
-
const out = [];
|
|
107
|
-
for (const reg of this.all()) {
|
|
108
|
-
const spec = reg.spec;
|
|
109
|
-
const triggerCollections = [
|
|
110
|
-
spec.source,
|
|
111
|
-
...spec.sources ?? [],
|
|
112
|
-
...(spec.triggerBy ?? []).map((t) => t.collection),
|
|
113
|
-
...spec.rollup ? [spec.rollup.from] : []
|
|
114
|
-
];
|
|
115
|
-
const sources = triggerCollections.map((c) => ({ collection: c, field: WHOLE_RECORD }));
|
|
116
|
-
for (const key of Object.keys(spec.outputs)) {
|
|
117
|
-
const output = spec.outputs[key];
|
|
118
|
-
if (!output) continue;
|
|
119
|
-
if (output.shape === "record" && output.collection === spec.source && output.denorm !== void 0) continue;
|
|
120
|
-
out.push({ target: { collection: output.collection, field: WHOLE_RECORD }, sources, kind: "derivation", grain: "record" });
|
|
121
|
-
}
|
|
122
|
-
if (spec.rollup) {
|
|
123
|
-
out.push({
|
|
124
|
-
target: { collection: spec.source, field: spec.rollup.field },
|
|
125
|
-
sources: [{ collection: spec.rollup.from, field: WHOLE_RECORD }],
|
|
126
|
-
kind: "rollup",
|
|
127
|
-
grain: "aggregate"
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
return out;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Cycle detection, delegated to `ViaGraph.assertAcyclic()` (#638 Task 2 —
|
|
135
|
-
* retires the local DFS). Call after all `register()` calls complete (i.e.
|
|
136
|
-
* at vault open). Throws `DerivationCycleError` on the first cycle found —
|
|
137
|
-
* SAME class/timing as before; the message/path is byte-identical to the
|
|
138
|
-
* pre-#638 shape for a pure record-shape derivation cycle (the
|
|
139
|
-
* `WHOLE_RECORD` artifact suffix is stripped back to a bare collection
|
|
140
|
-
* name before re-throwing).
|
|
141
|
-
*
|
|
142
|
-
* `graph` is the caller's shared per-vault graph, ALREADY carrying this
|
|
143
|
-
* registry's `edges()` (the caller registers them — see `Vault._initDerivations`)
|
|
144
|
-
* — omit it (e.g. this registry's own unit tests) to validate this
|
|
145
|
-
* registry's edges in isolation against a throwaway graph.
|
|
146
|
-
*/
|
|
147
|
-
validate(graph) {
|
|
148
|
-
const g = graph ?? new ViaGraph();
|
|
149
|
-
if (!graph) {
|
|
150
|
-
for (const edge of this.edges()) g.registerDerived(edge.target, edge.sources, edge.kind, edge.grain);
|
|
151
|
-
}
|
|
152
|
-
try {
|
|
153
|
-
g.assertAcyclic();
|
|
154
|
-
} catch (e) {
|
|
155
|
-
if (e instanceof DerivationCycleError) throw new DerivationCycleError(e.path.map(stripArtifactSuffix));
|
|
156
|
-
throw e;
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
export {
|
|
162
|
-
DerivationRegistry
|
|
163
|
-
};
|
|
164
|
-
//# sourceMappingURL=chunk-XUBPSPKD.js.map
|
package/dist/chunk-Y3A5CB5G.js
DELETED
|
@@ -1,247 +0,0 @@
|
|
|
1
|
-
// src/via/classified/validators.ts
|
|
2
|
-
function luhnCheck(pan) {
|
|
3
|
-
const digits = pan.replace(/[\s-]/g, "");
|
|
4
|
-
if (!/^\d{12,19}$/.test(digits)) return false;
|
|
5
|
-
let sum = 0;
|
|
6
|
-
for (let i = 0; i < digits.length; i++) {
|
|
7
|
-
let d = Number(digits[digits.length - 1 - i]);
|
|
8
|
-
if (i % 2 === 1) {
|
|
9
|
-
d *= 2;
|
|
10
|
-
if (d > 9) d -= 9;
|
|
11
|
-
}
|
|
12
|
-
sum += d;
|
|
13
|
-
}
|
|
14
|
-
return sum % 10 === 0;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
// src/via/classified/presets.ts
|
|
18
|
-
var digitsOf = (v) => String(v).replace(/\D/g, "");
|
|
19
|
-
function panSpec() {
|
|
20
|
-
return {
|
|
21
|
-
_noydbClassified: true,
|
|
22
|
-
_viaBrand: "classified",
|
|
23
|
-
preset: "creditCard.pan",
|
|
24
|
-
storage: "recoverable",
|
|
25
|
-
sensitivity: "secret",
|
|
26
|
-
list: { kind: "mask", pattern: "\u2022\u2022\u2022\u2022 ${last4}" },
|
|
27
|
-
riders: { last4: (v) => digitsOf(v).slice(-4), bin: (v) => digitsOf(v).slice(0, 6) },
|
|
28
|
-
validate: (v) => typeof v === "string" && luhnCheck(v) ? null : "not a Luhn-valid card number"
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
function expirySpec() {
|
|
32
|
-
return {
|
|
33
|
-
_noydbClassified: true,
|
|
34
|
-
_viaBrand: "classified",
|
|
35
|
-
preset: "creditCard.expiry",
|
|
36
|
-
storage: "recoverable",
|
|
37
|
-
sensitivity: "pii",
|
|
38
|
-
list: { kind: "mask", pattern: "\u2022\u2022/\u2022\u2022" },
|
|
39
|
-
validate: (v) => typeof v === "string" && /^(0[1-9]|1[0-2])\/\d{2}$/.test(v) ? null : "expected MM/YY"
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
function cvcSpec() {
|
|
43
|
-
return {
|
|
44
|
-
_noydbClassified: true,
|
|
45
|
-
_viaBrand: "classified",
|
|
46
|
-
preset: "creditCard.cvc",
|
|
47
|
-
storage: "never",
|
|
48
|
-
sensitivity: "secret",
|
|
49
|
-
list: { kind: "omit" },
|
|
50
|
-
validate: (v) => typeof v === "string" && /^\d{3,4}$/.test(v) ? null : "expected 3-4 digits"
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
var classified = {
|
|
54
|
-
/** Composite card type. PAN sealed + last4/bin riders; CVC is storage:'never' (PCI-aware). */
|
|
55
|
-
creditCard(fields) {
|
|
56
|
-
const members = { [fields.pan]: panSpec() };
|
|
57
|
-
if (fields.expiry !== void 0) members[fields.expiry] = expirySpec();
|
|
58
|
-
if (fields.cvc !== void 0) members[fields.cvc] = cvcSpec();
|
|
59
|
-
return { _noydbClassifiedGroup: true, _viaBrand: "classified", preset: "creditCard", members };
|
|
60
|
-
},
|
|
61
|
-
birthDate() {
|
|
62
|
-
return {
|
|
63
|
-
_noydbClassified: true,
|
|
64
|
-
_viaBrand: "classified",
|
|
65
|
-
preset: "birthDate",
|
|
66
|
-
storage: "recoverable",
|
|
67
|
-
sensitivity: "pii",
|
|
68
|
-
list: { kind: "mask", pattern: "${yob}-\u2022\u2022-\u2022\u2022" },
|
|
69
|
-
riders: { yob: (v) => String(v).slice(0, 4) },
|
|
70
|
-
validate: (v) => {
|
|
71
|
-
if (typeof v !== "string" || !/^\d{4}-\d{2}-\d{2}$/.test(v)) return "expected ISO yyyy-mm-dd";
|
|
72
|
-
const parts = v.split("-").map(Number);
|
|
73
|
-
const year = parts[0], month = parts[1], day = parts[2];
|
|
74
|
-
if (month < 1 || month > 12) return "not a valid calendar date";
|
|
75
|
-
const daysInMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
76
|
-
const isLeapYear = year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;
|
|
77
|
-
const maxDay = month === 2 && isLeapYear ? 29 : daysInMonth[month - 1];
|
|
78
|
-
if (day < 1 || day > maxDay) return "not a valid calendar date";
|
|
79
|
-
return null;
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
},
|
|
83
|
-
email() {
|
|
84
|
-
return {
|
|
85
|
-
_noydbClassified: true,
|
|
86
|
-
_viaBrand: "classified",
|
|
87
|
-
preset: "email",
|
|
88
|
-
storage: "recoverable",
|
|
89
|
-
sensitivity: "pii",
|
|
90
|
-
list: { kind: "mask", pattern: "\u2022\u2022\u2022@${domain}" },
|
|
91
|
-
riders: { domain: (v) => String(v).split("@")[1] ?? "" },
|
|
92
|
-
validate: (v) => typeof v === "string" && v.includes("@") ? null : "expected an email address"
|
|
93
|
-
};
|
|
94
|
-
},
|
|
95
|
-
phone() {
|
|
96
|
-
return {
|
|
97
|
-
_noydbClassified: true,
|
|
98
|
-
_viaBrand: "classified",
|
|
99
|
-
preset: "phone",
|
|
100
|
-
storage: "recoverable",
|
|
101
|
-
sensitivity: "pii",
|
|
102
|
-
list: { kind: "mask", pattern: "\u2022\u2022\u2022\u2022\u2022${last2}" },
|
|
103
|
-
riders: { last2: (v) => digitsOf(v).slice(-2) },
|
|
104
|
-
validate: (v) => digitsOf(v).length >= 5 ? null : "expected at least 5 digits"
|
|
105
|
-
};
|
|
106
|
-
},
|
|
107
|
-
/** Digest-only password: verify-without-reveal; never listed, never revealed.
|
|
108
|
-
* Enumeration math is on the caller for low-entropy values — see the
|
|
109
|
-
* per-preset docs; the hub ships no rate limiter in this slice (spec §5).
|
|
110
|
-
*
|
|
111
|
-
* @param opts.equatable — emit a store-visible `_bidx` equality tag (enables
|
|
112
|
-
* `findByDigest`). Cost band you are accepting:
|
|
113
|
-
*
|
|
114
|
-
* equal values produce equal store-visible tags: anyone with store access
|
|
115
|
-
* learns which records share this secret and how many share each value —
|
|
116
|
-
* never the value itself. A collection-DEK holder can additionally test
|
|
117
|
-
* candidate values offline: the tag's inner digest is PBKDF2-SHA256 (600K),
|
|
118
|
-
* which is GPU/ASIC-friendly — an offline attacker runs on the order of
|
|
119
|
-
* 10⁴–10⁸ guesses/second, so for low-entropy secrets (PINs, casefolded secret
|
|
120
|
-
* answers) offline recovery of the equality partition is seconds-to-hours, not
|
|
121
|
-
* years. `crypto.subtle` exposes no memory-hard KDF (no scrypt/argon2) and the
|
|
122
|
-
* family's no-crypto-deps law forbids adding one, so PBKDF2-SHA256 is the
|
|
123
|
-
* hardest primitive available; the iteration count raises the price but does
|
|
124
|
-
* not make a low-entropy field safe. The real control for low-entropy fields
|
|
125
|
-
* is the DOOR — do not enable `equatable` for them unless the partition being
|
|
126
|
-
* learnable is acceptable — not the iteration count. Pre-forget backups retain
|
|
127
|
-
* tags. */
|
|
128
|
-
password(opts = {}) {
|
|
129
|
-
const minLength = opts.minLength ?? 10;
|
|
130
|
-
const notLastN = opts.notLastN ?? 0;
|
|
131
|
-
if (!Number.isInteger(notLastN) || notLastN < 0 || notLastN > 8) {
|
|
132
|
-
throw new Error(`classified.password: notLastN must be an integer 0..8 (write cost is n \xD7 600K PBKDF2; ring blast radius is documented), got ${notLastN}`);
|
|
133
|
-
}
|
|
134
|
-
return {
|
|
135
|
-
_noydbClassified: true,
|
|
136
|
-
_viaBrand: "classified",
|
|
137
|
-
preset: "password",
|
|
138
|
-
storage: "digest-only",
|
|
139
|
-
sensitivity: "secret",
|
|
140
|
-
list: { kind: "omit" },
|
|
141
|
-
verifyNormalize: "password",
|
|
142
|
-
...opts.rotateDays !== void 0 ? { rotateDays: opts.rotateDays } : {},
|
|
143
|
-
...notLastN > 0 ? { notLastN } : {},
|
|
144
|
-
...opts.equatable === true ? { equatable: true } : {},
|
|
145
|
-
validate: (v) => typeof v === "string" && v.normalize("NFC").length >= minLength ? null : `password must be at least ${minLength} characters`
|
|
146
|
-
};
|
|
147
|
-
},
|
|
148
|
-
/** Digest-only secret answer: normalized (casefold/trim/collapse), groupable
|
|
149
|
-
* into k-of-n matchGroup challenges. Low-entropy by nature — document the
|
|
150
|
-
* enumeration math to your users; add app-side rate limiting.
|
|
151
|
-
*
|
|
152
|
-
* @param opts.equatable — emit a store-visible `_bidx` equality tag (enables
|
|
153
|
-
* `findByDigest`). Cost band you are accepting:
|
|
154
|
-
*
|
|
155
|
-
* equal values produce equal store-visible tags: anyone with store access
|
|
156
|
-
* learns which records share this secret and how many share each value —
|
|
157
|
-
* never the value itself. A collection-DEK holder can additionally test
|
|
158
|
-
* candidate values offline: the tag's inner digest is PBKDF2-SHA256 (600K),
|
|
159
|
-
* which is GPU/ASIC-friendly — an offline attacker runs on the order of
|
|
160
|
-
* 10⁴–10⁸ guesses/second, so for low-entropy secrets (PINs, casefolded secret
|
|
161
|
-
* answers) offline recovery of the equality partition is seconds-to-hours, not
|
|
162
|
-
* years. `crypto.subtle` exposes no memory-hard KDF (no scrypt/argon2) and the
|
|
163
|
-
* family's no-crypto-deps law forbids adding one, so PBKDF2-SHA256 is the
|
|
164
|
-
* hardest primitive available; the iteration count raises the price but does
|
|
165
|
-
* not make a low-entropy field safe. The real control for low-entropy fields
|
|
166
|
-
* is the DOOR — do not enable `equatable` for them unless the partition being
|
|
167
|
-
* learnable is acceptable — not the iteration count. Pre-forget backups retain
|
|
168
|
-
* tags. */
|
|
169
|
-
secretAnswer(opts = {}) {
|
|
170
|
-
return {
|
|
171
|
-
_noydbClassified: true,
|
|
172
|
-
_viaBrand: "classified",
|
|
173
|
-
preset: "secretAnswer",
|
|
174
|
-
storage: "digest-only",
|
|
175
|
-
sensitivity: "secret",
|
|
176
|
-
list: { kind: "omit" },
|
|
177
|
-
verifyNormalize: "secret-answer",
|
|
178
|
-
verifyGroupMember: true,
|
|
179
|
-
...opts.equatable === true ? { equatable: true } : {},
|
|
180
|
-
validate: (v) => typeof v === "string" && v.normalize("NFC").toLowerCase().trim().replace(/\s+/g, " ").length > 0 ? null : "secret answer must be non-empty after normalization"
|
|
181
|
-
};
|
|
182
|
-
}
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
// src/via/classified/active.ts
|
|
186
|
-
function policyOf(spec) {
|
|
187
|
-
return {
|
|
188
|
-
normalize: spec.verifyNormalize ?? "password",
|
|
189
|
-
notLastN: spec.notLastN ?? 0,
|
|
190
|
-
equatable: spec.equatable === true,
|
|
191
|
-
...spec.rotateDays !== void 0 ? { rotateDays: spec.rotateDays } : {}
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
var engineCtx = (ctx) => ({
|
|
195
|
-
collection: ctx.collection,
|
|
196
|
-
getEnvelope: ctx.getEnvelope,
|
|
197
|
-
resolveCek: ctx.resolveCek,
|
|
198
|
-
getDEK: ctx.getDEK,
|
|
199
|
-
now: ctx.now
|
|
200
|
-
});
|
|
201
|
-
function withClassified() {
|
|
202
|
-
return {
|
|
203
|
-
async reveal(ctx, id, field) {
|
|
204
|
-
const { revealSealedField } = await import("./reveal-R3JLHMUF.js");
|
|
205
|
-
const value = await revealSealedField({
|
|
206
|
-
collection: ctx.collection,
|
|
207
|
-
encrypted: ctx.encrypted,
|
|
208
|
-
getEnvelope: ctx.getEnvelope,
|
|
209
|
-
resolveCek: ctx.resolveCek,
|
|
210
|
-
getDEK: ctx.getDEK
|
|
211
|
-
}, id, field);
|
|
212
|
-
await ctx.onAccess?.("reveal", id);
|
|
213
|
-
return value;
|
|
214
|
-
},
|
|
215
|
-
async verify(ctx, id, field, candidate) {
|
|
216
|
-
const { verifyDigestField } = await import("./verify-JPF2YR5E.js");
|
|
217
|
-
const verdict = await verifyDigestField(engineCtx(ctx), id, field, candidate, policyOf(ctx.spec));
|
|
218
|
-
await ctx.onAccess?.("verify", id);
|
|
219
|
-
return verdict;
|
|
220
|
-
},
|
|
221
|
-
async verifyText(ctx, id, field, candidate) {
|
|
222
|
-
const { verifyTextField } = await import("./verify-JPF2YR5E.js");
|
|
223
|
-
const verdict = await verifyTextField(engineCtx(ctx), id, field, candidate, ctx.spec.verifyNormalize ?? "password");
|
|
224
|
-
await ctx.onAccess?.("verify", id);
|
|
225
|
-
return verdict;
|
|
226
|
-
},
|
|
227
|
-
async matchGroup(ctx, id, answers, opts) {
|
|
228
|
-
const { matchGroupFields } = await import("./verify-JPF2YR5E.js");
|
|
229
|
-
const members = (ctx.groupMembers ?? []).map((m) => ({ field: m.field, policy: policyOf(m.spec) }));
|
|
230
|
-
const result = await matchGroupFields(engineCtx(ctx), id, answers, members, opts);
|
|
231
|
-
await ctx.onAccess?.("verify", id);
|
|
232
|
-
return result;
|
|
233
|
-
},
|
|
234
|
-
async computeTarget(ctx, field, candidate, costByte) {
|
|
235
|
-
const { computeBidxTarget } = await import("./find-BNGBJNKP.js");
|
|
236
|
-
const dek = await ctx.getDEK();
|
|
237
|
-
return computeBidxTarget(candidate, policyOf(ctx.spec).normalize, dek, ctx.collection, field, costByte);
|
|
238
|
-
}
|
|
239
|
-
};
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
export {
|
|
243
|
-
luhnCheck,
|
|
244
|
-
classified,
|
|
245
|
-
withClassified
|
|
246
|
-
};
|
|
247
|
-
//# sourceMappingURL=chunk-Y3A5CB5G.js.map
|
package/dist/chunk-YCXCR7VG.js
DELETED
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
NOYDB_FORMAT_VERSION
|
|
3
|
-
} from "./chunk-YN5IAHN6.js";
|
|
4
|
-
|
|
5
|
-
// src/with-party/team/managed-passphrase.ts
|
|
6
|
-
var MemorySealingKeyProvider = class {
|
|
7
|
-
id;
|
|
8
|
-
fingerprint;
|
|
9
|
-
keyBytes;
|
|
10
|
-
constructor(opts) {
|
|
11
|
-
this.id = opts.id;
|
|
12
|
-
const encoded = new TextEncoder().encode(opts.id);
|
|
13
|
-
let h = 0;
|
|
14
|
-
for (let i = 0; i < encoded.length; i++) {
|
|
15
|
-
h = h * 31 + encoded[i] >>> 0;
|
|
16
|
-
}
|
|
17
|
-
this.fingerprint = new Uint8Array([
|
|
18
|
-
h >>> 24 & 255,
|
|
19
|
-
h >>> 16 & 255,
|
|
20
|
-
h >>> 8 & 255,
|
|
21
|
-
h & 255
|
|
22
|
-
]);
|
|
23
|
-
this.keyBytes = new Uint8Array(16);
|
|
24
|
-
for (let i = 0; i < 16; i++) {
|
|
25
|
-
this.keyBytes[i] = this.fingerprint[i % 4] ^ i * 17;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
async seal(passphrase) {
|
|
29
|
-
const out = new Uint8Array(4 + passphrase.length);
|
|
30
|
-
out.set(this.fingerprint, 0);
|
|
31
|
-
for (let i = 0; i < passphrase.length; i++) {
|
|
32
|
-
out[4 + i] = passphrase[i] ^ this.keyBytes[i % 16];
|
|
33
|
-
}
|
|
34
|
-
return out;
|
|
35
|
-
}
|
|
36
|
-
async unseal(sealed) {
|
|
37
|
-
if (sealed.length < 4) {
|
|
38
|
-
throw new Error("MemorySealingKeyProvider: sealed input too short");
|
|
39
|
-
}
|
|
40
|
-
for (let i = 0; i < 4; i++) {
|
|
41
|
-
if (sealed[i] !== this.fingerprint[i]) {
|
|
42
|
-
throw new Error(
|
|
43
|
-
`MemorySealingKeyProvider("${this.id}"): provider-id mismatch on unseal (sealed bytes were produced by a different provider)`
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
const body = sealed.subarray(4);
|
|
48
|
-
const out = new Uint8Array(body.length);
|
|
49
|
-
for (let i = 0; i < body.length; i++) {
|
|
50
|
-
out[i] = body[i] ^ this.keyBytes[i % 16];
|
|
51
|
-
}
|
|
52
|
-
return out;
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
async function sealRsaOaepTlv(plaintext, publicKeyPem) {
|
|
56
|
-
const b64 = publicKeyPem.replace(/-----BEGIN PUBLIC KEY-----/, "").replace(/-----END PUBLIC KEY-----/, "").replace(/\s+/g, "");
|
|
57
|
-
const spki = base64ToBytes(b64);
|
|
58
|
-
const recipientPub = await crypto.subtle.importKey(
|
|
59
|
-
"spki",
|
|
60
|
-
spki,
|
|
61
|
-
{ name: "RSA-OAEP", hash: "SHA-256" },
|
|
62
|
-
false,
|
|
63
|
-
["encrypt"]
|
|
64
|
-
);
|
|
65
|
-
const cekBytes = crypto.getRandomValues(new Uint8Array(32));
|
|
66
|
-
const cek = await crypto.subtle.importKey("raw", cekBytes, "AES-GCM", false, ["encrypt"]);
|
|
67
|
-
const iv = crypto.getRandomValues(new Uint8Array(12));
|
|
68
|
-
const ct = new Uint8Array(await crypto.subtle.encrypt({ name: "AES-GCM", iv }, cek, plaintext));
|
|
69
|
-
const wrapped = new Uint8Array(await crypto.subtle.encrypt({ name: "RSA-OAEP" }, recipientPub, cekBytes));
|
|
70
|
-
cekBytes.fill(0);
|
|
71
|
-
if (wrapped.length !== 256) {
|
|
72
|
-
throw new Error(`sealRsaOaepTlv: expected 256-byte RSA-OAEP wrap, got ${wrapped.length}`);
|
|
73
|
-
}
|
|
74
|
-
const out = new Uint8Array(1 + 256 + 12 + ct.length);
|
|
75
|
-
out[0] = 1;
|
|
76
|
-
out.set(wrapped, 1);
|
|
77
|
-
out.set(iv, 1 + 256);
|
|
78
|
-
out.set(ct, 1 + 256 + 12);
|
|
79
|
-
return out;
|
|
80
|
-
}
|
|
81
|
-
function parseRsaOaepTlv(bytes) {
|
|
82
|
-
if (bytes.length < 1 + 256 + 12 + 16) {
|
|
83
|
-
throw new Error("parseRsaOaepTlv: sealed input too short");
|
|
84
|
-
}
|
|
85
|
-
if (bytes[0] !== 1) {
|
|
86
|
-
throw new Error(`parseRsaOaepTlv: unknown TLV version ${bytes[0]}`);
|
|
87
|
-
}
|
|
88
|
-
return {
|
|
89
|
-
wrapped: bytes.subarray(1, 1 + 256),
|
|
90
|
-
iv: bytes.subarray(1 + 256, 1 + 256 + 12),
|
|
91
|
-
ct: bytes.subarray(1 + 256 + 12)
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
async function aesGcmOpen(cekBytes, iv, ct) {
|
|
95
|
-
const cek = await crypto.subtle.importKey("raw", cekBytes, "AES-GCM", false, ["decrypt"]);
|
|
96
|
-
return new Uint8Array(await crypto.subtle.decrypt({ name: "AES-GCM", iv }, cek, ct));
|
|
97
|
-
}
|
|
98
|
-
var MemoryRecipientSealer = class {
|
|
99
|
-
id;
|
|
100
|
-
keypair;
|
|
101
|
-
constructor(opts) {
|
|
102
|
-
this.id = opts.id;
|
|
103
|
-
this.keypair = crypto.subtle.generateKey(
|
|
104
|
-
{ name: "RSA-OAEP", modulusLength: 2048, publicExponent: new Uint8Array([1, 0, 1]), hash: "SHA-256" },
|
|
105
|
-
true,
|
|
106
|
-
["encrypt", "decrypt"]
|
|
107
|
-
);
|
|
108
|
-
}
|
|
109
|
-
async publishRecipientHint() {
|
|
110
|
-
const { publicKey } = await this.keypair;
|
|
111
|
-
const spki = await crypto.subtle.exportKey("spki", publicKey);
|
|
112
|
-
const pem = "-----BEGIN PUBLIC KEY-----\n" + bytesToBase64(new Uint8Array(spki)).match(/.{1,64}/g).join("\n") + "\n-----END PUBLIC KEY-----\n";
|
|
113
|
-
return { v: 1, pid: this.id, alg: "rsa-oaep-sha256", material: { publicKeyPem: pem } };
|
|
114
|
-
}
|
|
115
|
-
async sealForRecipient(plaintext, hint) {
|
|
116
|
-
if (hint.v !== 1) {
|
|
117
|
-
throw new Error(`MemoryRecipientSealer.sealForRecipient: unsupported hint.v ${String(hint.v)} (expected 1)`);
|
|
118
|
-
}
|
|
119
|
-
if (hint.alg !== "rsa-oaep-sha256") {
|
|
120
|
-
throw new Error(`MemoryRecipientSealer.sealForRecipient: unsupported hint.alg '${String(hint.alg)}' (expected 'rsa-oaep-sha256')`);
|
|
121
|
-
}
|
|
122
|
-
const pem = hint.material["publicKeyPem"];
|
|
123
|
-
if (typeof pem !== "string") {
|
|
124
|
-
throw new Error("MemoryRecipientSealer.sealForRecipient: hint.material.publicKeyPem missing or not a string");
|
|
125
|
-
}
|
|
126
|
-
return sealRsaOaepTlv(plaintext, pem);
|
|
127
|
-
}
|
|
128
|
-
async seal(plaintext) {
|
|
129
|
-
const hint = await this.publishRecipientHint();
|
|
130
|
-
return this.sealForRecipient(plaintext, hint);
|
|
131
|
-
}
|
|
132
|
-
async unseal(bytes) {
|
|
133
|
-
const { wrapped, iv, ct } = parseRsaOaepTlv(bytes);
|
|
134
|
-
const { privateKey } = await this.keypair;
|
|
135
|
-
const cekBytes = new Uint8Array(await crypto.subtle.decrypt({ name: "RSA-OAEP" }, privateKey, wrapped));
|
|
136
|
-
const pt = await aesGcmOpen(cekBytes, iv, ct);
|
|
137
|
-
cekBytes.fill(0);
|
|
138
|
-
return pt;
|
|
139
|
-
}
|
|
140
|
-
};
|
|
141
|
-
var SEALED_PASSPHRASE_RECORD_ID = "sealed-passphrase";
|
|
142
|
-
function bytesToBase64(bytes) {
|
|
143
|
-
let binary = "";
|
|
144
|
-
for (let i = 0; i < bytes.length; i++) binary += String.fromCharCode(bytes[i]);
|
|
145
|
-
return btoa(binary);
|
|
146
|
-
}
|
|
147
|
-
function base64ToBytes(b64) {
|
|
148
|
-
const binary = atob(b64);
|
|
149
|
-
const out = new Uint8Array(binary.length);
|
|
150
|
-
for (let i = 0; i < binary.length; i++) out[i] = binary.charCodeAt(i);
|
|
151
|
-
return out;
|
|
152
|
-
}
|
|
153
|
-
function parseSealedEnvelope(raw) {
|
|
154
|
-
if (typeof raw !== "object" || raw === null) return void 0;
|
|
155
|
-
const r = raw;
|
|
156
|
-
if (r._noydb_sealed !== 1) return void 0;
|
|
157
|
-
if (r.v === 1 && typeof r.pid === "string" && typeof r.payload === "string") {
|
|
158
|
-
return {
|
|
159
|
-
_noydb_sealed: 1,
|
|
160
|
-
providerId: r.pid,
|
|
161
|
-
sealed: base64ToBytes(r.payload)
|
|
162
|
-
};
|
|
163
|
-
}
|
|
164
|
-
if (typeof r.providerId === "string" && typeof r.sealed === "string") {
|
|
165
|
-
return {
|
|
166
|
-
_noydb_sealed: 1,
|
|
167
|
-
providerId: r.providerId,
|
|
168
|
-
sealed: base64ToBytes(r.sealed)
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
return void 0;
|
|
172
|
-
}
|
|
173
|
-
async function saveSealedPassphrase(store, vault, payload) {
|
|
174
|
-
const persisted = {
|
|
175
|
-
v: 1,
|
|
176
|
-
_noydb_sealed: 1,
|
|
177
|
-
pid: payload.providerId,
|
|
178
|
-
payload: bytesToBase64(payload.sealed)
|
|
179
|
-
};
|
|
180
|
-
const prior = await store.get(vault, "_meta", SEALED_PASSPHRASE_RECORD_ID);
|
|
181
|
-
const env = {
|
|
182
|
-
_noydb: NOYDB_FORMAT_VERSION,
|
|
183
|
-
_v: (prior?._v ?? 0) + 1,
|
|
184
|
-
_ts: (/* @__PURE__ */ new Date()).toISOString(),
|
|
185
|
-
// AES-GCM bypassed — the sealing layer is the security boundary.
|
|
186
|
-
_iv: "",
|
|
187
|
-
_data: JSON.stringify(persisted)
|
|
188
|
-
};
|
|
189
|
-
await store.put(vault, "_meta", SEALED_PASSPHRASE_RECORD_ID, env);
|
|
190
|
-
}
|
|
191
|
-
async function loadSealedPassphrase(store, vault) {
|
|
192
|
-
const envelope = await store.get(vault, "_meta", SEALED_PASSPHRASE_RECORD_ID);
|
|
193
|
-
if (!envelope) return void 0;
|
|
194
|
-
try {
|
|
195
|
-
return parseSealedEnvelope(JSON.parse(envelope._data));
|
|
196
|
-
} catch {
|
|
197
|
-
return void 0;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
async function resolveManagedSecret(store, vault, provider) {
|
|
201
|
-
const existing = await loadSealedPassphrase(store, vault);
|
|
202
|
-
if (existing) {
|
|
203
|
-
if (existing.providerId !== provider.id) {
|
|
204
|
-
throw new Error(
|
|
205
|
-
`Managed-mode vault "${vault}" was sealed under provider id "${existing.providerId}" but the current SealingKeyProvider is "${provider.id}". Pass the same provider that originally enrolled the vault, or treat this as a fresh enrollment and clear \`_meta/sealed-passphrase\` first.`
|
|
206
|
-
);
|
|
207
|
-
}
|
|
208
|
-
const plaintext = await provider.unseal(existing.sealed);
|
|
209
|
-
return bytesToBase64(plaintext);
|
|
210
|
-
}
|
|
211
|
-
const random = new Uint8Array(32);
|
|
212
|
-
globalThis.crypto.getRandomValues(random);
|
|
213
|
-
const sealed = await provider.seal(random);
|
|
214
|
-
await saveSealedPassphrase(store, vault, { providerId: provider.id, sealed });
|
|
215
|
-
return bytesToBase64(random);
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
export {
|
|
219
|
-
MemorySealingKeyProvider,
|
|
220
|
-
sealRsaOaepTlv,
|
|
221
|
-
parseRsaOaepTlv,
|
|
222
|
-
aesGcmOpen,
|
|
223
|
-
MemoryRecipientSealer,
|
|
224
|
-
SEALED_PASSPHRASE_RECORD_ID,
|
|
225
|
-
parseSealedEnvelope,
|
|
226
|
-
saveSealedPassphrase,
|
|
227
|
-
loadSealedPassphrase,
|
|
228
|
-
resolveManagedSecret
|
|
229
|
-
};
|
|
230
|
-
//# sourceMappingURL=chunk-YCXCR7VG.js.map
|