@noy-db/hub 0.2.0-pre.27 → 0.2.0-pre.28

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.
Files changed (179) hide show
  1. package/dist/aggregate/index.cjs +7 -0
  2. package/dist/aggregate/index.cjs.map +1 -1
  3. package/dist/aggregate/index.d.cts +2 -2
  4. package/dist/aggregate/index.d.ts +2 -2
  5. package/dist/aggregate/index.js +2 -2
  6. package/dist/attestation/index.cjs.map +1 -1
  7. package/dist/attestation/index.d.cts +3 -3
  8. package/dist/attestation/index.d.ts +3 -3
  9. package/dist/attestation/index.js +4 -4
  10. package/dist/blobs/index.cjs.map +1 -1
  11. package/dist/blobs/index.d.cts +5 -5
  12. package/dist/blobs/index.d.ts +5 -5
  13. package/dist/blobs/index.js +4 -4
  14. package/dist/bundle/index.cjs +83 -5
  15. package/dist/bundle/index.cjs.map +1 -1
  16. package/dist/bundle/index.d.cts +5 -5
  17. package/dist/bundle/index.d.ts +5 -5
  18. package/dist/bundle/index.js +8 -8
  19. package/dist/{chunk-PS6PSEZL.js → chunk-2M62POB5.js} +3 -3
  20. package/dist/{chunk-C7UIT5XY.js → chunk-345PYZD6.js} +2 -2
  21. package/dist/{chunk-KSKKLVPA.js → chunk-3LHTFCU2.js} +113 -41
  22. package/dist/chunk-3LHTFCU2.js.map +1 -0
  23. package/dist/{chunk-KA5A5CSD.js → chunk-42EGY2FQ.js} +3 -3
  24. package/dist/{chunk-7DDTFGXY.js → chunk-4FHKQDHN.js} +2 -2
  25. package/dist/{chunk-KD253AI5.js → chunk-6LD37AMK.js} +22 -3
  26. package/dist/chunk-6LD37AMK.js.map +1 -0
  27. package/dist/{chunk-6H4CAHMQ.js → chunk-7GKDVWMD.js} +2 -2
  28. package/dist/{chunk-6ZKXFMUG.js → chunk-7TBCLM52.js} +2 -2
  29. package/dist/{chunk-VJNV2GRF.js → chunk-AHDQYG7P.js} +3 -3
  30. package/dist/{chunk-RRCRITDM.js → chunk-DCYWBKQ2.js} +2 -2
  31. package/dist/{chunk-K6PCTYAH.js → chunk-DMWUOV7X.js} +2 -2
  32. package/dist/{chunk-CVTPNW2Y.js → chunk-DQ6XF2K2.js} +6 -6
  33. package/dist/{chunk-5EITJMUJ.js → chunk-ENC4C6XW.js} +3 -3
  34. package/dist/{chunk-BOMH3637.js → chunk-GVEUI7VR.js} +2 -2
  35. package/dist/{chunk-WVYL6HM7.js → chunk-HI7FY7QZ.js} +2 -2
  36. package/dist/{chunk-PFKAT4NT.js → chunk-HQ242WNG.js} +3 -3
  37. package/dist/{chunk-HAKEZTA7.js → chunk-IMY4FXYE.js} +3 -3
  38. package/dist/{chunk-SID2NJNF.js → chunk-JEQB2KVI.js} +2 -2
  39. package/dist/{chunk-Z3BJF7SF.js → chunk-M2VZQ24Q.js} +2 -2
  40. package/dist/{chunk-2NYVA6FW.js → chunk-PPF7Z2YQ.js} +2 -2
  41. package/dist/{chunk-IWGVH2RR.js → chunk-QBC2TZHC.js} +3 -3
  42. package/dist/{chunk-AD6RNBAW.js → chunk-QSLIT4JZ.js} +1 -1
  43. package/dist/chunk-QSLIT4JZ.js.map +1 -0
  44. package/dist/{chunk-BMDVFBCL.js → chunk-RG5KLMEU.js} +2 -2
  45. package/dist/{chunk-DONPLWRC.js → chunk-SWGVCSIY.js} +2 -2
  46. package/dist/{chunk-LXA2E3VI.js → chunk-VSL3W2MO.js} +2 -2
  47. package/dist/{chunk-6M5JKTUQ.js → chunk-WH7G2YEE.js} +2 -2
  48. package/dist/{chunk-I2RX62RX.js → chunk-YYLFXX2K.js} +2 -2
  49. package/dist/consent/index.d.cts +4 -4
  50. package/dist/consent/index.d.ts +4 -4
  51. package/dist/{decrypt-partition-CptDdcCx.d.ts → decrypt-partition-BtGtE-19.d.ts} +1 -1
  52. package/dist/{decrypt-partition-DmkeOB4I.d.cts → decrypt-partition-Cqi5gcOl.d.cts} +1 -1
  53. package/dist/derivations/index.d.cts +5 -5
  54. package/dist/derivations/index.d.ts +5 -5
  55. package/dist/{dev-unlock-DUTLA3Sc.d.cts → dev-unlock-Cts_iiVv.d.cts} +1 -1
  56. package/dist/{dev-unlock-Y9znMkQ2.d.ts → dev-unlock-D0p9cQzN.d.ts} +1 -1
  57. package/dist/{executor-BIW4FT5R.js → executor-PJHMRZWJ.js} +4 -4
  58. package/dist/{fanout-sidecar-OC4QVTS2.js → fanout-sidecar-DSBVAR2P.js} +2 -2
  59. package/dist/forget/index.js +2 -2
  60. package/dist/guards/index.d.cts +5 -5
  61. package/dist/guards/index.d.ts +5 -5
  62. package/dist/{hash-Btl9IvQS.d.ts → hash-BtDtwguU.d.ts} +1 -1
  63. package/dist/{hash-DFK7cGdo.d.cts → hash-DA75XwW2.d.cts} +1 -1
  64. package/dist/history/index.cjs.map +1 -1
  65. package/dist/history/index.d.cts +5 -5
  66. package/dist/history/index.d.ts +5 -5
  67. package/dist/history/index.js +3 -3
  68. package/dist/i18n/index.cjs +98 -1
  69. package/dist/i18n/index.cjs.map +1 -1
  70. package/dist/i18n/index.d.cts +4 -4
  71. package/dist/i18n/index.d.ts +4 -4
  72. package/dist/i18n/index.js +83 -4
  73. package/dist/i18n/index.js.map +1 -1
  74. package/dist/{index-wRwJVVJQ.d.ts → index-BidHvmWf.d.ts} +3 -3
  75. package/dist/{index-CqzZml-D.d.cts → index-CP24aYCp.d.cts} +3 -3
  76. package/dist/{index-DoxKSsMj.d.cts → index-CVnt2Qmq.d.cts} +1 -1
  77. package/dist/{index-LaexBi3v.d.ts → index-DxBNV54L.d.ts} +1 -1
  78. package/dist/index.cjs +95 -6
  79. package/dist/index.cjs.map +1 -1
  80. package/dist/index.d.cts +14 -14
  81. package/dist/index.d.ts +14 -14
  82. package/dist/index.js +24 -24
  83. package/dist/{issue-ZZ2XPOGP.js → issue-JSGGSVY4.js} +4 -4
  84. package/dist/kernel/index.d.cts +4 -4
  85. package/dist/kernel/index.d.ts +4 -4
  86. package/dist/kernel/index.js +4 -4
  87. package/dist/{ledger-XQ4KVFQ6.js → ledger-PLMSH7LD.js} +3 -3
  88. package/dist/materialized-views/index.cjs +7 -0
  89. package/dist/materialized-views/index.cjs.map +1 -1
  90. package/dist/materialized-views/index.d.cts +5 -5
  91. package/dist/materialized-views/index.d.ts +5 -5
  92. package/dist/materialized-views/index.js +4 -4
  93. package/dist/{mime-magic-OiPT1qed.d.ts → mime-magic--NcogI82.d.ts} +1 -1
  94. package/dist/{mime-magic-Co4Pyj-O.d.cts → mime-magic-i2VSlkPM.d.cts} +1 -1
  95. package/dist/noydb-PHXA5E6I.js +39 -0
  96. package/dist/overlay-views/index.d.cts +5 -5
  97. package/dist/overlay-views/index.d.ts +5 -5
  98. package/dist/periods/index.cjs.map +1 -1
  99. package/dist/periods/index.d.cts +4 -4
  100. package/dist/periods/index.d.ts +4 -4
  101. package/dist/periods/index.js +3 -3
  102. package/dist/{public-envelope-O6X6AUUS.js → public-envelope-7MTH2PVE.js} +3 -3
  103. package/dist/query/index.cjs +7 -0
  104. package/dist/query/index.cjs.map +1 -1
  105. package/dist/query/index.d.cts +2 -2
  106. package/dist/query/index.d.ts +2 -2
  107. package/dist/query/index.js +3 -3
  108. package/dist/{revoke-QJ2HUM4W.js → revoke-DBAGKIDA.js} +4 -4
  109. package/dist/session/index.d.cts +5 -5
  110. package/dist/session/index.d.ts +5 -5
  111. package/dist/shadow/index.d.cts +4 -4
  112. package/dist/shadow/index.d.ts +4 -4
  113. package/dist/{signer-SCJ6C6HQ.js → signer-ADFJNS5W.js} +3 -3
  114. package/dist/snapshots/index.d.cts +4 -4
  115. package/dist/snapshots/index.d.ts +4 -4
  116. package/dist/snapshots/index.js +3 -3
  117. package/dist/{stale-KKCHF2VB.js → stale-BCIE3SMC.js} +2 -2
  118. package/dist/store/index.d.cts +4 -4
  119. package/dist/store/index.d.ts +4 -4
  120. package/dist/{strategy-YQ1qJWyq.d.ts → strategy-BoITAb2H.d.ts} +20 -1
  121. package/dist/{strategy-D1zjEV3n.d.cts → strategy-DDNvt_UD.d.cts} +20 -1
  122. package/dist/sync/index.cjs.map +1 -1
  123. package/dist/sync/index.d.cts +3 -3
  124. package/dist/sync/index.d.ts +3 -3
  125. package/dist/sync/index.js +2 -2
  126. package/dist/team/index.cjs.map +1 -1
  127. package/dist/team/index.d.cts +4 -4
  128. package/dist/team/index.d.ts +4 -4
  129. package/dist/team/index.js +5 -5
  130. package/dist/{transition-guard-CJmb8O8q.d.ts → transition-guard-BZhOlrFT.d.ts} +1 -1
  131. package/dist/{transition-guard-Dzj68JWC.d.cts → transition-guard-Bekgaxux.d.cts} +1 -1
  132. package/dist/tx/index.d.cts +4 -4
  133. package/dist/tx/index.d.ts +4 -4
  134. package/dist/{types-CkSWJt0H.d.ts → types-84nsWSDF.d.ts} +45 -4
  135. package/dist/{types-CwrTuYFI.d.cts → types-B_eCkuEI.d.cts} +45 -4
  136. package/dist/{with-materialized-view-BVfcPlaE.d.ts → with-materialized-view-CAMGQroY.d.ts} +1 -1
  137. package/dist/{with-materialized-view-dPG213gd.d.cts → with-materialized-view-DKMaZmkJ.d.cts} +1 -1
  138. package/dist/{with-overlayed-view-CJ2UDBol.d.cts → with-overlayed-view--lWXImbV.d.cts} +1 -1
  139. package/dist/{with-overlayed-view-zYPQzGGh.d.ts → with-overlayed-view-FnOf1v6H.d.ts} +1 -1
  140. package/dist/{with-rollup-B_zbRi3f.d.cts → with-rollup-C5875Ad5.d.cts} +1 -1
  141. package/dist/{with-rollup-BvaJefEs.d.ts → with-rollup-xi-mkY6Y.d.ts} +1 -1
  142. package/package.json +3 -3
  143. package/dist/chunk-AD6RNBAW.js.map +0 -1
  144. package/dist/chunk-KD253AI5.js.map +0 -1
  145. package/dist/chunk-KSKKLVPA.js.map +0 -1
  146. package/dist/noydb-EY52NVH4.js +0 -39
  147. /package/dist/{chunk-PS6PSEZL.js.map → chunk-2M62POB5.js.map} +0 -0
  148. /package/dist/{chunk-C7UIT5XY.js.map → chunk-345PYZD6.js.map} +0 -0
  149. /package/dist/{chunk-KA5A5CSD.js.map → chunk-42EGY2FQ.js.map} +0 -0
  150. /package/dist/{chunk-7DDTFGXY.js.map → chunk-4FHKQDHN.js.map} +0 -0
  151. /package/dist/{chunk-6H4CAHMQ.js.map → chunk-7GKDVWMD.js.map} +0 -0
  152. /package/dist/{chunk-6ZKXFMUG.js.map → chunk-7TBCLM52.js.map} +0 -0
  153. /package/dist/{chunk-VJNV2GRF.js.map → chunk-AHDQYG7P.js.map} +0 -0
  154. /package/dist/{chunk-RRCRITDM.js.map → chunk-DCYWBKQ2.js.map} +0 -0
  155. /package/dist/{chunk-K6PCTYAH.js.map → chunk-DMWUOV7X.js.map} +0 -0
  156. /package/dist/{chunk-CVTPNW2Y.js.map → chunk-DQ6XF2K2.js.map} +0 -0
  157. /package/dist/{chunk-5EITJMUJ.js.map → chunk-ENC4C6XW.js.map} +0 -0
  158. /package/dist/{chunk-BOMH3637.js.map → chunk-GVEUI7VR.js.map} +0 -0
  159. /package/dist/{chunk-WVYL6HM7.js.map → chunk-HI7FY7QZ.js.map} +0 -0
  160. /package/dist/{chunk-PFKAT4NT.js.map → chunk-HQ242WNG.js.map} +0 -0
  161. /package/dist/{chunk-HAKEZTA7.js.map → chunk-IMY4FXYE.js.map} +0 -0
  162. /package/dist/{chunk-SID2NJNF.js.map → chunk-JEQB2KVI.js.map} +0 -0
  163. /package/dist/{chunk-Z3BJF7SF.js.map → chunk-M2VZQ24Q.js.map} +0 -0
  164. /package/dist/{chunk-2NYVA6FW.js.map → chunk-PPF7Z2YQ.js.map} +0 -0
  165. /package/dist/{chunk-IWGVH2RR.js.map → chunk-QBC2TZHC.js.map} +0 -0
  166. /package/dist/{chunk-BMDVFBCL.js.map → chunk-RG5KLMEU.js.map} +0 -0
  167. /package/dist/{chunk-DONPLWRC.js.map → chunk-SWGVCSIY.js.map} +0 -0
  168. /package/dist/{chunk-LXA2E3VI.js.map → chunk-VSL3W2MO.js.map} +0 -0
  169. /package/dist/{chunk-6M5JKTUQ.js.map → chunk-WH7G2YEE.js.map} +0 -0
  170. /package/dist/{chunk-I2RX62RX.js.map → chunk-YYLFXX2K.js.map} +0 -0
  171. /package/dist/{executor-BIW4FT5R.js.map → executor-PJHMRZWJ.js.map} +0 -0
  172. /package/dist/{fanout-sidecar-OC4QVTS2.js.map → fanout-sidecar-DSBVAR2P.js.map} +0 -0
  173. /package/dist/{issue-ZZ2XPOGP.js.map → issue-JSGGSVY4.js.map} +0 -0
  174. /package/dist/{ledger-XQ4KVFQ6.js.map → ledger-PLMSH7LD.js.map} +0 -0
  175. /package/dist/{noydb-EY52NVH4.js.map → noydb-PHXA5E6I.js.map} +0 -0
  176. /package/dist/{public-envelope-O6X6AUUS.js.map → public-envelope-7MTH2PVE.js.map} +0 -0
  177. /package/dist/{revoke-QJ2HUM4W.js.map → revoke-DBAGKIDA.js.map} +0 -0
  178. /package/dist/{signer-SCJ6C6HQ.js.map → signer-ADFJNS5W.js.map} +0 -0
  179. /package/dist/{stale-KKCHF2VB.js.map → stale-BCIE3SMC.js.map} +0 -0
