decocms 2.176.0 → 2.176.2

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 (318) hide show
  1. package/dist/client/assets/{AlertCircle-PBJUtpjc.js → AlertCircle-BWr4XQe9.js} +1 -1
  2. package/dist/client/assets/{AlignLeft-CddYwC43.js → AlignLeft-BJyvDaBk.js} +1 -1
  3. package/dist/client/assets/{ArrowDown-LiBnMzQV.js → ArrowDown-BPMtK04S.js} +1 -1
  4. package/dist/client/assets/{ArrowLeft-BHzi0YLf.js → ArrowLeft-GOjXvqCa.js} +1 -1
  5. package/dist/client/assets/{ArrowUp-WIHiBhdv.js → ArrowUp-DqOjcDuh.js} +1 -1
  6. package/dist/client/assets/{Building02-c7FCt8-6.js → Building02-D_v8ZXC2.js} +1 -1
  7. package/dist/client/assets/{Check-Bme4aNg5.js → Check-DAFdA2oM.js} +1 -1
  8. package/dist/client/assets/{CheckCircle-BSVa-h_Y.js → CheckCircle-BL2mIAJn.js} +1 -1
  9. package/dist/client/assets/{CheckVerified02-e9BOcL0K.js → CheckVerified02-YYsvmiw4.js} +1 -1
  10. package/dist/client/assets/{ChevronDown-jyPVRLzp.js → ChevronDown-C-3qjfHK.js} +1 -1
  11. package/dist/client/assets/{ChevronLeft-Bn35AKxx.js → ChevronLeft-Dugo1z8_.js} +1 -1
  12. package/dist/client/assets/{ChevronRight-Ct9VK1GH.js → ChevronRight-B3gSyJmK.js} +1 -1
  13. package/dist/client/assets/{ChevronUp-B5BOcmGB.js → ChevronUp-Rk5dLXNx.js} +1 -1
  14. package/dist/client/assets/{Clock-Bwl2wOhM.js → Clock-Ccv6eV04.js} +1 -1
  15. package/dist/client/assets/{Code01-DygQPwlG.js → Code01-CoEt5nyY.js} +1 -1
  16. package/dist/client/assets/{Container-BeAIfNvy.js → Container-CQmXt7Nc.js} +1 -1
  17. package/dist/client/assets/{Copy01-ekqsSfJN.js → Copy01-D7uh0hW0.js} +1 -1
  18. package/dist/client/assets/{Dataflow03-BGqN1hrV.js → Dataflow03-ccC0qbkR.js} +1 -1
  19. package/dist/client/assets/{DotsHorizontal-BYFCLgks.js → DotsHorizontal-C3QGwRko.js} +1 -1
  20. package/dist/client/assets/{DotsVertical-Dn5mVo7u.js → DotsVertical-D5tMnzaQ.js} +1 -1
  21. package/dist/client/assets/{Download01-DQJbGhrI.js → Download01-BDm0aKH5.js} +1 -1
  22. package/dist/client/assets/{Edit01-BxDvpu_b.js → Edit01-DEd4k1xo.js} +1 -1
  23. package/dist/client/assets/{Edit05-Bta0rpFO.js → Edit05-RRC6ol7j.js} +1 -1
  24. package/dist/client/assets/{Eye-DN-kY_sb.js → Eye-MRRTHIte.js} +1 -1
  25. package/dist/client/assets/{EyeOff-E0TupCAH.js → EyeOff-CgRP1cSC.js} +1 -1
  26. package/dist/client/assets/{File02-Cyzf2kpD.js → File02-DdRvGWJN.js} +1 -1
  27. package/dist/client/assets/{File06-Ba0KxpWu.js → File06-DbRSeish.js} +1 -1
  28. package/dist/client/assets/{FilterLines-Ce9H-AFe.js → FilterLines-nV8jE7JI.js} +1 -1
  29. package/dist/client/assets/{Globe01-Cks65mCV.js → Globe01-Bb7jNfEM.js} +1 -1
  30. package/dist/client/assets/{Globe02-CB2InS06.js → Globe02-CDBspixd.js} +1 -1
  31. package/dist/client/assets/{Grid01-BvWQ72pJ.js → Grid01-COkHqk9k.js} +1 -1
  32. package/dist/client/assets/{Home02-C33y4DXe.js → Home02-Bjdq3zLu.js} +1 -1
  33. package/dist/client/assets/{Image01-B9BH_f0p.js → Image01-D4-tispo.js} +1 -1
  34. package/dist/client/assets/{Inbox01-ZPruuuHz.js → Inbox01-DiWhz3sk.js} +1 -1
  35. package/dist/client/assets/{InfoCircle-ETSHVG2F.js → InfoCircle-tftxVx0C.js} +1 -1
  36. package/dist/client/assets/{Key01-CdH7i8vY.js → Key01-Cv0XYLbb.js} +1 -1
  37. package/dist/client/assets/{LayersTwo01-8gQGsURS.js → LayersTwo01-DdRcHsrK.js} +1 -1
  38. package/dist/client/assets/{LayoutLeft-Bn9kcy6T.js → LayoutLeft-BuqgN7z4.js} +1 -1
  39. package/dist/client/assets/{Link01-B4s1G5Jr.js → Link01-Bo114MSv.js} +1 -1
  40. package/dist/client/assets/{LinkExternal01-B5VTVW6k.js → LinkExternal01-Div7VvWd.js} +1 -1
  41. package/dist/client/assets/{List-BU70NJSh.js → List-_Z2X7aPf.js} +1 -1
  42. package/dist/client/assets/{Loading01-Dt16NixZ.js → Loading01-BYjTtpy0.js} +1 -1
  43. package/dist/client/assets/{Lock01-DZeZ3WxC.js → Lock01-j13GCiRT.js} +1 -1
  44. package/dist/client/assets/{Play-WAyK_VUq.js → Play-BOK5c4Hp.js} +1 -1
  45. package/dist/client/assets/{Plus-DN4FtVmx.js → Plus-1vH_gFoY.js} +1 -1
  46. package/dist/client/assets/{RefreshCcw01-B88e0cNw.js → RefreshCcw01-ghOVEWuz.js} +1 -1
  47. package/dist/client/assets/{Save01-BCInJWrH.js → Save01-43mxrIvD.js} +1 -1
  48. package/dist/client/assets/{SearchMd-BQseJVRu.js → SearchMd-Dn4cWwEm.js} +1 -1
  49. package/dist/client/assets/{Settings01-CS4vVmx5.js → Settings01-B3FNPQBg.js} +1 -1
  50. package/dist/client/assets/{Shield01-BZpNsAZG.js → Shield01-0suO3hAe.js} +1 -1
  51. package/dist/client/assets/{Terminal-BDeJ6lHB.js → Terminal-CvfSVl9m.js} +1 -1
  52. package/dist/client/assets/{Tool01-xNX6v26H.js → Tool01-3i6uRXKJ.js} +1 -1
  53. package/dist/client/assets/{Trash01-PnuUudMl.js → Trash01-Dmi4vR7Q.js} +1 -1
  54. package/dist/client/assets/{Upload01-CSDtabhZ.js → Upload01-Cqh5tD2o.js} +1 -1
  55. package/dist/client/assets/{Users03-rAyzQyh3.js → Users03-CUiUl0DH.js} +1 -1
  56. package/dist/client/assets/{X-CxZVsh3L.js → X-Car5B1de.js} +1 -1
  57. package/dist/client/assets/{XClose-hdsxwv2G.js → XClose-D08ltwBw.js} +1 -1
  58. package/dist/client/assets/{Zap-azdz5wfI.js → Zap-CbjhdbUU.js} +1 -1
  59. package/dist/client/assets/{agent-connections-preview-XZw5-X3u.js → agent-connections-preview-Dv4euUYL.js} +1 -1
  60. package/dist/client/assets/{agent-detail-BJSxCMs1.js → agent-detail-BignzT6b.js} +1 -1
  61. package/dist/client/assets/{agents-DQWRQl2B.js → agents-DRDlT25N.js} +1 -1
  62. package/dist/client/assets/{ai-providers-logos-DPOiBl7V.js → ai-providers-logos-4n_w8l7D.js} +1 -1
  63. package/dist/client/assets/{alert-dialog-DdwA_v8c.js → alert-dialog-BZtQAioB.js} +1 -1
  64. package/dist/client/assets/{auth-catchall-WCsr2pQN.js → auth-catchall-BorI3Y5Q.js} +1 -1
  65. package/dist/client/assets/{automation-detail-BZk6VK2r.js → automation-detail-MAP63xhb.js} +1 -1
  66. package/dist/client/assets/{automations-B0oZ4Oep.js → automations-CXEh0WQH.js} +1 -1
  67. package/dist/client/assets/{avatar-CXKBBJaI.js → avatar-DEdDAQ0j.js} +1 -1
  68. package/dist/client/assets/{badge-BfLRgdaW.js → badge-BTw8dF6C.js} +1 -1
  69. package/dist/client/assets/{binder-B5Q0NNkg.js → binder-B2xnCBeC.js} +1 -1
  70. package/dist/client/assets/{breadcrumb-BhQI8Xw3.js → breadcrumb-CcE89MsN.js} +1 -1
  71. package/dist/client/assets/{card-B8QXMrj8.js → card-B6XTMOTf.js} +1 -1
  72. package/dist/client/assets/{checkbox-C5Om9oxx.js → checkbox-BA_JFbx4.js} +1 -1
  73. package/dist/client/assets/{collapsible-MCSgly5t.js → collapsible-CW12HasT.js} +1 -1
  74. package/dist/client/assets/{collection-detail-CrytnlOI.js → collection-detail-DTZ81ye0.js} +1 -1
  75. package/dist/client/assets/{collection-display-button-D7NovPlc.js → collection-display-button-BJQ_VSFQ.js} +1 -1
  76. package/dist/client/assets/{collection-search-DDX1Zkg7.js → collection-search-D6ILFEtf.js} +1 -1
  77. package/dist/client/assets/{collection-table-wrapper-YGokzak8.js → collection-table-wrapper-D0JGm79B.js} +1 -1
  78. package/dist/client/assets/{collection-tabs-D8NPXaOU.js → collection-tabs-fsXO7rse.js} +1 -1
  79. package/dist/client/assets/{command-BVlE6-p8.js → command-DwfoahUI.js} +1 -1
  80. package/dist/client/assets/{connection-card-D0Hulz9h.js → connection-card-CoZ_ixiG.js} +1 -1
  81. package/dist/client/assets/{connection-detail-C-Ge5CVn.js → connection-detail-BPi4jlBF.js} +1 -1
  82. package/dist/client/assets/{connection-status-CxcA3Thg.js → connection-status-CulzjjXt.js} +1 -1
  83. package/dist/client/assets/{connections-DWyHpNQR.js → connections-2fSWPLii.js} +1 -1
  84. package/dist/client/assets/{constants-CKGlP4oN.js → constants-CLw0F8Mm.js} +1 -1
  85. package/dist/client/assets/constants-D3bMpbG0.js +1 -0
  86. package/dist/client/assets/{context-ow-zK3BP.js → context-ClUgEsLK.js} +1 -1
  87. package/dist/client/assets/{create-organization-dialog-CFn_U9MK.js → create-organization-dialog-CNZiViYc.js} +1 -1
  88. package/dist/client/assets/{create-project-dialog-Rt5_XeVq.js → create-project-dialog-QYAKiAC_.js} +1 -1
  89. package/dist/client/assets/{danger-CgzhgW7h.js → danger-1mM9iHWV.js} +1 -1
  90. package/dist/client/assets/{danger-zone-CvDs5VVH.js → danger-zone-DSO2EIjr.js} +1 -1
  91. package/dist/client/assets/{dependencies-BbmKfxYe.js → dependencies-DtSMIESZ.js} +1 -1
  92. package/dist/client/assets/{dialog-COv8XUO0.js → dialog-ZIc7OUaM.js} +1 -1
  93. package/dist/client/assets/{dropdown-menu-Cr1iKfFo.js → dropdown-menu-EcTFyr4x.js} +1 -1
  94. package/dist/client/assets/{dynamic-plugin-layout-BIVc19gr.js → dynamic-plugin-layout-D40fWFup.js} +1 -1
  95. package/dist/client/assets/{editable-task-title-CrGgc8Hx.js → editable-task-title-CeJC7Fwa.js} +1 -1
  96. package/dist/client/assets/{empty-state-DsQ7yRoE.js → empty-state-gZUVmgL7.js} +1 -1
  97. package/dist/client/assets/{empty-state-CsEI90cv.js → empty-state-m7QcZ687.js} +1 -1
  98. package/dist/client/assets/{env-vars-editor-r00KzDtj.js → env-vars-editor-CIM7XauD.js} +1 -1
  99. package/dist/client/assets/{extract-connection-data-D46U8dB4.js → extract-connection-data-DEaEvOm7.js} +1 -1
  100. package/dist/client/assets/{file-browser-C8BCEBfL.js → file-browser-ChPNBU91.js} +2 -2
  101. package/dist/client/assets/{form-CZrleug2.js → form-Cd_AEgzv.js} +1 -1
  102. package/dist/client/assets/{general-39EgW9sq.js → general-mH6Dkpor.js} +1 -1
  103. package/dist/client/assets/{grid-view-CYvRmpTY.js → grid-view-C9tD8dqF.js} +1 -1
  104. package/dist/client/assets/{home-CwDvuqcO.js → home-icifeNIm.js} +1 -1
  105. package/dist/client/assets/{index-cEL2CgNm.js → index-BPs3Pxaa.js} +1 -1
  106. package/dist/client/assets/{index-Bc75bxbq.js → index-Bg2XE05Y.js} +1 -1
  107. package/dist/client/assets/{index-B23wyLB_.js → index-BrqeZa9X.js} +1 -1
  108. package/dist/client/assets/{index-DRLd-piX.js → index-CRi6734Z.js} +1 -1
  109. package/dist/client/assets/{index-CVyJGNS2.js → index-CfjT_Fv-.js} +1 -1
  110. package/dist/client/assets/{index-CT-515LV.js → index-Cg4edYBM.js} +1 -1
  111. package/dist/client/assets/{index-sEMWxAyS.js → index-Cz_J9f63.js} +1 -1
  112. package/dist/client/assets/{index-CsqngJxb.js → index-DKWOGpkx.js} +1 -1
  113. package/dist/client/assets/{index-BlBXXIdz.js → index-Dk4FCobs.js} +1 -1
  114. package/dist/client/assets/{index-iqPDmcBY.js → index-DxqOk4x4.js} +1 -1
  115. package/dist/client/assets/{index-B_DxRVw1.js → index-OyLnxARk.js} +3 -3
  116. package/dist/client/assets/{infiniteQueryObserver-DNhlrWmr.js → infiniteQueryObserver-BkZg7AVk.js} +1 -1
  117. package/dist/client/assets/{input-DqwWeNgs.js → input-B4YrZuiK.js} +1 -1
  118. package/dist/client/assets/{integration-icon-Dv0HduyT.js → integration-icon-B3aufi6R.js} +1 -1
  119. package/dist/client/assets/{label--AQoxbpU.js → label-BoRKSV_h.js} +1 -1
  120. package/dist/client/assets/{layout-Cji69-Fr.js → layout-C2-eT_B4.js} +1 -1
  121. package/dist/client/assets/{layout-CDyeWvbl.js → layout-DwPAPIK-.js} +1 -1
  122. package/dist/client/assets/{login-D1A8YvmQ.js → login-CYxKPB-k.js} +1 -1
  123. package/dist/client/assets/{logo-upload-BlIbeyor.js → logo-upload-DsXuRpYi.js} +1 -1
  124. package/dist/client/assets/{mcp-app-renderer-D7CJTHIn.js → mcp-app-renderer-KZyUYhBW.js} +1 -1
  125. package/dist/client/assets/{mcp-server-card-PhaJL10h.js → mcp-server-card-mO0UAT9W.js} +1 -1
  126. package/dist/client/assets/{mcp-server-detail-BInJ9Okh.js → mcp-server-detail-CyByMkle.js} +2 -2
  127. package/dist/client/assets/{members-WK1ZXtTy.js → members-3oNbzlXC.js} +1 -1
  128. package/dist/client/assets/{monaco-editor-Dgc89AWr.js → monaco-editor-DDZgyrgO.js} +1 -1
  129. package/dist/client/assets/{monitoring-Co1Fc87j.js → monitoring-Xs5hJ6u_.js} +1 -1
  130. package/dist/client/assets/{monitoring-dashboard-edit-BllFPC-c.js → monitoring-dashboard-edit-C_1U7sTf.js} +1 -1
  131. package/dist/client/assets/{monitoring-dashboard-view-CztiwjLo.js → monitoring-dashboard-view-DcMyYV2C.js} +1 -1
  132. package/dist/client/assets/{monitoring-stats-row-C4WAOhN_.js → monitoring-stats-row-CIKRC_fM.js} +1 -1
  133. package/dist/client/assets/{oauth-callback-ai-provider-Bcscfh1C.js → oauth-callback-ai-provider-CX0oMmvR.js} +1 -1
  134. package/dist/client/assets/{oauth-callback-oApNt2lX.js → oauth-callback-kezpwk-4.js} +1 -1
  135. package/dist/client/assets/{org-ai-providers-BHi1kOOt.js → org-ai-providers-dfJpkNdu.js} +1 -1
  136. package/dist/client/assets/{page-Dpk4jTO5.js → page-Y307a-9q.js} +1 -1
  137. package/dist/client/assets/{page-BZV8vSMw.js → page-y0K-3s3k.js} +1 -1
  138. package/dist/client/assets/{plugin-empty-state-BqFvCCv9.js → plugin-empty-state-BB0mg-1W.js} +1 -1
  139. package/dist/client/assets/{plugin-empty-state-DGylhF1c.js → plugin-empty-state-DwyPPEO0.js} +1 -1
  140. package/dist/client/assets/{plugin-header-B9UGjso3.js → plugin-header-BMLNemwj.js} +1 -1
  141. package/dist/client/assets/{plugin-header-CMHji8Df.js → plugin-header-DNeIXlLi.js} +1 -1
  142. package/dist/client/assets/plugins-CVEdGukW.js +1 -0
  143. package/dist/client/assets/{popover-DOnHuwq3.js → popover-BKHsia9C.js} +1 -1
  144. package/dist/client/assets/{project-app-view-fPmiutKj.js → project-app-view-C7kPLPhi.js} +1 -1
  145. package/dist/client/assets/{project-layout-CDVw6pd9.js → project-layout-C_1_eCl-.js} +1 -1
  146. package/dist/client/assets/{project-plugins-DwwhiaLk.js → project-plugins-BgoKgZwd.js} +1 -1
  147. package/dist/client/assets/{projects-list-BY_yiyPl.js → projects-list-B3H-urrL.js} +1 -1
  148. package/dist/client/assets/{registry-layout-4qwa3Yrl.js → registry-layout-BHOAsCzG.js} +1 -1
  149. package/dist/client/assets/{registry-utils--TC_kKCq.js → registry-utils-D0qx2c0_.js} +1 -1
  150. package/dist/client/assets/{reset-password-ChK1U3PS.js → reset-password-o3nCvS90.js} +1 -1
  151. package/dist/client/assets/{resizable-DXBCOl3J.js → resizable-1OPd79St.js} +1 -1
  152. package/dist/client/assets/{save-actions-ChdDeTz6.js → save-actions-DQ0FV8E3.js} +1 -1
  153. package/dist/client/assets/{scroll-area-ACn8ZLYT.js → scroll-area-BSQHcCri.js} +1 -1
  154. package/dist/client/assets/{select-BM9jpLT2.js → select-Ctls6rHz.js} +1 -1
  155. package/dist/client/assets/{select-virtual-mcp-DzKjKtT5.js → select-virtual-mcp-CEX-N6yN.js} +1 -1
  156. package/dist/client/assets/{sheet-DCDIRpJJ.js → sheet-MAyp9_-H.js} +1 -1
  157. package/dist/client/assets/{shell-layout-BTXUcCYK.js → shell-layout-8MdYJa94.js} +2 -2
  158. package/dist/client/assets/{sidebar-settings-Dy0o9qBx.js → sidebar-settings-BtI4Obrm.js} +1 -1
  159. package/dist/client/assets/{skeleton-BkpiIfDB.js → skeleton-DAvz6Hk5.js} +1 -1
  160. package/dist/client/assets/{spinner-tJ67zxkj.js → spinner-CItj22uq.js} +1 -1
  161. package/dist/client/assets/{store-invite-CTVa-Zvm.js → store-invite-Dr9c1QQu.js} +1 -1
  162. package/dist/client/assets/{switch-BE6ziGyo.js → switch-BunRXVYQ.js} +1 -1
  163. package/dist/client/assets/{table-BOA7X4H8.js → table-DHN8Pbh9.js} +1 -1
  164. package/dist/client/assets/{tabs-BQ5doEBy.js → tabs-kzZLmFuM.js} +1 -1
  165. package/dist/client/assets/{task-status-B3QSknHK.js → task-status-D6cPLJpA.js} +1 -1
  166. package/dist/client/assets/tasks-CZAS_EEA.js +1 -0
  167. package/dist/client/assets/{tasks-panel-BXchRGWe.js → tasks-panel-6uv7gp5j.js} +1 -1
  168. package/dist/client/assets/{textarea-BDS2584p.js → textarea-CpLkXx5p.js} +1 -1
  169. package/dist/client/assets/{time-range-picker-CWEE6Pax.js → time-range-picker-CYn_bf9F.js} +1 -1
  170. package/dist/client/assets/{toggle-group-B9XVwguR.js → toggle-group-C-kSfPqI.js} +1 -1
  171. package/dist/client/assets/{tools-list-DO_G3ceo.js → tools-list-GuN2kaNF.js} +1 -1
  172. package/dist/client/assets/{tooltip-Bm11lCIm.js → tooltip--UA5heKX.js} +1 -1
  173. package/dist/client/assets/{topbar-portal-XGVG-nsS.js → topbar-portal-M3PPIThx.js} +1 -1
  174. package/dist/client/assets/{types-BnNswHwQ.js → types-DoomhLgW.js} +1 -1
  175. package/dist/client/assets/{use-automations-nu85KLSx.js → use-automations-D5ELbflL.js} +1 -1
  176. package/dist/client/assets/{use-collections-aokT1D_C.js → use-collections-DXLoMYCx.js} +1 -1
  177. package/dist/client/assets/{use-connection-DA77pjoV.js → use-connection-B7ll8uNa.js} +1 -1
  178. package/dist/client/assets/{use-copy-CPgIfOPM.js → use-copy-XD9UDj7l.js} +1 -1
  179. package/dist/client/assets/{use-create-virtual-mcp-Dd303mOp.js → use-create-virtual-mcp-BvSTYw2n.js} +1 -1
  180. package/dist/client/assets/{use-infinite-scroll-DXKnZJHX.js → use-infinite-scroll-CSG4wWka.js} +1 -1
  181. package/dist/client/assets/{use-install-from-registry-C_csgcCs.js → use-install-from-registry-1KLotWZ_.js} +1 -1
  182. package/dist/client/assets/{use-list-state-CFQBiz4L.js → use-list-state-CVKHwo0P.js} +1 -1
  183. package/dist/client/assets/{use-mcp-prompts-Dw4CvfV3.js → use-mcp-prompts-DyPVjaKa.js} +1 -1
  184. package/dist/client/assets/{use-mcp-resources-CFkkQw1d.js → use-mcp-resources-CFTlLllB.js} +1 -1
  185. package/dist/client/assets/{use-mcp-tools-C3Vj1u8m.js → use-mcp-tools-S01H2JtZ.js} +1 -1
  186. package/dist/client/assets/{use-members-BbXqk449.js → use-members-BXkvGAIM.js} +1 -1
  187. package/dist/client/assets/{use-mobile-BarAf2zx.js → use-mobile-CgJAXGMs.js} +1 -1
  188. package/dist/client/assets/{use-project-CPyjDcpX.js → use-project-C2o9r0US.js} +1 -1
  189. package/dist/client/assets/{use-store-discovery-DupAMgFS.js → use-store-discovery-W6XcrfUT.js} +1 -1
  190. package/dist/client/assets/{use-view-mode-qVlfLymN.js → use-view-mode-CGzXYNrX.js} +1 -1
  191. package/dist/client/assets/{use-virtual-mcp-FAfRsySa.js → use-virtual-mcp-B8SbBr9v.js} +1 -1
  192. package/dist/client/assets/useInfiniteQuery-C9KaycVy.js +1 -0
  193. package/dist/client/assets/{useMutation-d1AXy22c.js → useMutation-B_6d8oLI.js} +1 -1
  194. package/dist/client/assets/useQuery-Brtj4EoG.js +1 -0
  195. package/dist/client/assets/useSuspenseInfiniteQuery-DD7d1y3B.js +1 -0
  196. package/dist/client/assets/{user-z34A3977.js → user-BLAfg6Ev.js} +1 -1
  197. package/dist/client/assets/{workflow-D77B4RT7.js → workflow-DHe_PiQF.js} +1 -1
  198. package/dist/client/index.html +1 -1
  199. package/dist/server/cli.js +230 -230
  200. package/dist/server/node_modules/pg-int8/LICENSE +13 -0
  201. package/dist/server/node_modules/pg-int8/README.md +16 -0
  202. package/dist/server/node_modules/pg-int8/index.js +100 -0
  203. package/dist/server/node_modules/pg-int8/package.json +24 -0
  204. package/dist/server/node_modules/postgres-bytea/index.js +33 -0
  205. package/dist/server/node_modules/{xtend/LICENSE → postgres-bytea/license} +2 -1
  206. package/dist/server/node_modules/postgres-bytea/package.json +34 -0
  207. package/dist/server/node_modules/postgres-bytea/readme.md +34 -0
  208. package/dist/server/node_modules/postgres-date/index.js +116 -0
  209. package/dist/server/node_modules/{pg-connection-string/LICENSE → postgres-date/license} +5 -5
  210. package/dist/server/node_modules/postgres-date/package.json +33 -0
  211. package/dist/server/node_modules/postgres-date/readme.md +49 -0
  212. package/dist/server/node_modules/postgres-interval/index.d.ts +20 -0
  213. package/dist/server/node_modules/postgres-interval/index.js +125 -0
  214. package/dist/server/node_modules/{pg-cloudflare/LICENSE → postgres-interval/license} +6 -6
  215. package/dist/server/node_modules/postgres-interval/package.json +36 -0
  216. package/dist/server/node_modules/postgres-interval/readme.md +48 -0
  217. package/dist/server/node_modules/split2/LICENSE +13 -0
  218. package/dist/server/node_modules/split2/README.md +85 -0
  219. package/dist/server/node_modules/split2/bench.js +27 -0
  220. package/dist/server/node_modules/split2/index.js +141 -0
  221. package/dist/server/node_modules/split2/package.json +39 -0
  222. package/dist/server/node_modules/split2/test.js +409 -0
  223. package/dist/server/server.js +2 -2
  224. package/package.json +1 -1
  225. package/dist/client/assets/constants-DqZ0hFNm.js +0 -1
  226. package/dist/client/assets/plugins-DcIPR0Gj.js +0 -1
  227. package/dist/client/assets/tasks-BqsZZgtJ.js +0 -1
  228. package/dist/client/assets/useInfiniteQuery-CCGqKrT7.js +0 -1
  229. package/dist/client/assets/useQuery-B8Io0Oda.js +0 -1
  230. package/dist/client/assets/useSuspenseInfiniteQuery-DsCmMd3U.js +0 -1
  231. package/dist/server/node_modules/pg-cloudflare/README.md +0 -112
  232. package/dist/server/node_modules/pg-cloudflare/dist/empty.d.ts +0 -2
  233. package/dist/server/node_modules/pg-cloudflare/dist/empty.js +0 -6
  234. package/dist/server/node_modules/pg-cloudflare/dist/empty.js.map +0 -1
  235. package/dist/server/node_modules/pg-cloudflare/dist/index.d.ts +0 -31
  236. package/dist/server/node_modules/pg-cloudflare/dist/index.js +0 -152
  237. package/dist/server/node_modules/pg-cloudflare/dist/index.js.map +0 -1
  238. package/dist/server/node_modules/pg-cloudflare/esm/index.mjs +0 -3
  239. package/dist/server/node_modules/pg-cloudflare/package.json +0 -39
  240. package/dist/server/node_modules/pg-cloudflare/src/empty.ts +0 -3
  241. package/dist/server/node_modules/pg-cloudflare/src/index.ts +0 -166
  242. package/dist/server/node_modules/pg-cloudflare/src/types.d.ts +0 -25
  243. package/dist/server/node_modules/pg-connection-string/README.md +0 -105
  244. package/dist/server/node_modules/pg-connection-string/esm/index.mjs +0 -8
  245. package/dist/server/node_modules/pg-connection-string/index.d.ts +0 -36
  246. package/dist/server/node_modules/pg-connection-string/index.js +0 -231
  247. package/dist/server/node_modules/pg-connection-string/package.json +0 -52
  248. package/dist/server/node_modules/pg-pool/LICENSE +0 -21
  249. package/dist/server/node_modules/pg-pool/README.md +0 -357
  250. package/dist/server/node_modules/pg-pool/esm/index.mjs +0 -5
  251. package/dist/server/node_modules/pg-pool/index.js +0 -517
  252. package/dist/server/node_modules/pg-pool/package.json +0 -51
  253. package/dist/server/node_modules/pg-protocol/LICENSE +0 -21
  254. package/dist/server/node_modules/pg-protocol/README.md +0 -3
  255. package/dist/server/node_modules/pg-protocol/dist/b.d.ts +0 -1
  256. package/dist/server/node_modules/pg-protocol/dist/b.js +0 -23
  257. package/dist/server/node_modules/pg-protocol/dist/b.js.map +0 -1
  258. package/dist/server/node_modules/pg-protocol/dist/buffer-reader.d.ts +0 -15
  259. package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js +0 -55
  260. package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js.map +0 -1
  261. package/dist/server/node_modules/pg-protocol/dist/buffer-writer.d.ts +0 -16
  262. package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js +0 -81
  263. package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js.map +0 -1
  264. package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.d.ts +0 -1
  265. package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js +0 -530
  266. package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js.map +0 -1
  267. package/dist/server/node_modules/pg-protocol/dist/index.d.ts +0 -6
  268. package/dist/server/node_modules/pg-protocol/dist/index.js +0 -15
  269. package/dist/server/node_modules/pg-protocol/dist/index.js.map +0 -1
  270. package/dist/server/node_modules/pg-protocol/dist/messages.d.ts +0 -162
  271. package/dist/server/node_modules/pg-protocol/dist/messages.js +0 -160
  272. package/dist/server/node_modules/pg-protocol/dist/messages.js.map +0 -1
  273. package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.d.ts +0 -1
  274. package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js +0 -252
  275. package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js.map +0 -1
  276. package/dist/server/node_modules/pg-protocol/dist/parser.d.ts +0 -24
  277. package/dist/server/node_modules/pg-protocol/dist/parser.js +0 -324
  278. package/dist/server/node_modules/pg-protocol/dist/parser.js.map +0 -1
  279. package/dist/server/node_modules/pg-protocol/dist/serializer.d.ts +0 -42
  280. package/dist/server/node_modules/pg-protocol/dist/serializer.js +0 -189
  281. package/dist/server/node_modules/pg-protocol/dist/serializer.js.map +0 -1
  282. package/dist/server/node_modules/pg-protocol/esm/index.js +0 -11
  283. package/dist/server/node_modules/pg-protocol/package.json +0 -45
  284. package/dist/server/node_modules/pg-protocol/src/b.ts +0 -25
  285. package/dist/server/node_modules/pg-protocol/src/buffer-reader.ts +0 -58
  286. package/dist/server/node_modules/pg-protocol/src/buffer-writer.ts +0 -85
  287. package/dist/server/node_modules/pg-protocol/src/inbound-parser.test.ts +0 -575
  288. package/dist/server/node_modules/pg-protocol/src/index.ts +0 -11
  289. package/dist/server/node_modules/pg-protocol/src/messages.ts +0 -262
  290. package/dist/server/node_modules/pg-protocol/src/outbound-serializer.test.ts +0 -276
  291. package/dist/server/node_modules/pg-protocol/src/parser.ts +0 -413
  292. package/dist/server/node_modules/pg-protocol/src/serializer.ts +0 -274
  293. package/dist/server/node_modules/pg-protocol/src/testing/buffer-list.ts +0 -67
  294. package/dist/server/node_modules/pg-protocol/src/testing/test-buffers.ts +0 -166
  295. package/dist/server/node_modules/pg-protocol/src/types/chunky.d.ts +0 -1
  296. package/dist/server/node_modules/pg-types/.travis.yml +0 -7
  297. package/dist/server/node_modules/pg-types/Makefile +0 -14
  298. package/dist/server/node_modules/pg-types/README.md +0 -75
  299. package/dist/server/node_modules/pg-types/index.d.ts +0 -137
  300. package/dist/server/node_modules/pg-types/index.js +0 -47
  301. package/dist/server/node_modules/pg-types/index.test-d.ts +0 -21
  302. package/dist/server/node_modules/pg-types/lib/arrayParser.js +0 -11
  303. package/dist/server/node_modules/pg-types/lib/binaryParsers.js +0 -257
  304. package/dist/server/node_modules/pg-types/lib/builtins.js +0 -73
  305. package/dist/server/node_modules/pg-types/lib/textParsers.js +0 -215
  306. package/dist/server/node_modules/pg-types/package.json +0 -42
  307. package/dist/server/node_modules/pg-types/test/index.js +0 -24
  308. package/dist/server/node_modules/pg-types/test/types.js +0 -597
  309. package/dist/server/node_modules/pgpass/README.md +0 -74
  310. package/dist/server/node_modules/pgpass/lib/helper.js +0 -233
  311. package/dist/server/node_modules/pgpass/lib/index.js +0 -23
  312. package/dist/server/node_modules/pgpass/package.json +0 -41
  313. package/dist/server/node_modules/xtend/.jshintrc +0 -30
  314. package/dist/server/node_modules/xtend/README.md +0 -32
  315. package/dist/server/node_modules/xtend/immutable.js +0 -19
  316. package/dist/server/node_modules/xtend/mutable.js +0 -17
  317. package/dist/server/node_modules/xtend/package.json +0 -55
  318. package/dist/server/node_modules/xtend/test.js +0 -103
