@harperfast/harper 5.3.0-beta.4 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/bin/backup.ts +6 -1
  2. package/components/Application.ts +486 -115
  3. package/components/DESIGN.md +109 -21
  4. package/components/deploymentProvenance.ts +28 -0
  5. package/components/operations.js +14 -7
  6. package/components/packageComponent.ts +5 -1
  7. package/config-root.schema.json +1 -1
  8. package/dataLayer/DESIGN.md +35 -7
  9. package/dataLayer/blobBackup.ts +71 -30
  10. package/dataLayer/harperBridge/ResourceBridge.ts +16 -2
  11. package/dataLayer/rocksdbBackup.ts +88 -34
  12. package/dataLayer/schemaDescribe.ts +45 -1
  13. package/dist/bin/backup.js +1 -1
  14. package/dist/bin/backup.js.map +1 -1
  15. package/dist/components/Application.d.ts +11 -21
  16. package/dist/components/Application.js +436 -105
  17. package/dist/components/Application.js.map +1 -1
  18. package/dist/components/deploymentProvenance.d.ts +4 -0
  19. package/dist/components/deploymentProvenance.js +32 -0
  20. package/dist/components/deploymentProvenance.js.map +1 -0
  21. package/dist/components/operations.js +14 -7
  22. package/dist/components/operations.js.map +1 -1
  23. package/dist/components/packageComponent.js +6 -1
  24. package/dist/components/packageComponent.js.map +1 -1
  25. package/dist/dataLayer/blobBackup.d.ts +30 -3
  26. package/dist/dataLayer/blobBackup.js +73 -36
  27. package/dist/dataLayer/blobBackup.js.map +1 -1
  28. package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +1 -0
  29. package/dist/dataLayer/harperBridge/ResourceBridge.js +15 -3
  30. package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
  31. package/dist/dataLayer/rocksdbBackup.d.ts +4 -1
  32. package/dist/dataLayer/rocksdbBackup.js +74 -36
  33. package/dist/dataLayer/rocksdbBackup.js.map +1 -1
  34. package/dist/dataLayer/schemaDescribe.js +45 -1
  35. package/dist/dataLayer/schemaDescribe.js.map +1 -1
  36. package/dist/resources/DatabaseTransaction.d.ts +1 -0
  37. package/dist/resources/DatabaseTransaction.js +33 -8
  38. package/dist/resources/DatabaseTransaction.js.map +1 -1
  39. package/dist/resources/ResourceInterface.d.ts +7 -3
  40. package/dist/resources/ResourceInterface.js +2 -0
  41. package/dist/resources/ResourceInterface.js.map +1 -1
  42. package/dist/resources/Table.d.ts +151 -445
  43. package/dist/resources/Table.js +209 -8
  44. package/dist/resources/Table.js.map +1 -1
  45. package/dist/resources/analytics/write.d.ts +11 -0
  46. package/dist/resources/analytics/write.js +3 -0
  47. package/dist/resources/analytics/write.js.map +1 -1
  48. package/dist/resources/blob.d.ts +30 -0
  49. package/dist/resources/blob.js +189 -1
  50. package/dist/resources/blob.js.map +1 -1
  51. package/dist/resources/databases.d.ts +1 -0
  52. package/dist/resources/databases.js +80 -15
  53. package/dist/resources/databases.js.map +1 -1
  54. package/dist/resources/derivedIndexRuntime.d.ts +13 -0
  55. package/dist/resources/derivedIndexRuntime.js +57 -5
  56. package/dist/resources/derivedIndexRuntime.js.map +1 -1
  57. package/dist/resources/derivedIndexes.d.ts +1 -0
  58. package/dist/resources/derivedIndexes.js +116 -15
  59. package/dist/resources/derivedIndexes.js.map +1 -1
  60. package/dist/resources/fullTextSchema.d.ts +5 -3
  61. package/dist/resources/fullTextSchema.js +48 -5
  62. package/dist/resources/fullTextSchema.js.map +1 -1
  63. package/dist/resources/fullTextSchemaLifecycle.d.ts +2 -0
  64. package/dist/resources/fullTextSchemaLifecycle.js +33 -0
  65. package/dist/resources/fullTextSchemaLifecycle.js.map +1 -1
  66. package/dist/resources/graphql.js +30 -12
  67. package/dist/resources/graphql.js.map +1 -1
  68. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +21 -1
  69. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +114 -5
  70. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
  71. package/dist/resources/indexes/fullTextDerivedIndex.d.ts +11 -2
  72. package/dist/resources/indexes/fullTextDerivedIndex.js +187 -24
  73. package/dist/resources/indexes/fullTextDerivedIndex.js.map +1 -1
  74. package/dist/resources/indexes/fullTextNativeBinding.d.ts +99 -1
  75. package/dist/resources/indexes/fullTextNativeBinding.js +35 -1
  76. package/dist/resources/indexes/fullTextNativeBinding.js.map +1 -1
  77. package/dist/resources/indexes/fullTextQueryIndex.d.ts +58 -0
  78. package/dist/resources/indexes/fullTextQueryIndex.js +943 -0
  79. package/dist/resources/indexes/fullTextQueryIndex.js.map +1 -0
  80. package/dist/resources/indexes/fullTextQueryProtocol.d.ts +6 -0
  81. package/dist/resources/indexes/fullTextQueryProtocol.js +32 -0
  82. package/dist/resources/indexes/fullTextQueryProtocol.js.map +1 -0
  83. package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.d.ts +4 -1
  84. package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.js +30 -7
  85. package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.js.map +1 -1
  86. package/dist/resources/search.d.ts +41 -0
  87. package/dist/resources/search.js +468 -26
  88. package/dist/resources/search.js.map +1 -1
  89. package/dist/resources/transactionBroadcast.js +101 -50
  90. package/dist/resources/transactionBroadcast.js.map +1 -1
  91. package/dist/resources/typeParity.d.ts +9 -0
  92. package/dist/resources/typeParity.js +3 -0
  93. package/dist/resources/typeParity.js.map +1 -0
  94. package/dist/server/REST.js.map +1 -1
  95. package/dist/server/itc/serverHandlers.js +48 -8
  96. package/dist/server/itc/serverHandlers.js.map +1 -1
  97. package/dist/server/serverHelpers/contentTypes.d.ts +7 -0
  98. package/dist/server/serverHelpers/contentTypes.js +36 -23
  99. package/dist/server/serverHelpers/contentTypes.js.map +1 -1
  100. package/dist/server/serverHelpers/uwsServer.js +28 -5
  101. package/dist/server/serverHelpers/uwsServer.js.map +1 -1
  102. package/dist/server/threads/itc.js +19 -0
  103. package/dist/server/threads/itc.js.map +1 -1
  104. package/dist/server/threads/manageThreads.d.ts +3 -0
  105. package/dist/server/threads/manageThreads.js +90 -23
  106. package/dist/server/threads/manageThreads.js.map +1 -1
  107. package/dist/utility/operation_authorization.js +25 -7
  108. package/dist/utility/operation_authorization.js.map +1 -1
  109. package/dist/utility/signalling.js +3 -0
  110. package/dist/utility/signalling.js.map +1 -1
  111. package/dist/validation/searchValidator.js +22 -2
  112. package/dist/validation/searchValidator.js.map +1 -1
  113. package/npm-shrinkwrap.json +22 -22
  114. package/package.json +2 -4
  115. package/resources/DESIGN.md +19 -2
  116. package/resources/DatabaseTransaction.ts +40 -10
  117. package/resources/FULL_TEXT.md +97 -0
  118. package/resources/ResourceInterface.ts +8 -2
  119. package/resources/Table.ts +767 -17
  120. package/resources/analytics/write.ts +3 -3
  121. package/resources/blob.ts +183 -1
  122. package/resources/databases.ts +126 -14
  123. package/resources/derivedIndexRuntime.ts +79 -6
  124. package/resources/derivedIndexes.ts +142 -18
  125. package/resources/fullTextSchema.ts +55 -9
  126. package/resources/fullTextSchemaLifecycle.ts +45 -0
  127. package/resources/graphql.ts +33 -12
  128. package/resources/indexes/DESIGN.md +167 -15
  129. package/resources/indexes/HierarchicalNavigableSmallWorld.ts +125 -5
  130. package/resources/indexes/fullTextDerivedIndex.ts +216 -32
  131. package/resources/indexes/fullTextNativeBinding.ts +133 -3
  132. package/resources/indexes/fullTextQueryIndex.ts +1120 -0
  133. package/resources/indexes/fullTextQueryProtocol.ts +35 -0
  134. package/resources/indexes/nativeFullTextDerivedIndexLifecycle.ts +28 -8
  135. package/resources/search.ts +513 -26
  136. package/resources/transactionBroadcast.ts +86 -47
  137. package/resources/typeParity.ts +20 -0
  138. package/schema.graphql +18 -5
  139. package/server/DESIGN.md +18 -0
  140. package/server/REST.ts +1 -1
  141. package/server/itc/serverHandlers.js +61 -8
  142. package/server/serverHelpers/contentTypes.ts +31 -26
  143. package/server/serverHelpers/uwsServer.ts +35 -7
  144. package/server/threads/itc.js +21 -0
  145. package/server/threads/manageThreads.js +95 -21
  146. package/studio/web/assets/{Chat-Bq60AO-g.js → Chat-CNEKMllJ.js} +13 -13
  147. package/studio/web/assets/FloatingChat-CEnWhHeR.js +23 -0
  148. package/studio/web/assets/SearchDialog-CwhJdEdY.js +1 -0
  149. package/studio/web/assets/{abnfDiagram-O67JEVCF-DpPZWMOf.js → abnfDiagram-O67JEVCF-raXE027J.js} +1 -1
  150. package/studio/web/assets/alertDialog-BbWD9Xxa.js +1 -0
  151. package/studio/web/assets/apiToken-DC5vsaaO.js +1 -0
  152. package/studio/web/assets/applications-DQZxDy0x.js +296 -0
  153. package/studio/web/assets/architecture-7GRP2DOG-DDmz3hpI.js +1 -0
  154. package/studio/web/assets/{architectureDiagram-NJMV4G6O-OmgLraID.js → architectureDiagram-NJMV4G6O-C8_Eet7w.js} +1 -1
  155. package/studio/web/assets/arrow-up-D2g_57vT.js +1 -0
  156. package/studio/web/assets/authStore-CJCaADw9.js +3 -0
  157. package/studio/web/assets/{blockDiagram-BEXU5L5S-Cv7CD3Ai.js → blockDiagram-BEXU5L5S-DR6S5-1D.js} +1 -1
  158. package/studio/web/assets/{button-MFP9n8Ck.js → button-DWwfgGWI.js} +2 -2
  159. package/studio/web/assets/{c4Diagram-YGBWAQC7-Ds1vKYnN.js → c4Diagram-YGBWAQC7-BAfZ1G01.js} +1 -1
  160. package/studio/web/assets/channel-D0AkPjJ8.js +1 -0
  161. package/studio/web/assets/{chevron-up-CFe8x5Bp.js → chevron-up-CFxbMGv2.js} +1 -1
  162. package/studio/web/assets/{chunk-3FUC2YCW-DpnBPH8B.js → chunk-3FUC2YCW-DuRp-j19.js} +1 -1
  163. package/studio/web/assets/{chunk-5DYCD2WN-LLLCQSzg.js → chunk-5DYCD2WN-BceBfIHT.js} +1 -1
  164. package/studio/web/assets/{chunk-742MDFTN-BL8J_pIO.js → chunk-742MDFTN-CIkt8ijt.js} +1 -1
  165. package/studio/web/assets/{chunk-7INBJB4K-C-hJHiiK.js → chunk-7INBJB4K-BpeAXyOi.js} +1 -1
  166. package/studio/web/assets/{chunk-7M6MHVWA-C6ZqkFbA.js → chunk-7M6MHVWA-h6WlaTzO.js} +1 -1
  167. package/studio/web/assets/{chunk-7PRAP22T-CUXM8BG6.js → chunk-7PRAP22T-KyqX6x3f.js} +1 -1
  168. package/studio/web/assets/{chunk-GTNCS2PH-DJ2BFvS1.js → chunk-GTNCS2PH-DGHLXyow.js} +1 -1
  169. package/studio/web/assets/{chunk-GWA4HPMP-C42bSqLL.js → chunk-GWA4HPMP-DsejB6gA.js} +1 -1
  170. package/studio/web/assets/{chunk-MBY4JIJT-C-5jz6Lo.js → chunk-MBY4JIJT-BwSGweQP.js} +1 -1
  171. package/studio/web/assets/{chunk-NETBCI7D-D-bzlN4r.js → chunk-NETBCI7D-C8UnOw_f.js} +1 -1
  172. package/studio/web/assets/{chunk-O7XYJQB3-ep14zA23.js → chunk-O7XYJQB3-CBS3nZYV.js} +1 -1
  173. package/studio/web/assets/{chunk-UA2S7LBM-BMRWRHED.js → chunk-UA2S7LBM-BHpEdH8D.js} +1 -1
  174. package/studio/web/assets/{chunk-WEXAMYUT-DdLYVdX1.js → chunk-WEXAMYUT-BAIhTwyh.js} +1 -1
  175. package/studio/web/assets/{chunk-Z7XXMR3K-BmKEDjcP.js → chunk-Z7XXMR3K-DSHbImdf.js} +1 -1
  176. package/studio/web/assets/{chunk-ZIGJFQKS-DLZgdNxA.js → chunk-ZIGJFQKS-Cs8fUn7y.js} +1 -1
  177. package/studio/web/assets/{classDiagram-v2-NBCMYWYE-DOI5vgKT.js → classDiagram-v2-NBCMYWYE-DmDPkt2u.js} +1 -1
  178. package/studio/web/assets/cn-6T8VranJ.js +1 -0
  179. package/studio/web/assets/{codicon-Brq4_Ui5.ttf → codicon-DF1abBS2.ttf} +0 -0
  180. package/studio/web/assets/{createLucideIcon-bziYxJli.js → createLucideIcon-fO5dL7D5.js} +1 -1
  181. package/studio/web/assets/{css.worker-l1psR_wG.js → css.worker-DoT-OOzx.js} +36 -36
  182. package/studio/web/assets/{cssMode-DJyc9mHj.js → cssMode-Dz2DxF4e.js} +1 -1
  183. package/studio/web/assets/{cynefin-OW5HDTMX-BSW-DB7S.js → cynefin-OW5HDTMX-DIvbXLSj.js} +1 -1
  184. package/studio/web/assets/{cynefinDiagram-VND7K2PF-CbAHEwxt.js → cynefinDiagram-VND7K2PF-BdtaXiCE.js} +1 -1
  185. package/studio/web/assets/{dagre-6A5THRUB-Csxewgs4.js → dagre-6A5THRUB-C7RUWHyz.js} +1 -1
  186. package/studio/web/assets/{diagram-22UHCM2B-a0rt8tY4.js → diagram-22UHCM2B-DJCvcaWP.js} +1 -1
  187. package/studio/web/assets/{diagram-3UASUU5V-lEj2SVNh.js → diagram-3UASUU5V-Du6VKWln.js} +1 -1
  188. package/studio/web/assets/{diagram-ATOU4E4O-HcrAeB-q.js → diagram-ATOU4E4O-dxRfeG4B.js} +1 -1
  189. package/studio/web/assets/{diagram-CDSNMT55-CYxiuyEx.js → diagram-CDSNMT55-l5Ga0u-W.js} +1 -1
  190. package/studio/web/assets/{diagram-MLGK6HIB-ChbCJTgJ.js → diagram-MLGK6HIB-CNQY47LA.js} +1 -1
  191. package/studio/web/assets/{diagram-MPIPVDR6-DaX9Y-N3.js → diagram-MPIPVDR6-7prveD1B.js} +1 -1
  192. package/studio/web/assets/{dist-Cz2Y6-6G.js → dist-BrRuMUzt.js} +1 -1
  193. package/studio/web/assets/{download-CtostjYn.js → download-Cn6tPG4L.js} +1 -1
  194. package/studio/web/assets/{ebnfDiagram-ZINNZB2B-CwAsENB1.js → ebnfDiagram-ZINNZB2B-5OnkTpfi.js} +1 -1
  195. package/studio/web/assets/{editor-DDIsQfj6.js → editor-B3mjd3tz.js} +1 -1
  196. package/studio/web/assets/editor.worker-Yd1NR0QT.js +33 -0
  197. package/studio/web/assets/{elk-276RUBZZ-Hexg9E4D.js → elk-276RUBZZ-DxDQPjQT.js} +1 -1
  198. package/studio/web/assets/{erDiagram-OPXOYQCR-CeC-wwO1.js → erDiagram-OPXOYQCR-CQlCX84D.js} +1 -1
  199. package/studio/web/assets/eventmodeling-NTZA5JFV-DONQf5aG.js +1 -0
  200. package/studio/web/assets/flowDiagram-KWPJA3E3-BoZ8_QR1.js +1 -0
  201. package/studio/web/assets/{ganttDiagram-FUAMR5RP-C2_Hhl1-.js → ganttDiagram-FUAMR5RP-bloX3Voy.js} +1 -1
  202. package/studio/web/assets/{getAnalytics-CjthMQqF.js → getAnalytics-C0FHjtdQ.js} +1 -1
  203. package/studio/web/assets/{gitGraph-4MIJSDKK-xIk5Vuew.js → gitGraph-4MIJSDKK-BrXWmJt2.js} +1 -1
  204. package/studio/web/assets/{gitGraphDiagram-X574FWY7-CMxJ34up.js → gitGraphDiagram-X574FWY7-C2KnnZeY.js} +1 -1
  205. package/studio/web/assets/{html-g1BJHxLy.js → html-BsRGM7tp.js} +1 -1
  206. package/studio/web/assets/{html.worker-DdwM4IrA.js → html.worker-B1dwY0Ay.js} +27 -27
  207. package/studio/web/assets/{htmlMode-Vh5IglCQ.js → htmlMode-tUKJaA3o.js} +1 -1
  208. package/studio/web/assets/index-72cEH474.css +1 -0
  209. package/studio/web/assets/index-BuqFjN5K.js +828 -0
  210. package/studio/web/assets/index.lazy-CcpfQFY_.js +2 -0
  211. package/studio/web/assets/{info-A6RAGUB7-o49TEbj-.js → info-A6RAGUB7-BhzBHe4U.js} +1 -1
  212. package/studio/web/assets/{infoDiagram-VRGFBTTK-Cjhh7yzZ.js → infoDiagram-VRGFBTTK-B0J1132p.js} +1 -1
  213. package/studio/web/assets/{ishikawaDiagram-OU5B5YK6-C63aXRmh.js → ishikawaDiagram-OU5B5YK6-BNk0tuQx.js} +1 -1
  214. package/studio/web/assets/{javascript-5VIolqf7.js → javascript-BZ_uRGHl.js} +1 -1
  215. package/studio/web/assets/{journeyDiagram-ZHPQQLJL-D_o0P5Mu.js → journeyDiagram-ZHPQQLJL-Be79RMQM.js} +1 -1
  216. package/studio/web/assets/json.worker-BQqXGI3X.js +65 -0
  217. package/studio/web/assets/{jsonMode-DG4zQraI.js → jsonMode-DgB-aFMj.js} +1 -1
  218. package/studio/web/assets/{kanban-definition-PNTS6WVX-CTI9SSxY.js → kanban-definition-PNTS6WVX-4uuoQP9W.js} +1 -1
  219. package/studio/web/assets/{languageServices-t5FBpX-i.js → languageServices-BleuBw17.js} +1 -1
  220. package/studio/web/assets/localStorageKeys-etzFY_xV.js +1 -0
  221. package/studio/web/assets/{lspLanguageFeatures-DgVnNPh-.js → lspLanguageFeatures-ByVYLSsQ.js} +1 -1
  222. package/studio/web/assets/{mermaid-parser.core-C2lcH_jP.js → mermaid-parser.core-V1UYMeXV.js} +3 -3
  223. package/studio/web/assets/{mermaid.core-BG5bjfIG.js → mermaid.core-1PX6R49U.js} +4 -4
  224. package/studio/web/assets/{mindmap-definition-NLK3R4M7-BK7ho6JD.js → mindmap-definition-NLK3R4M7-C70Ctm0J.js} +1 -1
  225. package/studio/web/assets/notifications-D1Nf-Edn.js +1 -0
  226. package/studio/web/assets/notifications-TuzN0IMi.js +1 -0
  227. package/studio/web/assets/{packet-AYTQ26CC-BHPy6KBV.js → packet-AYTQ26CC-DWbXHx5g.js} +1 -1
  228. package/studio/web/assets/{pegDiagram-GJSIUBJH-DzjwG3jO.js → pegDiagram-GJSIUBJH-d6z1cc7W.js} +1 -1
  229. package/studio/web/assets/{pie-WAS4IAKB-D0cP-DTU.js → pie-WAS4IAKB-DjoTm3yr.js} +1 -1
  230. package/studio/web/assets/{pieDiagram-5QR66LMP-C_hOP9Lv.js → pieDiagram-5QR66LMP-Dz3RHpDA.js} +1 -1
  231. package/studio/web/assets/profile-D7C7Lupz.js +1 -0
  232. package/studio/web/assets/{quadrantDiagram-O4NWA36T-CZW8PbV1.js → quadrantDiagram-O4NWA36T-CIF5Qkou.js} +1 -1
  233. package/studio/web/assets/{radar-RG4KPBEZ-C8fk0U81.js → radar-RG4KPBEZ-CVBgjCOj.js} +1 -1
  234. package/studio/web/assets/{railroad-74A4TZTK-B60FWm17.js → railroad-74A4TZTK-BdhXw10Q.js} +1 -1
  235. package/studio/web/assets/railroad-abnf-HS5TGJTU-BcoQPN39.js +1 -0
  236. package/studio/web/assets/railroad-ebnf-LZEXJU2U-B1Lke2JN.js +1 -0
  237. package/studio/web/assets/railroad-peg-WCYAUIDC-D-oJFkiV.js +1 -0
  238. package/studio/web/assets/{railroadDiagram-XR7U4H2S-DyyNmgbU.js → railroadDiagram-XR7U4H2S-y3Jv2U6N.js} +1 -1
  239. package/studio/web/assets/regions-nGQCm-v8.js +1 -0
  240. package/studio/web/assets/register-C3x9Ze6P.js +909 -0
  241. package/studio/web/assets/register-DjpsE8to.css +1 -0
  242. package/studio/web/assets/{requirementDiagram-PLB6GJNP-C4H-mLKu.js → requirementDiagram-PLB6GJNP-ChINZEmu.js} +1 -1
  243. package/studio/web/assets/restartGate-nHAFLDh-.js +1 -0
  244. package/studio/web/assets/{sankeyDiagram-IPEJSGJF-DHDyga4c.js → sankeyDiagram-IPEJSGJF-D9AyLce2.js} +1 -1
  245. package/studio/web/assets/{sequenceDiagram-PO4LG4MO-CdNcHXRI.js → sequenceDiagram-PO4LG4MO-hfk4aIEm.js} +1 -1
  246. package/studio/web/assets/{setComponentFile-z4-qJCbA.js → setComponentFile-DpjrRqeG.js} +1 -1
  247. package/studio/web/assets/{setup-CS50uJ4x.js → setup-CGiKLZ9e.js} +2 -2
  248. package/studio/web/assets/{stateDiagram-v2-GCMORJYK-CpKuXq15.js → stateDiagram-v2-GCMORJYK-Bs8RIb9K.js} +1 -1
  249. package/studio/web/assets/status-CGJwrNPH.js +61 -0
  250. package/studio/web/assets/{swimlanes-2SLR337P-NRHa2D8I.js → swimlanes-2SLR337P-B52xrf6t.js} +1 -1
  251. package/studio/web/assets/swimlanesDiagram-TC7HE7FX-DfN7BAP5.js +8 -0
  252. package/studio/web/assets/tabs-BCTQzoQK.js +1 -0
  253. package/studio/web/assets/{timeline-definition-EJHVYXUP-D39Y-xpq.js → timeline-definition-EJHVYXUP-DJSITpQX.js} +1 -1
  254. package/studio/web/assets/toggleHighContrast-C-Ne6P7T.js +51 -0
  255. package/studio/web/assets/toggleHighContrast-n7clI0si.css +1 -0
  256. package/studio/web/assets/{treeView-Q6P3EWNA-CRWR9OqD.js → treeView-Q6P3EWNA-C-epdxRo.js} +1 -1
  257. package/studio/web/assets/{treemap-WGGIJYW6-ZfXyJgLO.js → treemap-WGGIJYW6-DOVyp_zw.js} +1 -1
  258. package/studio/web/assets/{ts.worker-DDMUrpqh.js → ts.worker-Clm12uY6.js} +131 -131
  259. package/studio/web/assets/{tsMode-D83Gg3cq.js → tsMode-CSreYTys.js} +1 -1
  260. package/studio/web/assets/{typescript-Dfp-GrNq.js → typescript-MnxBk89W.js} +1 -1
  261. package/studio/web/assets/{useEntityRestURL-BKetlINf.js → useEntityRestURL-TNrh77-s.js} +1 -1
  262. package/studio/web/assets/{usecaseDiagram-POWQR4AR-jf-zIDZ_.js → usecaseDiagram-POWQR4AR-B6252cbq.js} +1 -1
  263. package/studio/web/assets/{vendor-core-BdkdbUek.js → vendor-core-6LhfJlRC.js} +1 -1
  264. package/studio/web/assets/vendor-datadog-ozKf-pts.js +6 -0
  265. package/studio/web/assets/{vendor-react-izWchTRL.js → vendor-react-BOliS0BL.js} +1 -1
  266. package/studio/web/assets/vendor-tanstack-Bntfka-M.js +2 -0
  267. package/studio/web/assets/vendor-ui-9EYYDgoN.js +41 -0
  268. package/studio/web/assets/{vennDiagram-UO4OBE2U-BKYAZUh_.js → vennDiagram-UO4OBE2U-DZTsDA4k.js} +1 -1
  269. package/studio/web/assets/{wardley-WFR3VGLG-BO7f36ci.js → wardley-WFR3VGLG-Cfqoe6z4.js} +1 -1
  270. package/studio/web/assets/{wardleyDiagram-VNRHLVJA-Djb0JDQc.js → wardleyDiagram-VNRHLVJA-qu_f7Tvl.js} +1 -1
  271. package/studio/web/assets/{workers-CCvmDLH3.js → workers-BfZlUNVI.js} +3 -3
  272. package/studio/web/assets/{xml-06pZp00U.js → xml-BHd6qGH7.js} +1 -1
  273. package/studio/web/assets/{xychartDiagram-PMCCYNJV-BQh9ubvb.js → xychartDiagram-PMCCYNJV-UrOKRsmR.js} +1 -1
  274. package/studio/web/assets/{yaml-iSnWMVlV.js → yaml-C53R8OQq.js} +1 -1
  275. package/studio/web/assets/{yaml.worker-DAK2o_H1.js → yaml.worker-D9JekGdp.js} +183 -183
  276. package/studio/web/index.html +15 -15
  277. package/utility/operation_authorization.ts +27 -7
  278. package/utility/signalling.ts +3 -0
  279. package/validation/searchValidator.ts +22 -13
  280. package/studio/web/assets/FloatingChat-D4560T0p.js +0 -23
  281. package/studio/web/assets/alertDialog-UrbiMgQt.js +0 -1
  282. package/studio/web/assets/apiToken-BEvbFPMc.js +0 -1
  283. package/studio/web/assets/applications-CSUVTH4E.js +0 -296
  284. package/studio/web/assets/architecture-7GRP2DOG-11l4Ny1l.js +0 -1
  285. package/studio/web/assets/authStore-5jSS5pTW.js +0 -3
  286. package/studio/web/assets/channel-BDtouPd6.js +0 -1
  287. package/studio/web/assets/dialog-DTepachC.js +0 -1
  288. package/studio/web/assets/editor.worker-CkkvdXvO.js +0 -33
  289. package/studio/web/assets/eventmodeling-NTZA5JFV-CFb03e0o.js +0 -1
  290. package/studio/web/assets/flowDiagram-KWPJA3E3-Cidi00_Y.js +0 -1
  291. package/studio/web/assets/index-CPoDzQTe.css +0 -1
  292. package/studio/web/assets/index-DGRAzvO4.js +0 -824
  293. package/studio/web/assets/index.lazy-vgSic7et.js +0 -2
  294. package/studio/web/assets/json.worker-CSi2hF-a.js +0 -65
  295. package/studio/web/assets/notifications-BeWcX04m.js +0 -1
  296. package/studio/web/assets/notifications-DUGWrWoO.js +0 -1
  297. package/studio/web/assets/profile-BvUEDBzW.js +0 -1
  298. package/studio/web/assets/railroad-abnf-HS5TGJTU-CLMVZvH0.js +0 -1
  299. package/studio/web/assets/railroad-ebnf-LZEXJU2U--tlwFoVB.js +0 -1
  300. package/studio/web/assets/railroad-peg-WCYAUIDC-Dpuslblm.js +0 -1
  301. package/studio/web/assets/regions-CB-_2m7M.js +0 -1
  302. package/studio/web/assets/register-1w1Zr3b2.js +0 -848
  303. package/studio/web/assets/register-jjEx9u7D.css +0 -1
  304. package/studio/web/assets/setLocalStorage-D_kflv4U.js +0 -1
  305. package/studio/web/assets/status-CI0wOdOE.js +0 -61
  306. package/studio/web/assets/swimlanesDiagram-TC7HE7FX-BBk4t4hO.js +0 -8
  307. package/studio/web/assets/tabs-CnQ_zenf.js +0 -1
  308. package/studio/web/assets/toggleHighContrast--ixms01u.css +0 -1
  309. package/studio/web/assets/toggleHighContrast-BsAE4jPe.js +0 -49
  310. package/studio/web/assets/useLocalStorage-BYoZF60G.js +0 -1
  311. package/studio/web/assets/vendor-datadog-fCQhBHGk.js +0 -6
  312. package/studio/web/assets/vendor-tanstack-CQ1aRjVa.js +0 -2
  313. package/studio/web/assets/vendor-ui-aE1tHcW7.js +0 -41
  314. package/studio/web/assets/x-vYntCxm4.js +0 -1