@@ -1,13 +1,13 @@
1
- import { B as BlobStrategy } from '../types-CwrTuYFI.cjs';
2
- export { o as BLOB_CHUNKS_COLLECTION, p as BLOB_COLLECTION, q as BLOB_EVICTION_AUDIT_COLLECTION, r as BLOB_INDEX_COLLECTION, t as BLOB_SLOTS_PREFIX, u as BLOB_VERSIONS_PREFIX, w as BlobEvictionEntry, x as BlobFieldPolicy, y as BlobFieldsConfig, z as BlobObject, A as BlobPutOptions, C as BlobResponseOptions, E as BlobSet, F as BlobStrategyOpenArgs, G as CompactRunOptions, H as CompactionContext, J as CompactionResult, K as DEFAULT_CHUNK_SIZE, L as EXPORT_AUDIT_COLLECTION, M as ExportBlobsAbortedError, N as ExportBlobsAuditEntry, O as ExportBlobsHandle, Q as ExportBlobsOptions, R as ExportedBlob, T as ObjectListEntry, U as ObjectMeta, V as ObjectProjection, W as ObjectUrlOptions, X as PutObjectOptions, Y as PutUrlOptions, Z as SlotInfo, _ as SlotRecord, $ as VersionRecord, a0 as createExportBlobsHandle, a1 as memoryObjectProjection, a2 as runCompaction } from '../types-CwrTuYFI.cjs';
3
- export { I as ImportExternalOptions, a as ImportExternalResult, b as ImportableCollection, d as detectMagic, c as detectMimeType, i as importExternalObjects, e as isPreCompressed } from '../mime-magic-Co4Pyj-O.cjs';
1
+ import { B as BlobStrategy } from '../types-B_eCkuEI.cjs';
2
+ export { o as BLOB_CHUNKS_COLLECTION, p as BLOB_COLLECTION, q as BLOB_EVICTION_AUDIT_COLLECTION, r as BLOB_INDEX_COLLECTION, t as BLOB_SLOTS_PREFIX, u as BLOB_VERSIONS_PREFIX, w as BlobEvictionEntry, x as BlobFieldPolicy, y as BlobFieldsConfig, z as BlobObject, A as BlobPutOptions, C as BlobResponseOptions, E as BlobSet, F as BlobStrategyOpenArgs, G as CompactRunOptions, H as CompactionContext, J as CompactionResult, K as DEFAULT_CHUNK_SIZE, L as EXPORT_AUDIT_COLLECTION, M as ExportBlobsAbortedError, N as ExportBlobsAuditEntry, O as ExportBlobsHandle, Q as ExportBlobsOptions, R as ExportedBlob, T as ObjectListEntry, U as ObjectMeta, V as ObjectProjection, W as ObjectUrlOptions, X as PutObjectOptions, Y as PutUrlOptions, Z as SlotInfo, _ as SlotRecord, $ as VersionRecord, a0 as createExportBlobsHandle, a1 as memoryObjectProjection, a2 as runCompaction } from '../types-B_eCkuEI.cjs';
3
+ export { I as ImportExternalOptions, a as ImportExternalResult, b as ImportableCollection, d as detectMagic, c as detectMimeType, i as importExternalObjects, e as isPreCompressed } from '../mime-magic-i2VSlkPM.cjs';
4
4
  import '../lazy-builder-eYZzLEL1.cjs';