@@ -1,413 +0,0 @@
1
- import { TransformOptions } from 'stream'
2
- import {
3
- Mode,
4
- bindComplete,
5
- parseComplete,
6
- closeComplete,
7
- noData,
8
- portalSuspended,
9
- copyDone,
10
- replicationStart,
11
- emptyQuery,
12
- ReadyForQueryMessage,
13
- CommandCompleteMessage,
14
- CopyDataMessage,
15
- CopyResponse,
16
- NotificationResponseMessage,
17
- RowDescriptionMessage,
18
- ParameterDescriptionMessage,
19
- Field,
20
- DataRowMessage,
21
- ParameterStatusMessage,
22
- BackendKeyDataMessage,
23
- DatabaseError,
24
- BackendMessage,
25
- MessageName,
26
- AuthenticationMD5Password,
27
- NoticeMessage,
28
- } from './messages'
29
- import { BufferReader } from './buffer-reader'
30
-
31
- // every message is prefixed with a single bye
32
- const CODE_LENGTH = 1
33
- // every message has an int32 length which includes itself but does
34
- // NOT include the code in the length
35
- const LEN_LENGTH = 4
36
-
37
- const HEADER_LENGTH = CODE_LENGTH + LEN_LENGTH
38
-
39
- // A placeholder for a `BackendMessage`’s length value that will be set after construction.
40
- const LATEINIT_LENGTH = -1
41
-
42
- export type Packet = {
43
- code: number
44
- packet: Buffer
45
- }
46
-
47
- const emptyBuffer = Buffer.allocUnsafe(0)
48
-
49
- type StreamOptions = TransformOptions & {
50
- mode: Mode
51
- }
52
-
53
- const enum MessageCodes {
54
- DataRow = 0x44, // D
55
- ParseComplete = 0x31, // 1
56
- BindComplete = 0x32, // 2
57
- CloseComplete = 0x33, // 3
58
- CommandComplete = 0x43, // C
59
- ReadyForQuery = 0x5a, // Z
60
- NoData = 0x6e, // n
61
- NotificationResponse = 0x41, // A
62
- AuthenticationResponse = 0x52, // R
63
- ParameterStatus = 0x53, // S
64
- BackendKeyData = 0x4b, // K
65
- ErrorMessage = 0x45, // E
66
- NoticeMessage = 0x4e, // N
67
- RowDescriptionMessage = 0x54, // T
68
- ParameterDescriptionMessage = 0x74, // t
69
- PortalSuspended = 0x73, // s
70
- ReplicationStart = 0x57, // W
71
- EmptyQuery = 0x49, // I
72
- CopyIn = 0x47, // G
73
- CopyOut = 0x48, // H
74
- CopyDone = 0x63, // c
75
- CopyData = 0x64, // d
76
- }
77
-
78
- export type MessageCallback = (msg: BackendMessage) => void
79
-
80
- export class Parser {
81
- private buffer: Buffer = emptyBuffer
82
- private bufferLength: number = 0
83
- private bufferOffset: number = 0
84
- private reader = new BufferReader()
85
- private mode: Mode
86
-
87
- constructor(opts?: StreamOptions) {
88
- if (opts?.mode === 'binary') {
89
- throw new Error('Binary mode not supported yet')
90
- }
91
- this.mode = opts?.mode || 'text'
92
- }
93
-
94
- public parse(buffer: Buffer, callback: MessageCallback) {
95
- this.mergeBuffer(buffer)
96
- const bufferFullLength = this.bufferOffset + this.bufferLength
97
- let offset = this.bufferOffset
98
- while (offset + HEADER_LENGTH <= bufferFullLength) {
99
- // code is 1 byte long - it identifies the message type
100
- const code = this.buffer[offset]
101
- // length is 1 Uint32BE - it is the length of the message EXCLUDING the code
102
- const length = this.buffer.readUInt32BE(offset + CODE_LENGTH)
103
- const fullMessageLength = CODE_LENGTH + length
104
- if (fullMessageLength + offset <= bufferFullLength) {
105
- const message = this.handlePacket(offset + HEADER_LENGTH, code, length, this.buffer)
106
- callback(message)
107
- offset += fullMessageLength
108
- } else {
109
- break
110
- }
111
- }
112
- if (offset === bufferFullLength) {
113
- // No more use for the buffer
114
- this.buffer = emptyBuffer
115
- this.bufferLength = 0
116
- this.bufferOffset = 0
117
- } else {
118
- // Adjust the cursors of remainingBuffer
119
- this.bufferLength = bufferFullLength - offset
120
- this.bufferOffset = offset
121
- }
122
- }
123
-
124
- private mergeBuffer(buffer: Buffer): void {
125
- if (this.bufferLength > 0) {
126
- const newLength = this.bufferLength + buffer.byteLength
127
- const newFullLength = newLength + this.bufferOffset
128
- if (newFullLength > this.buffer.byteLength) {
129
- // We can't concat the new buffer with the remaining one
130
- let newBuffer: Buffer
131
- if (newLength <= this.buffer.byteLength && this.bufferOffset >= this.bufferLength) {
132
- // We can move the relevant part to the beginning of the buffer instead of allocating a new buffer
133
- newBuffer = this.buffer
134
- } else {
135
- // Allocate a new larger buffer
136
- let newBufferLength = this.buffer.byteLength * 2
137
- while (newLength >= newBufferLength) {
138
- newBufferLength *= 2
139
- }
140
- newBuffer = Buffer.allocUnsafe(newBufferLength)
141
- }
142
- // Move the remaining buffer to the new one
143
- this.buffer.copy(newBuffer, 0, this.bufferOffset, this.bufferOffset + this.bufferLength)
144
- this.buffer = newBuffer
145
- this.bufferOffset = 0
146
- }
147
- // Concat the new buffer with the remaining one
148
- buffer.copy(this.buffer, this.bufferOffset + this.bufferLength)
149
- this.bufferLength = newLength
150
- } else {
151
- this.buffer = buffer
152
- this.bufferOffset = 0
153
- this.bufferLength = buffer.byteLength
154
- }
155
- }
156
-
157
- private handlePacket(offset: number, code: number, length: number, bytes: Buffer): BackendMessage {
158
- const { reader } = this
159
-
160
- // NOTE: This undesirably retains the buffer in `this.reader` if the `parse*Message` calls below throw. However, those should only throw in the case of a protocol error, which normally results in the reader being discarded.
161
- reader.setBuffer(offset, bytes)
162
-
163
- let message: BackendMessage
164
-
165
- switch (code) {
166
- case MessageCodes.BindComplete:
167
- message = bindComplete
168
- break
169
- case MessageCodes.ParseComplete:
170
- message = parseComplete
171
- break
172
- case MessageCodes.CloseComplete:
173
- message = closeComplete
174
- break
175
- case MessageCodes.NoData:
176
- message = noData
177
- break
178
- case MessageCodes.PortalSuspended:
179
- message = portalSuspended
180
- break
181
- case MessageCodes.CopyDone:
182
- message = copyDone
183
- break
184
- case MessageCodes.ReplicationStart:
185
- message = replicationStart
186
- break
187
- case MessageCodes.EmptyQuery:
188
- message = emptyQuery
189
- break
190
- case MessageCodes.DataRow:
191
- message = parseDataRowMessage(reader)
192
- break
193
- case MessageCodes.CommandComplete:
194
- message = parseCommandCompleteMessage(reader)
195
- break
196
- case MessageCodes.ReadyForQuery:
197
- message = parseReadyForQueryMessage(reader)
198
- break
199
- case MessageCodes.NotificationResponse:
200
- message = parseNotificationMessage(reader)
201
- break
202
- case MessageCodes.AuthenticationResponse:
203
- message = parseAuthenticationResponse(reader, length)
204
- break
205
- case MessageCodes.ParameterStatus:
206
- message = parseParameterStatusMessage(reader)
207
- break
208
- case MessageCodes.BackendKeyData:
209
- message = parseBackendKeyData(reader)
210
- break
211
- case MessageCodes.ErrorMessage:
212
- message = parseErrorMessage(reader, 'error')
213
- break
214
- case MessageCodes.NoticeMessage:
215
- message = parseErrorMessage(reader, 'notice')
216
- break
217
- case MessageCodes.RowDescriptionMessage:
218
- message = parseRowDescriptionMessage(reader)
219
- break
220
- case MessageCodes.ParameterDescriptionMessage:
221
- message = parseParameterDescriptionMessage(reader)
222
- break
223
- case MessageCodes.CopyIn:
224
- message = parseCopyInMessage(reader)
225
- break
226
- case MessageCodes.CopyOut:
227
- message = parseCopyOutMessage(reader)
228
- break
229
- case MessageCodes.CopyData:
230
- message = parseCopyData(reader, length)
231
- break
232
- default:
233
- return new DatabaseError('received invalid response: ' + code.toString(16), length, 'error')
234
- }
235
-
236
- reader.setBuffer(0, emptyBuffer)
237
-
238
- message.length = length
239
- return message
240
- }
241
- }
242
-
243
- const parseReadyForQueryMessage = (reader: BufferReader) => {
244
- const status = reader.string(1)
245
- return new ReadyForQueryMessage(LATEINIT_LENGTH, status)
246
- }
247
-
248
- const parseCommandCompleteMessage = (reader: BufferReader) => {
249
- const text = reader.cstring()
250
- return new CommandCompleteMessage(LATEINIT_LENGTH, text)
251
- }
252
-
253
- const parseCopyData = (reader: BufferReader, length: number) => {
254
- const chunk = reader.bytes(length - 4)
255
- return new CopyDataMessage(LATEINIT_LENGTH, chunk)
256
- }
257
-
258
- const parseCopyInMessage = (reader: BufferReader) => parseCopyMessage(reader, 'copyInResponse')
259
-
260
- const parseCopyOutMessage = (reader: BufferReader) => parseCopyMessage(reader, 'copyOutResponse')
261
-
262
- const parseCopyMessage = (reader: BufferReader, messageName: MessageName) => {
263
- const isBinary = reader.byte() !== 0
264
- const columnCount = reader.int16()
265
- const message = new CopyResponse(LATEINIT_LENGTH, messageName, isBinary, columnCount)
266
- for (let i = 0; i < columnCount; i++) {
267
- message.columnTypes[i] = reader.int16()
268
- }
269
- return message
270
- }
271
-
272
- const parseNotificationMessage = (reader: BufferReader) => {
273
- const processId = reader.int32()
274
- const channel = reader.cstring()
275
- const payload = reader.cstring()
276
- return new NotificationResponseMessage(LATEINIT_LENGTH, processId, channel, payload)
277
- }
278
-
279
- const parseRowDescriptionMessage = (reader: BufferReader) => {
280
- const fieldCount = reader.int16()
281
- const message = new RowDescriptionMessage(LATEINIT_LENGTH, fieldCount)
282
- for (let i = 0; i < fieldCount; i++) {
283
- message.fields[i] = parseField(reader)
284
- }
285
- return message
286
- }
287
-
288
- const parseField = (reader: BufferReader) => {
289
- const name = reader.cstring()
290
- const tableID = reader.uint32()
291
- const columnID = reader.int16()
292
- const dataTypeID = reader.uint32()
293
- const dataTypeSize = reader.int16()
294
- const dataTypeModifier = reader.int32()
295
- const mode = reader.int16() === 0 ? 'text' : 'binary'
296
- return new Field(name, tableID, columnID, dataTypeID, dataTypeSize, dataTypeModifier, mode)
297
- }
298
-
299
- const parseParameterDescriptionMessage = (reader: BufferReader) => {
300
- const parameterCount = reader.int16()
301
- const message = new ParameterDescriptionMessage(LATEINIT_LENGTH, parameterCount)
302
- for (let i = 0; i < parameterCount; i++) {
303
- message.dataTypeIDs[i] = reader.int32()
304
- }
305
- return message
306
- }
307
-
308
- const parseDataRowMessage = (reader: BufferReader) => {
309
- const fieldCount = reader.int16()
310
- const fields: any[] = new Array(fieldCount)
311
- for (let i = 0; i < fieldCount; i++) {
312
- const len = reader.int32()
313
- // a -1 for length means the value of the field is null
314
- fields[i] = len === -1 ? null : reader.string(len)
315
- }
316
- return new DataRowMessage(LATEINIT_LENGTH, fields)
317
- }
318
-
319
- const parseParameterStatusMessage = (reader: BufferReader) => {
320
- const name = reader.cstring()
321
- const value = reader.cstring()
322
- return new ParameterStatusMessage(LATEINIT_LENGTH, name, value)
323
- }
324
-
325
- const parseBackendKeyData = (reader: BufferReader) => {
326
- const processID = reader.int32()
327
- const secretKey = reader.int32()
328
- return new BackendKeyDataMessage(LATEINIT_LENGTH, processID, secretKey)
329
- }
330
-
331
- const parseAuthenticationResponse = (reader: BufferReader, length: number) => {
332
- const code = reader.int32()
333
- // TODO(bmc): maybe better types here
334
- const message: BackendMessage & any = {
335
- name: 'authenticationOk',
336
- length,
337
- }
338
-
339
- switch (code) {
340
- case 0: // AuthenticationOk
341
- break
342
- case 3: // AuthenticationCleartextPassword
343
- if (message.length === 8) {
344
- message.name = 'authenticationCleartextPassword'
345
- }
346
- break
347
- case 5: // AuthenticationMD5Password
348
- if (message.length === 12) {
349
- message.name = 'authenticationMD5Password'
350
- const salt = reader.bytes(4)
351
- return new AuthenticationMD5Password(LATEINIT_LENGTH, salt)
352
- }
353
- break
354
- case 10: // AuthenticationSASL
355
- {
356
- message.name = 'authenticationSASL'
357
- message.mechanisms = []
358
- let mechanism: string
359
- do {
360
- mechanism = reader.cstring()
361
- if (mechanism) {
362
- message.mechanisms.push(mechanism)
363
- }
364
- } while (mechanism)
365
- }
366
- break
367
- case 11: // AuthenticationSASLContinue
368
- message.name = 'authenticationSASLContinue'
369
- message.data = reader.string(length - 8)
370
- break
371
- case 12: // AuthenticationSASLFinal
372
- message.name = 'authenticationSASLFinal'
373
- message.data = reader.string(length - 8)
374
- break
375
- default:
376
- throw new Error('Unknown authenticationOk message type ' + code)
377
- }
378
- return message
379
- }
380
-
381
- const parseErrorMessage = (reader: BufferReader, name: MessageName) => {
382
- const fields: Record<string, string> = {}
383
- let fieldType = reader.string(1)
384
- while (fieldType !== '\0') {
385
- fields[fieldType] = reader.cstring()
386
- fieldType = reader.string(1)
387
- }
388
-
389
- const messageValue = fields.M
390
-
391
- const message =
392
- name === 'notice'
393
- ? new NoticeMessage(LATEINIT_LENGTH, messageValue)
394
- : new DatabaseError(messageValue, LATEINIT_LENGTH, name)
395
-
396
- message.severity = fields.S
397
- message.code = fields.C
398
- message.detail = fields.D
399
- message.hint = fields.H
400
- message.position = fields.P
401
- message.internalPosition = fields.p
402
- message.internalQuery = fields.q
403
- message.where = fields.W
404
- message.schema = fields.s
405
- message.table = fields.t
406
- message.column = fields.c
407
- message.dataType = fields.d
408
- message.constraint = fields.n
409
- message.file = fields.F
410
- message.line = fields.L
411
- message.routine = fields.R
412
- return message
413
- }
@@ -1,274 +0,0 @@
1
- import { Writer } from './buffer-writer'
2
-
3
- const enum code {
4
- startup = 0x70,
5
- query = 0x51,
6
- parse = 0x50,
7
- bind = 0x42,
8
- execute = 0x45,
9
- flush = 0x48,
10
- sync = 0x53,
11
- end = 0x58,
12
- close = 0x43,
13
- describe = 0x44,
14
- copyFromChunk = 0x64,
15
- copyDone = 0x63,
16
- copyFail = 0x66,
17
- }
18
-
19
- const writer = new Writer()
20
-
21
- const startup = (opts: Record<string, string>): Buffer => {
22
- // protocol version
23
- writer.addInt16(3).addInt16(0)
24
- for (const key of Object.keys(opts)) {
25
- writer.addCString(key).addCString(opts[key])
26
- }
27
-
28
- writer.addCString('client_encoding').addCString('UTF8')
29
-
30
- const bodyBuffer = writer.addCString('').flush()
31
- // this message is sent without a code
32
-
33
- const length = bodyBuffer.length + 4
34
-
35
- return new Writer().addInt32(length).add(bodyBuffer).flush()
36
- }
37
-
38
- const requestSsl = (): Buffer => {
39
- const response = Buffer.allocUnsafe(8)
40
- response.writeInt32BE(8, 0)
41
- response.writeInt32BE(80877103, 4)
42
- return response
43
- }
44
-
45
- const password = (password: string): Buffer => {
46
- return writer.addCString(password).flush(code.startup)
47
- }
48
-
49
- const sendSASLInitialResponseMessage = function (mechanism: string, initialResponse: string): Buffer {
50
- // 0x70 = 'p'
51
- writer.addCString(mechanism).addInt32(Buffer.byteLength(initialResponse)).addString(initialResponse)
52
-
53
- return writer.flush(code.startup)
54
- }
55
-
56
- const sendSCRAMClientFinalMessage = function (additionalData: string): Buffer {
57
- return writer.addString(additionalData).flush(code.startup)
58
- }
59
-
60
- const query = (text: string): Buffer => {
61
- return writer.addCString(text).flush(code.query)
62
- }
63
-
64
- type ParseOpts = {
65
- name?: string
66
- types?: number[]
67
- text: string
68
- }
69
-
70
- const emptyArray: any[] = []
71
-
72
- const parse = (query: ParseOpts): Buffer => {
73
- // expect something like this:
74
- // { name: 'queryName',
75
- // text: 'select * from blah',
76
- // types: ['int8', 'bool'] }
77
-
78
- // normalize missing query names to allow for null
79
- const name = query.name || ''
80
- if (name.length > 63) {
81
- console.error('Warning! Postgres only supports 63 characters for query names.')
82
- console.error('You supplied %s (%s)', name, name.length)
83
- console.error('This can cause conflicts and silent errors executing queries')
84
- }
85
-
86
- const types = query.types || emptyArray
87
-
88
- const len = types.length
89
-
90
- const buffer = writer
91
- .addCString(name) // name of query
92
- .addCString(query.text) // actual query text
93
- .addInt16(len)
94
-
95
- for (let i = 0; i < len; i++) {
96
- buffer.addInt32(types[i])
97
- }
98
-
99
- return writer.flush(code.parse)
100
- }
101
-
102
- type ValueMapper = (param: any, index: number) => any
103
-
104
- type BindOpts = {
105
- portal?: string
106
- binary?: boolean
107
- statement?: string
108
- values?: any[]
109
- // optional map from JS value to postgres value per parameter
110
- valueMapper?: ValueMapper
111
- }
112
-
113
- const paramWriter = new Writer()
114
-
115
- // make this a const enum so typescript will inline the value
116
- const enum ParamType {
117
- STRING = 0,
118
- BINARY = 1,
119
- }
120
-
121
- const writeValues = function (values: any[], valueMapper?: ValueMapper): void {
122
- for (let i = 0; i < values.length; i++) {
123
- const mappedVal = valueMapper ? valueMapper(values[i], i) : values[i]
124
- if (mappedVal == null) {
125
- // add the param type (string) to the writer
126
- writer.addInt16(ParamType.STRING)
127
- // write -1 to the param writer to indicate null
128
- paramWriter.addInt32(-1)
129
- } else if (mappedVal instanceof Buffer) {
130
- // add the param type (binary) to the writer
131
- writer.addInt16(ParamType.BINARY)
132
- // add the buffer to the param writer
133
- paramWriter.addInt32(mappedVal.length)
134
- paramWriter.add(mappedVal)
135
- } else {
136
- // add the param type (string) to the writer
137
- writer.addInt16(ParamType.STRING)
138
- paramWriter.addInt32(Buffer.byteLength(mappedVal))
139
- paramWriter.addString(mappedVal)
140
- }
141
- }
142
- }
143
-
144
- const bind = (config: BindOpts = {}): Buffer => {
145
- // normalize config
146
- const portal = config.portal || ''
147
- const statement = config.statement || ''
148
- const binary = config.binary || false
149
- const values = config.values || emptyArray
150
- const len = values.length
151
-
152
- writer.addCString(portal).addCString(statement)
153
- writer.addInt16(len)
154
-
155
- writeValues(values, config.valueMapper)
156
-
157
- writer.addInt16(len)
158
- writer.add(paramWriter.flush())
159
-
160
- // all results use the same format code
161
- writer.addInt16(1)
162
- // format code
163
- writer.addInt16(binary ? ParamType.BINARY : ParamType.STRING)
164
- return writer.flush(code.bind)
165
- }
166
-
167
- type ExecOpts = {
168
- portal?: string
169
- rows?: number
170
- }
171
-
172
- const emptyExecute = Buffer.from([code.execute, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00])
173
-
174
- const execute = (config?: ExecOpts): Buffer => {
175
- // this is the happy path for most queries
176
- if (!config || (!config.portal && !config.rows)) {
177
- return emptyExecute
178
- }
179
-
180
- const portal = config.portal || ''
181
- const rows = config.rows || 0
182
-
183
- const portalLength = Buffer.byteLength(portal)
184
- const len = 4 + portalLength + 1 + 4
185
- // one extra bit for code
186
- const buff = Buffer.allocUnsafe(1 + len)
187
- buff[0] = code.execute
188
- buff.writeInt32BE(len, 1)
189
- buff.write(portal, 5, 'utf-8')
190
- buff[portalLength + 5] = 0 // null terminate portal cString
191
- buff.writeUInt32BE(rows, buff.length - 4)
192
- return buff
193
- }
194
-
195
- const cancel = (processID: number, secretKey: number): Buffer => {
196
- const buffer = Buffer.allocUnsafe(16)
197
- buffer.writeInt32BE(16, 0)
198
- buffer.writeInt16BE(1234, 4)
199
- buffer.writeInt16BE(5678, 6)
200
- buffer.writeInt32BE(processID, 8)
201
- buffer.writeInt32BE(secretKey, 12)
202
- return buffer
203
- }
204
-
205
- type PortalOpts = {
206
- type: 'S' | 'P'
207
- name?: string
208
- }
209
-
210
- const cstringMessage = (code: code, string: string): Buffer => {
211
- const stringLen = Buffer.byteLength(string)
212
- const len = 4 + stringLen + 1
213
- // one extra bit for code
214
- const buffer = Buffer.allocUnsafe(1 + len)
215
- buffer[0] = code
216
- buffer.writeInt32BE(len, 1)
217
- buffer.write(string, 5, 'utf-8')
218
- buffer[len] = 0 // null terminate cString
219
- return buffer
220
- }
221
-
222
- const emptyDescribePortal = writer.addCString('P').flush(code.describe)
223
- const emptyDescribeStatement = writer.addCString('S').flush(code.describe)
224
-
225
- const describe = (msg: PortalOpts): Buffer => {
226
- return msg.name
227
- ? cstringMessage(code.describe, `${msg.type}${msg.name || ''}`)
228
- : msg.type === 'P'
229
- ? emptyDescribePortal
230
- : emptyDescribeStatement
231
- }
232
-
233
- const close = (msg: PortalOpts): Buffer => {
234
- const text = `${msg.type}${msg.name || ''}`
235
- return cstringMessage(code.close, text)
236
- }
237
-
238
- const copyData = (chunk: Buffer): Buffer => {
239
- return writer.add(chunk).flush(code.copyFromChunk)
240
- }
241
-
242
- const copyFail = (message: string): Buffer => {
243
- return cstringMessage(code.copyFail, message)
244
- }
245
-
246
- const codeOnlyBuffer = (code: code): Buffer => Buffer.from([code, 0x00, 0x00, 0x00, 0x04])
247
-
248
- const flushBuffer = codeOnlyBuffer(code.flush)
249
- const syncBuffer = codeOnlyBuffer(code.sync)
250
- const endBuffer = codeOnlyBuffer(code.end)
251
- const copyDoneBuffer = codeOnlyBuffer(code.copyDone)
252
-
253
- const serialize = {
254
- startup,
255
- password,
256
- requestSsl,
257
- sendSASLInitialResponseMessage,
258
- sendSCRAMClientFinalMessage,
259
- query,
260
- parse,
261
- bind,
262
- execute,
263
- describe,
264
- close,
265
- flush: () => flushBuffer,
266
- sync: () => syncBuffer,
267
- end: () => endBuffer,
268
- copyData,
269
- copyDone: () => copyDoneBuffer,
270
- copyFail,
271
- cancel,
272
- }
273
-
274
- export { serialize }