@@ -4,10 +4,12 @@ exports.FullTextDerivedIndexBackend = exports.FullTextDerivedIndexError = export
4
4
  exports.toFullTextMutationBatch = toFullTextMutationBatch;
5
5
  exports.encodeFullTextCursorPayload = encodeFullTextCursorPayload;
6
6
  exports.decodeFullTextCursorPayload = decodeFullTextCursorPayload;
7
+ exports.decodeFullTextPublication = decodeFullTextPublication;
7
8
  const derivedIndexRuntime_ts_1 = require("../derivedIndexRuntime.js");
8
9
  const ordered_binary_1 = require("ordered-binary");
9
10
  const logger_ts_1 = require("../../utility/logging/logger.js");
10
11
  const logger = (0, logger_ts_1.loggerWithTag)('fulltext-derived-index');
12
+ const UTF8_DECODER = new TextDecoder('utf-8', { fatal: true });
11
13
  const DEFAULT_MAX_QUEUED_BATCHES = 16;
12
14
  exports.HARPER_FULLTEXT_DEFAULT_MAX_QUEUED_BYTES = 64 * 1024 * 1024;
13
15
  exports.HARPER_FULLTEXT_MAX_CURSOR_PAYLOAD_BYTES = 64 * 1024;
@@ -16,7 +18,9 @@ const DEFAULT_OPEN_RETRY_MILLISECONDS = 10;
16
18
  const DEFAULT_MAX_OPEN_RETRY_MILLISECONDS = 5_000;