5
5
  import '../predicate-BmhBSPCH.cjs';
6
- import '../strategy-D1zjEV3n.cjs';
6
+ import '../strategy-DDNvt_UD.cjs';
7
7
  import '../errors-Dwk2k1xY.cjs';
8
8
  import '../strategy-BSxFXGzb.cjs';
9
9
  import '../index-BMmajblo.cjs';
10
- import '../index-DoxKSsMj.cjs';
10
+ import '../index-CVnt2Qmq.cjs';
11
11
  import '@noy-db/attestation';
12
12
 
13
13
  /**
@@ -1,13 +1,13 @@
1
- import { B as BlobStrategy } from '../types-CkSWJt0H.js';
2
- export { o as BLOB_CHUNKS_COLLECTION, p as BLOB_COLLECTION, q as BLOB_EVICTION_AUDIT_COLLECTION, r as BLOB_INDEX_COLLECTION, t as BLOB_SLOTS_PREFIX, u as BLOB_VERSIONS_PREFIX, w as BlobEvictionEntry, x as BlobFieldPolicy, y as BlobFieldsConfig, z as BlobObject, A as BlobPutOptions, C as BlobResponseOptions, E as BlobSet, F as BlobStrategyOpenArgs, G as CompactRunOptions, H as CompactionContext, J as CompactionResult, K as DEFAULT_CHUNK_SIZE, L as EXPORT_AUDIT_COLLECTION, M as ExportBlobsAbortedError, N as ExportBlobsAuditEntry, O as ExportBlobsHandle, Q as ExportBlobsOptions, R as ExportedBlob, T as ObjectListEntry, U as ObjectMeta, V as ObjectProjection, W as ObjectUrlOptions, X as PutObjectOptions, Y as PutUrlOptions, Z as SlotInfo, _ as SlotRecord, $ as VersionRecord, a0 as createExportBlobsHandle, a1 as memoryObjectProjection, a2 as runCompaction } from '../types-CkSWJt0H.js';
3
- export { I as ImportExternalOptions, a as ImportExternalResult, b as ImportableCollection, d as detectMagic, c as detectMimeType, i as importExternalObjects, e as isPreCompressed } from '../mime-magic-OiPT1qed.js';
1
+ import { B as BlobStrategy } from '../types-84nsWSDF.js';
2
+ export { o as BLOB_CHUNKS_COLLECTION, p as BLOB_COLLECTION, q as BLOB_EVICTION_AUDIT_COLLECTION, r as BLOB_INDEX_COLLECTION, t as BLOB_SLOTS_PREFIX, u as BLOB_VERSIONS_PREFIX, w as BlobEvictionEntry, x as BlobFieldPolicy, y as BlobFieldsConfig, z as BlobObject, A as BlobPutOptions, C as BlobResponseOptions, E as BlobSet, F as BlobStrategyOpenArgs, G as CompactRunOptions, H as CompactionContext, J as CompactionResult, K as DEFAULT_CHUNK_SIZE, L as EXPORT_AUDIT_COLLECTION, M as ExportBlobsAbortedError, N as ExportBlobsAuditEntry, O as ExportBlobsHandle, Q as ExportBlobsOptions, R as ExportedBlob, T as ObjectListEntry, U as ObjectMeta, V as ObjectProjection, W as ObjectUrlOptions, X as PutObjectOptions, Y as PutUrlOptions, Z as SlotInfo, _ as SlotRecord, $ as VersionRecord, a0 as createExportBlobsHandle, a1 as memoryObjectProjection, a2 as runCompaction } from '../types-84nsWSDF.js';
3
+ export { I as ImportExternalOptions, a as ImportExternalResult, b as ImportableCollection, d as detectMagic, c as detectMimeType, i as importExternalObjects, e as isPreCompressed } from '../mime-magic--NcogI82.js';
4
4
  import '../lazy-builder-ChSqcF5t.js';
5
5
  import '../predicate-BmhBSPCH.js';
6
- import '../strategy-YQ1qJWyq.js';
6
+ import '../strategy-BoITAb2H.js';
7
7
  import '../errors-Dwk2k1xY.js';
8
8
  import '../strategy-BSxFXGzb.js';
9
9
  import '../index-BMmajblo.js';
10
- import '../index-LaexBi3v.js';
10
+ import '../index-DxBNV54L.js';
11
11
  import '@noy-db/attestation';
12
12
 
13
13
  /**
@@ -11,16 +11,16 @@ import {
11
11
  importExternalObjects,
12
12
  isPreCompressed,
13
13
  memoryObjectProjection
14
- } from "../chunk-7DDTFGXY.js";
14
+ } from "../chunk-4FHKQDHN.js";
15
15
  import {
16
16
  BLOB_EVICTION_AUDIT_COLLECTION,
17
17
  EXPORT_AUDIT_COLLECTION,
18
18
  ExportBlobsAbortedError,
19
19
  createExportBlobsHandle,
20
20
  runCompaction
21
- } from "../chunk-RRCRITDM.js";
22
- import "../chunk-K6PCTYAH.js";
23
- import "../chunk-AD6RNBAW.js";
21
+ } from "../chunk-DCYWBKQ2.js";
22
+ import "../chunk-DMWUOV7X.js";
23
+ import "../chunk-QSLIT4JZ.js";
24
24
  import "../chunk-7JSP3E67.js";
25
25
  import "../chunk-DDOYOMAD.js";
26
26
 
@@ -5088,8 +5088,15 @@ function applyI18nLocale(record, i18nFields, locale, fallback, layer = "read") {
5088
5088
  };
5089
5089
  result = applyAtPath(result, field, locale, fallback, opts);
5090
5090
  }
5091
+ result = stripI18nFilled(result);
5091
5092
  return result;
5092
5093
  }
5094
+ function stripI18nFilled(record) {
5095
+ if (!Object.prototype.hasOwnProperty.call(record, "_i18nFilled")) return record;
5096
+ const rest = { ...record };
5097
+ delete rest._i18nFilled;
5098
+ return rest;
5099
+ }
5093
5100
  var init_core = __esm({
5094
5101
  "src/i18n/core.ts"() {
5095
5102
  "use strict";
@@ -5653,6 +5660,11 @@ var init_strategy2 = __esm({
5653
5660
  enforceScript(value) {
5654
5661
  return { value, warnings: [] };
5655
5662
  },
5663
+ computeExemptFills() {
5664
+ return /* @__PURE__ */ new Map();
5665
+ },
5666
+ densify() {
5667
+ },
5656
5668
  buildDictionaryHandle() {
5657
5669
  throw notEnabled("vault.dictionary()");
5658
5670
  }
