decocms 2.178.0 → 2.178.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.
- package/dist/client/assets/{AlertCircle-DOAxiEBN.js → AlertCircle-12chRuly.js} +1 -1
- package/dist/client/assets/{AlignLeft-CRMPlioa.js → AlignLeft-_LT9deOt.js} +1 -1
- package/dist/client/assets/{ArrowDown-xJyK-tRR.js → ArrowDown-7rbX3zqZ.js} +1 -1
- package/dist/client/assets/{ArrowLeft-B-tpcvF0.js → ArrowLeft-erI8s3G2.js} +1 -1
- package/dist/client/assets/{ArrowUp-BO7WH9Uq.js → ArrowUp-DoIG5eQh.js} +1 -1
- package/dist/client/assets/{Building02-D30T2TCD.js → Building02-Dr7IyBdv.js} +1 -1
- package/dist/client/assets/{Check-BTP9VTUM.js → Check-DW8AVFkq.js} +1 -1
- package/dist/client/assets/{CheckCircle-DoZ7ERyW.js → CheckCircle-hBpanOsI.js} +1 -1
- package/dist/client/assets/{CheckSquare-Dbh9CJyx.js → CheckSquare-Cr3IzSXp.js} +1 -1
- package/dist/client/assets/{CheckVerified02-CyloHbYs.js → CheckVerified02-r17ymUCs.js} +1 -1
- package/dist/client/assets/{ChevronDown-CLapIRmf.js → ChevronDown-BIRGQoZ5.js} +1 -1
- package/dist/client/assets/{ChevronLeft-CMUbV0KP.js → ChevronLeft-D-e7F7Gj.js} +1 -1
- package/dist/client/assets/{ChevronRight-DWZgTrde.js → ChevronRight-DsjLlugM.js} +1 -1
- package/dist/client/assets/{ChevronUp-DGOtRvEF.js → ChevronUp-Bi3NMXzv.js} +1 -1
- package/dist/client/assets/{Clock-BYjyd9hX.js → Clock-D4xJnA3P.js} +1 -1
- package/dist/client/assets/{Code01-BkNgeom6.js → Code01-YGq5QwlZ.js} +1 -1
- package/dist/client/assets/{Container-D7IaxBn4.js → Container-DHyMOW_p.js} +1 -1
- package/dist/client/assets/{Copy01-BJ5f3Ft8.js → Copy01-DkcjIGiS.js} +1 -1
- package/dist/client/assets/{Dataflow03-DE7FXw07.js → Dataflow03-CD3eo8oO.js} +1 -1
- package/dist/client/assets/{DotsHorizontal-BFhhKBhk.js → DotsHorizontal-CjYGc80C.js} +1 -1
- package/dist/client/assets/{DotsVertical-CmyZ1eER.js → DotsVertical-2nyye7GD.js} +1 -1
- package/dist/client/assets/{Download01-C0zy7iAO.js → Download01-BvtNZalG.js} +1 -1
- package/dist/client/assets/{Edit01-BsJ32les.js → Edit01-CoeKfJ-u.js} +1 -1
- package/dist/client/assets/{Edit05-BD2d2k-5.js → Edit05-CbbEzOoe.js} +1 -1
- package/dist/client/assets/{Eye-B3PAdhmZ.js → Eye-hBqNQHpc.js} +1 -1
- package/dist/client/assets/{EyeOff-_G9JY6d-.js → EyeOff-CJoTkAtN.js} +1 -1
- package/dist/client/assets/{File02-CAND2NHE.js → File02-D19u2hUl.js} +1 -1
- package/dist/client/assets/{File06-Bvs2lp94.js → File06-Bp4ioOvR.js} +1 -1
- package/dist/client/assets/{FilterLines-D-lo1vJH.js → FilterLines-Dvk7BhWf.js} +1 -1
- package/dist/client/assets/{Globe01-jlGiKRJ-.js → Globe01-B8Ib7knn.js} +1 -1
- package/dist/client/assets/{Globe02-DpkPR1qQ.js → Globe02-wRhoc1N5.js} +1 -1
- package/dist/client/assets/{Grid01-Bootsry8.js → Grid01-C5e9ReQ4.js} +1 -1
- package/dist/client/assets/{Home02-Cn5GN0Zh.js → Home02-JZJR9jmQ.js} +1 -1
- package/dist/client/assets/{Image01-BGiNuXLR.js → Image01-DjoSkYp_.js} +1 -1
- package/dist/client/assets/{Inbox01-QN0h6e9y.js → Inbox01-ClVaT7W5.js} +1 -1
- package/dist/client/assets/{InfoCircle-BlKvj0NG.js → InfoCircle-DzyfpQes.js} +1 -1
- package/dist/client/assets/{Key01-p6odXPoE.js → Key01-qNySmY39.js} +1 -1
- package/dist/client/assets/{LayersTwo01-Dj6OMOTN.js → LayersTwo01-dfSlQT0y.js} +1 -1
- package/dist/client/assets/{LayoutLeft-Bl9wlb-l.js → LayoutLeft-B2KZfn2n.js} +1 -1
- package/dist/client/assets/{Link01-GDNtvq6w.js → Link01-Cz_ZRKoB.js} +1 -1
- package/dist/client/assets/{LinkExternal01-Cmp1Jq7T.js → LinkExternal01-CKvCiQnV.js} +1 -1
- package/dist/client/assets/{List-BFzJ8d3-.js → List-NLa0AhO4.js} +1 -1
- package/dist/client/assets/{Loading01-Bgt2pWQu.js → Loading01-Bb8FCosd.js} +1 -1
- package/dist/client/assets/{Lock01-CrtAKCVY.js → Lock01-CnZITIks.js} +1 -1
- package/dist/client/assets/{Play-C6mSLsW0.js → Play-Bw5lQw7j.js} +1 -1
- package/dist/client/assets/{Plus-Bah3bfIq.js → Plus-CajZ9VfC.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-D6TQ-sWU.js → RefreshCcw01-B_NTitRE.js} +1 -1
- package/dist/client/assets/{Save01-DMdPXvfp.js → Save01-8oEsqMkJ.js} +1 -1
- package/dist/client/assets/{SearchMd-CbNARIB_.js → SearchMd-eZWeU0sP.js} +1 -1
- package/dist/client/assets/{Settings01-ncSo0UF1.js → Settings01-ClPVpLPy.js} +1 -1
- package/dist/client/assets/{Shield01-jjVa8gNb.js → Shield01-N4ace-oo.js} +1 -1
- package/dist/client/assets/{Terminal-BkHJq74m.js → Terminal-CGwuP-_5.js} +1 -1
- package/dist/client/assets/{Tool01-CCSFIqz9.js → Tool01-D1m8i7Ez.js} +1 -1
- package/dist/client/assets/{Trash01-DJLT0hlL.js → Trash01-B_4PTwjI.js} +1 -1
- package/dist/client/assets/{Upload01-CrylBwgE.js → Upload01-CLIOr3Tj.js} +1 -1
- package/dist/client/assets/{Users03-ClHTtWuU.js → Users03-Bv-hUQkl.js} +1 -1
- package/dist/client/assets/{X-Dr3IGE6q.js → X-LzehymHS.js} +1 -1
- package/dist/client/assets/{XClose-CM_PUH0D.js → XClose-CcNXqPQc.js} +1 -1
- package/dist/client/assets/{Zap-DNAzZ691.js → Zap-BFN1DqIC.js} +1 -1
- package/dist/client/assets/{agent-connections-preview-D9yVR2mI.js → agent-connections-preview-3pYXfstj.js} +1 -1
- package/dist/client/assets/{agent-detail-D9yhjqjE.js → agent-detail-DMK-u3yi.js} +1 -1
- package/dist/client/assets/{agents-UYgbyoc-.js → agents-Wfe5dNfh.js} +1 -1
- package/dist/client/assets/{ai-providers-logos-CKXeyPmY.js → ai-providers-logos-CCp39UCk.js} +1 -1
- package/dist/client/assets/{alert-dialog-CGRFjIvo.js → alert-dialog-B_ae3oRt.js} +1 -1
- package/dist/client/assets/{auth-catchall-DJtyBhDQ.js → auth-catchall-DAx9m28t.js} +1 -1
- package/dist/client/assets/{automation-detail-Da-KIL0v.js → automation-detail-DfFkGT_5.js} +1 -1
- package/dist/client/assets/{automations-BBeFyOp2.js → automations-A8NOzTSS.js} +1 -1
- package/dist/client/assets/{avatar-B6y4oqG6.js → avatar-B2yArl-q.js} +1 -1
- package/dist/client/assets/{badge-BWsagPlP.js → badge-DtRom7JO.js} +1 -1
- package/dist/client/assets/{binder-BfA1Jrrc.js → binder-D4cqx_Kx.js} +1 -1
- package/dist/client/assets/{breadcrumb-D8mb9kpq.js → breadcrumb-C2RG4nAQ.js} +1 -1
- package/dist/client/assets/{card-C0MItTW_.js → card-B8qDZGCZ.js} +1 -1
- package/dist/client/assets/{checkbox-DUU3Nuea.js → checkbox-B1rexahu.js} +1 -1
- package/dist/client/assets/{collapsible-CtLdTa6t.js → collapsible-BtjeaBAE.js} +1 -1
- package/dist/client/assets/{collection-detail-DPIki4up.js → collection-detail-BaBGI9i2.js} +1 -1
- package/dist/client/assets/{collection-display-button-DdFInvSR.js → collection-display-button-CpVZ4wHm.js} +1 -1
- package/dist/client/assets/{collection-search-CGfzh4mC.js → collection-search-BYV7N3mr.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-DLe2aR6i.js → collection-table-wrapper-CHFJQd21.js} +1 -1
- package/dist/client/assets/{collection-tabs-DAHXpc2n.js → collection-tabs-CJEa3dRy.js} +1 -1
- package/dist/client/assets/{command-C4HnUxgr.js → command-Drksh_DO.js} +1 -1
- package/dist/client/assets/{connection-card-DRd8H1I5.js → connection-card-Bak2l1_M.js} +1 -1
- package/dist/client/assets/{connection-detail-MKWBWpRr.js → connection-detail-BKy2ZsS6.js} +1 -1
- package/dist/client/assets/{connections-CIQDC3QM.js → connections-Dxf4eIOE.js} +1 -1
- package/dist/client/assets/{constants-C6R-Odkq.js → constants-D7qXOYRn.js} +1 -1
- package/dist/client/assets/{context-BFTRA5vP.js → context-DxQMlFKC.js} +1 -1
- package/dist/client/assets/{create-organization-dialog-Bez2nZe0.js → create-organization-dialog-CNWB-72r.js} +1 -1
- package/dist/client/assets/{create-project-dialog-MCGuKGij.js → create-project-dialog-BeIY4Oy9.js} +1 -1
- package/dist/client/assets/{danger-D1zng7LS.js → danger-YWbxrjNq.js} +1 -1
- package/dist/client/assets/{danger-zone-DbcRzYYG.js → danger-zone-DGg0ZzSy.js} +1 -1
- package/dist/client/assets/{dependencies-B8EkZe-H.js → dependencies-DtAVTWu-.js} +1 -1
- package/dist/client/assets/{dialog-Bw5T2ogY.js → dialog-ChXYvlDt.js} +1 -1
- package/dist/client/assets/{dropdown-menu-Dan8nMb8.js → dropdown-menu-BxlQMXgW.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-BDxV3RAS.js → dynamic-plugin-layout-JpZTv0Ay.js} +1 -1
- package/dist/client/assets/{editable-task-title-wfBXYVIh.js → editable-task-title-Cm-uIwFs.js} +1 -1
- package/dist/client/assets/{empty-state-CoA3_x_6.js → empty-state-qLM_bVsv.js} +1 -1
- package/dist/client/assets/{empty-state-C1iyyf7G.js → empty-state-xIvMMy-_.js} +1 -1
- package/dist/client/assets/{env-vars-editor-CxyeKMFS.js → env-vars-editor-Yss1wn0m.js} +1 -1
- package/dist/client/assets/{extract-connection-data-C8ZedtM3.js → extract-connection-data-48N591A_.js} +1 -1
- package/dist/client/assets/{file-browser-CShFs9BG.js → file-browser-BbqpPFZK.js} +2 -2
- package/dist/client/assets/{form-B1LLlQBa.js → form-CaFPTMVC.js} +1 -1
- package/dist/client/assets/{general-Dnfj_B7U.js → general-DI9irVIQ.js} +1 -1
- package/dist/client/assets/{generate-id-WpAuYSZF.js → generate-id-BiV6m8fS.js} +1 -1
- package/dist/client/assets/{grid-view-PzYdekcz.js → grid-view-DurgUMuo.js} +1 -1
- package/dist/client/assets/{home-CKa-gWjN.js → home-CspK560n.js} +1 -1
- package/dist/client/assets/{index-lUO5B2Do.js → index-ChUIqRBi.js} +1 -1
- package/dist/client/assets/{index-D-AXXJqO.js → index-CqWJIMlG.js} +1 -1
- package/dist/client/assets/{index-CgSAwZ8g.js → index-CqtWW-Tq.js} +1 -1
- package/dist/client/assets/{index-DtZLm-Fz.js → index-CqyqI90F.js} +1 -1
- package/dist/client/assets/{index-BaVHKLOw.js → index-De1iYnQy.js} +1 -1
- package/dist/client/assets/{index-De7oAufQ.js → index-NjMxPJgF.js} +3 -3
- package/dist/client/assets/{index-BkxamE0W.js → index-TV8hw8s3.js} +1 -1
- package/dist/client/assets/{index-CVayrapI.js → index-YL7q5tyF.js} +1 -1
- package/dist/client/assets/{index-BFJo8BQ3.js → index-YRudAQp7.js} +1 -1
- package/dist/client/assets/{index-J5pIXVfD.js → index-yiVP4brl.js} +1 -1
- package/dist/client/assets/{index-OdE2HBl6.js → index-zWpUeKAz.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-C7xXp1jr.js → infiniteQueryObserver-JZ0YxCW-.js} +1 -1
- package/dist/client/assets/{input-_VKm0O_1.js → input-B89sozd8.js} +1 -1
- package/dist/client/assets/{integration-icon-BkY1vh6I.js → integration-icon-BPVDVJvP.js} +1 -1
- package/dist/client/assets/{label-BhDDQ3-n.js → label-DkiEYJcU.js} +1 -1
- package/dist/client/assets/{layout-BIFV7MZL.js → layout-Cqn-h1Jz.js} +1 -1
- package/dist/client/assets/{layout-CZKgiZuG.js → layout-DcmGLVHZ.js} +1 -1
- package/dist/client/assets/{login-uo65TNIo.js → login-qT_ItpIx.js} +1 -1
- package/dist/client/assets/{logo-upload-CXS8-AgL.js → logo-upload-CoGaedUC.js} +1 -1
- package/dist/client/assets/{mcp-app-renderer-BcsrfZJp.js → mcp-app-renderer-By1mQEU9.js} +1 -1
- package/dist/client/assets/{mcp-server-card-Bp6C5W6n.js → mcp-server-card-B3Nrrgyk.js} +1 -1
- package/dist/client/assets/{mcp-server-detail-Ctbkl5jL.js → mcp-server-detail-DMfy0V9h.js} +2 -2
- package/dist/client/assets/{members-DCfL7gNX.js → members-Q81LXZu1.js} +1 -1
- package/dist/client/assets/{monaco-editor-DPC7_J-G.js → monaco-editor-ZB27PMAe.js} +1 -1
- package/dist/client/assets/{monitoring-ByXLzXVV.js → monitoring-C31A03PZ.js} +1 -1
- package/dist/client/assets/{monitoring-dashboard-edit-YR1gT6FF.js → monitoring-dashboard-edit-Dfi8Jxeb.js} +1 -1
- package/dist/client/assets/{monitoring-dashboard-view-BbtnIBfa.js → monitoring-dashboard-view-CxjxBHLW.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-Df9ANyzv.js → monitoring-stats-row-CAn-8pVZ.js} +1 -1
- package/dist/client/assets/{oauth-callback-DAQSPrcu.js → oauth-callback-B8DRnSok.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BM5LYNPq.js → oauth-callback-ai-provider-CsTCxPAY.js} +1 -1
- package/dist/client/assets/{org-ai-providers-6KYO-veN.js → org-ai-providers-DaYyItUL.js} +1 -1
- package/dist/client/assets/{page-JhhtSWZh.js → page-BjLk0DX_.js} +1 -1
- package/dist/client/assets/{page-30eMAMiN.js → page-C2I5Nlmu.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-Cl2I2geD.js → plugin-empty-state-K02oXRNN.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-R2BzERoW.js → plugin-empty-state-l30u7dec.js} +1 -1
- package/dist/client/assets/{plugin-header-Bakz3z0e.js → plugin-header-B_wkRb4Y.js} +1 -1
- package/dist/client/assets/{plugin-header-aEsNVQjp.js → plugin-header-CE-BhILm.js} +1 -1
- package/dist/client/assets/plugins-6p4XZdw1.js +1 -0
- package/dist/client/assets/{popover-D_qGIJiq.js → popover-Br8QkMK3.js} +1 -1
- package/dist/client/assets/{project-app-view-BFgEphLV.js → project-app-view-CRe7LVZk.js} +1 -1
- package/dist/client/assets/{project-layout-C8oyOOGc.js → project-layout-Bg1hlIaM.js} +1 -1
- package/dist/client/assets/{project-plugins-BVt_WzcU.js → project-plugins-BHOZZsH7.js} +1 -1
- package/dist/client/assets/{projects-list-C02pKlJj.js → projects-list-i4ZvUqtI.js} +1 -1
- package/dist/client/assets/{registry-layout-C-yQnDXG.js → registry-layout-DQV7LhSo.js} +1 -1
- package/dist/client/assets/{registry-utils-Dqc_kCiP.js → registry-utils-cjX9P5J9.js} +1 -1
- package/dist/client/assets/{reset-password-Cqvt_aDI.js → reset-password-Cgcrl5ZG.js} +1 -1
- package/dist/client/assets/{resizable-CO0Uh73H.js → resizable-Nu1SqaJD.js} +1 -1
- package/dist/client/assets/{save-actions-ju1vjafj.js → save-actions-CVl6VtT2.js} +1 -1
- package/dist/client/assets/{scroll-area-DL2xzsPP.js → scroll-area-BTJQ86Ry.js} +1 -1
- package/dist/client/assets/{select-B4liIMVc.js → select-Dx3T3-4n.js} +1 -1
- package/dist/client/assets/{select-virtual-mcp-CuflMlTt.js → select-virtual-mcp-BS537pmy.js} +1 -1
- package/dist/client/assets/{sheet-Cjr3EcYH.js → sheet-C3HM0Uwr.js} +1 -1
- package/dist/client/assets/{shell-layout-DfTROeX_.js → shell-layout-Bco0BFOl.js} +2 -2
- package/dist/client/assets/{sidebar-settings-BljNzJVO.js → sidebar-settings-JhN4X_jg.js} +1 -1
- package/dist/client/assets/{skeleton-Bt7MRTvB.js → skeleton-Cjm8s7CT.js} +1 -1
- package/dist/client/assets/{spinner-Cse1gKnw.js → spinner-Dzx7B3Jl.js} +1 -1
- package/dist/client/assets/{store-invite-D8XeTZbu.js → store-invite-BPcFU0aw.js} +1 -1
- package/dist/client/assets/{switch-DHS6rwq-.js → switch-CA_oYDia.js} +1 -1
- package/dist/client/assets/{table-BPkNFl3F.js → table-C-1rP_rt.js} +1 -1
- package/dist/client/assets/{tabs-D9xzXdQn.js → tabs-BSOe8gLq.js} +1 -1
- package/dist/client/assets/{task-status-DPcRgg7n.js → task-status-DYx9R7EL.js} +24 -24
- package/dist/client/assets/tasks-D1X8oLa3.js +1 -0
- package/dist/client/assets/{tasks-panel-i3VUreUx.js → tasks-panel-BJ3TfA-_.js} +1 -1
- package/dist/client/assets/{textarea-C_pKpP9s.js → textarea-DIJzFUWn.js} +1 -1
- package/dist/client/assets/{time-range-picker-BuykPBni.js → time-range-picker-CGBh-D6p.js} +1 -1
- package/dist/client/assets/{toggle-group-VpRSF_Gl.js → toggle-group-DlZGDyPQ.js} +1 -1
- package/dist/client/assets/{tools-list-DDFWIxxm.js → tools-list-D-T64862.js} +1 -1
- package/dist/client/assets/{tooltip-C4rlkzSj.js → tooltip-BJMSu0c2.js} +1 -1
- package/dist/client/assets/{topbar-portal-CF1YRovU.js → topbar-portal-ChPXVsi1.js} +1 -1
- package/dist/client/assets/{types-DQbIwrMI.js → types-BHeMLyAV.js} +1 -1
- package/dist/client/assets/{use-automations-C1HgdvUZ.js → use-automations-Bmw3x7Dk.js} +1 -1
- package/dist/client/assets/{use-collections-CN-KZdhF.js → use-collections-C0cYiFfV.js} +1 -1
- package/dist/client/assets/{use-connection-C4RNTGYe.js → use-connection-CHFdKnsr.js} +1 -1
- package/dist/client/assets/{use-copy-Cyun7kVE.js → use-copy-xhdji_Bl.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-4JnIm_fY.js → use-create-virtual-mcp-B7odZ_c3.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-B1b4xMpn.js → use-infinite-scroll-CPhZNIw7.js} +1 -1
- package/dist/client/assets/{use-install-from-registry-CytyaLQX.js → use-install-from-registry-BzwuBLOx.js} +1 -1
- package/dist/client/assets/{use-list-state-CCkxYz8q.js → use-list-state-CbsN6RbJ.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-BGZnglwN.js → use-mcp-prompts-Bel4H4rh.js} +1 -1
- package/dist/client/assets/{use-mcp-resources-DSKOWSEO.js → use-mcp-resources-qGdymfRz.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-C2aTDAuJ.js → use-mcp-tools-BCZI_Wqc.js} +1 -1
- package/dist/client/assets/{use-members-DjL_-1xN.js → use-members-B4ncWtMV.js} +1 -1
- package/dist/client/assets/{use-mobile-CMHMyYVi.js → use-mobile-DOUfTohp.js} +1 -1
- package/dist/client/assets/{use-project-DxPDjIre.js → use-project-b5C3lq5-.js} +1 -1
- package/dist/client/assets/{use-store-discovery-BBXrVOcG.js → use-store-discovery-B402mTHd.js} +1 -1
- package/dist/client/assets/{use-view-mode-CXln2RGt.js → use-view-mode-ss3eRodO.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-AdVimCkX.js → use-virtual-mcp-BP6aaUzw.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-BXDrDvlH.js +1 -0
- package/dist/client/assets/{useMutation-BDzOMrvq.js → useMutation-68NxhXCf.js} +1 -1
- package/dist/client/assets/useQuery-BYBCFxgb.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-X3jXt04i.js +1 -0
- package/dist/client/assets/{user-DSh4pFej.js → user-iDZRuimU.js} +1 -1
- package/dist/client/assets/{workflow-mIahQD3R.js → workflow-CrrTPehP.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +2 -2
- package/dist/server/migrate.js +1 -1
- package/dist/server/node_modules/pg-cloudflare/README.md +112 -0
- package/dist/server/node_modules/pg-cloudflare/dist/empty.d.ts +2 -0
- package/dist/server/node_modules/pg-cloudflare/dist/empty.js +6 -0
- package/dist/server/node_modules/pg-cloudflare/dist/empty.js.map +1 -0
- package/dist/server/node_modules/pg-cloudflare/dist/index.d.ts +31 -0
- package/dist/server/node_modules/pg-cloudflare/dist/index.js +152 -0
- package/dist/server/node_modules/pg-cloudflare/dist/index.js.map +1 -0
- package/dist/server/node_modules/pg-cloudflare/esm/index.mjs +3 -0
- package/dist/server/node_modules/pg-cloudflare/package.json +39 -0
- package/dist/server/node_modules/pg-cloudflare/src/empty.ts +3 -0
- package/dist/server/node_modules/pg-cloudflare/src/index.ts +166 -0
- package/dist/server/node_modules/pg-cloudflare/src/types.d.ts +25 -0
- package/dist/server/node_modules/pg-connection-string/LICENSE +21 -0
- package/dist/server/node_modules/pg-connection-string/README.md +105 -0
- package/dist/server/node_modules/pg-connection-string/esm/index.mjs +8 -0
- package/dist/server/node_modules/pg-connection-string/index.d.ts +36 -0
- package/dist/server/node_modules/pg-connection-string/index.js +231 -0
- package/dist/server/node_modules/pg-connection-string/package.json +52 -0
- package/dist/server/node_modules/pg-int8/LICENSE +13 -0
- package/dist/server/node_modules/pg-int8/README.md +16 -0
- package/dist/server/node_modules/pg-int8/index.js +100 -0
- package/dist/server/node_modules/pg-int8/package.json +24 -0
- package/dist/server/node_modules/pg-pool/LICENSE +21 -0
- package/dist/server/node_modules/pg-pool/README.md +357 -0
- package/dist/server/node_modules/pg-pool/esm/index.mjs +5 -0
- package/dist/server/node_modules/pg-pool/index.js +517 -0
- package/dist/server/node_modules/pg-pool/package.json +51 -0
- package/dist/server/node_modules/pg-protocol/LICENSE +21 -0
- package/dist/server/node_modules/pg-protocol/README.md +3 -0
- package/dist/server/node_modules/pg-protocol/dist/b.d.ts +1 -0
- package/dist/server/node_modules/pg-protocol/dist/b.js +23 -0
- package/dist/server/node_modules/pg-protocol/dist/b.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/buffer-reader.d.ts +15 -0
- package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js +55 -0
- package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/buffer-writer.d.ts +16 -0
- package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js +81 -0
- package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.d.ts +1 -0
- package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js +530 -0
- package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/index.d.ts +6 -0
- package/dist/server/node_modules/pg-protocol/dist/index.js +15 -0
- package/dist/server/node_modules/pg-protocol/dist/index.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/messages.d.ts +162 -0
- package/dist/server/node_modules/pg-protocol/dist/messages.js +160 -0
- package/dist/server/node_modules/pg-protocol/dist/messages.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.d.ts +1 -0
- package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js +252 -0
- package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/parser.d.ts +24 -0
- package/dist/server/node_modules/pg-protocol/dist/parser.js +324 -0
- package/dist/server/node_modules/pg-protocol/dist/parser.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/dist/serializer.d.ts +42 -0
- package/dist/server/node_modules/pg-protocol/dist/serializer.js +189 -0
- package/dist/server/node_modules/pg-protocol/dist/serializer.js.map +1 -0
- package/dist/server/node_modules/pg-protocol/esm/index.js +11 -0
- package/dist/server/node_modules/pg-protocol/package.json +45 -0
- package/dist/server/node_modules/pg-protocol/src/b.ts +25 -0
- package/dist/server/node_modules/pg-protocol/src/buffer-reader.ts +58 -0
- package/dist/server/node_modules/pg-protocol/src/buffer-writer.ts +85 -0
- package/dist/server/node_modules/pg-protocol/src/inbound-parser.test.ts +575 -0
- package/dist/server/node_modules/pg-protocol/src/index.ts +11 -0
- package/dist/server/node_modules/pg-protocol/src/messages.ts +262 -0
- package/dist/server/node_modules/pg-protocol/src/outbound-serializer.test.ts +276 -0
- package/dist/server/node_modules/pg-protocol/src/parser.ts +413 -0
- package/dist/server/node_modules/pg-protocol/src/serializer.ts +274 -0
- package/dist/server/node_modules/pg-protocol/src/testing/buffer-list.ts +67 -0
- package/dist/server/node_modules/pg-protocol/src/testing/test-buffers.ts +166 -0
- package/dist/server/node_modules/pg-protocol/src/types/chunky.d.ts +1 -0
- package/dist/server/node_modules/pg-types/.travis.yml +7 -0
- package/dist/server/node_modules/pg-types/Makefile +14 -0
- package/dist/server/node_modules/pg-types/README.md +75 -0
- package/dist/server/node_modules/pg-types/index.d.ts +137 -0
- package/dist/server/node_modules/pg-types/index.js +47 -0
- package/dist/server/node_modules/pg-types/index.test-d.ts +21 -0
- package/dist/server/node_modules/pg-types/lib/arrayParser.js +11 -0
- package/dist/server/node_modules/pg-types/lib/binaryParsers.js +257 -0
- package/dist/server/node_modules/pg-types/lib/builtins.js +73 -0
- package/dist/server/node_modules/pg-types/lib/textParsers.js +215 -0
- package/dist/server/node_modules/pg-types/package.json +42 -0
- package/dist/server/node_modules/pg-types/test/index.js +24 -0
- package/dist/server/node_modules/pg-types/test/types.js +597 -0
- package/dist/server/node_modules/pgpass/README.md +74 -0
- package/dist/server/node_modules/pgpass/lib/helper.js +233 -0
- package/dist/server/node_modules/pgpass/lib/index.js +23 -0
- package/dist/server/node_modules/pgpass/package.json +41 -0
- package/dist/server/node_modules/postgres-array/index.d.ts +4 -0
- package/dist/server/node_modules/postgres-array/index.js +97 -0
- package/dist/server/node_modules/postgres-array/license +21 -0
- package/dist/server/node_modules/postgres-array/package.json +35 -0
- package/dist/server/node_modules/postgres-array/readme.md +43 -0
- package/dist/server/node_modules/postgres-bytea/index.js +33 -0
- package/dist/server/node_modules/postgres-bytea/license +21 -0
- package/dist/server/node_modules/postgres-bytea/package.json +34 -0
- package/dist/server/node_modules/postgres-bytea/readme.md +34 -0
- package/dist/server/node_modules/postgres-date/index.js +116 -0
- package/dist/server/node_modules/postgres-date/license +21 -0
- package/dist/server/node_modules/postgres-date/package.json +33 -0
- package/dist/server/node_modules/postgres-date/readme.md +49 -0
- package/dist/server/node_modules/postgres-interval/index.d.ts +20 -0
- package/dist/server/node_modules/postgres-interval/index.js +125 -0
- package/dist/server/node_modules/postgres-interval/license +21 -0
- package/dist/server/node_modules/postgres-interval/package.json +36 -0
- package/dist/server/node_modules/postgres-interval/readme.md +48 -0
- package/dist/server/node_modules/split2/LICENSE +13 -0
- package/dist/server/node_modules/split2/README.md +85 -0
- package/dist/server/node_modules/split2/bench.js +27 -0
- package/dist/server/node_modules/split2/index.js +141 -0
- package/dist/server/node_modules/split2/package.json +39 -0
- package/dist/server/node_modules/split2/test.js +409 -0
- package/dist/server/server.js +2 -2
- package/package.json +1 -1
- package/dist/client/assets/plugins-CJOgdAgY.js +0 -1
- package/dist/client/assets/tasks-CAcIEtSF.js +0 -1
- package/dist/client/assets/useInfiniteQuery-Dw4aF3nd.js +0 -1
- package/dist/client/assets/useQuery-CTePvczf.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-All2JJwt.js +0 -1
- package/dist/server/node_modules/pg/README.md +0 -95
- package/dist/server/node_modules/pg/esm/index.mjs +0 -20
- package/dist/server/node_modules/pg/lib/client.js +0 -743
- package/dist/server/node_modules/pg/lib/connection-parameters.js +0 -171
- package/dist/server/node_modules/pg/lib/connection.js +0 -221
- package/dist/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
- package/dist/server/node_modules/pg/lib/crypto/sasl.js +0 -212
- package/dist/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
- package/dist/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
- package/dist/server/node_modules/pg/lib/crypto/utils.js +0 -9
- package/dist/server/node_modules/pg/lib/defaults.js +0 -91
- package/dist/server/node_modules/pg/lib/index.js +0 -73
- package/dist/server/node_modules/pg/lib/native/client.js +0 -323
- package/dist/server/node_modules/pg/lib/native/index.js +0 -2
- package/dist/server/node_modules/pg/lib/native/query.js +0 -165
- package/dist/server/node_modules/pg/lib/query.js +0 -252
- package/dist/server/node_modules/pg/lib/result.js +0 -109
- package/dist/server/node_modules/pg/lib/stream.js +0 -83
- package/dist/server/node_modules/pg/lib/type-overrides.js +0 -35
- package/dist/server/node_modules/pg/lib/utils.js +0 -217
- package/dist/server/node_modules/pg/package.json +0 -76
- /package/dist/server/node_modules/{pg → pg-cloudflare}/LICENSE +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DatabaseError } from './messages'
|
|
2
|
+
import { serialize } from './serializer'
|
|
3
|
+
import { Parser, MessageCallback } from './parser'
|
|
4
|
+
|
|
5
|
+
export function parse(stream: NodeJS.ReadableStream, callback: MessageCallback): Promise<void> {
|
|
6
|
+
const parser = new Parser()
|
|
7
|
+
stream.on('data', (buffer: Buffer) => parser.parse(buffer, callback))
|
|
8
|
+
return new Promise((resolve) => stream.on('end', () => resolve()))
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { serialize, DatabaseError }
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
export type Mode = 'text' | 'binary'
|
|
2
|
+
|
|
3
|
+
export type MessageName =
|
|
4
|
+
| 'parseComplete'
|
|
5
|
+
| 'bindComplete'
|
|
6
|
+
| 'closeComplete'
|
|
7
|
+
| 'noData'
|
|
8
|
+
| 'portalSuspended'
|
|
9
|
+
| 'replicationStart'
|
|
10
|
+
| 'emptyQuery'
|
|
11
|
+
| 'copyDone'
|
|
12
|
+
| 'copyData'
|
|
13
|
+
| 'rowDescription'
|
|
14
|
+
| 'parameterDescription'
|
|
15
|
+
| 'parameterStatus'
|
|
16
|
+
| 'backendKeyData'
|
|
17
|
+
| 'notification'
|
|
18
|
+
| 'readyForQuery'
|
|
19
|
+
| 'commandComplete'
|
|
20
|
+
| 'dataRow'
|
|
21
|
+
| 'copyInResponse'
|
|
22
|
+
| 'copyOutResponse'
|
|
23
|
+
| 'authenticationOk'
|
|
24
|
+
| 'authenticationMD5Password'
|
|
25
|
+
| 'authenticationCleartextPassword'
|
|
26
|
+
| 'authenticationSASL'
|
|
27
|
+
| 'authenticationSASLContinue'
|
|
28
|
+
| 'authenticationSASLFinal'
|
|
29
|
+
| 'error'
|
|
30
|
+
| 'notice'
|
|
31
|
+
|
|
32
|
+
export interface BackendMessage {
|
|
33
|
+
name: MessageName
|
|
34
|
+
length: number
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export const parseComplete: BackendMessage = {
|
|
38
|
+
name: 'parseComplete',
|
|
39
|
+
length: 5,
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export const bindComplete: BackendMessage = {
|
|
43
|
+
name: 'bindComplete',
|
|
44
|
+
length: 5,
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export const closeComplete: BackendMessage = {
|
|
48
|
+
name: 'closeComplete',
|
|
49
|
+
length: 5,
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export const noData: BackendMessage = {
|
|
53
|
+
name: 'noData',
|
|
54
|
+
length: 5,
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export const portalSuspended: BackendMessage = {
|
|
58
|
+
name: 'portalSuspended',
|
|
59
|
+
length: 5,
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export const replicationStart: BackendMessage = {
|
|
63
|
+
name: 'replicationStart',
|
|
64
|
+
length: 4,
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export const emptyQuery: BackendMessage = {
|
|
68
|
+
name: 'emptyQuery',
|
|
69
|
+
length: 4,
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export const copyDone: BackendMessage = {
|
|
73
|
+
name: 'copyDone',
|
|
74
|
+
length: 4,
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
interface NoticeOrError {
|
|
78
|
+
message: string | undefined
|
|
79
|
+
severity: string | undefined
|
|
80
|
+
code: string | undefined
|
|
81
|
+
detail: string | undefined
|
|
82
|
+
hint: string | undefined
|
|
83
|
+
position: string | undefined
|
|
84
|
+
internalPosition: string | undefined
|
|
85
|
+
internalQuery: string | undefined
|
|
86
|
+
where: string | undefined
|
|
87
|
+
schema: string | undefined
|
|
88
|
+
table: string | undefined
|
|
89
|
+
column: string | undefined
|
|
90
|
+
dataType: string | undefined
|
|
91
|
+
constraint: string | undefined
|
|
92
|
+
file: string | undefined
|
|
93
|
+
line: string | undefined
|
|
94
|
+
routine: string | undefined
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export class DatabaseError extends Error implements NoticeOrError {
|
|
98
|
+
public severity: string | undefined
|
|
99
|
+
public code: string | undefined
|
|
100
|
+
public detail: string | undefined
|
|
101
|
+
public hint: string | undefined
|
|
102
|
+
public position: string | undefined
|
|
103
|
+
public internalPosition: string | undefined
|
|
104
|
+
public internalQuery: string | undefined
|
|
105
|
+
public where: string | undefined
|
|
106
|
+
public schema: string | undefined
|
|
107
|
+
public table: string | undefined
|
|
108
|
+
public column: string | undefined
|
|
109
|
+
public dataType: string | undefined
|
|
110
|
+
public constraint: string | undefined
|
|
111
|
+
public file: string | undefined
|
|
112
|
+
public line: string | undefined
|
|
113
|
+
public routine: string | undefined
|
|
114
|
+
constructor(
|
|
115
|
+
message: string,
|
|
116
|
+
public readonly length: number,
|
|
117
|
+
public readonly name: MessageName
|
|
118
|
+
) {
|
|
119
|
+
super(message)
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
export class CopyDataMessage {
|
|
124
|
+
public readonly name = 'copyData'
|
|
125
|
+
constructor(
|
|
126
|
+
public readonly length: number,
|
|
127
|
+
public readonly chunk: Buffer
|
|
128
|
+
) {}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export class CopyResponse {
|
|
132
|
+
public readonly columnTypes: number[]
|
|
133
|
+
constructor(
|
|
134
|
+
public readonly length: number,
|
|
135
|
+
public readonly name: MessageName,
|
|
136
|
+
public readonly binary: boolean,
|
|
137
|
+
columnCount: number
|
|
138
|
+
) {
|
|
139
|
+
this.columnTypes = new Array(columnCount)
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export class Field {
|
|
144
|
+
constructor(
|
|
145
|
+
public readonly name: string,
|
|
146
|
+
public readonly tableID: number,
|
|
147
|
+
public readonly columnID: number,
|
|
148
|
+
public readonly dataTypeID: number,
|
|
149
|
+
public readonly dataTypeSize: number,
|
|
150
|
+
public readonly dataTypeModifier: number,
|
|
151
|
+
public readonly format: Mode
|
|
152
|
+
) {}
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export class RowDescriptionMessage {
|
|
156
|
+
public readonly name: MessageName = 'rowDescription'
|
|
157
|
+
public readonly fields: Field[]
|
|
158
|
+
constructor(
|
|
159
|
+
public readonly length: number,
|
|
160
|
+
public readonly fieldCount: number
|
|
161
|
+
) {
|
|
162
|
+
this.fields = new Array(this.fieldCount)
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
export class ParameterDescriptionMessage {
|
|
167
|
+
public readonly name: MessageName = 'parameterDescription'
|
|
168
|
+
public readonly dataTypeIDs: number[]
|
|
169
|
+
constructor(
|
|
170
|
+
public readonly length: number,
|
|
171
|
+
public readonly parameterCount: number
|
|
172
|
+
) {
|
|
173
|
+
this.dataTypeIDs = new Array(this.parameterCount)
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
export class ParameterStatusMessage {
|
|
178
|
+
public readonly name: MessageName = 'parameterStatus'
|
|
179
|
+
constructor(
|
|
180
|
+
public readonly length: number,
|
|
181
|
+
public readonly parameterName: string,
|
|
182
|
+
public readonly parameterValue: string
|
|
183
|
+
) {}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export class AuthenticationMD5Password implements BackendMessage {
|
|
187
|
+
public readonly name: MessageName = 'authenticationMD5Password'
|
|
188
|
+
constructor(
|
|
189
|
+
public readonly length: number,
|
|
190
|
+
public readonly salt: Buffer
|
|
191
|
+
) {}
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
export class BackendKeyDataMessage {
|
|
195
|
+
public readonly name: MessageName = 'backendKeyData'
|
|
196
|
+
constructor(
|
|
197
|
+
public readonly length: number,
|
|
198
|
+
public readonly processID: number,
|
|
199
|
+
public readonly secretKey: number
|
|
200
|
+
) {}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
export class NotificationResponseMessage {
|
|
204
|
+
public readonly name: MessageName = 'notification'
|
|
205
|
+
constructor(
|
|
206
|
+
public readonly length: number,
|
|
207
|
+
public readonly processId: number,
|
|
208
|
+
public readonly channel: string,
|
|
209
|
+
public readonly payload: string
|
|
210
|
+
) {}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
export class ReadyForQueryMessage {
|
|
214
|
+
public readonly name: MessageName = 'readyForQuery'
|
|
215
|
+
constructor(
|
|
216
|
+
public readonly length: number,
|
|
217
|
+
public readonly status: string
|
|
218
|
+
) {}
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
export class CommandCompleteMessage {
|
|
222
|
+
public readonly name: MessageName = 'commandComplete'
|
|
223
|
+
constructor(
|
|
224
|
+
public readonly length: number,
|
|
225
|
+
public readonly text: string
|
|
226
|
+
) {}
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
export class DataRowMessage {
|
|
230
|
+
public readonly fieldCount: number
|
|
231
|
+
public readonly name: MessageName = 'dataRow'
|
|
232
|
+
constructor(
|
|
233
|
+
public length: number,
|
|
234
|
+
public fields: any[]
|
|
235
|
+
) {
|
|
236
|
+
this.fieldCount = fields.length
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
export class NoticeMessage implements BackendMessage, NoticeOrError {
|
|
241
|
+
constructor(
|
|
242
|
+
public readonly length: number,
|
|
243
|
+
public readonly message: string | undefined
|
|
244
|
+
) {}
|
|
245
|
+
public readonly name = 'notice'
|
|
246
|
+
public severity: string | undefined
|
|
247
|
+
public code: string | undefined
|
|
248
|
+
public detail: string | undefined
|
|
249
|
+
public hint: string | undefined
|
|
250
|
+
public position: string | undefined
|
|
251
|
+
public internalPosition: string | undefined
|
|
252
|
+
public internalQuery: string | undefined
|
|
253
|
+
public where: string | undefined
|
|
254
|
+
public schema: string | undefined
|
|
255
|
+
public table: string | undefined
|
|
256
|
+
public column: string | undefined
|
|
257
|
+
public dataType: string | undefined
|
|
258
|
+
public constraint: string | undefined
|
|
259
|
+
public file: string | undefined
|
|
260
|
+
public line: string | undefined
|
|
261
|
+
public routine: string | undefined
|
|
262
|
+
}
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
import assert from 'assert'
|
|
2
|
+
import { serialize } from './serializer'
|
|
3
|
+
import BufferList from './testing/buffer-list'
|
|
4
|
+
|
|
5
|
+
describe('serializer', () => {
|
|
6
|
+
it('builds startup message', function () {
|
|
7
|
+
const actual = serialize.startup({
|
|
8
|
+
user: 'brian',
|
|
9
|
+
database: 'bang',
|
|
10
|
+
})
|
|
11
|
+
assert.deepEqual(
|
|
12
|
+
actual,
|
|
13
|
+
new BufferList()
|
|
14
|
+
.addInt16(3)
|
|
15
|
+
.addInt16(0)
|
|
16
|
+
.addCString('user')
|
|
17
|
+
.addCString('brian')
|
|
18
|
+
.addCString('database')
|
|
19
|
+
.addCString('bang')
|
|
20
|
+
.addCString('client_encoding')
|
|
21
|
+
.addCString('UTF8')
|
|
22
|
+
.addCString('')
|
|
23
|
+
.join(true)
|
|
24
|
+
)
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
it('builds password message', function () {
|
|
28
|
+
const actual = serialize.password('!')
|
|
29
|
+
assert.deepEqual(actual, new BufferList().addCString('!').join(true, 'p'))
|
|
30
|
+
})
|
|
31
|
+
|
|
32
|
+
it('builds request ssl message', function () {
|
|
33
|
+
const actual = serialize.requestSsl()
|
|
34
|
+
const expected = new BufferList().addInt32(80877103).join(true)
|
|
35
|
+
assert.deepEqual(actual, expected)
|
|
36
|
+
})
|
|
37
|
+
|
|
38
|
+
it('builds SASLInitialResponseMessage message', function () {
|
|
39
|
+
const actual = serialize.sendSASLInitialResponseMessage('mech', 'data')
|
|
40
|
+
assert.deepEqual(actual, new BufferList().addCString('mech').addInt32(4).addString('data').join(true, 'p'))
|
|
41
|
+
})
|
|
42
|
+
|
|
43
|
+
it('builds SCRAMClientFinalMessage message', function () {
|
|
44
|
+
const actual = serialize.sendSCRAMClientFinalMessage('data')
|
|
45
|
+
assert.deepEqual(actual, new BufferList().addString('data').join(true, 'p'))
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
it('builds query message', function () {
|
|
49
|
+
const txt = 'select * from boom'
|
|
50
|
+
const actual = serialize.query(txt)
|
|
51
|
+
assert.deepEqual(actual, new BufferList().addCString(txt).join(true, 'Q'))
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
describe('parse message', () => {
|
|
55
|
+
it('builds parse message', function () {
|
|
56
|
+
const actual = serialize.parse({ text: '!' })
|
|
57
|
+
const expected = new BufferList().addCString('').addCString('!').addInt16(0).join(true, 'P')
|
|
58
|
+
assert.deepEqual(actual, expected)
|
|
59
|
+
})
|
|
60
|
+
|
|
61
|
+
it('builds parse message with named query', function () {
|
|
62
|
+
const actual = serialize.parse({
|
|
63
|
+
name: 'boom',
|
|
64
|
+
text: 'select * from boom',
|
|
65
|
+
types: [],
|
|
66
|
+
})
|
|
67
|
+
const expected = new BufferList().addCString('boom').addCString('select * from boom').addInt16(0).join(true, 'P')
|
|
68
|
+
assert.deepEqual(actual, expected)
|
|
69
|
+
})
|
|
70
|
+
|
|
71
|
+
it('with multiple parameters', function () {
|
|
72
|
+
const actual = serialize.parse({
|
|
73
|
+
name: 'force',
|
|
74
|
+
text: 'select * from bang where name = $1',
|
|
75
|
+
types: [1, 2, 3, 4],
|
|
76
|
+
})
|
|
77
|
+
const expected = new BufferList()
|
|
78
|
+
.addCString('force')
|
|
79
|
+
.addCString('select * from bang where name = $1')
|
|
80
|
+
.addInt16(4)
|
|
81
|
+
.addInt32(1)
|
|
82
|
+
.addInt32(2)
|
|
83
|
+
.addInt32(3)
|
|
84
|
+
.addInt32(4)
|
|
85
|
+
.join(true, 'P')
|
|
86
|
+
assert.deepEqual(actual, expected)
|
|
87
|
+
})
|
|
88
|
+
})
|
|
89
|
+
|
|
90
|
+
describe('bind messages', function () {
|
|
91
|
+
it('with no values', function () {
|
|
92
|
+
const actual = serialize.bind()
|
|
93
|
+
|
|
94
|
+
const expectedBuffer = new BufferList()
|
|
95
|
+
.addCString('')
|
|
96
|
+
.addCString('')
|
|
97
|
+
.addInt16(0)
|
|
98
|
+
.addInt16(0)
|
|
99
|
+
.addInt16(1)
|
|
100
|
+
.addInt16(0)
|
|
101
|
+
.join(true, 'B')
|
|
102
|
+
assert.deepEqual(actual, expectedBuffer)
|
|
103
|
+
})
|
|
104
|
+
|
|
105
|
+
it('with named statement, portal, and values', function () {
|
|
106
|
+
const actual = serialize.bind({
|
|
107
|
+
portal: 'bang',
|
|
108
|
+
statement: 'woo',
|
|
109
|
+
values: ['1', 'hi', null, 'zing'],
|
|
110
|
+
})
|
|
111
|
+
const expectedBuffer = new BufferList()
|
|
112
|
+
.addCString('bang') // portal name
|
|
113
|
+
.addCString('woo') // statement name
|
|
114
|
+
.addInt16(4)
|
|
115
|
+
.addInt16(0)
|
|
116
|
+
.addInt16(0)
|
|
117
|
+
.addInt16(0)
|
|
118
|
+
.addInt16(0)
|
|
119
|
+
.addInt16(4)
|
|
120
|
+
.addInt32(1)
|
|
121
|
+
.add(Buffer.from('1'))
|
|
122
|
+
.addInt32(2)
|
|
123
|
+
.add(Buffer.from('hi'))
|
|
124
|
+
.addInt32(-1)
|
|
125
|
+
.addInt32(4)
|
|
126
|
+
.add(Buffer.from('zing'))
|
|
127
|
+
.addInt16(1)
|
|
128
|
+
.addInt16(0)
|
|
129
|
+
.join(true, 'B')
|
|
130
|
+
assert.deepEqual(actual, expectedBuffer)
|
|
131
|
+
})
|
|
132
|
+
})
|
|
133
|
+
|
|
134
|
+
it('with custom valueMapper', function () {
|
|
135
|
+
const actual = serialize.bind({
|
|
136
|
+
portal: 'bang',
|
|
137
|
+
statement: 'woo',
|
|
138
|
+
values: ['1', 'hi', null, 'zing'],
|
|
139
|
+
valueMapper: () => null,
|
|
140
|
+
})
|
|
141
|
+
const expectedBuffer = new BufferList()
|
|
142
|
+
.addCString('bang') // portal name
|
|
143
|
+
.addCString('woo') // statement name
|
|
144
|
+
.addInt16(4)
|
|
145
|
+
.addInt16(0)
|
|
146
|
+
.addInt16(0)
|
|
147
|
+
.addInt16(0)
|
|
148
|
+
.addInt16(0)
|
|
149
|
+
.addInt16(4)
|
|
150
|
+
.addInt32(-1)
|
|
151
|
+
.addInt32(-1)
|
|
152
|
+
.addInt32(-1)
|
|
153
|
+
.addInt32(-1)
|
|
154
|
+
.addInt16(1)
|
|
155
|
+
.addInt16(0)
|
|
156
|
+
.join(true, 'B')
|
|
157
|
+
assert.deepEqual(actual, expectedBuffer)
|
|
158
|
+
})
|
|
159
|
+
|
|
160
|
+
it('with named statement, portal, and buffer value', function () {
|
|
161
|
+
const actual = serialize.bind({
|
|
162
|
+
portal: 'bang',
|
|
163
|
+
statement: 'woo',
|
|
164
|
+
values: ['1', 'hi', null, Buffer.from('zing', 'utf8')],
|
|
165
|
+
})
|
|
166
|
+
const expectedBuffer = new BufferList()
|
|
167
|
+
.addCString('bang') // portal name
|
|
168
|
+
.addCString('woo') // statement name
|
|
169
|
+
.addInt16(4) // value count
|
|
170
|
+
.addInt16(0) // string
|
|
171
|
+
.addInt16(0) // string
|
|
172
|
+
.addInt16(0) // string
|
|
173
|
+
.addInt16(1) // binary
|
|
174
|
+
.addInt16(4)
|
|
175
|
+
.addInt32(1)
|
|
176
|
+
.add(Buffer.from('1'))
|
|
177
|
+
.addInt32(2)
|
|
178
|
+
.add(Buffer.from('hi'))
|
|
179
|
+
.addInt32(-1)
|
|
180
|
+
.addInt32(4)
|
|
181
|
+
.add(Buffer.from('zing', 'utf-8'))
|
|
182
|
+
.addInt16(1)
|
|
183
|
+
.addInt16(0)
|
|
184
|
+
.join(true, 'B')
|
|
185
|
+
assert.deepEqual(actual, expectedBuffer)
|
|
186
|
+
})
|
|
187
|
+
|
|
188
|
+
describe('builds execute message', function () {
|
|
189
|
+
it('for unamed portal with no row limit', function () {
|
|
190
|
+
const actual = serialize.execute()
|
|
191
|
+
const expectedBuffer = new BufferList().addCString('').addInt32(0).join(true, 'E')
|
|
192
|
+
assert.deepEqual(actual, expectedBuffer)
|
|
193
|
+
})
|
|
194
|
+
|
|
195
|
+
it('for named portal with row limit', function () {
|
|
196
|
+
const actual = serialize.execute({
|
|
197
|
+
portal: 'my favorite portal',
|
|
198
|
+
rows: 100,
|
|
199
|
+
})
|
|
200
|
+
const expectedBuffer = new BufferList().addCString('my favorite portal').addInt32(100).join(true, 'E')
|
|
201
|
+
assert.deepEqual(actual, expectedBuffer)
|
|
202
|
+
})
|
|
203
|
+
})
|
|
204
|
+
|
|
205
|
+
it('builds flush command', function () {
|
|
206
|
+
const actual = serialize.flush()
|
|
207
|
+
const expected = new BufferList().join(true, 'H')
|
|
208
|
+
assert.deepEqual(actual, expected)
|
|
209
|
+
})
|
|
210
|
+
|
|
211
|
+
it('builds sync command', function () {
|
|
212
|
+
const actual = serialize.sync()
|
|
213
|
+
const expected = new BufferList().join(true, 'S')
|
|
214
|
+
assert.deepEqual(actual, expected)
|
|
215
|
+
})
|
|
216
|
+
|
|
217
|
+
it('builds end command', function () {
|
|
218
|
+
const actual = serialize.end()
|
|
219
|
+
const expected = Buffer.from([0x58, 0, 0, 0, 4])
|
|
220
|
+
assert.deepEqual(actual, expected)
|
|
221
|
+
})
|
|
222
|
+
|
|
223
|
+
describe('builds describe command', function () {
|
|
224
|
+
it('describe statement', function () {
|
|
225
|
+
const actual = serialize.describe({ type: 'S', name: 'bang' })
|
|
226
|
+
const expected = new BufferList().addChar('S').addCString('bang').join(true, 'D')
|
|
227
|
+
assert.deepEqual(actual, expected)
|
|
228
|
+
})
|
|
229
|
+
|
|
230
|
+
it('describe unnamed portal', function () {
|
|
231
|
+
const actual = serialize.describe({ type: 'P' })
|
|
232
|
+
const expected = new BufferList().addChar('P').addCString('').join(true, 'D')
|
|
233
|
+
assert.deepEqual(actual, expected)
|
|
234
|
+
})
|
|
235
|
+
})
|
|
236
|
+
|
|
237
|
+
describe('builds close command', function () {
|
|
238
|
+
it('describe statement', function () {
|
|
239
|
+
const actual = serialize.close({ type: 'S', name: 'bang' })
|
|
240
|
+
const expected = new BufferList().addChar('S').addCString('bang').join(true, 'C')
|
|
241
|
+
assert.deepEqual(actual, expected)
|
|
242
|
+
})
|
|
243
|
+
|
|
244
|
+
it('describe unnamed portal', function () {
|
|
245
|
+
const actual = serialize.close({ type: 'P' })
|
|
246
|
+
const expected = new BufferList().addChar('P').addCString('').join(true, 'C')
|
|
247
|
+
assert.deepEqual(actual, expected)
|
|
248
|
+
})
|
|
249
|
+
})
|
|
250
|
+
|
|
251
|
+
describe('copy messages', function () {
|
|
252
|
+
it('builds copyFromChunk', () => {
|
|
253
|
+
const actual = serialize.copyData(Buffer.from([1, 2, 3]))
|
|
254
|
+
const expected = new BufferList().add(Buffer.from([1, 2, 3])).join(true, 'd')
|
|
255
|
+
assert.deepEqual(actual, expected)
|
|
256
|
+
})
|
|
257
|
+
|
|
258
|
+
it('builds copy fail', () => {
|
|
259
|
+
const actual = serialize.copyFail('err!')
|
|
260
|
+
const expected = new BufferList().addCString('err!').join(true, 'f')
|
|
261
|
+
assert.deepEqual(actual, expected)
|
|
262
|
+
})
|
|
263
|
+
|
|
264
|
+
it('builds copy done', () => {
|
|
265
|
+
const actual = serialize.copyDone()
|
|
266
|
+
const expected = new BufferList().join(true, 'c')
|
|
267
|
+
assert.deepEqual(actual, expected)
|
|
268
|
+
})
|
|
269
|
+
})
|
|
270
|
+
|
|
271
|
+
it('builds cancel message', () => {
|
|
272
|
+
const actual = serialize.cancel(3, 4)
|
|
273
|
+
const expected = new BufferList().addInt16(1234).addInt16(5678).addInt32(3).addInt32(4).join(true)
|
|
274
|
+
assert.deepEqual(actual, expected)
|
|
275
|
+
})
|
|
276
|
+
})
|