@harperfast/harper 5.2.5 → 5.2.7
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/restart.ts +48 -23
- package/bin/restartExitWatchdog.ts +99 -0
- package/bin/run.ts +16 -10
- package/dist/bin/restart.js +39 -21
- package/dist/bin/restart.js.map +1 -1
- package/dist/bin/restartExitWatchdog.d.ts +5 -0
- package/dist/bin/restartExitWatchdog.js +100 -0
- package/dist/bin/restartExitWatchdog.js.map +1 -0
- package/dist/bin/run.d.ts +2 -0
- package/dist/bin/run.js +17 -10
- package/dist/bin/run.js.map +1 -1
- package/dist/resources/DatabaseTransaction.d.ts +18 -1
- package/dist/resources/DatabaseTransaction.js +63 -1
- package/dist/resources/DatabaseTransaction.js.map +1 -1
- package/dist/resources/LMDBTransaction.d.ts +2 -0
- package/dist/resources/LMDBTransaction.js +7 -1
- package/dist/resources/LMDBTransaction.js.map +1 -1
- package/dist/resources/PrimaryRocksDatabase.js +2 -3
- package/dist/resources/PrimaryRocksDatabase.js.map +1 -1
- package/dist/resources/RecordEncoder.d.ts +16 -0
- package/dist/resources/RecordEncoder.js +93 -3
- package/dist/resources/RecordEncoder.js.map +1 -1
- package/dist/resources/Resource.js +5 -4
- package/dist/resources/Resource.js.map +1 -1
- package/dist/resources/ResourceInterface.d.ts +5 -0
- package/dist/resources/ResourceInterface.js.map +1 -1
- package/dist/resources/Table.js +106 -9
- package/dist/resources/Table.js.map +1 -1
- package/dist/resources/graphql.js +1 -1
- package/dist/resources/graphql.js.map +1 -1
- package/dist/resources/tracked.js +5 -0
- package/dist/resources/tracked.js.map +1 -1
- package/dist/resources/transaction.js +1 -1
- package/dist/resources/transaction.js.map +1 -1
- package/dist/server/threads/manageThreads.d.ts +1 -0
- package/dist/server/threads/manageThreads.js +20 -3
- package/dist/server/threads/manageThreads.js.map +1 -1
- package/dist/utility/processManagement/processManagement.js +21 -3
- package/dist/utility/processManagement/processManagement.js.map +1 -1
- package/npm-shrinkwrap.json +6 -6
- package/package.json +2 -2
- package/resources/DESIGN.md +24 -19
- package/resources/DatabaseTransaction.ts +63 -2
- package/resources/LMDBTransaction.ts +7 -1
- package/resources/PrimaryRocksDatabase.ts +3 -3
- package/resources/RecordEncoder.ts +85 -3
- package/resources/Resource.ts +6 -5
- package/resources/ResourceInterface.ts +5 -0
- package/resources/Table.ts +117 -9
- package/resources/graphql.ts +1 -1
- package/resources/tracked.ts +4 -0
- package/resources/transaction.ts +2 -2
- package/server/DESIGN.md +6 -0
- package/server/threads/manageThreads.js +17 -3
- package/studio/web/assets/{Chat-Lgj1d-8d.js → Chat-etJeJv4a.js} +71 -95
- package/studio/web/assets/FloatingChat-BvmHsuVo.js +23 -0
- package/studio/web/assets/abnfDiagram-VCTEODGH-C0_BAZyO.js +1 -0
- package/studio/web/assets/{alertDialog-BaBrZQ4M.js → alertDialog-DIHt7Z0r.js} +1 -1
- package/studio/web/assets/apiToken-Bl5LC8EH.js +1 -0
- package/studio/web/assets/applications-Dta6Y0Rg.js +296 -0
- package/studio/web/assets/arc-CVRByUzA.js +1 -0
- package/studio/web/assets/architecture-7GRP2DOG-DNdx5tEU.js +1 -0
- package/studio/web/assets/architectureDiagram-5GKGNRK7-BWzrASgm.js +36 -0
- package/studio/web/assets/authStore-qKmCZcaf.js +3 -0
- package/studio/web/assets/blockDiagram-NRAW4CY4-BdJX9Khj.js +129 -0
- package/studio/web/assets/{button-DfBmT4rc.js → button-DhiX-njv.js} +1 -1
- package/studio/web/assets/c4Diagram-UCG6FXSJ-CI6MzGmQ.js +38 -0
- package/studio/web/assets/channel-DtCV8PTL.js +1 -0
- package/studio/web/assets/chevron-up-Df2c8uoU.js +1 -0
- package/studio/web/assets/chunk-75Z2AOVW-BT8tVmks.js +2 -0
- package/studio/web/assets/chunk-DU6HZSFF-9kAOOmI6.js +127 -0
- package/studio/web/assets/{chunk-2GRJ4B5K-DtwG__pv.js → chunk-F27PBJKO-BW7ao8AY.js} +1 -1
- package/studio/web/assets/{chunk-KEIR6QF5-BICK3FdT.js → chunk-FOHPRMQF-DHwB1DNv.js} +2 -2
- package/studio/web/assets/{chunk-5RXB4S5H-D3c7okHC.js → chunk-G27WJ6UU-COyLMcgK.js} +2 -2
- package/studio/web/assets/chunk-GMAD6QVW-BNyXpoQO.js +72 -0
- package/studio/web/assets/chunk-JQ64N6SF-Cyz1IeLf.js +1 -0
- package/studio/web/assets/{chunk-GF5L2VYU-DreJ7Snz.js → chunk-LCL6LL3I-HOzK_ppE.js} +3 -3
- package/studio/web/assets/chunk-OBVCFTLP-D4wWOqDQ.js +1 -0
- package/studio/web/assets/chunk-P2QGCYS3-DmIFY4d7.js +1 -0
- package/studio/web/assets/{chunk-KBJHAD2P-CLDPbAA-.js → chunk-POPQ4Y6H-BPrvMyKz.js} +1 -1
- package/studio/web/assets/{chunk-4I5QYGJK-D1FhvtQq.js → chunk-PWAF6VOD-2zB6IW9i.js} +1 -1
- package/studio/web/assets/chunk-R7TYR2AO-Irip67yr.js +10 -0
- package/studio/web/assets/chunk-RHFEMEQ7-2FgyI8YU.js +168 -0
- package/studio/web/assets/{chunk-6Q2QTUOP-QviMM6bR.js → chunk-SVP7TREG-FwtbH2QC.js} +1 -1
- package/studio/web/assets/chunk-TEH6E4GO-P87k5mNi.js +62 -0
- package/studio/web/assets/{chunk-XXDRQBXY-CaP_jixK.js → chunk-XXDRQBXY-BoGZu3HH.js} +1 -1
- package/studio/web/assets/classDiagram-DTDB5LWJ-DbO_dCNE.js +1 -0
- package/studio/web/assets/classDiagram-v2-JRS7N3AN-DbO_dCNE.js +1 -0
- package/studio/web/assets/{cose-bilkent-JH36ORCC-BVTNhTKD.js → cose-bilkent-JH36ORCC-Cuuf67Bh.js} +1 -1
- package/studio/web/assets/{createLucideIcon-BMkDbMrz.js → createLucideIcon-BKGPfjm2.js} +1 -1
- package/studio/web/assets/cssMode-IAbO_2KK.js +1 -0
- package/studio/web/assets/cynefin-OW5HDTMX-BRkpLFQV.js +1 -0
- package/studio/web/assets/cynefinDiagram-5FMLGOSQ-CHT1DaX6.js +62 -0
- package/studio/web/assets/cytoscape.esm-C2x7inlt.js +321 -0
- package/studio/web/assets/dagre-3AP2YEHR-DpUXBh63.js +4 -0
- package/studio/web/assets/dagre-PrKaheQc.js +1 -0
- package/studio/web/assets/diagram-S7CK7UJ4-BuymVFZT.js +30 -0
- package/studio/web/assets/diagram-UQ7AKVKN-CyP148RM.js +41 -0
- package/studio/web/assets/diagram-VSXAHHWV-CoCAg3M9.js +3 -0
- package/studio/web/assets/diagram-VX7I27RA-BpOqCFca.js +24 -0
- package/studio/web/assets/diagram-Z3DM3KII-Bfpw7Vbj.js +24 -0
- package/studio/web/assets/dialog-CBf0Mr1d.js +1 -0
- package/studio/web/assets/{dist-CeoU7cfW.js → dist-kYfyPZP9.js} +1 -1
- package/studio/web/assets/{dist-cY0BPcz0.js → dist-lkA3O3eM.js} +1 -1
- package/studio/web/assets/download-BtTOBem-.js +1 -0
- package/studio/web/assets/ebnfDiagram-PWID7BFC-DS_6aWqL.js +1 -0
- package/studio/web/assets/editor-CeRXEhRl.js +1 -0
- package/studio/web/assets/erDiagram-SSCWMZ5O-DJNk6Fgw.js +99 -0
- package/studio/web/assets/eventmodeling-NTZA5JFV-5jbe4A5P.js +1 -0
- package/studio/web/assets/flowDiagram-A5DVABFB-Dp9Ezlow.js +1 -0
- package/studio/web/assets/{ganttDiagram-PKOTCBZU-Cit41Zp3.js → ganttDiagram-EL5Y4UJY-2pOExxMY.js} +2 -2
- package/studio/web/assets/{getAnalytics-rTxZLIM5.js → getAnalytics-D4LKGeVy.js} +1 -1
- package/studio/web/assets/gitGraph-4MIJSDKK-CH5ZxwzF.js +1 -0
- package/studio/web/assets/gitGraphDiagram-WWUBYQGX-DVIsIhbO.js +106 -0
- package/studio/web/assets/html-DOV4s_YT.js +1 -0
- package/studio/web/assets/htmlMode-CdqjnAh4.js +1 -0
- package/studio/web/assets/index-CTqasm6g.js +824 -0
- package/studio/web/assets/index-Cxj2_wsl.css +1 -0
- package/studio/web/assets/index.lazy-VmcKgiEy.js +2 -0
- package/studio/web/assets/info-A6RAGUB7-CPQfTnaG.js +1 -0
- package/studio/web/assets/infoDiagram-RXCK75RN-DlwLYlwm.js +2 -0
- package/studio/web/assets/{ishikawaDiagram-WSZJBQD7-BJYRB-hU.js → ishikawaDiagram-5VMMS53U-BRXRp29U.js} +2 -2
- package/studio/web/assets/{javascript-CGzSV8Sd.js → javascript-Dj7yXfx5.js} +1 -1
- package/studio/web/assets/{journeyDiagram-NVQOT4AX-B8K4wuMz.js → journeyDiagram-EYS64GPL-B0ou8k0n.js} +1 -1
- package/studio/web/assets/jsonMode-khk65qzx.js +1 -0
- package/studio/web/assets/{kanban-definition-27J2QSJJ-DKFV1ovM.js → kanban-definition-3QL26DDD-uYg7iYzp.js} +11 -11
- package/studio/web/assets/languageServices-D_06p7dw.js +1 -0
- package/studio/web/assets/linear-Cnt8506Q.js +1 -0
- package/studio/web/assets/lspLanguageFeatures-DTA6wyQw.js +4 -0
- package/studio/web/assets/mermaid-parser.core-Ck-fC8b7.js +7 -0
- package/studio/web/assets/mermaid.core-CP8aNNYm.js +44 -0
- package/studio/web/assets/{mindmap-definition-FAOFIHXS-CKL4PdAv.js → mindmap-definition-FBJOCRG2-CgTZ-rit.js} +25 -25
- package/studio/web/assets/notifications-Bah46LXX.js +1 -0
- package/studio/web/assets/notifications-CBZXgxVc.js +1 -0
- package/studio/web/assets/packet-AYTQ26CC-DEyoPtPb.js +1 -0
- package/studio/web/assets/pegDiagram-XKGWAZYB-DrD-7sD9.js +1 -0
- package/studio/web/assets/pie-WAS4IAKB-wjj-EI1d.js +1 -0
- package/studio/web/assets/pieDiagram-E7YTZNPT-GntqDCzv.js +39 -0
- package/studio/web/assets/profile-QspOun_j.js +1 -0
- package/studio/web/assets/{quadrantDiagram-CIZ2JOQS-CSbsuWtH.js → quadrantDiagram-AXDQQJYC-0UeqXQGd.js} +1 -1
- package/studio/web/assets/radar-RG4KPBEZ-DFSA5h7k.js +1 -0
- package/studio/web/assets/railroad-74A4TZTK-CaOUG9wR.js +1 -0
- package/studio/web/assets/railroad-abnf-HS5TGJTU-Bc0Qi0WH.js +1 -0
- package/studio/web/assets/railroad-ebnf-LZEXJU2U-G8rVVZ2C.js +1 -0
- package/studio/web/assets/railroad-peg-WCYAUIDC-CrehKBhC.js +1 -0
- package/studio/web/assets/railroadDiagram-O6MQD6OU-yHUELZaV.js +1 -0
- package/studio/web/assets/regions-QdUi7bQ9.js +1 -0
- package/studio/web/assets/{editor.api-eUd8PqEu.js → register-Buvoxmb8.js} +139 -138
- package/studio/web/assets/{requirementDiagram-LRYGKXZP-ZIF0Wlho.js → requirementDiagram-EFPCY7ZU-DNEGFjuW.js} +2 -2
- package/studio/web/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/studio/web/assets/safeParse-DeaoCCWH.js +1 -0
- package/studio/web/assets/{sankeyDiagram-W5VNT64P-BcRESt9x.js → sankeyDiagram-P5KCCOFB-DpyAmSVR.js} +1 -1
- package/studio/web/assets/{sequenceDiagram-SI44F4Z6-OpgTeJNU.js → sequenceDiagram-WJ2MYXX4-TyaT7xNk.js} +1 -1
- package/studio/web/assets/setComponentFile-BI4E_iDe.js +1 -0
- package/studio/web/assets/setLocalStorage-D_kflv4U.js +1 -0
- package/studio/web/assets/setSessionStorage-B0bf71m4.js +1 -0
- package/studio/web/assets/setup-Cop6LBQN.js +2 -0
- package/studio/web/assets/src-CMc7m_Ut.js +1 -0
- package/studio/web/assets/stateDiagram-HBIQ2CUA-CeEdTArZ.js +1 -0
- package/studio/web/assets/stateDiagram-v2-4QOOHH4V-D4tuw9Su.js +1 -0
- package/studio/web/assets/status-DRu3zRgl.js +61 -0
- package/studio/web/assets/step-vX8bovaY.js +1 -0
- package/studio/web/assets/swimlanes-XN3QIQJK-B54FmF46.js +1 -0
- package/studio/web/assets/swimlanesDiagram-VK2B7HYN-XOhmNEvq.js +8 -0
- package/studio/web/assets/tabs-B_G5zscN.js +1 -0
- package/studio/web/assets/{time-D55sDum-.js → time-Cclkb7kQ.js} +1 -1
- package/studio/web/assets/{timeline-definition-Z64GVDOM-Dy5A_tK2.js → timeline-definition-24CTP7MA-D-a9ujbo.js} +5 -5
- package/studio/web/assets/toggleHighContrast-C0dJLmZ0.js +49 -0
- package/studio/web/assets/treeView-Q6P3EWNA-CrW_6JnS.js +1 -0
- package/studio/web/assets/treemap-WGGIJYW6-BxyYLdP_.js +1 -0
- package/studio/web/assets/tsMode-dbDiapTA.js +11 -0
- package/studio/web/assets/typescript-CT1826cL.js +1 -0
- package/studio/web/assets/useEntityRestURL-D1u1X_gE.js +1 -0
- package/studio/web/assets/useLocalStorage-Dtj1QS8_.js +1 -0
- package/studio/web/assets/{vendor-core-CddkYGh5.js → vendor-core-RCcadM3e.js} +1 -1
- package/studio/web/assets/vendor-datadog-BRv-mOv1.js +6 -0
- package/studio/web/assets/{vendor-react-BhazFIp8.js → vendor-react-Dyj4O3HE.js} +1 -1
- package/studio/web/assets/vendor-tanstack-BiFWSB3W.js +1 -0
- package/studio/web/assets/{vendor-ui-BLIveqaL.js → vendor-ui-vhu-UHhF.js} +11 -11
- package/studio/web/assets/{vennDiagram-T6HMQDX7-DRvMIiSo.js → vennDiagram-4TSXK5OY-Cy7s7Mpy.js} +3 -3
- package/studio/web/assets/wardley-WFR3VGLG-BeBL35g2.js +1 -0
- package/studio/web/assets/{wardleyDiagram-T6FBY63Y-B04FSA0i.js → wardleyDiagram-VM6X3IG4-BylmIGSg.js} +3 -3
- package/studio/web/assets/workers-FpR9_D2K.js +3 -0
- package/studio/web/assets/x-B9o9hsep.js +1 -0
- package/studio/web/assets/xml-ZjKUMjth.js +1 -0
- package/studio/web/assets/{xychartDiagram-ELKLHX3M-BE0X7RA7.js → xychartDiagram-S5SC5T6Z-CoKALMXr.js} +3 -3
- package/studio/web/assets/yaml-B6gXbZU6.js +1 -0
- package/studio/web/assets/{yaml.worker-Iyy2Pf1T.js → yaml.worker-BDL8_iuk.js} +153 -153
- package/studio/web/harper-studio_black.png +0 -0
- package/studio/web/index.html +18 -24
- package/utility/processManagement/processManagement.js +19 -3
- package/studio/web/assets/FloatingChat-jLWvR4kI.js +0 -23
- package/studio/web/assets/abnfDiagram-N423BO3Z-BRuH0ywn.js +0 -1
- package/studio/web/assets/apiToken-DYI4DqWa.js +0 -1
- package/studio/web/assets/applications-DCmc9-lk.js +0 -296
- package/studio/web/assets/arc-3Xw6uabx.js +0 -1
- package/studio/web/assets/architecture-TIHT7OUA-CsHfPErM.js +0 -1
- package/studio/web/assets/architectureDiagram-T3A2C74G-DrwbS7Gp.js +0 -36
- package/studio/web/assets/array-BifhSqXX.js +0 -1
- package/studio/web/assets/authStore-B3IhXrn6.js +0 -3
- package/studio/web/assets/blockDiagram-VBNYF7ZC-DKN1mht5.js +0 -132
- package/studio/web/assets/c4Diagram-5PPSVZJV-CT9bmjm_.js +0 -10
- package/studio/web/assets/card-ByrPS_wa.js +0 -1
- package/studio/web/assets/channel-mnKBfsP-.js +0 -1
- package/studio/web/assets/chevron-right-CY-tr2sG.js +0 -1
- package/studio/web/assets/chunk-3NCLNEKW-BVj72ixc.js +0 -1
- package/studio/web/assets/chunk-5FCAYU7R-Dh5nylU8.js +0 -1
- package/studio/web/assets/chunk-5HE753X5-Bw-yg4kO.js +0 -1
- package/studio/web/assets/chunk-5JV3BV7I-Cy5pj3QY.js +0 -1
- package/studio/web/assets/chunk-5TONJI2A-DQOY3q1H.js +0 -2
- package/studio/web/assets/chunk-7BUUIJ7U-Bb538aSH.js +0 -1
- package/studio/web/assets/chunk-7Z6QIM7H-BJhESwQK.js +0 -10
- package/studio/web/assets/chunk-BIQX33UG-DZEsGuSn.js +0 -1
- package/studio/web/assets/chunk-CQNSW5MT-B8S09OIh.js +0 -1
- package/studio/web/assets/chunk-CYSBUYHQ-C1Rf4art.js +0 -1
- package/studio/web/assets/chunk-EMLP6XTP-RLD4nXpI.js +0 -1
- package/studio/web/assets/chunk-I66GZJ75-DHPYnKNr.js +0 -125
- package/studio/web/assets/chunk-J7OUQ5F2-DcY_kb6i.js +0 -2
- package/studio/web/assets/chunk-JG7HCLWE-BYfiSaVt.js +0 -2
- package/studio/web/assets/chunk-JQJVKLGR-DtEmbHZj.js +0 -156
- package/studio/web/assets/chunk-MOZMSUNE-XVucA-n6.js +0 -1
- package/studio/web/assets/chunk-NSK5VX7P-DDFNzCU_.js +0 -2
- package/studio/web/assets/chunk-OSBZ3O6U-CrKZOUOr.js +0 -1
- package/studio/web/assets/chunk-QBLGF6JB-CxAyS2mW.js +0 -1
- package/studio/web/assets/chunk-QR6OTTB3-Df7OCENk.js +0 -62
- package/studio/web/assets/chunk-R7FJI6CG-Cnn3gE-Y.js +0 -1
- package/studio/web/assets/chunk-RYQCIY6F-N0MDKk5G.js +0 -1
- package/studio/web/assets/chunk-U6XO7XAA-BFxjP5U3.js +0 -2
- package/studio/web/assets/chunk-UBXNYLIW-rn0yw1mp.js +0 -1
- package/studio/web/assets/chunk-W5SLKNZC-DKMlAWZk.js +0 -1
- package/studio/web/assets/chunk-WRU74C26-Dg10j8Pf.js +0 -70
- package/studio/web/assets/chunk-YOTPTUD7-D0vRKqYp.js +0 -1
- package/studio/web/assets/chunk-ZIRB5QZD-O39ZBUk3.js +0 -32
- package/studio/web/assets/classDiagram-JCYQIIEL-BrXNP4fl.js +0 -1
- package/studio/web/assets/classDiagram-v2-OCEON4UE-BrXNP4fl.js +0 -1
- package/studio/web/assets/cssMode-DipmMR_-.js +0 -1
- package/studio/web/assets/cynefin-VYW2F7L2-Ds2Fw2Y0.js +0 -1
- package/studio/web/assets/cynefinDiagram-MW4NZA55-DcTzrsC5.js +0 -62
- package/studio/web/assets/cytoscape.esm-B-NFISlW.js +0 -321
- package/studio/web/assets/dagre-Buvkdvvj.js +0 -1
- package/studio/web/assets/dagre-VZM6K2ZE-CMyJ9QPU.js +0 -4
- package/studio/web/assets/diagram-7IWD3JNH-jEGuzdp3.js +0 -30
- package/studio/web/assets/diagram-B4RE2ZJO-Ba7wC7iw.js +0 -3
- package/studio/web/assets/diagram-LBJQPF4R-Bm7Wj_dF.js +0 -24
- package/studio/web/assets/diagram-Q27KOJAE-C-gdktLC.js +0 -24
- package/studio/web/assets/diagram-UB23O5K3-COBVIEEk.js +0 -41
- package/studio/web/assets/ebnfDiagram-BXEA7PRR-G-t56mVV.js +0 -1
- package/studio/web/assets/editor-BDfNodZS.js +0 -1
- package/studio/web/assets/erDiagram-JOGREHBK-DpHzpqx1.js +0 -85
- package/studio/web/assets/eventmodeling-45OFAUF4-CLEiVx5s.js +0 -1
- package/studio/web/assets/flowDiagram-UKHOOZJN-CIxxUUxn.js +0 -1
- package/studio/web/assets/getRegistrationInfo--NLLrics.js +0 -1
- package/studio/web/assets/gitGraph-TEB2WS4Q-CZFBqwW-.js +0 -1
- package/studio/web/assets/gitGraphDiagram-DS77QQ5N-DuGnRv2R.js +0 -106
- package/studio/web/assets/html-DmSSmgE8.js +0 -1
- package/studio/web/assets/htmlMode-B2LqJw1z.js +0 -1
- package/studio/web/assets/index-BO3NaEw8.css +0 -1
- package/studio/web/assets/index-BnYZFLIB.css +0 -1
- package/studio/web/assets/index-CqbCnqsT.js +0 -810
- package/studio/web/assets/index.lazy-BNqr3j0f.js +0 -13
- package/studio/web/assets/info-DKCQHKI2--1InqQeT.js +0 -1
- package/studio/web/assets/infoDiagram-6WML65LV-DliK38kp.js +0 -2
- package/studio/web/assets/isArrayLikeObject-BHDnhloL.js +0 -1
- package/studio/web/assets/jsonMode-BVS6P5Xk.js +0 -1
- package/studio/web/assets/languageServices-Bl-BvoAb.js +0 -1
- package/studio/web/assets/line-Bom3IjHi.js +0 -1
- package/studio/web/assets/linear-DwB_ruUT.js +0 -1
- package/studio/web/assets/lspLanguageFeatures-C7XtZA_w.js +0 -4
- package/studio/web/assets/map-BaFkSB1l.js +0 -1
- package/studio/web/assets/math-Bi_r_ZWc.js +0 -1
- package/studio/web/assets/mermaid-parser.core-Dd4RYr9Q.js +0 -4
- package/studio/web/assets/mermaid.core-Bbo24DGo.js +0 -11
- package/studio/web/assets/notifications-Bb2cj14_.js +0 -1
- package/studio/web/assets/notifications-DVlKonbI.js +0 -1
- package/studio/web/assets/packet-7NZHBO7P-BGMXB0XL.js +0 -1
- package/studio/web/assets/path-fybaL0A-.js +0 -1
- package/studio/web/assets/pegDiagram-VL7TDLO6-CWEktcBB.js +0 -1
- package/studio/web/assets/pie-RZYD4A2V-DgYg3tCt.js +0 -1
- package/studio/web/assets/pieDiagram-7S7Q4E2Y-DEAmZOqY.js +0 -39
- package/studio/web/assets/pollUnlessForbidden-DIDXGBc5.js +0 -1
- package/studio/web/assets/profile-BSQWfYfq.js +0 -1
- package/studio/web/assets/purify.es-DrVcFY1Q.js +0 -3
- package/studio/web/assets/queryClient-BLhQvmWC.js +0 -1
- package/studio/web/assets/radar-I7S5WNFK-Ag-zp_Rq.js +0 -1
- package/studio/web/assets/railroad-3IZDKUUU-aibJDIDV.js +0 -1
- package/studio/web/assets/railroad-abnf-AHOZXSZD-BBMEuvIl.js +0 -1
- package/studio/web/assets/railroad-ebnf-EBAXGLYW-Be1nseej.js +0 -1
- package/studio/web/assets/railroad-peg-LSFZ7HO6-DIvD-Eyb.js +0 -1
- package/studio/web/assets/railroadDiagram-AXF67PYL-BJWrgR10.js +0 -1
- package/studio/web/assets/react-VeAY02s6.js +0 -1
- package/studio/web/assets/react-redux-Ds7wf7Ax.js +0 -5
- package/studio/web/assets/regions-Dk3g8bBF.js +0 -1
- package/studio/web/assets/register-3F1Tje_F.js +0 -2
- package/studio/web/assets/register-S_PdXsoi.js +0 -2
- package/studio/web/assets/rolldown-runtime-B0Z9INg1.js +0 -1
- package/studio/web/assets/select-CKgJgpkn.js +0 -1
- package/studio/web/assets/setComponentFile-DoITgNLb.js +0 -1
- package/studio/web/assets/setLocalStorage-CD_L8p_D.js +0 -1
- package/studio/web/assets/setup-CiEALLa7.js +0 -2
- package/studio/web/assets/src-DUvBCJIr.js +0 -1
- package/studio/web/assets/stateDiagram-OKZ733FA-D9oPLTjO.js +0 -1
- package/studio/web/assets/stateDiagram-v2-UEYNNEHI-CSD1wbuZ.js +0 -1
- package/studio/web/assets/status-CK9tD-Nd.js +0 -61
- package/studio/web/assets/string-f6JzSHaO.js +0 -1
- package/studio/web/assets/swagger-ui-react-CxjCDFB-.js +0 -240
- package/studio/web/assets/swimlanes-SLNWSIFB-BpeoNE9k.js +0 -2
- package/studio/web/assets/swimlanesDiagram-ULZ7WXOC-DHxwzxpp.js +0 -8
- package/studio/web/assets/table-BvFflPWi.js +0 -1
- package/studio/web/assets/tabs-Dd_ElZ36.js +0 -1
- package/studio/web/assets/textarea-a3RnTY31.js +0 -9
- package/studio/web/assets/toggleHighContrast-CyNC3SCQ.js +0 -49
- package/studio/web/assets/tokenization-CWuvR2gh.js +0 -7
- package/studio/web/assets/treeView-QDETBFTQ-uHZ-3Fz8.js +0 -1
- package/studio/web/assets/treemap-6X3UGDF4-BnUKyy3l.js +0 -1
- package/studio/web/assets/tsMode-CslzhcVk.js +0 -11
- package/studio/web/assets/typescript-Dtnury3t.js +0 -1
- package/studio/web/assets/useAuth-DiJUZS1C.js +0 -1
- package/studio/web/assets/useEntityRestURL-Cy-0i1UZ.js +0 -1
- package/studio/web/assets/useLocalStorage-DetQlhBe.js +0 -1
- package/studio/web/assets/vendor-datadog-XDrpA25D.js +0 -6
- package/studio/web/assets/vendor-tanstack-FsM5XZNE.js +0 -1
- package/studio/web/assets/wardley-OPB4EBWU-Da7TLC2F.js +0 -1
- package/studio/web/assets/workers-BtibQGyk.js +0 -3
- package/studio/web/assets/x-D39AGKMb.js +0 -1
- package/studio/web/assets/xml-D41zWqPl.js +0 -1
- package/studio/web/assets/yaml-BFQ3mF1U.js +0 -1
- /package/studio/web/assets/{editor-jjEx9u7D.css → register-jjEx9u7D.css} +0 -0
package/dist/resources/Table.js
CHANGED
|
@@ -403,6 +403,18 @@ function makeTable(options) {
|
|
|
403
403
|
// it, so such a table takes the guarded serialization path rather than the raw fast path.
|
|
404
404
|
let hasSurfacedComputed = false;
|
|
405
405
|
let runningRecordExpiration;
|
|
406
|
+
const reportedResolverCollisions = new Set();
|
|
407
|
+
// Reached from record materialization, so it can never be the reason a record fails to load: the
|
|
408
|
+
// name is marked before the log call, and a throwing log sink is swallowed.
|
|
409
|
+
function reportResolverCollision(name) {
|
|
410
|
+
if (reportedResolverCollisions.has(name))
|
|
411
|
+
return;
|
|
412
|
+
reportedResolverCollisions.add(name);
|
|
413
|
+
try {
|
|
414
|
+
logger_ts_1.logger.warn?.(`Table "${tableName}" has a stored value under "${name}", which is a computed attribute; the stored value is being discarded and the computed value used instead`);
|
|
415
|
+
}
|
|
416
|
+
catch { }
|
|
417
|
+
}
|
|
406
418
|
const isRocksDB = primaryStore instanceof rocksdb_js_1.RocksDatabase;
|
|
407
419
|
let idIncrementer;
|
|
408
420
|
let replicateToCount;
|
|
@@ -1818,8 +1830,27 @@ function makeTable(options) {
|
|
|
1818
1830
|
}
|
|
1819
1831
|
#saveOperation(operation) {
|
|
1820
1832
|
const transaction = txnForContext(this.getContext());
|
|
1821
|
-
|
|
1822
|
-
|
|
1833
|
+
const holder = operation.stagedIn;
|
|
1834
|
+
// never-drop-on-conflict lives on the transaction and would not travel with the write, so an
|
|
1835
|
+
// apply or a replay keeps it (harper-pro#348)
|
|
1836
|
+
const holderOwnsPolicy = holder?.sourceApply || holder?.isReplay;
|
|
1837
|
+
// stagesWriteOnSave: LMDBTransaction's addWrite never runs the write (its commit applies
|
|
1838
|
+
// `writes`), so handing it one is a dead end
|
|
1839
|
+
if (holder &&
|
|
1840
|
+
holder !== transaction &&
|
|
1841
|
+
!holderOwnsPolicy &&
|
|
1842
|
+
transaction.stagesWriteOnSave &&
|
|
1843
|
+
(0, DatabaseTransaction_ts_1.isJoinableScope)(transaction)) {
|
|
1844
|
+
holder.detachWrite(operation);
|
|
1845
|
+
// The basis chain belongs to the holder: derived from a write this scope cannot commit, the
|
|
1846
|
+
// merge and index diff would be relative to a record that may never land.
|
|
1847
|
+
operation.priorWrite = undefined;
|
|
1848
|
+
operation.deferSave = false;
|
|
1849
|
+
return (0, when_ts_1.when)(transaction.addWrite(operation), () => operation.promise ?? operation.result);
|
|
1850
|
+
}
|
|
1851
|
+
const owner = holder ?? transaction;
|
|
1852
|
+
if (owner.save)
|
|
1853
|
+
return owner.save(operation) || operation.promise || operation.result;
|
|
1823
1854
|
}
|
|
1824
1855
|
addTo(property, value) {
|
|
1825
1856
|
if (typeof value === 'number' || typeof value === 'bigint') {
|
|
@@ -2234,12 +2265,12 @@ function makeTable(options) {
|
|
|
2234
2265
|
nodeName: context?.nodeName,
|
|
2235
2266
|
fullUpdate,
|
|
2236
2267
|
deferSave: true,
|
|
2237
|
-
validate: (txnTime) => {
|
|
2268
|
+
validate: (txnTime, committedBy = transaction) => {
|
|
2238
2269
|
if (!recordUpdate)
|
|
2239
2270
|
recordUpdate = this.#changes;
|
|
2240
2271
|
if (fullUpdate || (recordUpdate && (0, tracked_ts_1.hasChanges)(this.#changes === recordUpdate ? this : recordUpdate))) {
|
|
2241
2272
|
if (!context?.source) {
|
|
2242
|
-
|
|
2273
|
+
committedBy.checkOverloaded();
|
|
2243
2274
|
// A record must be a plain object. Reject primitive, string/number, bare-binary,
|
|
2244
2275
|
// and bare-array roots — e.g. a raw Buffer from an application/octet-stream PUT, a
|
|
2245
2276
|
// JSON string/number body, or a top-level JSON array. Such roots carry no primary
|
|
@@ -2275,7 +2306,7 @@ function makeTable(options) {
|
|
|
2275
2306
|
// by replayLogs). Records were valid when originally written; post-crash schema
|
|
2276
2307
|
// evolution (e.g. newly required fields) must not prevent replaying them
|
|
2277
2308
|
// (harper#1316, facet b).
|
|
2278
|
-
if (!
|
|
2309
|
+
if (!committedBy.isReplay)
|
|
2279
2310
|
this.validate(recordUpdate, !fullUpdate);
|
|
2280
2311
|
if (updatedTimeProperty) {
|
|
2281
2312
|
recordUpdate[updatedTimeProperty.name] =
|
|
@@ -2313,7 +2344,7 @@ function makeTable(options) {
|
|
|
2313
2344
|
}
|
|
2314
2345
|
}
|
|
2315
2346
|
else {
|
|
2316
|
-
|
|
2347
|
+
committedBy.removeWrite?.(write);
|
|
2317
2348
|
return false;
|
|
2318
2349
|
}
|
|
2319
2350
|
},
|
|
@@ -2356,6 +2387,7 @@ function makeTable(options) {
|
|
|
2356
2387
|
this.#version = txnTime;
|
|
2357
2388
|
let incrementalUpdateToApply;
|
|
2358
2389
|
this.#savingOperation = null;
|
|
2390
|
+
write.stagedIn = undefined; // nothing may pin this write's transaction past its commit
|
|
2359
2391
|
let omitLocalRecord = false;
|
|
2360
2392
|
// we use optimistic locking to only commit if the existing record state still holds true.
|
|
2361
2393
|
// this is superior to using an async transaction since it doesn't require JS execution
|
|
@@ -4766,6 +4798,9 @@ function makeTable(options) {
|
|
|
4766
4798
|
if (attribute.isPrimaryKey)
|
|
4767
4799
|
primaryKeyAttribute = attribute;
|
|
4768
4800
|
attribute.resolve = null; // reset this
|
|
4801
|
+
// Also the setter, or a reload that turns a @relationship into a @computed keeps the
|
|
4802
|
+
// relationship's setter and writes a foreign key from a computed assignment.
|
|
4803
|
+
attribute.set = null;
|
|
4769
4804
|
const relationship = attribute.relationship;
|
|
4770
4805
|
const computed = attribute.computed;
|
|
4771
4806
|
// Register the default embedder unless an author override is set. Sits outside
|
|
@@ -4917,14 +4952,20 @@ function makeTable(options) {
|
|
|
4917
4952
|
enumerableAttributeNames = [];
|
|
4918
4953
|
enumerableRelationDefs.clear();
|
|
4919
4954
|
hasSurfacedComputed = false;
|
|
4955
|
+
const resolvedAttributeNames = [];
|
|
4920
4956
|
for (const attribute of attributes) {
|
|
4921
4957
|
const name = attribute.name;
|
|
4922
4958
|
if (attribute.resolve) {
|
|
4959
|
+
resolvedAttributeNames.push(name);
|
|
4923
4960
|
Object.defineProperty(primaryStore.encoder.structPrototype, name, {
|
|
4924
4961
|
get() {
|
|
4925
4962
|
return attribute.resolve(this, transaction_ts_1.contextStorage.getStore()); // it is only possible to get the context from ALS, we don't have a direct reference to the current context
|
|
4926
4963
|
},
|
|
4927
4964
|
set(related) {
|
|
4965
|
+
// A read-only resolver must never be the reason a record fails to materialize — the
|
|
4966
|
+
// same reason the one-to-many branch above installs a no-op.
|
|
4967
|
+
if (!attribute.set)
|
|
4968
|
+
return reportResolverCollision(name);
|
|
4928
4969
|
return attribute.set(this, related);
|
|
4929
4970
|
},
|
|
4930
4971
|
configurable: true,
|
|
@@ -4954,6 +4995,12 @@ function makeTable(options) {
|
|
|
4954
4995
|
installEnumerableToJSON(primaryStore.encoder.structPrototype, this, hasSurfacedComputed);
|
|
4955
4996
|
else if (primaryStore.encoder.structPrototype.toJSON)
|
|
4956
4997
|
delete primaryStore.encoder.structPrototype.toJSON;
|
|
4998
|
+
// Undefined rather than an empty set for a table with no resolved attributes: that is the
|
|
4999
|
+
// check which keeps the projection off an unaffected store's write path.
|
|
5000
|
+
primaryStore.encoder.resolvedAttributeNames =
|
|
5001
|
+
resolvedAttributeNames.length > 0 ? new Set(resolvedAttributeNames) : undefined;
|
|
5002
|
+
primaryStore.encoder.resolvedAttributeNamesList = resolvedAttributeNames;
|
|
5003
|
+
primaryStore.encoder.surfacedToJSON = primaryStore.encoder.structPrototype.toJSON;
|
|
4957
5004
|
}
|
|
4958
5005
|
// #section: computed-history
|
|
4959
5006
|
static setComputedAttribute(attribute_name, resolver) {
|
|
@@ -5464,10 +5511,31 @@ function makeTable(options) {
|
|
|
5464
5511
|
if (transaction.db?.path === primaryStore.path)
|
|
5465
5512
|
return transaction;
|
|
5466
5513
|
// try the next one:
|
|
5467
|
-
|
|
5514
|
+
let nextTxn = transaction.next;
|
|
5515
|
+
// A self-committing link is CLOSED once it has committed, and a further write through it
|
|
5516
|
+
// commits on a native handle nothing awaits (#2323). Spent — closed, handle detached, none of
|
|
5517
|
+
// its OWN writes left (hasPendingWrites walks successors, which is not this question) — it
|
|
5518
|
+
// holds nothing, so drop it. A run of them can be spent, hence the loop. A timeout-poisoned
|
|
5519
|
+
// link is kept: reusing it is what makes the rest of the operation fail atomically (#1411).
|
|
5520
|
+
while (nextTxn?.saveCommits &&
|
|
5521
|
+
nextTxn.open !== DatabaseTransaction_ts_1.TRANSACTION_STATE.OPEN &&
|
|
5522
|
+
!nextTxn.timedOut &&
|
|
5523
|
+
!nextTxn.transaction &&
|
|
5524
|
+
!nextTxn.writes.some((write) => write)) {
|
|
5525
|
+
transaction.next = nextTxn.next;
|
|
5526
|
+
nextTxn = transaction.next;
|
|
5527
|
+
}
|
|
5468
5528
|
if (!nextTxn) {
|
|
5469
5529
|
// no next one, then add our database
|
|
5470
|
-
|
|
5530
|
+
// A staging link under a self-committing head is committed only if the head's own database
|
|
5531
|
+
// is written again and cascades the chain, so a handler writing this one last loses it (#2292).
|
|
5532
|
+
transaction.next = transaction.saveCommits
|
|
5533
|
+
? (isRocksDB
|
|
5534
|
+
? new DatabaseTransaction_ts_1.ImmediateTransaction(primaryStore)
|
|
5535
|
+
: new LMDBTransaction_1.ImmediateTransaction(primaryStore))
|
|
5536
|
+
: isRocksDB
|
|
5537
|
+
? new DatabaseTransaction_ts_1.DatabaseTransaction()
|
|
5538
|
+
: new LMDBTransaction_1.LMDBTransaction();
|
|
5471
5539
|
// The chain root, so a link that only ever receives a blind write is supervised by the
|
|
5472
5540
|
// long-transaction monitor as part of its logical transaction rather than as its own
|
|
5473
5541
|
// timeout root (issue #2231).
|
|
@@ -5489,8 +5557,11 @@ function makeTable(options) {
|
|
|
5489
5557
|
// A second database joined after a mid-scope commit belongs to the same snapshot-free
|
|
5490
5558
|
// generation as the head, or its reads would re-pin what the commit just unpinned.
|
|
5491
5559
|
transaction.next.snapshotFree = transaction.snapshotFree;
|
|
5492
|
-
if (transaction.open === DatabaseTransaction_ts_1.TRANSACTION_STATE.CLOSED) {
|
|
5560
|
+
if (transaction.open === DatabaseTransaction_ts_1.TRANSACTION_STATE.CLOSED && !transaction.next.saveCommits) {
|
|
5493
5561
|
// if the current transaction is already closed, we need to retain that state on new databases we work with
|
|
5562
|
+
// Never onto a self-committing link: CLOSED is what routes its first write through the
|
|
5563
|
+
// commit re-entry that drops the native commit promise (#2323), and it commits per write
|
|
5564
|
+
// regardless of this state.
|
|
5494
5565
|
transaction.next.open = DatabaseTransaction_ts_1.TRANSACTION_STATE.CLOSED;
|
|
5495
5566
|
}
|
|
5496
5567
|
transaction = transaction.next;
|
|
@@ -5771,6 +5842,32 @@ function makeTable(options) {
|
|
|
5771
5842
|
// 5.2 record caching relies on it — so we must not write through the frozen object).
|
|
5772
5843
|
if (isFrozenRecordObject(updatedRecord))
|
|
5773
5844
|
updatedRecord = { ...updatedRecord };
|
|
5845
|
+
// A writable resolver (a relationship) keeps its meaning for source payloads: a source
|
|
5846
|
+
// returning the related object instead of the foreign key gets the key derived, the way
|
|
5847
|
+
// the promotion setter used to. Derivation runs against a probe first — a malformed
|
|
5848
|
+
// value (a scalar, an object without the related primary key) derives undefined, and
|
|
5849
|
+
// applying that would durably wipe the foreign key. The projection then drops the
|
|
5850
|
+
// resolver-owned key itself, so the cache-fill response cannot be the one read
|
|
5851
|
+
// reporting the source's value.
|
|
5852
|
+
const resolvedNames = primaryStore.encoder.resolvedAttributeNamesList;
|
|
5853
|
+
if (resolvedNames) {
|
|
5854
|
+
for (const name of resolvedNames) {
|
|
5855
|
+
if (Object.hasOwn(updatedRecord, name)) {
|
|
5856
|
+
const resolvedAttribute = (0, search_ts_1.findAttribute)(attributes, name);
|
|
5857
|
+
if (resolvedAttribute?.set && updatedRecord[name] != null) {
|
|
5858
|
+
const probe = {};
|
|
5859
|
+
resolvedAttribute.set(probe, updatedRecord[name]);
|
|
5860
|
+
for (const key in probe) {
|
|
5861
|
+
const derived = probe[key];
|
|
5862
|
+
const usable = Array.isArray(derived) ? derived.every((one) => one != null) : derived != null;
|
|
5863
|
+
if (usable)
|
|
5864
|
+
updatedRecord[key] = derived;
|
|
5865
|
+
}
|
|
5866
|
+
}
|
|
5867
|
+
}
|
|
5868
|
+
}
|
|
5869
|
+
}
|
|
5870
|
+
updatedRecord = (0, RecordEncoder_ts_1.storedFieldsOnly)(primaryStore.encoder, updatedRecord);
|
|
5774
5871
|
if (primaryKey && updatedRecord[primaryKey] !== id)
|
|
5775
5872
|
updatedRecord[primaryKey] = id;
|
|
5776
5873
|
}
|