@noy-db/hub 0.3.0 → 0.4.0-pre.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aggregate/index.js +4 -4
- package/dist/api-IQFZJSQO.js +20 -0
- package/dist/as/index.js +11 -11
- package/dist/attestation/index.js +18 -18
- package/dist/{backup-BJ57IKAO.js → backup-LU2DTZTI.js} +11 -11
- package/dist/blobs/index.js +12 -12
- package/dist/broker/index.js +12 -12
- package/dist/bundle/index.js +26 -74
- package/dist/bundle/index.js.map +1 -1
- package/dist/by/index.js +2 -2
- package/dist/cargo/index.js +41 -22
- package/dist/chunk-2IALOXZS.js +24 -0
- package/dist/chunk-2IALOXZS.js.map +1 -0
- package/dist/{chunk-EVVGJDRQ.js → chunk-2MUZ3LY6.js} +3 -3
- package/dist/{chunk-NWSGI5C7.js → chunk-2P7EGNKF.js} +3 -3
- package/dist/{chunk-ZAJAVEXY.js → chunk-2PCAVW2I.js} +2 -2
- package/dist/{chunk-HTJQYHZP.js → chunk-3ELCWU56.js} +2 -2
- package/dist/{chunk-X7QBD67R.js → chunk-3PF6CRDT.js} +136 -114
- package/dist/chunk-3PF6CRDT.js.map +1 -0
- package/dist/{chunk-J2ZX2XUV.js → chunk-3SV2EPMN.js} +5 -5
- package/dist/{chunk-FUG4SFN3.js → chunk-3U3FBR7O.js} +2 -2
- package/dist/{chunk-VFUPHI2Z.js → chunk-4BRCIYFG.js} +6 -6
- package/dist/{chunk-SNZ6URZZ.js → chunk-5OI6BR4H.js} +7 -7
- package/dist/{chunk-B3HJYUOF.js → chunk-5WZXVULX.js} +2 -2
- package/dist/{chunk-LASZKVMO.js → chunk-6B4DYGWO.js} +3 -3
- package/dist/{chunk-ZJ2AK4V7.js → chunk-6HPG2YNX.js} +2 -2
- package/dist/{chunk-5M5DVGV7.js → chunk-6HY2X62D.js} +2 -2
- package/dist/{chunk-QRB7NAOJ.js → chunk-6NQMXTYC.js} +2 -2
- package/dist/{chunk-RIX4V2TB.js → chunk-6XE5TMPR.js} +3 -3
- package/dist/{chunk-BDVFPG6Y.js → chunk-7CI6CP7Z.js} +5 -5
- package/dist/{chunk-VLFCJYTL.js → chunk-7O3AYBC7.js} +63 -10
- package/dist/chunk-7O3AYBC7.js.map +1 -0
- package/dist/{chunk-454JXE57.js → chunk-A5BDDEXK.js} +10 -170
- package/dist/chunk-A5BDDEXK.js.map +1 -0
- package/dist/{chunk-FHS2HQSH.js → chunk-A7JJLVGH.js} +11 -8
- package/dist/chunk-A7JJLVGH.js.map +1 -0
- package/dist/{chunk-FM3G3NOY.js → chunk-BGK233EA.js} +83 -6
- package/dist/chunk-BGK233EA.js.map +1 -0
- package/dist/{chunk-OSDB5WW3.js → chunk-BMQWTQZ4.js} +11 -11
- package/dist/{chunk-W22IKJE2.js → chunk-BOKIKJJB.js} +2 -2
- package/dist/{chunk-CRI4OUV4.js → chunk-CBSY2N76.js} +2 -2
- package/dist/{chunk-2NVOWNI3.js → chunk-CCOP5XDW.js} +4 -4
- package/dist/{chunk-CDUQTA3Z.js → chunk-DDATL6PU.js} +7 -7
- package/dist/{chunk-RCVJZMFE.js → chunk-DDHM2TLX.js} +4 -4
- package/dist/{chunk-PN2XMATY.js → chunk-DRWBEDYO.js} +2 -2
- package/dist/{chunk-XDYREZWE.js → chunk-DVUZMT2W.js} +12 -8
- package/dist/{chunk-XDYREZWE.js.map → chunk-DVUZMT2W.js.map} +1 -1
- package/dist/{chunk-T2FFWNPK.js → chunk-EGCRBCNA.js} +3 -3
- package/dist/{chunk-VZRODIM3.js → chunk-F6T6L2UK.js} +4 -4
- package/dist/chunk-FH52K7EG.js +50 -0
- package/dist/chunk-FH52K7EG.js.map +1 -0
- package/dist/{chunk-EXK7QRWF.js → chunk-G6EQYAL6.js} +5 -5
- package/dist/{chunk-F64IRYG3.js → chunk-GQNGCEP5.js} +2 -2
- package/dist/{chunk-6JTIAGHD.js → chunk-GULTLPFB.js} +3 -3
- package/dist/chunk-GULTLPFB.js.map +1 -0
- package/dist/{chunk-ZUODRVHY.js → chunk-GVZQ4NAM.js} +2 -2
- package/dist/{chunk-3B5VVCNY.js → chunk-GWKAVKHI.js} +2 -2
- package/dist/{chunk-SLFHQTTW.js → chunk-GYYCX5K6.js} +5 -5
- package/dist/{chunk-CIE2BASH.js → chunk-HOONYZY2.js} +2 -2
- package/dist/{chunk-EYZ6IQ6X.js → chunk-HPUWOVR7.js} +5 -5
- package/dist/{chunk-IL6POWCW.js → chunk-IM3QVF53.js} +6 -6
- package/dist/{chunk-NJ4EOKMB.js → chunk-IRQY7IR5.js} +4 -4
- package/dist/{chunk-3QCRBHCY.js → chunk-ISMV2QVG.js} +2 -2
- package/dist/{chunk-HB3RFQSC.js → chunk-IY23KFNZ.js} +3 -3
- package/dist/chunk-J6Q7UVQE.js +248 -0
- package/dist/chunk-J6Q7UVQE.js.map +1 -0
- package/dist/{chunk-6CRIV7DE.js → chunk-JBBSYJHP.js} +2 -2
- package/dist/{chunk-MEFJPTZ4.js → chunk-JRBNCUNT.js} +3 -3
- package/dist/{chunk-4VNQOLML.js → chunk-JVBO4SZL.js} +2 -2
- package/dist/{chunk-I6GALP6E.js → chunk-JZWWLLVY.js} +6 -6
- package/dist/{chunk-RYCTDFUX.js → chunk-KUIB4B5Q.js} +2 -2
- package/dist/{chunk-HDQIIUPH.js → chunk-KUPKLSX5.js} +3 -3
- package/dist/{chunk-5O3XF4DV.js → chunk-KWVJAOIN.js} +4 -4
- package/dist/{chunk-3LQ2YKO4.js → chunk-LB6OH6K2.js} +2 -2
- package/dist/{chunk-AUSTCW2X.js → chunk-LOF2W3JU.js} +8 -8
- package/dist/{chunk-JNAI2HN2.js → chunk-LSASLXGC.js} +1 -1
- package/dist/chunk-LSASLXGC.js.map +1 -0
- package/dist/{chunk-K5IMOGHB.js → chunk-M75ZZHSR.js} +2 -2
- package/dist/{chunk-GTGPO5KW.js → chunk-MQ6WOPSY.js} +5 -5
- package/dist/{chunk-4CTHCN4J.js → chunk-MTQPRQHB.js} +4 -4
- package/dist/{chunk-UNFPPVNI.js → chunk-N55W7KUL.js} +2 -2
- package/dist/{chunk-JKJOGPZN.js → chunk-N6WF5PKC.js} +2 -2
- package/dist/{chunk-6T2SCQRU.js → chunk-O7WJ47EF.js} +4 -4
- package/dist/{chunk-JIF24JPM.js → chunk-OF75ACKS.js} +9 -9
- package/dist/{chunk-GKEWXIV5.js → chunk-ONTBCHCP.js} +2 -2
- package/dist/{chunk-4JBYV75E.js → chunk-PK6QCH2C.js} +5 -5
- package/dist/{chunk-6QTNZJBS.js → chunk-PT37L5DV.js} +3 -3
- package/dist/{chunk-EVX47VBM.js → chunk-QDPZWTN2.js} +2 -2
- package/dist/chunk-RA5VTXXG.js +173 -0
- package/dist/chunk-RA5VTXXG.js.map +1 -0
- package/dist/{chunk-QLWMEXCT.js → chunk-RDXW3OBQ.js} +2 -2
- package/dist/{chunk-Q5VNKNE5.js → chunk-RM2XV574.js} +3 -3
- package/dist/{chunk-ERJ7FU55.js → chunk-RND5ZPNP.js} +3 -3
- package/dist/{chunk-JZUV47FZ.js → chunk-RTEK4C4I.js} +2 -2
- package/dist/{chunk-KSKBRKGJ.js → chunk-S3BFKGET.js} +84 -6
- package/dist/chunk-S3BFKGET.js.map +1 -0
- package/dist/{chunk-5YOLBEQ6.js → chunk-S6Q37VGE.js} +2 -2
- package/dist/{chunk-HDMEGAQE.js → chunk-SMGEYW6G.js} +127 -8
- package/dist/chunk-SMGEYW6G.js.map +1 -0
- package/dist/{chunk-E5ZQT5KX.js → chunk-SMIRGMS7.js} +2 -2
- package/dist/chunk-T36RFODW.js +180 -0
- package/dist/chunk-T36RFODW.js.map +1 -0
- package/dist/{chunk-EQO2UVP4.js → chunk-T6GU5PPZ.js} +6 -6
- package/dist/{chunk-LXEXBTKL.js → chunk-TAGR72IR.js} +4 -4
- package/dist/{chunk-YFXZEAYK.js → chunk-TOPYT5U5.js} +6 -6
- package/dist/{chunk-MV43JSJF.js → chunk-UBNCR3YK.js} +4 -4
- package/dist/{chunk-ZICD77GM.js → chunk-UC2ETWF3.js} +2 -2
- package/dist/{chunk-XWZVFISC.js → chunk-UFEVO57O.js} +6 -6
- package/dist/{chunk-NR5LT5RY.js → chunk-UNCOC7QH.js} +7 -7
- package/dist/{chunk-R4ROFEYC.js → chunk-VAIS3SOM.js} +2 -2
- package/dist/{chunk-VN3DBQAU.js → chunk-VCBHAE4R.js} +2 -2
- package/dist/{chunk-M4CV6BRT.js → chunk-VEALDPHW.js} +2 -2
- package/dist/{chunk-BIOUI4HL.js → chunk-W2OG6JOL.js} +1 -1
- package/dist/{chunk-BIOUI4HL.js.map → chunk-W2OG6JOL.js.map} +1 -1
- package/dist/{chunk-7DSTRQIJ.js → chunk-WEYZTLXN.js} +2 -2
- package/dist/{chunk-CAF6WOK7.js → chunk-WNGGJWF7.js} +2 -2
- package/dist/{chunk-IU6SNYX6.js → chunk-YJV2UZ7H.js} +5 -5
- package/dist/{chunk-RZ5SVOYR.js → chunk-YTGDPCPW.js} +2 -2
- package/dist/{chunk-DLG74CNB.js → chunk-ZEQWCBCM.js} +7 -19
- package/dist/chunk-ZEQWCBCM.js.map +1 -0
- package/dist/classified/index.js +5 -5
- package/dist/{classified-marker-CZKA6ITE.js → classified-marker-WQVIJAW2.js} +3 -3
- package/dist/collection-facade-MJXSC3Q6.js +44 -0
- package/dist/{computed-ZIQTYTDI.js → computed-DSMPXG2Y.js} +3 -3
- package/dist/consent/index.js +9 -9
- package/dist/{public-envelope-B4KNWVUA.js → cover-B5SJDHR3.js} +25 -5
- package/dist/{dead-filter-ESOBZZP5.js → dead-filter-2A7IAJ3D.js} +2 -2
- package/dist/delegation-A5A75KQO.js +25 -0
- package/dist/derivations/index.js +12 -12
- package/dist/derive-HJSMH7RA.js +21 -0
- package/dist/{enclave-AP3I5W7O.js → enclave-7MW6ZGXW.js} +11 -9
- package/dist/executor-AXE4XMLT.js +26 -0
- package/dist/executor-KGNLJD6M.js +9 -0
- package/dist/executor-XGIS6CR7.js +9 -0
- package/dist/export-accessible-VVBJM3MM.js +23 -0
- package/dist/extract-partition-LGGBTQET.js +38 -0
- package/dist/{fanout-sidecar-A765THMX.js → fanout-sidecar-WDYQ77VB.js} +9 -9
- package/dist/find-YS6XWB46.js +11 -0
- package/dist/forget/index.js +9 -9
- package/dist/guards/index.js +6 -6
- package/dist/history/index.js +12 -12
- package/dist/i18n/index.js +14 -14
- package/dist/index.d.ts +6 -3
- package/dist/index.js +140 -117
- package/dist/index.js.map +1 -1
- package/dist/indexing/index.js +2 -2
- package/dist/issue-LSR5PS6H.js +19 -0
- package/dist/kernel/enclave/index.d.ts +1 -1
- package/dist/kernel/enclave/record-keys/envelope-body.d.ts +8 -0
- package/dist/kernel/errors.d.ts +10 -5
- package/dist/kernel/noydb.d.ts +21 -11
- package/dist/kernel/types.d.ts +53 -6
- package/dist/kernel/vault.d.ts +10 -6
- package/dist/{ledger-GFBKVPV4.js → ledger-33BC4TR7.js} +11 -11
- package/dist/liberate-GBSAYLPJ.js +24 -0
- package/dist/{link-set-Z7Q2ASFX.js → link-set-QK22TDEX.js} +11 -11
- package/dist/materialized-views/index.js +19 -18
- package/dist/noydb-MTUBMWFE.js +70 -0
- package/dist/on/index.js +9 -9
- package/dist/overlay-views/index.js +4 -4
- package/dist/periods/index.js +19 -17
- package/dist/pod/index.js +13 -11
- package/dist/{policy-Z3RUAIY2.js → policy-NAHB2TUT.js} +5 -5
- package/dist/portability/index.js +8 -8
- package/dist/{post-register-JTH76BLY.js → post-register-JVTMJ6OW.js} +6 -6
- package/dist/query/index.js +10 -8
- package/dist/register-X462DNDM.js +23 -0
- package/dist/registry-3XMCT7MQ.js +18 -0
- package/dist/registry-KHD2I3M2.js +19 -0
- package/dist/registry-NPOWJHC4.js +9 -0
- package/dist/request-withdrawal-U7K3JTMY.js +31 -0
- package/dist/{reveal-DIBHLUZX.js → reveal-LGBOM2BO.js} +6 -6
- package/dist/revoke-OCWDSWRQ.js +24 -0
- package/dist/satellites/index.js +1 -1
- package/dist/sealed-record/index.js +12 -12
- package/dist/{seed-Q6M2IZFL.js → seed-PWK45HDF.js} +11 -11
- package/dist/session/index.js +9 -9
- package/dist/shadow/index.js +2 -2
- package/dist/share-link/index.d.ts +19 -0
- package/dist/share-link/index.js +201 -0
- package/dist/share-link/index.js.map +1 -0
- package/dist/share-link/share-link.d.ts +123 -0
- package/dist/signer-3YFBLZRN.js +25 -0
- package/dist/snapshots/index.js +10 -10
- package/dist/{stale-OSQ7J3AA.js → stale-FJED42DM.js} +10 -10
- package/dist/storage-W3GURVFU.js +23 -0
- package/dist/{store-coordination-provider-64OEZFGS.js → store-coordination-provider-APODTV4W.js} +3 -3
- package/dist/sync/index.js +10 -9
- package/dist/sync/index.js.map +1 -1
- package/dist/team/index.js +16 -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-ZASTRNPR.js → verify-26Y5GNMK.js} +5 -5
- package/dist/via/i18n/policy.d.ts +1 -1
- package/dist/{walk-SVNDIZ62.js → walk-XS3PKM6I.js} +11 -11
- package/dist/with/index.js +11 -11
- package/dist/with-audit/periods/periods.d.ts +1 -16
- package/dist/with-audit/periods/window.d.ts +16 -0
- package/dist/with-cargo/index.d.ts +6 -0
- package/dist/with-formula/materialized-views/dependency-analyzer.d.ts +15 -0
- package/dist/with-formula/materialized-views/index.d.ts +1 -1
- package/dist/with-formula/materialized-views/registry.d.ts +29 -0
- package/dist/with-formula/materialized-views/types.d.ts +81 -0
- package/dist/with-formula/materialized-views/with-materialized-view.d.ts +9 -5
- package/dist/with-party/directory/cover/custom.d.ts +34 -0
- package/dist/with-party/directory/cover/index.d.ts +19 -0
- package/dist/with-party/directory/cover/schema.d.ts +39 -0
- package/dist/with-party/directory/cover/storage.d.ts +71 -0
- package/dist/with-party/directory/cover/types.d.ts +149 -0
- package/dist/with-party/team/noydb-facade.d.ts +1 -1
- package/dist/with-party/team/sync-period-scope.d.ts +78 -0
- package/dist/with-party/team/sync.d.ts +13 -0
- package/dist/with-pod/bundle.d.ts +9 -7
- package/dist/with-pod/format.d.ts +8 -4
- package/dist/with-pod/index.d.ts +2 -1
- package/dist/withdraw-accessible-Y3B2535F.js +28 -0
- package/package.json +7 -3
- package/dist/api-ZGS6LCOF.js +0 -20
- package/dist/chunk-454JXE57.js.map +0 -1
- package/dist/chunk-4NXKCLLQ.js +0 -97
- package/dist/chunk-4NXKCLLQ.js.map +0 -1
- package/dist/chunk-6JTIAGHD.js.map +0 -1
- package/dist/chunk-DLG74CNB.js.map +0 -1
- package/dist/chunk-FHS2HQSH.js.map +0 -1
- package/dist/chunk-FM3G3NOY.js.map +0 -1
- package/dist/chunk-HDMEGAQE.js.map +0 -1
- package/dist/chunk-JNAI2HN2.js.map +0 -1
- package/dist/chunk-KSKBRKGJ.js.map +0 -1
- package/dist/chunk-VLFCJYTL.js.map +0 -1
- package/dist/chunk-WXSYDNBT.js +0 -39
- package/dist/chunk-WXSYDNBT.js.map +0 -1
- package/dist/chunk-X3YYQWOQ.js +0 -155
- package/dist/chunk-X3YYQWOQ.js.map +0 -1
- package/dist/chunk-X7QBD67R.js.map +0 -1
- package/dist/collection-facade-TLWIPI76.js +0 -44
- package/dist/delegation-W7ZV2322.js +0 -25
- package/dist/derive-H2BJTLUI.js +0 -21
- package/dist/executor-KGWTNEQD.js +0 -9
- package/dist/executor-OVEXR6RT.js +0 -9
- package/dist/executor-UNEH5ZYH.js +0 -25
- package/dist/export-accessible-PCMXSUZS.js +0 -23
- package/dist/extract-partition-SWHFSYJO.js +0 -38
- package/dist/find-N6345CNT.js +0 -11
- package/dist/issue-5OKB6I2R.js +0 -19
- package/dist/liberate-3VDOT4KO.js +0 -24
- package/dist/noydb-ZCJOYBDI.js +0 -68
- package/dist/register-VAHONCID.js +0 -23
- package/dist/registry-7MLVD3VO.js +0 -19
- package/dist/registry-EPKPD5SM.js +0 -18
- package/dist/registry-P5T7PS2U.js +0 -9
- package/dist/request-withdrawal-TI3A5WPS.js +0 -31
- package/dist/revoke-FDRD6GRW.js +0 -24
- package/dist/signer-MUWEIUI6.js +0 -25
- package/dist/storage-MVFCGEQE.js +0 -23
- package/dist/with-party/directory/public-envelope/index.d.ts +0 -12
- package/dist/with-party/directory/public-envelope/schema.d.ts +0 -24
- package/dist/with-party/directory/public-envelope/storage.d.ts +0 -59
- package/dist/with-party/directory/public-envelope/types.d.ts +0 -80
- package/dist/withdraw-accessible-WZIEVWSR.js +0 -28
- /package/dist/{api-ZGS6LCOF.js.map → api-IQFZJSQO.js.map} +0 -0
- /package/dist/{backup-BJ57IKAO.js.map → backup-LU2DTZTI.js.map} +0 -0
- /package/dist/{chunk-EVVGJDRQ.js.map → chunk-2MUZ3LY6.js.map} +0 -0
- /package/dist/{chunk-NWSGI5C7.js.map → chunk-2P7EGNKF.js.map} +0 -0
- /package/dist/{chunk-ZAJAVEXY.js.map → chunk-2PCAVW2I.js.map} +0 -0
- /package/dist/{chunk-HTJQYHZP.js.map → chunk-3ELCWU56.js.map} +0 -0
- /package/dist/{chunk-J2ZX2XUV.js.map → chunk-3SV2EPMN.js.map} +0 -0
- /package/dist/{chunk-FUG4SFN3.js.map → chunk-3U3FBR7O.js.map} +0 -0
- /package/dist/{chunk-VFUPHI2Z.js.map → chunk-4BRCIYFG.js.map} +0 -0
- /package/dist/{chunk-SNZ6URZZ.js.map → chunk-5OI6BR4H.js.map} +0 -0
- /package/dist/{chunk-B3HJYUOF.js.map → chunk-5WZXVULX.js.map} +0 -0
- /package/dist/{chunk-LASZKVMO.js.map → chunk-6B4DYGWO.js.map} +0 -0
- /package/dist/{chunk-ZJ2AK4V7.js.map → chunk-6HPG2YNX.js.map} +0 -0
- /package/dist/{chunk-5M5DVGV7.js.map → chunk-6HY2X62D.js.map} +0 -0
- /package/dist/{chunk-QRB7NAOJ.js.map → chunk-6NQMXTYC.js.map} +0 -0
- /package/dist/{chunk-RIX4V2TB.js.map → chunk-6XE5TMPR.js.map} +0 -0
- /package/dist/{chunk-BDVFPG6Y.js.map → chunk-7CI6CP7Z.js.map} +0 -0
- /package/dist/{chunk-OSDB5WW3.js.map → chunk-BMQWTQZ4.js.map} +0 -0
- /package/dist/{chunk-W22IKJE2.js.map → chunk-BOKIKJJB.js.map} +0 -0
- /package/dist/{chunk-CRI4OUV4.js.map → chunk-CBSY2N76.js.map} +0 -0
- /package/dist/{chunk-2NVOWNI3.js.map → chunk-CCOP5XDW.js.map} +0 -0
- /package/dist/{chunk-CDUQTA3Z.js.map → chunk-DDATL6PU.js.map} +0 -0
- /package/dist/{chunk-RCVJZMFE.js.map → chunk-DDHM2TLX.js.map} +0 -0
- /package/dist/{chunk-PN2XMATY.js.map → chunk-DRWBEDYO.js.map} +0 -0
- /package/dist/{chunk-T2FFWNPK.js.map → chunk-EGCRBCNA.js.map} +0 -0
- /package/dist/{chunk-VZRODIM3.js.map → chunk-F6T6L2UK.js.map} +0 -0
- /package/dist/{chunk-EXK7QRWF.js.map → chunk-G6EQYAL6.js.map} +0 -0
- /package/dist/{chunk-F64IRYG3.js.map → chunk-GQNGCEP5.js.map} +0 -0
- /package/dist/{chunk-ZUODRVHY.js.map → chunk-GVZQ4NAM.js.map} +0 -0
- /package/dist/{chunk-3B5VVCNY.js.map → chunk-GWKAVKHI.js.map} +0 -0
- /package/dist/{chunk-SLFHQTTW.js.map → chunk-GYYCX5K6.js.map} +0 -0
- /package/dist/{chunk-CIE2BASH.js.map → chunk-HOONYZY2.js.map} +0 -0
- /package/dist/{chunk-EYZ6IQ6X.js.map → chunk-HPUWOVR7.js.map} +0 -0
- /package/dist/{chunk-IL6POWCW.js.map → chunk-IM3QVF53.js.map} +0 -0
- /package/dist/{chunk-NJ4EOKMB.js.map → chunk-IRQY7IR5.js.map} +0 -0
- /package/dist/{chunk-3QCRBHCY.js.map → chunk-ISMV2QVG.js.map} +0 -0
- /package/dist/{chunk-HB3RFQSC.js.map → chunk-IY23KFNZ.js.map} +0 -0
- /package/dist/{chunk-6CRIV7DE.js.map → chunk-JBBSYJHP.js.map} +0 -0
- /package/dist/{chunk-MEFJPTZ4.js.map → chunk-JRBNCUNT.js.map} +0 -0
- /package/dist/{chunk-4VNQOLML.js.map → chunk-JVBO4SZL.js.map} +0 -0
- /package/dist/{chunk-I6GALP6E.js.map → chunk-JZWWLLVY.js.map} +0 -0
- /package/dist/{chunk-RYCTDFUX.js.map → chunk-KUIB4B5Q.js.map} +0 -0
- /package/dist/{chunk-HDQIIUPH.js.map → chunk-KUPKLSX5.js.map} +0 -0
- /package/dist/{chunk-5O3XF4DV.js.map → chunk-KWVJAOIN.js.map} +0 -0
- /package/dist/{chunk-3LQ2YKO4.js.map → chunk-LB6OH6K2.js.map} +0 -0
- /package/dist/{chunk-AUSTCW2X.js.map → chunk-LOF2W3JU.js.map} +0 -0
- /package/dist/{chunk-K5IMOGHB.js.map → chunk-M75ZZHSR.js.map} +0 -0
- /package/dist/{chunk-GTGPO5KW.js.map → chunk-MQ6WOPSY.js.map} +0 -0
- /package/dist/{chunk-4CTHCN4J.js.map → chunk-MTQPRQHB.js.map} +0 -0
- /package/dist/{chunk-UNFPPVNI.js.map → chunk-N55W7KUL.js.map} +0 -0
- /package/dist/{chunk-JKJOGPZN.js.map → chunk-N6WF5PKC.js.map} +0 -0
- /package/dist/{chunk-6T2SCQRU.js.map → chunk-O7WJ47EF.js.map} +0 -0
- /package/dist/{chunk-JIF24JPM.js.map → chunk-OF75ACKS.js.map} +0 -0
- /package/dist/{chunk-GKEWXIV5.js.map → chunk-ONTBCHCP.js.map} +0 -0
- /package/dist/{chunk-4JBYV75E.js.map → chunk-PK6QCH2C.js.map} +0 -0
- /package/dist/{chunk-6QTNZJBS.js.map → chunk-PT37L5DV.js.map} +0 -0
- /package/dist/{chunk-EVX47VBM.js.map → chunk-QDPZWTN2.js.map} +0 -0
- /package/dist/{chunk-QLWMEXCT.js.map → chunk-RDXW3OBQ.js.map} +0 -0
- /package/dist/{chunk-Q5VNKNE5.js.map → chunk-RM2XV574.js.map} +0 -0
- /package/dist/{chunk-ERJ7FU55.js.map → chunk-RND5ZPNP.js.map} +0 -0
- /package/dist/{chunk-JZUV47FZ.js.map → chunk-RTEK4C4I.js.map} +0 -0
- /package/dist/{chunk-5YOLBEQ6.js.map → chunk-S6Q37VGE.js.map} +0 -0
- /package/dist/{chunk-E5ZQT5KX.js.map → chunk-SMIRGMS7.js.map} +0 -0
- /package/dist/{chunk-EQO2UVP4.js.map → chunk-T6GU5PPZ.js.map} +0 -0
- /package/dist/{chunk-LXEXBTKL.js.map → chunk-TAGR72IR.js.map} +0 -0
- /package/dist/{chunk-YFXZEAYK.js.map → chunk-TOPYT5U5.js.map} +0 -0
- /package/dist/{chunk-MV43JSJF.js.map → chunk-UBNCR3YK.js.map} +0 -0
- /package/dist/{chunk-ZICD77GM.js.map → chunk-UC2ETWF3.js.map} +0 -0
- /package/dist/{chunk-XWZVFISC.js.map → chunk-UFEVO57O.js.map} +0 -0
- /package/dist/{chunk-NR5LT5RY.js.map → chunk-UNCOC7QH.js.map} +0 -0
- /package/dist/{chunk-R4ROFEYC.js.map → chunk-VAIS3SOM.js.map} +0 -0
- /package/dist/{chunk-VN3DBQAU.js.map → chunk-VCBHAE4R.js.map} +0 -0
- /package/dist/{chunk-M4CV6BRT.js.map → chunk-VEALDPHW.js.map} +0 -0
- /package/dist/{chunk-7DSTRQIJ.js.map → chunk-WEYZTLXN.js.map} +0 -0
- /package/dist/{chunk-CAF6WOK7.js.map → chunk-WNGGJWF7.js.map} +0 -0
- /package/dist/{chunk-IU6SNYX6.js.map → chunk-YJV2UZ7H.js.map} +0 -0
- /package/dist/{chunk-RZ5SVOYR.js.map → chunk-YTGDPCPW.js.map} +0 -0
- /package/dist/{classified-marker-CZKA6ITE.js.map → classified-marker-WQVIJAW2.js.map} +0 -0
- /package/dist/{collection-facade-TLWIPI76.js.map → collection-facade-MJXSC3Q6.js.map} +0 -0
- /package/dist/{computed-ZIQTYTDI.js.map → computed-DSMPXG2Y.js.map} +0 -0
- /package/dist/{delegation-W7ZV2322.js.map → cover-B5SJDHR3.js.map} +0 -0
- /package/dist/{dead-filter-ESOBZZP5.js.map → dead-filter-2A7IAJ3D.js.map} +0 -0
- /package/dist/{derive-H2BJTLUI.js.map → delegation-A5A75KQO.js.map} +0 -0
- /package/dist/{enclave-AP3I5W7O.js.map → derive-HJSMH7RA.js.map} +0 -0
- /package/dist/{executor-KGWTNEQD.js.map → enclave-7MW6ZGXW.js.map} +0 -0
- /package/dist/{executor-OVEXR6RT.js.map → executor-AXE4XMLT.js.map} +0 -0
- /package/dist/{executor-UNEH5ZYH.js.map → executor-KGNLJD6M.js.map} +0 -0
- /package/dist/{export-accessible-PCMXSUZS.js.map → executor-XGIS6CR7.js.map} +0 -0
- /package/dist/{extract-partition-SWHFSYJO.js.map → export-accessible-VVBJM3MM.js.map} +0 -0
- /package/dist/{find-N6345CNT.js.map → extract-partition-LGGBTQET.js.map} +0 -0
- /package/dist/{fanout-sidecar-A765THMX.js.map → fanout-sidecar-WDYQ77VB.js.map} +0 -0
- /package/dist/{issue-5OKB6I2R.js.map → find-YS6XWB46.js.map} +0 -0
- /package/dist/{ledger-GFBKVPV4.js.map → issue-LSR5PS6H.js.map} +0 -0
- /package/dist/{liberate-3VDOT4KO.js.map → ledger-33BC4TR7.js.map} +0 -0
- /package/dist/{link-set-Z7Q2ASFX.js.map → liberate-GBSAYLPJ.js.map} +0 -0
- /package/dist/{noydb-ZCJOYBDI.js.map → link-set-QK22TDEX.js.map} +0 -0
- /package/dist/{policy-Z3RUAIY2.js.map → noydb-MTUBMWFE.js.map} +0 -0
- /package/dist/{public-envelope-B4KNWVUA.js.map → policy-NAHB2TUT.js.map} +0 -0
- /package/dist/{post-register-JTH76BLY.js.map → post-register-JVTMJ6OW.js.map} +0 -0
- /package/dist/{register-VAHONCID.js.map → register-X462DNDM.js.map} +0 -0
- /package/dist/{registry-7MLVD3VO.js.map → registry-3XMCT7MQ.js.map} +0 -0
- /package/dist/{registry-EPKPD5SM.js.map → registry-KHD2I3M2.js.map} +0 -0
- /package/dist/{registry-P5T7PS2U.js.map → registry-NPOWJHC4.js.map} +0 -0
- /package/dist/{request-withdrawal-TI3A5WPS.js.map → request-withdrawal-U7K3JTMY.js.map} +0 -0
- /package/dist/{reveal-DIBHLUZX.js.map → reveal-LGBOM2BO.js.map} +0 -0
- /package/dist/{revoke-FDRD6GRW.js.map → revoke-OCWDSWRQ.js.map} +0 -0
- /package/dist/{seed-Q6M2IZFL.js.map → seed-PWK45HDF.js.map} +0 -0
- /package/dist/{signer-MUWEIUI6.js.map → signer-3YFBLZRN.js.map} +0 -0
- /package/dist/{stale-OSQ7J3AA.js.map → stale-FJED42DM.js.map} +0 -0
- /package/dist/{storage-MVFCGEQE.js.map → storage-W3GURVFU.js.map} +0 -0
- /package/dist/{store-coordination-provider-64OEZFGS.js.map → store-coordination-provider-APODTV4W.js.map} +0 -0
- /package/dist/{verify-ZASTRNPR.js.map → verify-26Y5GNMK.js.map} +0 -0
- /package/dist/{walk-SVNDIZ62.js.map → walk-XS3PKM6I.js.map} +0 -0
- /package/dist/{withdraw-accessible-WZIEVWSR.js.map → withdraw-accessible-Y3B2535F.js.map} +0 -0
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cover — owner-curated plaintext metadata, readable before vault
|
|
3
|
+
* unlock or bundle decryption. Like a book's cover: title, cover
|
|
4
|
+
* art, back-cover blurb — readable on the shelf without opening
|
|
5
|
+
* the book, and never trusted as the book's contents.
|
|
6
|
+
*
|
|
7
|
+
* (Formerly "public envelope" — the wire keeps that name: the
|
|
8
|
+
* record still lives at `_meta/public-envelope` and carries the
|
|
9
|
+
* `_noydb_public: 1` discriminator.)
|
|
10
|
+
*
|
|
11
|
+
* @see https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/public-envelope.md
|
|
12
|
+
*
|
|
13
|
+
* @module
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Either a single string (used when the developer's app is
|
|
17
|
+
* single-locale) or a locale → string map for i18n. Mirrors the
|
|
18
|
+
* shape `@noy-db/hub/i18n` already uses for record fields, so the
|
|
19
|
+
* existing `resolveI18nText` resolver applies.
|
|
20
|
+
*/
|
|
21
|
+
export type CoverText = string | Record<string, string>;
|
|
22
|
+
/**
|
|
23
|
+
* A JSON-serializable value — what a `custom` namespace payload may
|
|
24
|
+
* hold. No functions, `undefined`, symbols, bigints, or cycles; the
|
|
25
|
+
* validator additionally caps nesting depth at 8 levels.
|
|
26
|
+
*/
|
|
27
|
+
export type JsonValue = string | number | boolean | null | JsonValue[] | {
|
|
28
|
+
[key: string]: JsonValue;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Persisted shape — both `_meta/public-envelope` (the frozen wire
|
|
32
|
+
* name) and the bundle header carry this. The version number is
|
|
33
|
+
* monotonic per vault and helps cache invalidators detect change
|
|
34
|
+
* without hashing the JSON.
|
|
35
|
+
*/
|
|
36
|
+
export interface Cover {
|
|
37
|
+
readonly _noydb_public: 1;
|
|
38
|
+
readonly version: number;
|
|
39
|
+
readonly name?: CoverText;
|
|
40
|
+
readonly description?: CoverText;
|
|
41
|
+
/** Inline `data:` URL (`data:image/png;base64,…` or `data:image/svg+xml;base64,…`). */
|
|
42
|
+
readonly icon?: string;
|
|
43
|
+
/** ISO-8601 timestamp; auto-set on first cover write, immutable thereafter. */
|
|
44
|
+
readonly createdAt?: string;
|
|
45
|
+
/** ISO-8601 timestamp; auto-updated on every `setCover` call. */
|
|
46
|
+
readonly updatedAt?: string;
|
|
47
|
+
/** BCP-47 fallback locale for renderers when the user's locale isn't covered. */
|
|
48
|
+
readonly defaultLocale?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Namespaced integrator slot (#800) — e.g.
|
|
51
|
+
* `{ 'noydb.viewer': { defaultCollection: 'invoices' } }`. Keys must
|
|
52
|
+
* be reverse-DNS / package-style (`noydb.viewer`, `com.acme.registry`).
|
|
53
|
+
* Like everything on the cover it is plaintext, public, and
|
|
54
|
+
* unauthenticated — payloads are hints, never authority. Opt-in:
|
|
55
|
+
* excluded from `DEFAULT_COVER_SCHEMA.fields`, so `cover: true`
|
|
56
|
+
* does NOT enable it.
|
|
57
|
+
*/
|
|
58
|
+
readonly custom?: Record<string, JsonValue>;
|
|
59
|
+
}
|
|
60
|
+
/** Field names the developer can allow in `CoverSchema.fields`. */
|
|
61
|
+
export declare const COVER_FIELDS: readonly ["name", "description", "icon", "createdAt", "updatedAt", "defaultLocale", "custom"];
|
|
62
|
+
export type CoverField = (typeof COVER_FIELDS)[number];
|
|
63
|
+
/**
|
|
64
|
+
* Build-time schema. The developer enables the feature and bounds
|
|
65
|
+
* what the owner can set. `true` is shorthand for "all defaults" —
|
|
66
|
+
* gives the owner the full field set with the standard caps.
|
|
67
|
+
*/
|
|
68
|
+
export interface CoverSchema {
|
|
69
|
+
/**
|
|
70
|
+
* Allowed field names. Setting `name`/`description`/`icon`/`defaultLocale` is
|
|
71
|
+
* gated on the field being listed here. `createdAt` / `updatedAt` are managed
|
|
72
|
+
* by the hub; including them is a no-op (the owner cannot set them
|
|
73
|
+
* directly). Default: every field above.
|
|
74
|
+
*/
|
|
75
|
+
readonly fields?: ReadonlyArray<CoverField>;
|
|
76
|
+
/**
|
|
77
|
+
* Maximum icon size — measured as the length of the data-URL
|
|
78
|
+
* string. Default 256 KB.
|
|
79
|
+
*/
|
|
80
|
+
readonly maxIconBytes?: number;
|
|
81
|
+
/** Allowed icon MIME types. Default ['image/png', 'image/svg+xml']. */
|
|
82
|
+
readonly iconMimeTypes?: ReadonlyArray<string>;
|
|
83
|
+
/** Maximum length of `name` / `description` per locale. Default 200. */
|
|
84
|
+
readonly maxStringChars?: number;
|
|
85
|
+
/**
|
|
86
|
+
* Maximum serialized size (`JSON.stringify` length) of the whole
|
|
87
|
+
* would-be-persisted `custom` object, measured AFTER the namespace
|
|
88
|
+
* patch merge. Default 8 KB.
|
|
89
|
+
*/
|
|
90
|
+
readonly maxCustomBytes?: number;
|
|
91
|
+
/**
|
|
92
|
+
* Maximum serialized size of the ENTIRE would-be-persisted cover
|
|
93
|
+
* document. The consumer-protection cap — bounds what a pre-auth
|
|
94
|
+
* reader must fetch and parse, and closes the unbounded locale-map
|
|
95
|
+
* key-count hole for `name` / `description`. Default 300 KB
|
|
96
|
+
* (headroom over the 256 KB icon cap + text fields).
|
|
97
|
+
*/
|
|
98
|
+
readonly maxCoverBytes?: number;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Default schema values; merged onto every developer-supplied schema.
|
|
102
|
+
* NOTE: `fields` is the six display fields, deliberately NOT
|
|
103
|
+
* {@link COVER_FIELDS} — the opt-in `'custom'` slot is excluded, so
|
|
104
|
+
* the `cover: true` shorthand never exposes it by accident.
|
|
105
|
+
*/
|
|
106
|
+
export declare const DEFAULT_COVER_SCHEMA: {
|
|
107
|
+
readonly fields: readonly ["name", "description", "icon", "createdAt", "updatedAt", "defaultLocale"];
|
|
108
|
+
readonly maxIconBytes: number;
|
|
109
|
+
readonly iconMimeTypes: readonly ["image/png", "image/svg+xml"];
|
|
110
|
+
readonly maxStringChars: 200;
|
|
111
|
+
readonly maxCustomBytes: number;
|
|
112
|
+
readonly maxCoverBytes: number;
|
|
113
|
+
};
|
|
114
|
+
/** Resolved schema after merging developer override onto defaults. */
|
|
115
|
+
export interface ResolvedCoverSchema {
|
|
116
|
+
readonly fields: ReadonlyArray<CoverField>;
|
|
117
|
+
readonly maxIconBytes: number;
|
|
118
|
+
readonly iconMimeTypes: ReadonlyArray<string>;
|
|
119
|
+
readonly maxStringChars: number;
|
|
120
|
+
readonly maxCustomBytes: number;
|
|
121
|
+
readonly maxCoverBytes: number;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Merge developer schema onto the defaults. The shorthand `true`
|
|
125
|
+
* resolves to the full default schema; an explicit object only
|
|
126
|
+
* overrides the keys it provides.
|
|
127
|
+
*/
|
|
128
|
+
export declare function resolveSchema(schema: true | CoverSchema | undefined): ResolvedCoverSchema | undefined;
|
|
129
|
+
/** @deprecated Use {@link Cover}. */
|
|
130
|
+
export type PublicEnvelope = Cover;
|
|
131
|
+
/** @deprecated Use {@link CoverText}. */
|
|
132
|
+
export type PublicEnvelopeText = CoverText;
|
|
133
|
+
/** @deprecated Use {@link CoverField}. */
|
|
134
|
+
export type PublicEnvelopeField = CoverField;
|
|
135
|
+
/** @deprecated Use {@link CoverSchema}. */
|
|
136
|
+
export type PublicEnvelopeSchema = CoverSchema;
|
|
137
|
+
/** @deprecated Use {@link ResolvedCoverSchema}. */
|
|
138
|
+
export type ResolvedPublicEnvelopeSchema = ResolvedCoverSchema;
|
|
139
|
+
/** @deprecated Use {@link COVER_FIELDS}. */
|
|
140
|
+
export declare const PUBLIC_ENVELOPE_FIELDS: readonly ["name", "description", "icon", "createdAt", "updatedAt", "defaultLocale", "custom"];
|
|
141
|
+
/** @deprecated Use {@link DEFAULT_COVER_SCHEMA}. */
|
|
142
|
+
export declare const DEFAULT_PUBLIC_ENVELOPE_SCHEMA: {
|
|
143
|
+
readonly fields: readonly ["name", "description", "icon", "createdAt", "updatedAt", "defaultLocale"];
|
|
144
|
+
readonly maxIconBytes: number;
|
|
145
|
+
readonly iconMimeTypes: readonly ["image/png", "image/svg+xml"];
|
|
146
|
+
readonly maxStringChars: 200;
|
|
147
|
+
readonly maxCustomBytes: number;
|
|
148
|
+
readonly maxCoverBytes: number;
|
|
149
|
+
};
|
|
@@ -161,7 +161,7 @@ export declare class TeamFacade {
|
|
|
161
161
|
* ```
|
|
162
162
|
*
|
|
163
163
|
* Returns the WebAuthn `credentialId` (extracted from `meta.credentialId`)
|
|
164
|
-
* for the caller's lookup index (a bootstrap vault, a
|
|
164
|
+
* for the caller's lookup index (a bootstrap vault, a Cover,
|
|
165
165
|
* a server-side allowlist).
|
|
166
166
|
*
|
|
167
167
|
* Gated by `enroll-authenticator` like `enrollAuthenticator()` itself.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* #807 — period-scoped pull support for the `SyncEngine` (thin-client
|
|
3
|
+
* bootstrap: first sync pulls the current period + the period summaries;
|
|
4
|
+
* historical periods backfill on demand via `pull({ periods: ['<name>'] })`).
|
|
5
|
+
*
|
|
6
|
+
* ## Membership law
|
|
7
|
+
*
|
|
8
|
+
* The engine only ever sees ciphertext envelopes, so period membership at
|
|
9
|
+
* the sync tier is by write-time `_ts` against the closed periods' windows
|
|
10
|
+
* (`periodExclusiveUpperBound`) — the SAME store-tier law freeze (#604) and
|
|
11
|
+
* archive (#613) use, NOT the business-date (`dateField`) seal the write
|
|
12
|
+
* guard applies inside the trust boundary. A late-booked record (in-period
|
|
13
|
+
* business date, current write-time) therefore syncs with the current
|
|
14
|
+
* period — mirroring how it archives at the NEXT period's archive.
|
|
15
|
+
*
|
|
16
|
+
* Closed periods partition the timeline by their exclusive upper bounds:
|
|
17
|
+
* the earliest closed period's window is unbounded below (a close seals
|
|
18
|
+
* everything at-or-before its `endDate`), each later one starts at its
|
|
19
|
+
* predecessor's bound, and the CURRENT window is everything at-or-after
|
|
20
|
+
* the latest closed bound (everything, when no period was ever closed).
|
|
21
|
+
*
|
|
22
|
+
* ## What a period filter can never drop
|
|
23
|
+
*
|
|
24
|
+
* - **Period summaries** (`_periods` + freeze/archive/target-purge
|
|
25
|
+
* companions) — the navigation index; always pulled in full, exempt from
|
|
26
|
+
* every filter (`collections`, `periods`, `modifiedSince`).
|
|
27
|
+
* - **Delete markers and tombstones** — an erasure or delete must never be
|
|
28
|
+
* skipped by partial sync (the #589/#590 law, mirroring the
|
|
29
|
+
* `modifiedSince` exemption). This is what makes a device that never
|
|
30
|
+
* pulled period P converge instead of resurrecting P's deleted records
|
|
31
|
+
* when it later backfills.
|
|
32
|
+
* - **Reserved lookups** (`_dict_*`/`_lookup_*`) — vocabulary/config rows
|
|
33
|
+
* are not period-partitioned data; their explicit pull loop is exempt.
|
|
34
|
+
*
|
|
35
|
+
* Push is NEVER period-filtered — `PushOptions` has no `periods` member at
|
|
36
|
+
* all; a thin client's writes always flow up in full.
|
|
37
|
+
*/
|
|
38
|
+
import type { EncryptedEnvelope } from '../../kernel/types.js';
|
|
39
|
+
import { PERIODS_COLLECTION } from '../../with-audit/periods/window.js';
|
|
40
|
+
export { PERIODS_COLLECTION };
|
|
41
|
+
/**
|
|
42
|
+
* The reserved period-metadata collections a period-scoped pull always
|
|
43
|
+
* fetches first (phase 1, "summaries"): the hash-chained `_periods` index
|
|
44
|
+
* plus its freeze/archive/target-purge companions.
|
|
45
|
+
*/
|
|
46
|
+
export declare const PERIOD_SUMMARY_COLLECTIONS: readonly string[];
|
|
47
|
+
/** The subset of a decrypted `PeriodRecord` the window computation needs. */
|
|
48
|
+
export interface PeriodSyncRecord {
|
|
49
|
+
readonly name: string;
|
|
50
|
+
readonly kind: 'closed' | 'opened';
|
|
51
|
+
readonly endDate: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Vault-injected source of decrypted period records, wired via
|
|
55
|
+
* `SyncEngine.setPeriodPullSource` (same injection pattern as
|
|
56
|
+
* `setReservedLookupSource`). MUST re-read from the local store on every
|
|
57
|
+
* call — the engine invokes it right after the summaries phase applied
|
|
58
|
+
* freshly pulled `_periods` envelopes.
|
|
59
|
+
*/
|
|
60
|
+
export interface PeriodPullSource {
|
|
61
|
+
periods(): Promise<readonly PeriodSyncRecord[]>;
|
|
62
|
+
}
|
|
63
|
+
/** Validate the raw `PullOptions.periods` value (runtime shape only). */
|
|
64
|
+
export declare function validatePeriodsOption(periods: unknown): asserts periods is readonly string[] | {
|
|
65
|
+
readonly current: true;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Resolve the selected `_ts` windows and return the pull-scope predicate:
|
|
69
|
+
* `true` = the envelope is in scope for this pull. Tombstones and delete
|
|
70
|
+
* markers are unconditionally in scope (see module doc).
|
|
71
|
+
*
|
|
72
|
+
* Throws `ValidationError` for a name that is not a closed period in the
|
|
73
|
+
* (freshly synced) `_periods` index — a typo'd backfill must fail loudly,
|
|
74
|
+
* never silently pull nothing.
|
|
75
|
+
*/
|
|
76
|
+
export declare function buildPeriodScope(option: readonly string[] | {
|
|
77
|
+
readonly current: true;
|
|
78
|
+
}, records: readonly PeriodSyncRecord[]): (envelope: EncryptedEnvelope) => boolean;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { NoydbStore, DirtyEntry, ConflictStrategy, CollectionConflictResolver, PushOptions, PullOptions, PushResult, PullResult, SyncStatus, SyncTargetRole } from '../../kernel/types.js';
|
|
2
|
+
import { type PeriodPullSource } from './sync-period-scope.js';
|
|
2
3
|
import type { NoydbEventEmitter } from '../../kernel/events.js';
|
|
3
4
|
import type { SyncPolicy } from '../../kernel/sync-policy.js';
|
|
4
5
|
import { SyncScheduler } from '../../kernel/sync-policy.js';
|
|
@@ -66,6 +67,18 @@ export declare class SyncEngine {
|
|
|
66
67
|
private reservedDictExpander?;
|
|
67
68
|
/** Wire the reserved-dict expansion function (#653). Same injection pattern as `setPairExpander`. */
|
|
68
69
|
setReservedDictExpander(expander: (names: readonly string[]) => readonly string[]): void;
|
|
70
|
+
/** #807: vault-injected source of decrypted period records — resolves the `_ts` windows a
|
|
71
|
+
* `pull({ periods })` scopes to. Re-read AFTER the summaries phase, so a fresh device's
|
|
72
|
+
* freshly pulled `_periods` index is what the windows are computed from. `undefined` on a
|
|
73
|
+
* standalone engine that was never vault-attached (period-scoped pull then throws). */
|
|
74
|
+
private periodPullSource?;
|
|
75
|
+
/** Wire the period-window source (#807). Same injection pattern as `setReservedLookupSource`. */
|
|
76
|
+
setPeriodPullSource(source: PeriodPullSource): void;
|
|
77
|
+
/** #807: KPI accumulator `applyRemote` feeds during a period-scoped `pull()` — pointed at the
|
|
78
|
+
* active phase's counters (summaries → records) and cleared before pull returns. Approximate
|
|
79
|
+
* by design: a push interleaved mid-pull on the same engine would attribute its converge
|
|
80
|
+
* applies to the open phase; the counters are a download-budget KPI, not an audit source. */
|
|
81
|
+
private pullByteSink;
|
|
69
82
|
constructor(opts: {
|
|
70
83
|
local: NoydbStore;
|
|
71
84
|
remote: NoydbStore;
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
import { type NoydbPodHeader } from './format.js';
|
|
36
36
|
import type { Vault } from '../kernel/vault.js';
|
|
37
37
|
import type { BundleRecipient } from '../with-party/team/keyring.js';
|
|
38
|
-
import type {
|
|
38
|
+
import type { Cover } from '../with-party/directory/cover/types.js';
|
|
39
39
|
import type { SealingKeyProvider, RecipientSealer, RecipientHint } from '../with-party/team/managed-passphrase.js';
|
|
40
40
|
/**
|
|
41
41
|
* The credential kinds that can be bundled for auto-unlock.
|
|
@@ -376,21 +376,23 @@ export declare function readPodHeader(bytes: Uint8Array): NoydbPodHeader;
|
|
|
376
376
|
/** @deprecated Use `readPodHeader`. */
|
|
377
377
|
export declare const readNoydbBundleHeader: typeof readPodHeader;
|
|
378
378
|
/**
|
|
379
|
-
* Read just the bundle's
|
|
379
|
+
* Read just the bundle's cover (`https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/public-envelope.md`)
|
|
380
380
|
* — without verifying the body or even parsing the dump JSON. Pass
|
|
381
381
|
* the raw bundle bytes; receive the owner-curated metadata or
|
|
382
382
|
* `undefined` if the bundle was written without one.
|
|
383
383
|
*
|
|
384
384
|
* Locale-resolves any `name` / `description` map fields when `locale`
|
|
385
|
-
* is supplied. Omitting `locale` returns the raw
|
|
385
|
+
* is supplied. Omitting `locale` returns the raw cover.
|
|
386
386
|
*
|
|
387
|
-
* Same security caveat as the on-vault read path — the
|
|
388
|
-
*
|
|
387
|
+
* Same security caveat as the on-vault read path — the cover is an
|
|
388
|
+
* **untrusted hint** in v1; the encrypted body remains
|
|
389
389
|
* the source of truth for vault contents.
|
|
390
390
|
*/
|
|
391
|
-
export declare function
|
|
391
|
+
export declare function readPodCover(bytes: Uint8Array, opts?: {
|
|
392
392
|
readonly locale?: string;
|
|
393
|
-
}):
|
|
393
|
+
}): Cover | undefined;
|
|
394
|
+
/** @deprecated Use `readPodCover` (#799 rename). */
|
|
395
|
+
export declare const readNoydbBundlePublicEnvelope: typeof readPodCover;
|
|
394
396
|
/**
|
|
395
397
|
* Read a full `.noydb` bundle: validate magic + header, verify
|
|
396
398
|
* integrity hash over the body bytes, decompress, and return the
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
* carries only what's needed to identify the file as a NOYDB
|
|
46
46
|
* bundle and verify its integrity — nothing about the contents.
|
|
47
47
|
*/
|
|
48
|
-
import type {
|
|
48
|
+
import type { Cover } from '../with-party/directory/cover/types.js';
|
|
49
49
|
/** Magic bytes 'NDB1' (ASCII), identifying a NOYDB bundle. */
|
|
50
50
|
export declare const NOYDB_BUNDLE_MAGIC: Uint8Array<ArrayBuffer>;
|
|
51
51
|
/** Total fixed prefix before the header JSON: 4+1+1+4 bytes. */
|
|
@@ -110,17 +110,21 @@ export interface NoydbPodHeader {
|
|
|
110
110
|
/** SHA-256 of the compressed body bytes (lowercase hex). Lets readers verify integrity without decompressing. */
|
|
111
111
|
readonly bodySha256: string;
|
|
112
112
|
/**
|
|
113
|
-
* Owner-curated
|
|
113
|
+
* Owner-curated cover (`https://github.com/vLannaAi/noy-db-docs/blob/main/content/docs/services/public-envelope.md`).
|
|
114
114
|
* Optional — present only when the source vault has a
|
|
115
115
|
* `_meta/public-envelope` document AND the writer's hub is opted
|
|
116
116
|
* into the feature. Treat as **untrusted hint**; the body's
|
|
117
117
|
* encrypted contents remain the source of truth.
|
|
118
118
|
*
|
|
119
|
-
* The
|
|
119
|
+
* The JSON key keeps its frozen wire name `publicEnvelope` (#799
|
|
120
|
+
* renamed only the developer surface — existing bundles stay
|
|
121
|
+
* readable byte-for-byte).
|
|
122
|
+
*
|
|
123
|
+
* The cover deliberately widens the minimum-disclosure rule
|
|
120
124
|
* for explicit, owner-curated label fields (name, icon, …). Every
|
|
121
125
|
* other unknown header key still rejects at parse time.
|
|
122
126
|
*/
|
|
123
|
-
readonly publicEnvelope?:
|
|
127
|
+
readonly publicEnvelope?: Cover;
|
|
124
128
|
/**
|
|
125
129
|
* Auto-unlock material indicator. When present, the bundle
|
|
126
130
|
* body wraps the dump JSON in a structure carrying per-user
|
package/dist/with-pod/index.d.ts
CHANGED
|
@@ -11,7 +11,8 @@
|
|
|
11
11
|
* omit this subpath and save ~805 LOC of format code + Brotli/gzip
|
|
12
12
|
* wiring.
|
|
13
13
|
*/
|
|
14
|
-
export { writePod, readPod, readPodHeader, writeNoydbBundle, readNoydbBundle, readNoydbBundleHeader, resetBrotliSupportCache, } from './bundle.js';
|
|
14
|
+
export { writePod, readPod, readPodHeader, readPodCover, writeNoydbBundle, readNoydbBundle, readNoydbBundleHeader, resetBrotliSupportCache, } from './bundle.js';
|
|
15
|
+
export type { Cover } from '../with-party/directory/cover/types.js';
|
|
15
16
|
export type { WritePodOptions, WriteNoydbBundleOptions, ReadNoydbBundleOptions, NoydbBundleReadResult, } from './bundle.js';
|
|
16
17
|
export { NOYDB_BUNDLE_MAGIC, NOYDB_BUNDLE_PREFIX_BYTES, NOYDB_BUNDLE_FORMAT_VERSION, FLAG_COMPRESSED, FLAG_HAS_INTEGRITY_HASH, COMPRESSION_NONE, COMPRESSION_GZIP, COMPRESSION_BROTLI, validateBundleHeader, encodeBundleHeader, } from './format.js';
|
|
17
18
|
export type { CompressionAlgo, NoydbPodHeader, NoydbBundleHeader, } from './format.js';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
FROZEN_SNAPSHOTS_COLLECTION,
|
|
3
|
+
freezeAndDeleteClosure,
|
|
4
|
+
freezeSnapshotOnly,
|
|
5
|
+
randomId,
|
|
6
|
+
withdrawAccessibleData
|
|
7
|
+
} from "./chunk-YJV2UZ7H.js";
|
|
8
|
+
import "./chunk-GQNGCEP5.js";
|
|
9
|
+
import "./chunk-A7JJLVGH.js";
|
|
10
|
+
import "./chunk-J6Q7UVQE.js";
|
|
11
|
+
import "./chunk-DVUZMT2W.js";
|
|
12
|
+
import "./chunk-WEYZTLXN.js";
|
|
13
|
+
import "./chunk-IY23KFNZ.js";
|
|
14
|
+
import "./chunk-N6WF5PKC.js";
|
|
15
|
+
import "./chunk-6HY2X62D.js";
|
|
16
|
+
import "./chunk-LP7BEXCT.js";
|
|
17
|
+
import "./chunk-HOONYZY2.js";
|
|
18
|
+
import "./chunk-LSASLXGC.js";
|
|
19
|
+
import "./chunk-W2OG6JOL.js";
|
|
20
|
+
import "./chunk-PZ5AY32C.js";
|
|
21
|
+
export {
|
|
22
|
+
FROZEN_SNAPSHOTS_COLLECTION,
|
|
23
|
+
freezeAndDeleteClosure,
|
|
24
|
+
freezeSnapshotOnly,
|
|
25
|
+
randomId,
|
|
26
|
+
withdrawAccessibleData
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=withdraw-accessible-Y3B2535F.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@noy-db/hub",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0-pre.1",
|
|
4
4
|
"description": "Zero-knowledge, offline-first, encrypted document store — core library with AES-256-GCM, PBKDF2, multi-user keyring, and sync engine",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "vLannaAi <vicio@lanna.ai>",
|
|
@@ -120,6 +120,10 @@
|
|
|
120
120
|
"types": "./dist/kernel/util/index.d.ts",
|
|
121
121
|
"default": "./dist/util/index.js"
|
|
122
122
|
},
|
|
123
|
+
"./share-link": {
|
|
124
|
+
"types": "./dist/share-link/index.d.ts",
|
|
125
|
+
"default": "./dist/share-link/index.js"
|
|
126
|
+
},
|
|
123
127
|
"./attestation": {
|
|
124
128
|
"types": "./dist/with-audit/attestation/index.d.ts",
|
|
125
129
|
"default": "./dist/attestation/index.js"
|
|
@@ -192,14 +196,14 @@
|
|
|
192
196
|
"node": ">=22.0.0"
|
|
193
197
|
},
|
|
194
198
|
"dependencies": {
|
|
195
|
-
"@noy-db/attestation": "0.
|
|
199
|
+
"@noy-db/attestation": "0.4.0-pre.1"
|
|
196
200
|
},
|
|
197
201
|
"devDependencies": {
|
|
198
202
|
"@types/node": "^22.0.0",
|
|
199
203
|
"esbuild": "^0.25.0",
|
|
200
204
|
"zod": "^4.0.0",
|
|
201
205
|
"zod-to-json-schema": "^3.25.2",
|
|
202
|
-
"@noy-db/on-shamir": "0.
|
|
206
|
+
"@noy-db/on-shamir": "0.4.0-pre.1"
|
|
203
207
|
},
|
|
204
208
|
"peerDependencies": {
|
|
205
209
|
"zod-to-json-schema": "^3.25.0"
|
package/dist/api-ZGS6LCOF.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
UserApi,
|
|
3
|
-
createUserApi
|
|
4
|
-
} from "./chunk-LASZKVMO.js";
|
|
5
|
-
import "./chunk-4JBYV75E.js";
|
|
6
|
-
import "./chunk-XDYREZWE.js";
|
|
7
|
-
import "./chunk-7DSTRQIJ.js";
|
|
8
|
-
import "./chunk-HB3RFQSC.js";
|
|
9
|
-
import "./chunk-JKJOGPZN.js";
|
|
10
|
-
import "./chunk-5M5DVGV7.js";
|
|
11
|
-
import "./chunk-LP7BEXCT.js";
|
|
12
|
-
import "./chunk-CIE2BASH.js";
|
|
13
|
-
import "./chunk-JNAI2HN2.js";
|
|
14
|
-
import "./chunk-BIOUI4HL.js";
|
|
15
|
-
import "./chunk-PZ5AY32C.js";
|
|
16
|
-
export {
|
|
17
|
-
UserApi,
|
|
18
|
-
createUserApi
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=api-ZGS6LCOF.js.map
|