17
19
  const DEFAULT_CLOSE_TIMEOUT_MILLISECONDS = 35_000;
18
20
  const DEFAULT_MAX_APPLY_SLICE_RECORDS = 256;
21
+ const DEFAULT_BLOB_READ_TIMEOUT_MILLISECONDS = 5_000;
19
22
  const APPLY_SLICE_MILLISECONDS = 5;
23
+ const MAX_FULL_TEXT_VALUE_BYTES = 1 << 20;
20
24
  const TERMINAL_OPEN_ERROR_CODES = new Set([
21
25
  'E_IDENTITY_MISMATCH',
22
26
  'E_INCOMPLETE_CREATE',
@@ -38,6 +42,7 @@ class FullTextDerivedIndexConfigurationError extends FullTextDerivedIndexError {
38
42
  }
39
43
  class FullTextDerivedIndexBackend {
40
44
  id;
45
+ publishesQueryRevisions = true;
41
46
  #lifecycle;
42
47
  #maxQueuedBatches;
43
48
  #maxQueuedBytes;
@@ -48,6 +53,9 @@ class FullTextDerivedIndexBackend {
48
53
  #maxOpenRetryMilliseconds;
49
54
  #closeTimeoutMilliseconds;
50
55
  #shutdownTimeoutMilliseconds;
56
+ #blobReadTimeoutMilliseconds;
57
+ #maxBlobApplySliceMilliseconds;
58
+ #hasBlobSources;
51
59
  #host;
52
60
  #wake;
53
61
  #engine;
@@ -109,6 +117,9 @@ class FullTextDerivedIndexBackend {
109
117
  this.#shutdownTimeoutMilliseconds = positiveInteger(options.shutdownTimeoutMilliseconds ?? this.#closeTimeoutMilliseconds * 2, 'shutdownTimeoutMilliseconds');
110
118
  if (this.#shutdownTimeoutMilliseconds < this.#closeTimeoutMilliseconds * 2)
111
119
  throw new RangeError('shutdownTimeoutMilliseconds must be at least twice closeTimeoutMilliseconds');
120
+ this.#blobReadTimeoutMilliseconds = positiveInteger(options.blobReadTimeoutMilliseconds ?? DEFAULT_BLOB_READ_TIMEOUT_MILLISECONDS, 'blobReadTimeoutMilliseconds');
121
+ this.#maxBlobApplySliceMilliseconds = Math.max(APPLY_SLICE_MILLISECONDS, Math.floor((this.#shutdownTimeoutMilliseconds - this.#closeTimeoutMilliseconds) / 2));
122
+ this.#hasBlobSources = options.hasBlobSources !== false;
112
123
  this.#openRetryDelayMilliseconds = Math.max(1, this.#openRetryMilliseconds);
113
124
  this.#writerRetryDelayMilliseconds = Math.min(this.#maxOpenRetryMilliseconds, Math.max(DEFAULT_OPEN_RETRY_MILLISECONDS, this.#openRetryMilliseconds));
114
125
  }
@@ -120,12 +131,13 @@ class FullTextDerivedIndexBackend {
120
131
  getDurableCursor() {
121
132
  this.#assertAttached();
122
133
  if (!this.#cursorInspectedForAcquisition) {
123
- this.#durableCursor = this.#inspectDurableCursor();
134
+ const publication = this.#inspectPublication();
135
+ this.#durableCursor = publication.cursor;
124
136
  this.#cursorInspectedForAcquisition = true;
125
137
  }
126
138
  return this.#durableCursor;
127
139
  }
128
- #inspectDurableCursor() {
140
+ #inspectPublication() {
129
141
  let inspection;
130
142
  try {
131
143
  inspection = this.#lifecycle.inspect();
@@ -137,13 +149,14 @@ class FullTextDerivedIndexBackend {
137
149
  if (inspection.state !== 'checkpointed') {
138
150
  if (inspection.state === 'incompatible')
139
151
  logWarning(`Full-text derived index '${this.id}' is incompatible (${inspection.code}); rebuilding`);
140
- return;
152
+ return {};
141
153
  }
142
154
  try {
143
- return decodeFullTextCursorPayload(inspection.committedPayload);
155
+ return decodeFullTextPublication(inspection.committedPayload);
144
156
  }
145
157
  catch {
146
158
  logWarning(`Full-text derived index '${this.id}' has an invalid committed cursor; rebuilding`);
159
+ return {};
147
160
  }
148
161
  }
149
162
  getUnindexableRecords() {
@@ -207,6 +220,36 @@ class FullTextDerivedIndexBackend {
207
220
  return;
208
221
  this.#queueBarrier(this.#activeEpoch);
209
222
  }
223
+ publishCoverage(positions, ownerEpoch) {
224
+ this.#assertSharedEpoch(ownerEpoch);
225
+ if (!this.#durableCursor)
226
+ throw new FullTextDerivedIndexError('Cannot publish coverage without a durable cursor');
227
+ if ((0, derivedIndexRuntime_ts_1.sameDerivedIndexPositions)(this.#durableCursor.coverage, positions))
228
+ return;
229
+ let pending;
230
+ for (let index = this.#commands.length - 1; index >= 0; index--) {
231
+ if (this.#commands[index].type === 'barrier') {
232
+ pending = this.#commands[index];
233
+ break;
234
+ }
235
+ }
236
+ const horizon = this.#lastAcceptedSequence;
237
+ const cursor = {
238
+ ...cloneCursor(this.#lastAcceptedCursor ?? this.#durableCursor),
239
+ coverage: clonePositions(positions),
240
+ };
241
+ if (pending?.epoch === ownerEpoch && pending.horizon === horizon)
242
+ pending.cursor = cursor;
243
+ else
244
+ this.#commands.push({
245
+ type: 'barrier',
246
+ epoch: ownerEpoch,
247
+ horizon,
248
+ cursor,
249
+ coverageOnly: true,
250
+ });
251
+ this.#scheduleDrain();
252
+ }
210
253
  shutdown(ownerEpoch) {
211
254
  if (this.#shutdown?.epoch === ownerEpoch) {
212
255
  this.#cursorInspectedForAcquisition = false;
@@ -243,9 +286,18 @@ class FullTextDerivedIndexBackend {
243
286
  this.#assertAttached();
244
287
  if (this.#resetOperation) {
245
288
  this.#assertSharedEpoch(ownerEpoch);
246
- if (this.#resetEpoch !== ownerEpoch)
247
- throw new FullTextDerivedIndexError('Full-text reset belongs to another owner epoch');
248
- return this.#boundedReset(this.#resetOperation);
289
+ if (this.#resetEpoch === ownerEpoch)
290
+ return this.#boundedReset(this.#resetOperation);
291
+ const priorReset = this.#resetOperation;
292
+ try {
293
+ await this.#boundedReset(priorReset);
294
+ }
295
+ catch (error) {
296
+ if (this.#resetOperation === priorReset)
297
+ throw error;
298
+ }
299
+ this.#assertSharedEpoch(ownerEpoch);
300
+ return this.reset(ownerEpoch);
249
301
  }
250
302
  if (this.#engine ||
251
303
  this.#scheduled ||
@@ -273,7 +325,7 @@ class FullTextDerivedIndexBackend {
273
325
  }
274
326
  async #performReset(ownerEpoch) {
275
327
  try {
276
- await this.#lifecycle.reset();
328
+ await this.#lifecycle.reset(ownerEpoch);
277
329
  }
278
330
  catch (error) {
279
331
  logNativeError('Full-text native reset failed', error);
@@ -387,16 +439,16 @@ class FullTextDerivedIndexBackend {
387
439
  let actual;
388
440
  try {
389
441
  this.#assertCommandEpoch(epoch);
390
- actual = decodeFullTextCursorPayload(engine.committedPayload);
442
+ actual = decodeFullTextPublication(engine.committedPayload);
391
443
  }
392
444
  catch (error) {
393
445
  await this.#closeUninstalledEngine(engine);
394
446
  throw error;
395
447
  }
396
- if (!sameCursor(actual, this.#durableCursor)) {
448
+ if (!sameCursor(actual.cursor, this.#durableCursor)) {
397
449
  this.#lossPendingEpoch = epoch;
398
450
  await this.#closeUninstalledEngine(engine);
399
- this.#durableCursor = actual;
451
+ this.#durableCursor = actual.cursor;
400
452
  this.#cursorInspectedForAcquisition = true;
401
453
  this.#resetWriterRetryBackoff();
402
454
  this.#discardCommands();
@@ -427,8 +479,23 @@ class FullTextDerivedIndexBackend {
427
479
  this.#lastAppliedSequence = command.sequence;
428
480
  return true;
429
481
  }
430
- const slice = toFullTextMutationSlice(command.batch.records, command.position, this.#maxApplySliceRecords, performance.now() + APPLY_SLICE_MILLISECONDS);
431
- const { batch: logical, end } = slice;
482
+ let slice;
483
+ try {
484
+ const startedAt = performance.now();
485
+ const deadline = startedAt + APPLY_SLICE_MILLISECONDS;
486
+ slice = this.#hasBlobSources
487
+ ? await toFullTextMutationSlice(command.batch.records, command.position, this.#maxApplySliceRecords, deadline, startedAt + this.#maxBlobApplySliceMilliseconds, this.#blobReadTimeoutMilliseconds)
488
+ : {
489
+ ...toFullTextMutationSliceSync(command.batch.records, command.position, this.#maxApplySliceRecords, deadline),
490
+ rejected: 0,
491
+ };
492
+ }
493
+ catch (error) {
494
+ await this.#loseAcceptedWork(command.epoch, error, { retry: true });
495
+ return false;
496
+ }
497
+ const { batch: logical, end, rejected: projectionRejected } = slice;
498
+ this.#stagedUnindexableRecords += projectionRejected;
432
499
  const mutationCount = logical.upserts.length + logical.deletes.length;
433
500
  if (mutationCount > 0) {
434
501
  this.#hasStagedMutations = true;
@@ -469,7 +536,7 @@ class FullTextDerivedIndexBackend {
469
536
  this.#stagedUnindexableRecords += rejected;
470
537
  }
471
538
  async #publish(command) {
472
- if (command.horizon <= this.#lastPublishedSequence)
539
+ if (!command.coverageOnly && command.horizon <= this.#lastPublishedSequence)
473
540
  return true;
474
541
  this.#assertCommandEpoch(command.epoch);
475
542
  if (this.#lastAppliedSequence < command.horizon)
@@ -489,13 +556,15 @@ class FullTextDerivedIndexBackend {
489
556
  return false;
490
557
  }
491
558
  this.#assertCommandEpoch(command.epoch);
492
- this.#lastPublishedSequence = command.horizon;
559
+ if (command.coverageOnly)
560
+ this.#host.publicationChanged();
561
+ this.#lastPublishedSequence = Math.max(this.#lastPublishedSequence, command.horizon);
493
562
  this.#hasStagedMutations = false;
494
563
  const rejected = this.#stagedUnindexableRecords;
495
564
  this.#unindexableRecords += rejected;
496
565
  this.#stagedUnindexableRecords = 0;
497
566
  if (rejected > 0)
498
- logWarning(`Full-text derived index '${this.id}' removed ${rejected} records rejected by native record or frame limits`);
567
+ logWarning(`Full-text derived index '${this.id}' removed ${rejected} records with invalid projections or native record limits`);
499
568
  this.#durableCursor = cloneCursor(cursor);
500
569
  this.#cursorInspectedForAcquisition = true;
501
570
  this.#resetWriterRetryBackoff();
@@ -750,9 +819,48 @@ class FullTextDerivedIndexBackend {
750
819
  }
751
820
  exports.FullTextDerivedIndexBackend = FullTextDerivedIndexBackend;
752
821
  function toFullTextMutationBatch(batch) {
753
- return toFullTextMutationSlice(batch.records, 0, batch.records.length, Number.POSITIVE_INFINITY).batch;
822
+ return toFullTextMutationSliceSync(batch.records, 0, batch.records.length, Number.POSITIVE_INFINITY).batch;
823
+ }
824
+ async function toFullTextMutationSlice(records, start, maxRecords, deadline, wallDeadline, readTimeoutMilliseconds) {
825
+ const upserts = [];
826
+ const deletes = [];
827
+ let rejected = 0;
828
+ const limit = Math.min(start + maxRecords, records.length);
829
+ let index = start;
830
+ let previousTableId;
831
+ let tablePrefix = '';
832
+ let yieldDeadline = deadline;
833
+ for (; index < limit; index++) {
834
+ const record = records[index];
835
+ if (record.recordId == null || typeof record.recordId === 'symbol')
836
+ continue;
837
+ if (record.tableId !== previousTableId) {
838
+ previousTableId = record.tableId;
839
+ tablePrefix = `${record.tableId}.`;
840
+ }
841
+ const id = tablePrefix + (0, ordered_binary_1.toBufferKey)(record.recordId).toString('base64url');
842
+ const recordState = record.state.kind === 'record' ? record.state : undefined;
843
+ const resolved = recordState
844
+ ? await resolvedFullTextFields(recordState.projection, readTimeoutMilliseconds)
845
+ : undefined;
846
+ yieldDeadline += resolved?.waitMilliseconds ?? 0;
847
+ if (resolved?.error)
848
+ throw resolved.error;
849
+ if (resolved?.rejected)
850
+ rejected++;
851
+ if (resolved?.fields && !resolved.rejected)
852
+ upserts.push({ id, version: String(recordState.version), fields: resolved.fields });
853
+ else
854
+ deletes.push(id);
855
+ const now = performance.now();
856
+ if (now >= yieldDeadline || now >= wallDeadline) {
857
+ index++;
858
+ break;
859
+ }
860
+ }
861
+ return { batch: { upserts, deletes }, end: index, rejected };
754
862
  }
755
- function toFullTextMutationSlice(records, start, maxRecords, deadline) {
863
+ function toFullTextMutationSliceSync(records, start, maxRecords, deadline) {
756
864
  const upserts = [];
757
865
  const deletes = [];
758
866
  const limit = Math.min(start + maxRecords, records.length);
@@ -768,9 +876,10 @@ function toFullTextMutationSlice(records, start, maxRecords, deadline) {
768
876
  tablePrefix = `${record.tableId}.`;
769
877
  }
770
878
  const id = tablePrefix + (0, ordered_binary_1.toBufferKey)(record.recordId).toString('base64url');
771
- const fields = record.state.kind === 'record' ? fullTextFields(record.state.projection) : undefined;
879
+ const recordState = record.state.kind === 'record' ? record.state : undefined;
880
+ const fields = recordState ? fullTextFields(recordState.projection) : undefined;
772
881
  if (fields)
773
- upserts.push({ id, fields });
882
+ upserts.push({ id, version: String(recordState.version), fields });
774
883
  else
775
884
  deletes.push(id);
776
885
  if ((index - start + 1) % 16 === 0 && performance.now() >= deadline) {
@@ -841,8 +950,11 @@ function encodeFullTextCursorPayload(cursor, maxBytes = exports.HARPER_FULLTEXT_
841
950
  return payload;
842
951
  }
843
952
  function decodeFullTextCursorPayload(payload, maxBytes = exports.HARPER_FULLTEXT_MAX_CURSOR_PAYLOAD_BYTES) {
953
+ return decodeFullTextPublication(payload, maxBytes).cursor;
954
+ }
955
+ function decodeFullTextPublication(payload, maxBytes = exports.HARPER_FULLTEXT_MAX_CURSOR_PAYLOAD_BYTES) {
844
956
  if (payload == null)
845
- return;
957
+ return {};
846
958
  if (typeof payload !== 'string' || Buffer.byteLength(payload) > maxBytes)
847
959
  throw new FullTextDerivedIndexError('Full-text cursor payload is invalid or too large');
848
960
  let decoded;
@@ -855,16 +967,16 @@ function decodeFullTextCursorPayload(payload, maxBytes = exports.HARPER_FULLTEXT
855
967
  if (!plainObject(decoded) ||
856
968
  decoded.format !== 1 ||
857
969
  !Object.hasOwn(decoded, 'cursor') ||
858
- Object.keys(decoded).some((name) => name !== 'format' && name !== 'cursor'))
970
+ Object.keys(decoded).some((name) => name !== 'format' && name !== 'cursor' && name !== 'dataRevision'))
859
971
  throw new FullTextDerivedIndexError('Full-text cursor payload has an unsupported format');
860
972
  if (decoded.cursor === null)
861
- return;
973
+ return {};
862
974
  if (!plainObject(decoded.cursor) ||
863
975
  decoded.cursor.format !== 1 ||
864
976
  !plainObject(decoded.cursor.logs) ||
865
977
  Object.keys(decoded.cursor).some((name) => name !== 'format' && name !== 'logs' && name !== 'coverage'))
866
978
  throw new FullTextDerivedIndexError('Full-text cursor payload contains an invalid cursor');
867
- return normalizedCursor(decoded.cursor);
979
+ return { cursor: normalizedCursor(decoded.cursor) };
868
980
  }
869
981
  function fullTextFields(projection) {
870
982
  if (!projection || typeof projection !== 'object' || Array.isArray(projection))
@@ -881,6 +993,57 @@ function fullTextFields(projection) {
881
993
  }
882
994
  return fields;
883
995
  }
996
+ async function resolvedFullTextFields(projection, readTimeoutMilliseconds) {
997
+ let waitMilliseconds = 0;
998
+ let fields = fullTextFields(projection);
999
+ if (!projection || typeof projection !== 'object' || Array.isArray(projection))
1000
+ return { fields, rejected: false, waitMilliseconds };
1001
+ const deadline = performance.now() + readTimeoutMilliseconds;
1002
+ for (const name in projection) {
1003
+ if (!Object.hasOwn(projection, name))
1004
+ continue;
1005
+ const value = projection[name];
1006
+ if (!(value instanceof Blob))
1007
+ continue;
1008
+ if (value.size > MAX_FULL_TEXT_VALUE_BYTES)
1009
+ return { rejected: true, waitMilliseconds };
1010
+ let bytes;
1011
+ try {
1012
+ const remaining = deadline - performance.now();
1013
+ if (remaining <= 0)
1014
+ throw new FullTextBlobReadTimeout();
1015
+ const reading = withTimeout(value.arrayBuffer(), remaining, () => new FullTextBlobReadTimeout());
1016
+ const waitStartedAt = performance.now();
1017
+ try {
1018
+ bytes = await reading;
1019
+ }
1020
+ finally {
1021
+ waitMilliseconds += performance.now() - waitStartedAt;
1022
+ }
1023
+ }
1024
+ catch (error) {
1025
+ return { rejected: false, error, waitMilliseconds };
1026
+ }
1027
+ let text;
1028
+ try {
1029
+ text = UTF8_DECODER.decode(bytes);
1030
+ }
1031
+ catch (error) {
1032
+ if (error instanceof TypeError)
1033
+ return { rejected: true, waitMilliseconds };
1034
+ throw error;
1035
+ }
1036
+ if (Buffer.byteLength(text) > MAX_FULL_TEXT_VALUE_BYTES)
1037
+ return { rejected: true, waitMilliseconds };
1038
+ (fields ??= Object.create(null))[name] = text;
1039
+ }
1040
+ return { fields, rejected: false, waitMilliseconds };
1041
+ }
1042
+ class FullTextBlobReadTimeout extends Error {
1043
+ constructor() {
1044
+ super('Full-text Blob read timed out');
1045
+ }
1046
+ }
884
1047
  function isTerminalOpenError(error) {
885
1048
  const code = nativeErrorCode(error);
886
1049
  return code !== undefined && TERMINAL_OPEN_ERROR_CODES.has(code);
@@ -1 +1 @@
1
- {"version":3,"file":"fullTextDerivedIndex.js","sourceRoot":"","sources":["../../../resources/indexes/fullTextDerivedIndex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fullTextDerivedIndex.js","sourceRoot":"","sources":["../../../resources/indexes/fullTextDerivedIndex.ts"],"names":[],"mappings":"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"}