@@ -9827,6 +9839,12 @@ var init_collection = __esm({
9827
9839
  * Declared via the `i18nFields` collection option.
9828
9840
  */
9829
9841
  i18nFields;
9842
+ /**
9843
+ * #435 — the densify-enabled subset of {@link i18nFields} (fields whose
9844
+ * descriptor opts in via `densifyOnWrite: true`). `undefined` when none opt
9845
+ * in, so the write path skips all densify work for ordinary collections.
9846
+ */
9847
+ i18nDensifyFields;
9830
9848
  /**
9831
9849
  * Map of field name → `DictKeyDescriptor` for fields declared with
9832
9850
  * `dictKey()`. Used by `get()`/`list()` to add `<field>Label` virtual
@@ -10013,6 +10031,10 @@ var init_collection = __esm({
10013
10031
  this.refEnforcer = opts.refEnforcer;
10014
10032
  this.joinResolver = opts.joinResolver;
10015
10033
  this.i18nFields = opts.i18nFields;
10034
+ const densifyFields = opts.i18nFields ? Object.fromEntries(
10035
+ Object.entries(opts.i18nFields).filter(([, d]) => d.options.densifyOnWrite === true)
10036
+ ) : {};
10037
+ this.i18nDensifyFields = Object.keys(densifyFields).length > 0 ? densifyFields : void 0;
10016
10038
  this.dictKeyFields = opts.dictKeyFields;
10017
10039
  if (opts.moneyFields) validateMoneyFieldPaths(opts.moneyFields);
10018
10040
  this.moneyFields = opts.moneyFields;
@@ -10332,6 +10354,32 @@ var init_collection = __esm({
10332
10354
  if (busAfterPut) await this.subsystemBus.dispatch("afterPut", event);
10333
10355
  }
10334
10356
  }
10357
+ /**
10358
+ * #435 — resolve the prior stored record (with its `_i18nFilled` marker) for
10359
+ * densify. Eager: in-memory cache; lazy: LRU then adapter. undefined if absent.
10360
+ */
10361
+ async resolveDensifyPrior(id) {
10362
+ if (this.lazy && this.lru) {
10363
+ const cached = this.lru.get(id);
10364
+ if (cached) return cached.record;
10365
+ const env = await this.adapter.get(this.vault, this.name, id);
10366
+ if (!env) return void 0;
10367
+ const rec = await this.decryptRecord(env);
10368
+ return rec === null ? void 0 : rec;
10369
+ }
10370
+ await this.ensureHydrated();
10371
+ return this.cache.get(id)?.record;
10372
+ }
10373
+ /**
10374
+ * #435 — densify provenance for a record: which i18n slots were auto-filled,
10375
+ * e.g. `{ name: ['en'] }`. undefined when nothing was filled. The marker is
10376
+ * stripped from ordinary reads; this is the sanctioned audit accessor.
10377
+ */
10378
+ async i18nProvenance(id) {
10379
+ const prior = await this.resolveDensifyPrior(id);
10380
+ const marker = prior?.["_i18nFilled"];
10381
+ return marker && Object.keys(marker).length > 0 ? marker : void 0;
10382
+ }
10335
10383
  /**
10336
10384
  * Validate a record against this collection's schema WITHOUT writing it.
10337
10385
  * Returns the (possibly coerced) record on success; throws
@@ -10446,6 +10494,16 @@ var init_collection = __esm({
10446
10494
  setAtPathInPlace(obj, field, translated);
10447
10495
  }
10448
10496
  }
10497
+ let densifyPrior;
10498
+ let exemptFills;
10499
+ if (this.i18nDensifyFields) {
10500
+ densifyPrior = await this.resolveDensifyPrior(id);
10501
+ exemptFills = this.i18nStrategy.computeExemptFills(
10502
+ densifyPrior,
10503
+ record,
10504
+ this.i18nDensifyFields
10505
+ );
10506
+ }
10449
10507
  if (this.i18nFields) {
10450
10508
  const obj = record;
10451
10509
  for (const [field, descriptor] of Object.entries(this.i18nFields)) {
@@ -10453,18 +10511,38 @@ var init_collection = __esm({
10453
10511
  for (const leaf of getAtPath(obj, field)) {
10454
10512
  if (!leaf || typeof leaf !== "object" || Array.isArray(leaf)) continue;
10455
10513
  const leafMap = leaf;
10456
- const { value: cleaned } = this.i18nStrategy.enforceScript(
10514
+ const { value: cleaned, warnings } = this.i18nStrategy.enforceScript(
10457
10515
  leafMap,
10458
10516
  field,
10459
- descriptor
10517
+ descriptor,
10518
+ exemptFills?.get(field)
10460
10519
  );
10461
10520
  if (cleaned !== leafMap) Object.assign(leafMap, cleaned);
10521
+ const mode = descriptor.options.onScriptViolation;
10522
+ if (mode === "warn" || mode === "filter") {
10523
+ for (const w of warnings) {
10524
+ this.emitter.emit("i18n:script-violation", {
10525
+ vault: this.vault,
10526
+ collection: this.name,
10527
+ id,
10528
+ mode,
10529
+ warning: w
10530
+ });
10531
+ }
10532
+ }
10462
10533
  }
10463
10534
  }
10464
10535
  }
10465
10536
  if (this.i18nPutValidator !== void 0) {
10466
10537
  this.i18nPutValidator(record);
10467
10538
  }
10539
+ if (this.i18nDensifyFields) {
10540
+ this.i18nStrategy.densify(
10541
+ record,
10542
+ densifyPrior,
10543
+ this.i18nDensifyFields
10544
+ );
10545
+ }
10468
10546
  if (this.refEnforcer !== void 0) {
10469
10547
  await this.refEnforcer.enforceRefsOnPut(this.name, record);
10470
10548
  }
@@ -11318,7 +11396,7 @@ var init_collection = __esm({
11318
11396
  }
11319
11397
  await this.ensureHydrated();
11320
11398
  const entries = [];
11321
- for (const [id, e] of this.cache) entries.push({ id, record: e.record });
11399
+ for (const [id, e] of this.cache) entries.push({ id, record: stripI18nFilled(e.record) });
11322
11400
  return searchScan(entries, field, query, opts);
11323
11401
  }
11324
11402
  // ─── Bulk operations ─────────────────────────────────────
@@ -12232,7 +12310,7 @@ var init_collection = __esm({
12232
12310
  const hasStaticDisplay = hasDict && this.dictKeyFields !== void 0 && Object.values(this.dictKeyFields).some(
12233
12311
  (d) => isStaticDictDescriptor(d) && d.displayLocale !== void 0
12234
12312
  );
12235
- if (!locale && !hasStaticDisplay) return result;
12313
+ if (!locale && !hasStaticDisplay) return stripI18nFilled(result);
12236
12314
  const layer = localeOpts?._layer ?? "read";
12237
12315
  if (locale && hasI18n && this.i18nFields) {
12238
12316
  result = this.i18nStrategy.applyI18nLocale(result, this.i18nFields, locale, localeOpts?.fallback, layer);
@@ -12299,7 +12377,7 @@ var init_collection = __esm({
12299
12377
  }
12300
12378
  result = withLabels;
12301
12379
  }
12302
- return result;
12380
+ return stripI18nFilled(result);
12303
12381
  }
12304
12382
  /**
12305
12383
  * Low-level: encrypt a pre-serialised JSON string into an EncryptedEnvelope.