@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.
- package/bin/backup.ts +6 -1
- package/components/Application.ts +486 -115
- package/components/DESIGN.md +109 -21
- package/components/deploymentProvenance.ts +28 -0
- package/components/operations.js +14 -7
- package/components/packageComponent.ts +5 -1
- package/config-root.schema.json +1 -1
- package/dataLayer/DESIGN.md +35 -7
- package/dataLayer/blobBackup.ts +71 -30
- package/dataLayer/harperBridge/ResourceBridge.ts +16 -2
- package/dataLayer/rocksdbBackup.ts +88 -34
- package/dataLayer/schemaDescribe.ts +45 -1
- package/dist/bin/backup.js +1 -1
- package/dist/bin/backup.js.map +1 -1
- package/dist/components/Application.d.ts +11 -21
- package/dist/components/Application.js +436 -105
- package/dist/components/Application.js.map +1 -1
- package/dist/components/deploymentProvenance.d.ts +4 -0
- package/dist/components/deploymentProvenance.js +32 -0
- package/dist/components/deploymentProvenance.js.map +1 -0
- package/dist/components/operations.js +14 -7
- package/dist/components/operations.js.map +1 -1
- package/dist/components/packageComponent.js +6 -1
- package/dist/components/packageComponent.js.map +1 -1
- package/dist/dataLayer/blobBackup.d.ts +30 -3
- package/dist/dataLayer/blobBackup.js +73 -36
- package/dist/dataLayer/blobBackup.js.map +1 -1
- package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +1 -0
- package/dist/dataLayer/harperBridge/ResourceBridge.js +15 -3
- package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
- package/dist/dataLayer/rocksdbBackup.d.ts +4 -1
- package/dist/dataLayer/rocksdbBackup.js +74 -36
- package/dist/dataLayer/rocksdbBackup.js.map +1 -1
- package/dist/dataLayer/schemaDescribe.js +45 -1
- package/dist/dataLayer/schemaDescribe.js.map +1 -1
- package/dist/resources/DatabaseTransaction.d.ts +1 -0
- package/dist/resources/DatabaseTransaction.js +33 -8
- package/dist/resources/DatabaseTransaction.js.map +1 -1
- package/dist/resources/ResourceInterface.d.ts +7 -3
- package/dist/resources/ResourceInterface.js +2 -0
- package/dist/resources/ResourceInterface.js.map +1 -1
- package/dist/resources/Table.d.ts +151 -445
- package/dist/resources/Table.js +209 -8
- package/dist/resources/Table.js.map +1 -1
- package/dist/resources/analytics/write.d.ts +11 -0
- package/dist/resources/analytics/write.js +3 -0
- package/dist/resources/analytics/write.js.map +1 -1
- package/dist/resources/blob.d.ts +30 -0
- package/dist/resources/blob.js +189 -1
- package/dist/resources/blob.js.map +1 -1
- package/dist/resources/databases.d.ts +1 -0
- package/dist/resources/databases.js +80 -15
- package/dist/resources/databases.js.map +1 -1
- package/dist/resources/derivedIndexRuntime.d.ts +13 -0
- package/dist/resources/derivedIndexRuntime.js +57 -5
- package/dist/resources/derivedIndexRuntime.js.map +1 -1
- package/dist/resources/derivedIndexes.d.ts +1 -0
- package/dist/resources/derivedIndexes.js +116 -15
- package/dist/resources/derivedIndexes.js.map +1 -1
- package/dist/resources/fullTextSchema.d.ts +5 -3
- package/dist/resources/fullTextSchema.js +48 -5
- package/dist/resources/fullTextSchema.js.map +1 -1
- package/dist/resources/fullTextSchemaLifecycle.d.ts +2 -0
- package/dist/resources/fullTextSchemaLifecycle.js +33 -0
- package/dist/resources/fullTextSchemaLifecycle.js.map +1 -1
- package/dist/resources/graphql.js +30 -12
- package/dist/resources/graphql.js.map +1 -1
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +21 -1
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +114 -5
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
- package/dist/resources/indexes/fullTextDerivedIndex.d.ts +11 -2
- package/dist/resources/indexes/fullTextDerivedIndex.js +187 -24
- package/dist/resources/indexes/fullTextDerivedIndex.js.map +1 -1
- package/dist/resources/indexes/fullTextNativeBinding.d.ts +99 -1
- package/dist/resources/indexes/fullTextNativeBinding.js +35 -1
- package/dist/resources/indexes/fullTextNativeBinding.js.map +1 -1
- package/dist/resources/indexes/fullTextQueryIndex.d.ts +58 -0
- package/dist/resources/indexes/fullTextQueryIndex.js +943 -0
- package/dist/resources/indexes/fullTextQueryIndex.js.map +1 -0
- package/dist/resources/indexes/fullTextQueryProtocol.d.ts +6 -0
- package/dist/resources/indexes/fullTextQueryProtocol.js +32 -0
- package/dist/resources/indexes/fullTextQueryProtocol.js.map +1 -0
- package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.d.ts +4 -1
- package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.js +30 -7
- package/dist/resources/indexes/nativeFullTextDerivedIndexLifecycle.js.map +1 -1
- package/dist/resources/search.d.ts +41 -0
- package/dist/resources/search.js +468 -26
- package/dist/resources/search.js.map +1 -1
- package/dist/resources/transactionBroadcast.js +101 -50
- package/dist/resources/transactionBroadcast.js.map +1 -1
- package/dist/resources/typeParity.d.ts +9 -0
- package/dist/resources/typeParity.js +3 -0
- package/dist/resources/typeParity.js.map +1 -0
- package/dist/server/REST.js.map +1 -1
- package/dist/server/itc/serverHandlers.js +48 -8
- package/dist/server/itc/serverHandlers.js.map +1 -1
- package/dist/server/serverHelpers/contentTypes.d.ts +7 -0
- package/dist/server/serverHelpers/contentTypes.js +36 -23
- package/dist/server/serverHelpers/contentTypes.js.map +1 -1
- package/dist/server/serverHelpers/uwsServer.js +28 -5
- package/dist/server/serverHelpers/uwsServer.js.map +1 -1
- package/dist/server/threads/itc.js +19 -0
- package/dist/server/threads/itc.js.map +1 -1
- package/dist/server/threads/manageThreads.d.ts +3 -0
- package/dist/server/threads/manageThreads.js +90 -23
- package/dist/server/threads/manageThreads.js.map +1 -1
- package/dist/utility/operation_authorization.js +25 -7
- package/dist/utility/operation_authorization.js.map +1 -1
- package/dist/utility/signalling.js +3 -0
- package/dist/utility/signalling.js.map +1 -1
- package/dist/validation/searchValidator.js +22 -2
- package/dist/validation/searchValidator.js.map +1 -1
- package/npm-shrinkwrap.json +22 -22
- package/package.json +2 -4
- package/resources/DESIGN.md +19 -2
- package/resources/DatabaseTransaction.ts +40 -10
- package/resources/FULL_TEXT.md +97 -0
- package/resources/ResourceInterface.ts +8 -2
- package/resources/Table.ts +767 -17
- package/resources/analytics/write.ts +3 -3
- package/resources/blob.ts +183 -1
- package/resources/databases.ts +126 -14
- package/resources/derivedIndexRuntime.ts +79 -6
- package/resources/derivedIndexes.ts +142 -18
- package/resources/fullTextSchema.ts +55 -9
- package/resources/fullTextSchemaLifecycle.ts +45 -0
- package/resources/graphql.ts +33 -12
- package/resources/indexes/DESIGN.md +167 -15
- package/resources/indexes/HierarchicalNavigableSmallWorld.ts +125 -5
- package/resources/indexes/fullTextDerivedIndex.ts +216 -32
- package/resources/indexes/fullTextNativeBinding.ts +133 -3
- package/resources/indexes/fullTextQueryIndex.ts +1120 -0
- package/resources/indexes/fullTextQueryProtocol.ts +35 -0
- package/resources/indexes/nativeFullTextDerivedIndexLifecycle.ts +28 -8
- package/resources/search.ts +513 -26
- package/resources/transactionBroadcast.ts +86 -47
- package/resources/typeParity.ts +20 -0
- package/schema.graphql +18 -5
- package/server/DESIGN.md +18 -0
- package/server/REST.ts +1 -1
- package/server/itc/serverHandlers.js +61 -8
- package/server/serverHelpers/contentTypes.ts +31 -26
- package/server/serverHelpers/uwsServer.ts +35 -7
- package/server/threads/itc.js +21 -0
- package/server/threads/manageThreads.js +95 -21
- package/studio/web/assets/{Chat-Bq60AO-g.js → Chat-CNEKMllJ.js} +13 -13
- package/studio/web/assets/FloatingChat-CEnWhHeR.js +23 -0
- package/studio/web/assets/SearchDialog-CwhJdEdY.js +1 -0
- package/studio/web/assets/{abnfDiagram-O67JEVCF-DpPZWMOf.js → abnfDiagram-O67JEVCF-raXE027J.js} +1 -1
- package/studio/web/assets/alertDialog-BbWD9Xxa.js +1 -0
- package/studio/web/assets/apiToken-DC5vsaaO.js +1 -0
- package/studio/web/assets/applications-DQZxDy0x.js +296 -0
- package/studio/web/assets/architecture-7GRP2DOG-DDmz3hpI.js +1 -0
- package/studio/web/assets/{architectureDiagram-NJMV4G6O-OmgLraID.js → architectureDiagram-NJMV4G6O-C8_Eet7w.js} +1 -1
- package/studio/web/assets/arrow-up-D2g_57vT.js +1 -0
- package/studio/web/assets/authStore-CJCaADw9.js +3 -0
- package/studio/web/assets/{blockDiagram-BEXU5L5S-Cv7CD3Ai.js → blockDiagram-BEXU5L5S-DR6S5-1D.js} +1 -1
- package/studio/web/assets/{button-MFP9n8Ck.js → button-DWwfgGWI.js} +2 -2
- package/studio/web/assets/{c4Diagram-YGBWAQC7-Ds1vKYnN.js → c4Diagram-YGBWAQC7-BAfZ1G01.js} +1 -1
- package/studio/web/assets/channel-D0AkPjJ8.js +1 -0
- package/studio/web/assets/{chevron-up-CFe8x5Bp.js → chevron-up-CFxbMGv2.js} +1 -1
- package/studio/web/assets/{chunk-3FUC2YCW-DpnBPH8B.js → chunk-3FUC2YCW-DuRp-j19.js} +1 -1
- package/studio/web/assets/{chunk-5DYCD2WN-LLLCQSzg.js → chunk-5DYCD2WN-BceBfIHT.js} +1 -1
- package/studio/web/assets/{chunk-742MDFTN-BL8J_pIO.js → chunk-742MDFTN-CIkt8ijt.js} +1 -1
- package/studio/web/assets/{chunk-7INBJB4K-C-hJHiiK.js → chunk-7INBJB4K-BpeAXyOi.js} +1 -1
- package/studio/web/assets/{chunk-7M6MHVWA-C6ZqkFbA.js → chunk-7M6MHVWA-h6WlaTzO.js} +1 -1
- package/studio/web/assets/{chunk-7PRAP22T-CUXM8BG6.js → chunk-7PRAP22T-KyqX6x3f.js} +1 -1
- package/studio/web/assets/{chunk-GTNCS2PH-DJ2BFvS1.js → chunk-GTNCS2PH-DGHLXyow.js} +1 -1
- package/studio/web/assets/{chunk-GWA4HPMP-C42bSqLL.js → chunk-GWA4HPMP-DsejB6gA.js} +1 -1
- package/studio/web/assets/{chunk-MBY4JIJT-C-5jz6Lo.js → chunk-MBY4JIJT-BwSGweQP.js} +1 -1
- package/studio/web/assets/{chunk-NETBCI7D-D-bzlN4r.js → chunk-NETBCI7D-C8UnOw_f.js} +1 -1
- package/studio/web/assets/{chunk-O7XYJQB3-ep14zA23.js → chunk-O7XYJQB3-CBS3nZYV.js} +1 -1
- package/studio/web/assets/{chunk-UA2S7LBM-BMRWRHED.js → chunk-UA2S7LBM-BHpEdH8D.js} +1 -1
- package/studio/web/assets/{chunk-WEXAMYUT-DdLYVdX1.js → chunk-WEXAMYUT-BAIhTwyh.js} +1 -1
- package/studio/web/assets/{chunk-Z7XXMR3K-BmKEDjcP.js → chunk-Z7XXMR3K-DSHbImdf.js} +1 -1
- package/studio/web/assets/{chunk-ZIGJFQKS-DLZgdNxA.js → chunk-ZIGJFQKS-Cs8fUn7y.js} +1 -1
- package/studio/web/assets/{classDiagram-v2-NBCMYWYE-DOI5vgKT.js → classDiagram-v2-NBCMYWYE-DmDPkt2u.js} +1 -1
- package/studio/web/assets/cn-6T8VranJ.js +1 -0
- package/studio/web/assets/{codicon-Brq4_Ui5.ttf → codicon-DF1abBS2.ttf} +0 -0
- package/studio/web/assets/{createLucideIcon-bziYxJli.js → createLucideIcon-fO5dL7D5.js} +1 -1
- package/studio/web/assets/{css.worker-l1psR_wG.js → css.worker-DoT-OOzx.js} +36 -36
- package/studio/web/assets/{cssMode-DJyc9mHj.js → cssMode-Dz2DxF4e.js} +1 -1
- package/studio/web/assets/{cynefin-OW5HDTMX-BSW-DB7S.js → cynefin-OW5HDTMX-DIvbXLSj.js} +1 -1
- package/studio/web/assets/{cynefinDiagram-VND7K2PF-CbAHEwxt.js → cynefinDiagram-VND7K2PF-BdtaXiCE.js} +1 -1
- package/studio/web/assets/{dagre-6A5THRUB-Csxewgs4.js → dagre-6A5THRUB-C7RUWHyz.js} +1 -1
- package/studio/web/assets/{diagram-22UHCM2B-a0rt8tY4.js → diagram-22UHCM2B-DJCvcaWP.js} +1 -1
- package/studio/web/assets/{diagram-3UASUU5V-lEj2SVNh.js → diagram-3UASUU5V-Du6VKWln.js} +1 -1
- package/studio/web/assets/{diagram-ATOU4E4O-HcrAeB-q.js → diagram-ATOU4E4O-dxRfeG4B.js} +1 -1
- package/studio/web/assets/{diagram-CDSNMT55-CYxiuyEx.js → diagram-CDSNMT55-l5Ga0u-W.js} +1 -1
- package/studio/web/assets/{diagram-MLGK6HIB-ChbCJTgJ.js → diagram-MLGK6HIB-CNQY47LA.js} +1 -1
- package/studio/web/assets/{diagram-MPIPVDR6-DaX9Y-N3.js → diagram-MPIPVDR6-7prveD1B.js} +1 -1
- package/studio/web/assets/{dist-Cz2Y6-6G.js → dist-BrRuMUzt.js} +1 -1
- package/studio/web/assets/{download-CtostjYn.js → download-Cn6tPG4L.js} +1 -1
- package/studio/web/assets/{ebnfDiagram-ZINNZB2B-CwAsENB1.js → ebnfDiagram-ZINNZB2B-5OnkTpfi.js} +1 -1
- package/studio/web/assets/{editor-DDIsQfj6.js → editor-B3mjd3tz.js} +1 -1
- package/studio/web/assets/editor.worker-Yd1NR0QT.js +33 -0
- package/studio/web/assets/{elk-276RUBZZ-Hexg9E4D.js → elk-276RUBZZ-DxDQPjQT.js} +1 -1
- package/studio/web/assets/{erDiagram-OPXOYQCR-CeC-wwO1.js → erDiagram-OPXOYQCR-CQlCX84D.js} +1 -1
- package/studio/web/assets/eventmodeling-NTZA5JFV-DONQf5aG.js +1 -0
- package/studio/web/assets/flowDiagram-KWPJA3E3-BoZ8_QR1.js +1 -0
- package/studio/web/assets/{ganttDiagram-FUAMR5RP-C2_Hhl1-.js → ganttDiagram-FUAMR5RP-bloX3Voy.js} +1 -1
- package/studio/web/assets/{getAnalytics-CjthMQqF.js → getAnalytics-C0FHjtdQ.js} +1 -1
- package/studio/web/assets/{gitGraph-4MIJSDKK-xIk5Vuew.js → gitGraph-4MIJSDKK-BrXWmJt2.js} +1 -1
- package/studio/web/assets/{gitGraphDiagram-X574FWY7-CMxJ34up.js → gitGraphDiagram-X574FWY7-C2KnnZeY.js} +1 -1
- package/studio/web/assets/{html-g1BJHxLy.js → html-BsRGM7tp.js} +1 -1
- package/studio/web/assets/{html.worker-DdwM4IrA.js → html.worker-B1dwY0Ay.js} +27 -27
- package/studio/web/assets/{htmlMode-Vh5IglCQ.js → htmlMode-tUKJaA3o.js} +1 -1
- package/studio/web/assets/index-72cEH474.css +1 -0
- package/studio/web/assets/index-BuqFjN5K.js +828 -0
- package/studio/web/assets/index.lazy-CcpfQFY_.js +2 -0
- package/studio/web/assets/{info-A6RAGUB7-o49TEbj-.js → info-A6RAGUB7-BhzBHe4U.js} +1 -1
- package/studio/web/assets/{infoDiagram-VRGFBTTK-Cjhh7yzZ.js → infoDiagram-VRGFBTTK-B0J1132p.js} +1 -1
- package/studio/web/assets/{ishikawaDiagram-OU5B5YK6-C63aXRmh.js → ishikawaDiagram-OU5B5YK6-BNk0tuQx.js} +1 -1
- package/studio/web/assets/{javascript-5VIolqf7.js → javascript-BZ_uRGHl.js} +1 -1
- package/studio/web/assets/{journeyDiagram-ZHPQQLJL-D_o0P5Mu.js → journeyDiagram-ZHPQQLJL-Be79RMQM.js} +1 -1
- package/studio/web/assets/json.worker-BQqXGI3X.js +65 -0
- package/studio/web/assets/{jsonMode-DG4zQraI.js → jsonMode-DgB-aFMj.js} +1 -1
- package/studio/web/assets/{kanban-definition-PNTS6WVX-CTI9SSxY.js → kanban-definition-PNTS6WVX-4uuoQP9W.js} +1 -1
- package/studio/web/assets/{languageServices-t5FBpX-i.js → languageServices-BleuBw17.js} +1 -1
- package/studio/web/assets/localStorageKeys-etzFY_xV.js +1 -0
- package/studio/web/assets/{lspLanguageFeatures-DgVnNPh-.js → lspLanguageFeatures-ByVYLSsQ.js} +1 -1
- package/studio/web/assets/{mermaid-parser.core-C2lcH_jP.js → mermaid-parser.core-V1UYMeXV.js} +3 -3
- package/studio/web/assets/{mermaid.core-BG5bjfIG.js → mermaid.core-1PX6R49U.js} +4 -4
- package/studio/web/assets/{mindmap-definition-NLK3R4M7-BK7ho6JD.js → mindmap-definition-NLK3R4M7-C70Ctm0J.js} +1 -1
- package/studio/web/assets/notifications-D1Nf-Edn.js +1 -0
- package/studio/web/assets/notifications-TuzN0IMi.js +1 -0
- package/studio/web/assets/{packet-AYTQ26CC-BHPy6KBV.js → packet-AYTQ26CC-DWbXHx5g.js} +1 -1
- package/studio/web/assets/{pegDiagram-GJSIUBJH-DzjwG3jO.js → pegDiagram-GJSIUBJH-d6z1cc7W.js} +1 -1
- package/studio/web/assets/{pie-WAS4IAKB-D0cP-DTU.js → pie-WAS4IAKB-DjoTm3yr.js} +1 -1
- package/studio/web/assets/{pieDiagram-5QR66LMP-C_hOP9Lv.js → pieDiagram-5QR66LMP-Dz3RHpDA.js} +1 -1
- package/studio/web/assets/profile-D7C7Lupz.js +1 -0
- package/studio/web/assets/{quadrantDiagram-O4NWA36T-CZW8PbV1.js → quadrantDiagram-O4NWA36T-CIF5Qkou.js} +1 -1
- package/studio/web/assets/{radar-RG4KPBEZ-C8fk0U81.js → radar-RG4KPBEZ-CVBgjCOj.js} +1 -1
- package/studio/web/assets/{railroad-74A4TZTK-B60FWm17.js → railroad-74A4TZTK-BdhXw10Q.js} +1 -1
- package/studio/web/assets/railroad-abnf-HS5TGJTU-BcoQPN39.js +1 -0
- package/studio/web/assets/railroad-ebnf-LZEXJU2U-B1Lke2JN.js +1 -0
- package/studio/web/assets/railroad-peg-WCYAUIDC-D-oJFkiV.js +1 -0
- package/studio/web/assets/{railroadDiagram-XR7U4H2S-DyyNmgbU.js → railroadDiagram-XR7U4H2S-y3Jv2U6N.js} +1 -1
- package/studio/web/assets/regions-nGQCm-v8.js +1 -0
- package/studio/web/assets/register-C3x9Ze6P.js +909 -0
- package/studio/web/assets/register-DjpsE8to.css +1 -0
- package/studio/web/assets/{requirementDiagram-PLB6GJNP-C4H-mLKu.js → requirementDiagram-PLB6GJNP-ChINZEmu.js} +1 -1
- package/studio/web/assets/restartGate-nHAFLDh-.js +1 -0
- package/studio/web/assets/{sankeyDiagram-IPEJSGJF-DHDyga4c.js → sankeyDiagram-IPEJSGJF-D9AyLce2.js} +1 -1
- package/studio/web/assets/{sequenceDiagram-PO4LG4MO-CdNcHXRI.js → sequenceDiagram-PO4LG4MO-hfk4aIEm.js} +1 -1
- package/studio/web/assets/{setComponentFile-z4-qJCbA.js → setComponentFile-DpjrRqeG.js} +1 -1
- package/studio/web/assets/{setup-CS50uJ4x.js → setup-CGiKLZ9e.js} +2 -2
- package/studio/web/assets/{stateDiagram-v2-GCMORJYK-CpKuXq15.js → stateDiagram-v2-GCMORJYK-Bs8RIb9K.js} +1 -1
- package/studio/web/assets/status-CGJwrNPH.js +61 -0
- package/studio/web/assets/{swimlanes-2SLR337P-NRHa2D8I.js → swimlanes-2SLR337P-B52xrf6t.js} +1 -1
- package/studio/web/assets/swimlanesDiagram-TC7HE7FX-DfN7BAP5.js +8 -0
- package/studio/web/assets/tabs-BCTQzoQK.js +1 -0
- package/studio/web/assets/{timeline-definition-EJHVYXUP-D39Y-xpq.js → timeline-definition-EJHVYXUP-DJSITpQX.js} +1 -1
- package/studio/web/assets/toggleHighContrast-C-Ne6P7T.js +51 -0
- package/studio/web/assets/toggleHighContrast-n7clI0si.css +1 -0
- package/studio/web/assets/{treeView-Q6P3EWNA-CRWR9OqD.js → treeView-Q6P3EWNA-C-epdxRo.js} +1 -1
- package/studio/web/assets/{treemap-WGGIJYW6-ZfXyJgLO.js → treemap-WGGIJYW6-DOVyp_zw.js} +1 -1
- package/studio/web/assets/{ts.worker-DDMUrpqh.js → ts.worker-Clm12uY6.js} +131 -131
- package/studio/web/assets/{tsMode-D83Gg3cq.js → tsMode-CSreYTys.js} +1 -1
- package/studio/web/assets/{typescript-Dfp-GrNq.js → typescript-MnxBk89W.js} +1 -1
- package/studio/web/assets/{useEntityRestURL-BKetlINf.js → useEntityRestURL-TNrh77-s.js} +1 -1
- package/studio/web/assets/{usecaseDiagram-POWQR4AR-jf-zIDZ_.js → usecaseDiagram-POWQR4AR-B6252cbq.js} +1 -1
- package/studio/web/assets/{vendor-core-BdkdbUek.js → vendor-core-6LhfJlRC.js} +1 -1
- package/studio/web/assets/vendor-datadog-ozKf-pts.js +6 -0
- package/studio/web/assets/{vendor-react-izWchTRL.js → vendor-react-BOliS0BL.js} +1 -1
- package/studio/web/assets/vendor-tanstack-Bntfka-M.js +2 -0
- package/studio/web/assets/vendor-ui-9EYYDgoN.js +41 -0
- package/studio/web/assets/{vennDiagram-UO4OBE2U-BKYAZUh_.js → vennDiagram-UO4OBE2U-DZTsDA4k.js} +1 -1
- package/studio/web/assets/{wardley-WFR3VGLG-BO7f36ci.js → wardley-WFR3VGLG-Cfqoe6z4.js} +1 -1
- package/studio/web/assets/{wardleyDiagram-VNRHLVJA-Djb0JDQc.js → wardleyDiagram-VNRHLVJA-qu_f7Tvl.js} +1 -1
- package/studio/web/assets/{workers-CCvmDLH3.js → workers-BfZlUNVI.js} +3 -3
- package/studio/web/assets/{xml-06pZp00U.js → xml-BHd6qGH7.js} +1 -1
- package/studio/web/assets/{xychartDiagram-PMCCYNJV-BQh9ubvb.js → xychartDiagram-PMCCYNJV-UrOKRsmR.js} +1 -1
- package/studio/web/assets/{yaml-iSnWMVlV.js → yaml-C53R8OQq.js} +1 -1
- package/studio/web/assets/{yaml.worker-DAK2o_H1.js → yaml.worker-D9JekGdp.js} +183 -183
- package/studio/web/index.html +15 -15
- package/utility/operation_authorization.ts +27 -7
- package/utility/signalling.ts +3 -0
- package/validation/searchValidator.ts +22 -13
- package/studio/web/assets/FloatingChat-D4560T0p.js +0 -23
- package/studio/web/assets/alertDialog-UrbiMgQt.js +0 -1
- package/studio/web/assets/apiToken-BEvbFPMc.js +0 -1
- package/studio/web/assets/applications-CSUVTH4E.js +0 -296
- package/studio/web/assets/architecture-7GRP2DOG-11l4Ny1l.js +0 -1
- package/studio/web/assets/authStore-5jSS5pTW.js +0 -3
- package/studio/web/assets/channel-BDtouPd6.js +0 -1
- package/studio/web/assets/dialog-DTepachC.js +0 -1
- package/studio/web/assets/editor.worker-CkkvdXvO.js +0 -33
- package/studio/web/assets/eventmodeling-NTZA5JFV-CFb03e0o.js +0 -1
- package/studio/web/assets/flowDiagram-KWPJA3E3-Cidi00_Y.js +0 -1
- package/studio/web/assets/index-CPoDzQTe.css +0 -1
- package/studio/web/assets/index-DGRAzvO4.js +0 -824
- package/studio/web/assets/index.lazy-vgSic7et.js +0 -2
- package/studio/web/assets/json.worker-CSi2hF-a.js +0 -65
- package/studio/web/assets/notifications-BeWcX04m.js +0 -1
- package/studio/web/assets/notifications-DUGWrWoO.js +0 -1
- package/studio/web/assets/profile-BvUEDBzW.js +0 -1
- package/studio/web/assets/railroad-abnf-HS5TGJTU-CLMVZvH0.js +0 -1
- package/studio/web/assets/railroad-ebnf-LZEXJU2U--tlwFoVB.js +0 -1
- package/studio/web/assets/railroad-peg-WCYAUIDC-Dpuslblm.js +0 -1
- package/studio/web/assets/regions-CB-_2m7M.js +0 -1
- package/studio/web/assets/register-1w1Zr3b2.js +0 -848
- package/studio/web/assets/register-jjEx9u7D.css +0 -1
- package/studio/web/assets/setLocalStorage-D_kflv4U.js +0 -1
- package/studio/web/assets/status-CI0wOdOE.js +0 -61
- package/studio/web/assets/swimlanesDiagram-TC7HE7FX-BBk4t4hO.js +0 -8
- package/studio/web/assets/tabs-CnQ_zenf.js +0 -1
- package/studio/web/assets/toggleHighContrast--ixms01u.css +0 -1
- package/studio/web/assets/toggleHighContrast-BsAE4jPe.js +0 -49
- package/studio/web/assets/useLocalStorage-BYoZF60G.js +0 -1
- package/studio/web/assets/vendor-datadog-fCQhBHGk.js +0 -6
- package/studio/web/assets/vendor-tanstack-CQ1aRjVa.js +0 -2
- package/studio/web/assets/vendor-ui-aE1tHcW7.js +0 -41
- package/studio/web/assets/x-vYntCxm4.js +0 -1
|
@@ -4,10 +4,11 @@ export interface NativeFullTextIndexConfiguration {
|
|
|
4
4
|
name: string;
|
|
5
5
|
weight?: number;
|
|
6
6
|
}>;
|
|
7
|
-
analyzer: 'english@
|
|
7
|
+
analyzer: 'english@2';
|
|
8
8
|
stopWords?: boolean;
|
|
9
9
|
positions?: boolean;
|
|
10
10
|
surfaceTerms?: boolean;
|
|
11
|
+
synonyms?: NativeFullTextSynonymRule[];
|
|
11
12
|
limits: {
|
|
12
13
|
indexingThreads: number;
|
|
13
14
|
searchThreads: number;
|
|
@@ -17,17 +18,107 @@ export interface NativeFullTextIndexConfiguration {
|
|
|
17
18
|
maxBatchBytes: number;
|
|
18
19
|
};
|
|
19
20
|
}
|
|
21
|
+
export type NativeFullTextSynonymRule = {
|
|
22
|
+
source: string;
|
|
23
|
+
replacements: string[];
|
|
24
|
+
};
|
|
25
|
+
export type NativeFullTextSearchMode = 'any' | 'all' | 'phrase' | 'prefix' | 'fuzzy' | 'fuzzy-prefix';
|
|
26
|
+
export type NativeFullTextSearchExpression = {
|
|
27
|
+
text: string;
|
|
28
|
+
mode?: NativeFullTextSearchMode;
|
|
29
|
+
operator?: 'any' | 'all';
|
|
30
|
+
fields?: string[];
|
|
31
|
+
} | {
|
|
32
|
+
operator: 'and' | 'or';
|
|
33
|
+
clauses: NativeFullTextSearchExpression[];
|
|
34
|
+
} | {
|
|
35
|
+
operator: 'not';
|
|
36
|
+
clause: NativeFullTextSearchExpression;
|
|
37
|
+
};
|
|
38
|
+
export type NativeFullTextSearchRequest = {
|
|
39
|
+
text?: string;
|
|
40
|
+
query?: NativeFullTextSearchExpression;
|
|
41
|
+
mode?: NativeFullTextSearchMode;
|
|
42
|
+
operator?: 'any' | 'all';
|
|
43
|
+
fields?: string[];
|
|
44
|
+
candidateIds?: string[];
|
|
45
|
+
offset?: number;
|
|
46
|
+
limit?: number;
|
|
47
|
+
exactTotal?: boolean;
|
|
48
|
+
};
|
|
49
|
+
export type NativeFullTextSearchResult = {
|
|
50
|
+
total: number;
|
|
51
|
+
totalRelation: 'exact' | 'lower-bound';
|
|
52
|
+
hits: Array<{
|
|
53
|
+
id: string;
|
|
54
|
+
score: number;
|
|
55
|
+
version?: string;
|
|
56
|
+
}>;
|
|
57
|
+
};
|
|
58
|
+
export type NativeFullTextTraceResult = {
|
|
59
|
+
complete: boolean;
|
|
60
|
+
records: Array<{
|
|
61
|
+
id: string;
|
|
62
|
+
values: Array<{
|
|
63
|
+
field: string;
|
|
64
|
+
valueIndex: number;
|
|
65
|
+
spans: Array<{
|
|
66
|
+
start: number;
|
|
67
|
+
end: number;
|
|
68
|
+
}>;
|
|
69
|
+
fragments?: Array<{
|
|
70
|
+
text: string;
|
|
71
|
+
start: number;
|
|
72
|
+
spans: Array<{
|
|
73
|
+
start: number;
|
|
74
|
+
end: number;
|
|
75
|
+
}>;
|
|
76
|
+
}>;
|
|
77
|
+
}>;
|
|
78
|
+
}>;
|
|
79
|
+
};
|
|
80
|
+
export interface NativeFullTextReader {
|
|
81
|
+
readonly committedPayload?: string;
|
|
82
|
+
reload(): Promise<void>;
|
|
83
|
+
search(request: NativeFullTextSearchRequest, options?: {
|
|
84
|
+
remainingBudgetMilliseconds?: number;
|
|
85
|
+
}): Promise<NativeFullTextSearchResult>;
|
|
86
|
+
traceMatches(request: Omit<NativeFullTextSearchRequest, 'query' | 'offset' | 'limit' | 'exactTotal'> & {
|
|
87
|
+
text: string;
|
|
88
|
+
}, records: Array<{
|
|
89
|
+
id: string;
|
|
90
|
+
fields: Record<string, string | string[]>;
|
|
91
|
+
}>, options?: {
|
|
92
|
+
remainingBudgetMilliseconds?: number;
|
|
93
|
+
snippets?: boolean;
|
|
94
|
+
fragmentLength?: number;
|
|
95
|
+
maxFragmentsPerValue?: number;
|
|
96
|
+
}): Promise<NativeFullTextTraceResult>;
|
|
97
|
+
close(): Promise<{
|
|
98
|
+
cleanupError?: unknown;
|
|
99
|
+
}>;
|
|
100
|
+
}
|
|
20
101
|
export type NativeFullTextRuntimeInfo = {
|
|
21
102
|
packageVersion: string;
|
|
22
103
|
tantivyVersion: string;
|
|
23
104
|
nativeAbiVersion: number;
|
|
105
|
+
queryClassIsolationMinimumSearchThreads: number;
|
|
24
106
|
lifecycleApiVersion: number;
|
|
25
107
|
mutationBatchApiVersion: number;
|
|
108
|
+
queryApiVersion: number;
|
|
26
109
|
storageBackends: ReadonlyArray<'native'>;
|
|
27
110
|
limits: {
|
|
28
111
|
maxCommitPayloadBytes: number;
|
|
112
|
+
maxSearchWindow: number;
|
|
113
|
+
maxAutocompleteResults: number;
|
|
114
|
+
maxSearchBudgetMilliseconds: number;
|
|
115
|
+
maxTraceRecords: number;
|
|
116
|
+
maxTraceSourceBytes: number;
|
|
29
117
|
};
|
|
30
118
|
};
|
|
119
|
+
export type NativeFullTextQueryRuntimeInfo = Pick<NativeFullTextRuntimeInfo, 'queryClassIsolationMinimumSearchThreads'> & {
|
|
120
|
+
limits: Pick<NativeFullTextRuntimeInfo['limits'], 'maxSearchWindow' | 'maxAutocompleteResults' | 'maxSearchBudgetMilliseconds' | 'maxTraceRecords' | 'maxTraceSourceBytes'>;
|
|
121
|
+
};
|
|
31
122
|
export interface NativeFullTextModule {
|
|
32
123
|
NativeFullTextIndex: {
|
|
33
124
|
prototype: Pick<FullTextDerivedIndexEngine, 'applyMutationBatch' | 'publish' | 'close'>;
|
|
@@ -43,6 +134,11 @@ export interface NativeFullTextModule {
|
|
|
43
134
|
indexId: string;
|
|
44
135
|
generation: string;
|
|
45
136
|
}): Promise<FullTextDerivedIndexEngine>;
|
|
137
|
+
openNativeFullTextReader(options: NativeFullTextIndexConfiguration & {
|
|
138
|
+
path: string;
|
|
139
|
+
indexId: string;
|
|
140
|
+
generation: string;
|
|
141
|
+
}): Promise<NativeFullTextReader>;
|
|
46
142
|
inspectNativeFullTextIndex(options: Omit<NativeFullTextIndexConfiguration, 'limits'> & {
|
|
47
143
|
path: string;
|
|
48
144
|
indexId: string;
|
|
@@ -76,3 +172,5 @@ export interface NativeFullTextModule {
|
|
|
76
172
|
export declare function loadFullTextNativeBinding(): Promise<NativeFullTextModule>;
|
|
77
173
|
export declare function validateFullTextNativeBinding(module: unknown): Promise<NativeFullTextModule>;
|
|
78
174
|
export declare function getValidatedFullTextRuntimeInfo(binding: NativeFullTextModule): NativeFullTextRuntimeInfo;
|
|
175
|
+
export declare function nativeFullTextSearchThreads(info: Pick<NativeFullTextRuntimeInfo, 'queryClassIsolationMinimumSearchThreads'>, configured: number): number;
|
|
176
|
+
export declare function validateFullTextQueryRuntimeInfo(info: unknown): NativeFullTextQueryRuntimeInfo;
|
|
@@ -11,9 +11,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
11
11
|
exports.loadFullTextNativeBinding = loadFullTextNativeBinding;
|
|
12
12
|
exports.validateFullTextNativeBinding = validateFullTextNativeBinding;
|
|
13
13
|
exports.getValidatedFullTextRuntimeInfo = getValidatedFullTextRuntimeInfo;
|
|
14
|
+
exports.nativeFullTextSearchThreads = nativeFullTextSearchThreads;
|
|
15
|
+
exports.validateFullTextQueryRuntimeInfo = validateFullTextQueryRuntimeInfo;
|
|
14
16
|
const logger_ts_1 = require("../../utility/logging/logger.js");
|
|
15
17
|
const FULLTEXT_LIFECYCLE_API_VERSION = 1;
|
|
16
|
-
const FULLTEXT_MUTATION_BATCH_API_VERSION =
|
|
18
|
+
const FULLTEXT_MUTATION_BATCH_API_VERSION = 4;
|
|
19
|
+
const FULLTEXT_QUERY_API_VERSION = 2;
|
|
17
20
|
const logger = (0, logger_ts_1.loggerWithTag)('fulltext-derived-index');
|
|
18
21
|
let bindingPromise;
|
|
19
22
|
let bindingWarningLogged = false;
|
|
@@ -50,6 +53,8 @@ async function validateFullTextNativeBinding(module) {
|
|
|
50
53
|
typeof prototype.close !== 'function' ||
|
|
51
54
|
!('openNativeFullTextIndex' in module) ||
|
|
52
55
|
typeof module.openNativeFullTextIndex !== 'function' ||
|
|
56
|
+
!('openNativeFullTextReader' in module) ||
|
|
57
|
+
typeof module.openNativeFullTextReader !== 'function' ||
|
|
53
58
|
!('validateNativeFullTextIndexOptions' in module) ||
|
|
54
59
|
typeof module.validateNativeFullTextIndexOptions !== 'function' ||
|
|
55
60
|
!('inspectNativeFullTextIndex' in module) ||
|
|
@@ -61,12 +66,14 @@ async function validateFullTextNativeBinding(module) {
|
|
|
61
66
|
throw new TypeError('@harperfast/fulltext/native does not implement the required Harper binding contract');
|
|
62
67
|
const binding = module;
|
|
63
68
|
const info = await binding.runtimeInfo();
|
|
69
|
+
validateFullTextQueryRuntimeInfo(info);
|
|
64
70
|
if (!info ||
|
|
65
71
|
typeof info.packageVersion !== 'string' ||
|
|
66
72
|
typeof info.tantivyVersion !== 'string' ||
|
|
67
73
|
!Number.isSafeInteger(info.nativeAbiVersion) ||
|
|
68
74
|
info.lifecycleApiVersion !== FULLTEXT_LIFECYCLE_API_VERSION ||
|
|
69
75
|
info.mutationBatchApiVersion !== FULLTEXT_MUTATION_BATCH_API_VERSION ||
|
|
76
|
+
info.queryApiVersion !== FULLTEXT_QUERY_API_VERSION ||
|
|
70
77
|
!Array.isArray(info.storageBackends) ||
|
|
71
78
|
!info.storageBackends.includes('native') ||
|
|
72
79
|
!info.limits ||
|
|
@@ -82,4 +89,31 @@ function getValidatedFullTextRuntimeInfo(binding) {
|
|
|
82
89
|
throw new Error('Full-text native binding has not been validated');
|
|
83
90
|
return info;
|
|
84
91
|
}
|
|
92
|
+
function nativeFullTextSearchThreads(info, configured) {
|
|
93
|
+
const minimum = info.queryClassIsolationMinimumSearchThreads;
|
|
94
|
+
if (!Number.isSafeInteger(minimum) || minimum <= 0)
|
|
95
|
+
throw new TypeError('@harperfast/fulltext/native reported an invalid query-class isolation threshold');
|
|
96
|
+
return Math.max(configured, minimum);
|
|
97
|
+
}
|
|
98
|
+
function validateFullTextQueryRuntimeInfo(info) {
|
|
99
|
+
const runtime = info;
|
|
100
|
+
if (!runtime ||
|
|
101
|
+
typeof runtime !== 'object' ||
|
|
102
|
+
!Number.isSafeInteger(runtime.queryClassIsolationMinimumSearchThreads) ||
|
|
103
|
+
runtime.queryClassIsolationMinimumSearchThreads <= 0 ||
|
|
104
|
+
!runtime.limits ||
|
|
105
|
+
!Number.isSafeInteger(runtime.limits.maxSearchWindow) ||
|
|
106
|
+
runtime.limits.maxSearchWindow <= 0 ||
|
|
107
|
+
!Number.isSafeInteger(runtime.limits.maxAutocompleteResults) ||
|
|
108
|
+
runtime.limits.maxAutocompleteResults <= 0 ||
|
|
109
|
+
runtime.limits.maxAutocompleteResults > runtime.limits.maxSearchWindow ||
|
|
110
|
+
!Number.isSafeInteger(runtime.limits.maxSearchBudgetMilliseconds) ||
|
|
111
|
+
runtime.limits.maxSearchBudgetMilliseconds <= 0 ||
|
|
112
|
+
!Number.isSafeInteger(runtime.limits.maxTraceRecords) ||
|
|
113
|
+
runtime.limits.maxTraceRecords <= 0 ||
|
|
114
|
+
!Number.isSafeInteger(runtime.limits.maxTraceSourceBytes) ||
|
|
115
|
+
runtime.limits.maxTraceSourceBytes <= 0)
|
|
116
|
+
throw new TypeError('@harperfast/fulltext/native reported incompatible runtime capabilities');
|
|
117
|
+
return runtime;
|
|
118
|
+
}
|
|
85
119
|
//# sourceMappingURL=fullTextNativeBinding.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fullTextNativeBinding.js","sourceRoot":"","sources":["../../../resources/indexes/fullTextNativeBinding.ts"],"names":[],"mappings":";;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"fullTextNativeBinding.js","sourceRoot":"","sources":["../../../resources/indexes/fullTextNativeBinding.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { FullTextDefinition } from '../fullTextSchema.ts';
|
|
2
|
+
import type { RocksTransactionLogStore } from '../RocksTransactionLogStore.ts';
|
|
3
|
+
import { type NativeFullTextIndexConfiguration, type NativeFullTextModule, type NativeFullTextSearchExpression, type NativeFullTextSearchMode } from './fullTextNativeBinding.ts';
|
|
4
|
+
export { FULL_TEXT_QUERY_PAUSE_OPERATION, FULL_TEXT_QUERY_RESUME_OPERATION, fullTextComparatorMode, } from './fullTextQueryProtocol.ts';
|
|
5
|
+
import { type DerivedNativeIndexHost } from './hnswDerivedIndex.ts';
|
|
6
|
+
export type FullTextCondition = {
|
|
7
|
+
attribute?: string;
|
|
8
|
+
value?: string;
|
|
9
|
+
comparator?: string;
|
|
10
|
+
fields?: string[];
|
|
11
|
+
fullTextQuery?: NativeFullTextSearchExpression;
|
|
12
|
+
fullTextLeaves?: Array<{
|
|
13
|
+
text: string;
|
|
14
|
+
mode: NativeFullTextSearchMode;
|
|
15
|
+
fields?: string[];
|
|
16
|
+
}>;
|
|
17
|
+
includeHighlights?: boolean;
|
|
18
|
+
maxIndexLagMilliseconds?: number;
|
|
19
|
+
waitForIndexMilliseconds?: number;
|
|
20
|
+
};
|
|
21
|
+
type FullTextQueryHost = Pick<DerivedNativeIndexHost, 'readiness' | 'waitForCoverage' | 'requestRebuild'>;
|
|
22
|
+
export type FullTextQueryIndexOptions = {
|
|
23
|
+
Table: any;
|
|
24
|
+
definition: FullTextDefinition;
|
|
25
|
+
auditStore: RocksTransactionLogStore;
|
|
26
|
+
readinessId: string;
|
|
27
|
+
indexId: string;
|
|
28
|
+
storePath: string;
|
|
29
|
+
storeName: string;
|
|
30
|
+
sourceGeneration: string;
|
|
31
|
+
limits: NativeFullTextIndexConfiguration['limits'];
|
|
32
|
+
binding?: NativeFullTextModule | (() => Promise<NativeFullTextModule>);
|
|
33
|
+
};
|
|
34
|
+
export declare class FullTextQueryIndex {
|
|
35
|
+
#private;
|
|
36
|
+
readonly filteredSearch = true;
|
|
37
|
+
readonly filePrimary = true;
|
|
38
|
+
constructor(options: FullTextQueryIndexOptions);
|
|
39
|
+
updateDefinition(definition: FullTextDefinition): void;
|
|
40
|
+
estimateCount(): number;
|
|
41
|
+
search(condition: FullTextCondition, context: any, options?: {
|
|
42
|
+
filter?: (id: unknown, entry?: any) => boolean;
|
|
43
|
+
minResults?: number;
|
|
44
|
+
resultOffset?: number;
|
|
45
|
+
assertTransactionActive?: () => void;
|
|
46
|
+
}): Promise<Array<{
|
|
47
|
+
key: unknown;
|
|
48
|
+
$score: number;
|
|
49
|
+
$highlights?: Record<string, unknown>;
|
|
50
|
+
loadedEntry: any;
|
|
51
|
+
}>>;
|
|
52
|
+
attachDerivedHost(host: FullTextQueryHost): void;
|
|
53
|
+
close(): Promise<void>;
|
|
54
|
+
pause(readinessId: string, ownerEpoch: bigint): Promise<void>;
|
|
55
|
+
resume(readinessId: string, ownerEpoch: bigint): void;
|
|
56
|
+
}
|
|
57
|
+
export declare function pauseNativeFullTextQueryReaders(path: string, readinessId: string, ownerEpoch: bigint, allowUnregisteredReadiness?: boolean): Promise<void>;
|
|
58
|
+
export declare function resumeNativeFullTextQueryReaders(path: string, readinessId: string, ownerEpoch: bigint): void;
|