decocms 2.186.0 → 2.186.1
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-vb3SCqTR.js → AlertCircle-K-Pdcic9.js} +1 -1
- package/dist/client/assets/{ArrowLeft-UgY0HH3_.js → ArrowLeft-DbjuKsKJ.js} +1 -1
- package/dist/client/assets/{ArrowUp-BQ0GwMhq.js → ArrowUp-CVgf-IuM.js} +1 -1
- package/dist/client/assets/{Check-EBIfpKfk.js → Check-5J8pLufa.js} +1 -1
- package/dist/client/assets/{ChevronDown-TWcZ4kJ9.js → ChevronDown-azX3X6AX.js} +1 -1
- package/dist/client/assets/{ChevronRight-BpkTLj3y.js → ChevronRight-BU9wyepR.js} +1 -1
- package/dist/client/assets/{ChevronUp-DMmIo8iD.js → ChevronUp-ISSymo50.js} +1 -1
- package/dist/client/assets/{Container-Dt8UalAF.js → Container-DO3SbooR.js} +1 -1
- package/dist/client/assets/{Dataflow03-DLl2RzQp.js → Dataflow03-DDjLJJPt.js} +1 -1
- package/dist/client/assets/{Download01-Dw7P9-4i.js → Download01-CSi5s7rT.js} +1 -1
- package/dist/client/assets/{FolderClosed-D8TIwtpx.js → FolderClosed-DG1khNab.js} +1 -1
- package/dist/client/assets/{Grid01-CmDjkAry.js → Grid01-1OtRlqYA.js} +1 -1
- package/dist/client/assets/{List-3ufZUeAi.js → List-CD8zd6Wa.js} +1 -1
- package/dist/client/assets/{Loading01-oEWzHjsc.js → Loading01-CYdiDh3l.js} +1 -1
- package/dist/client/assets/{Play-eTAbgb-w.js → Play-3YhDYx27.js} +1 -1
- package/dist/client/assets/{Plus-BA7Rfpr-.js → Plus-V1Th1jdv.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-B6mp4o28.js → RefreshCcw01-Bk3rOtaE.js} +1 -1
- package/dist/client/assets/{SearchMd-4_up1TLU.js → SearchMd-BvvZzTkV.js} +1 -1
- package/dist/client/assets/{Settings01-lbicxKIn.js → Settings01-BhEewSHV.js} +1 -1
- package/dist/client/assets/{Trash01-eIuymuN8.js → Trash01-DEYpLJs9.js} +1 -1
- package/dist/client/assets/{Type01-DCWXkwdC.js → Type01-DPCWeoOo.js} +1 -1
- package/dist/client/assets/{Upload01-BSFuoakK.js → Upload01-CVsYMTIG.js} +1 -1
- package/dist/client/assets/{User01-DN32uzYn.js → User01-B6InEsCV.js} +1 -1
- package/dist/client/assets/{VideoRecorder-BQGrK2bZ.js → VideoRecorder-DWwuCAKx.js} +1 -1
- package/dist/client/assets/{X-DaCoKlVZ.js → X-DSEUOZBv.js} +1 -1
- package/dist/client/assets/{XCircle-DZHeGFcX.js → XCircle-BDF0JqjY.js} +1 -1
- package/dist/client/assets/{XClose-D_0o1f9F.js → XClose-C-lSsuAr.js} +1 -1
- package/dist/client/assets/{Zap-D0bIVVjW.js → Zap-Md9DJ6rv.js} +1 -1
- package/dist/client/assets/{agent-connections-preview-BI-eeQCx.js → agent-connections-preview-BjYZmjl3.js} +1 -1
- package/dist/client/assets/{agent-detail-Cawai6IA.js → agent-detail-Dj0OUG-D.js} +1 -1
- package/dist/client/assets/{agents-BoYaKa_N.js → agents-DZR4cSbV.js} +1 -1
- package/dist/client/assets/{ai-providers-logos-D_53AnVk.js → ai-providers-logos-pBxdceXx.js} +1 -1
- package/dist/client/assets/{alert-dialog-C5dI6ng4.js → alert-dialog-CJVLkF8s.js} +1 -1
- package/dist/client/assets/{auth-catchall-O2S6cfz6.js → auth-catchall-CyapYNp9.js} +1 -1
- package/dist/client/assets/{automation-detail-BlNEANzL.js → automation-detail-DUb_NKWf.js} +1 -1
- package/dist/client/assets/{automations-BQAwNfu2.js → automations-B339F6Fn.js} +1 -1
- package/dist/client/assets/{avatar-CojTV7kK.js → avatar-BiJdl6Xf.js} +1 -1
- package/dist/client/assets/{badge-Cj2aOlgl.js → badge-BbY1Vzps.js} +1 -1
- package/dist/client/assets/{binder-2uXLdWyj.js → binder-3anAL5WI.js} +1 -1
- package/dist/client/assets/{breadcrumb--82F68FS.js → breadcrumb-BM2hSfLB.js} +1 -1
- package/dist/client/assets/{card-ChQFWIen.js → card-D1l6f7HS.js} +1 -1
- package/dist/client/assets/{checkbox-D_kbciPC.js → checkbox-GcV7rItk.js} +1 -1
- package/dist/client/assets/{collapsible-Doonaq5y.js → collapsible-E7EbAleb.js} +1 -1
- package/dist/client/assets/{collection-detail-BLWjMoWG.js → collection-detail-md2_reRY.js} +1 -1
- package/dist/client/assets/{collection-display-button-B_YB0Pvz.js → collection-display-button-BN69LmBz.js} +1 -1
- package/dist/client/assets/{collection-search-BWbixDRp.js → collection-search-CcVBsN85.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-DQMCUU4F.js → collection-table-wrapper-BPFLr1-v.js} +1 -1
- package/dist/client/assets/{collection-tabs-BnCzVfgA.js → collection-tabs-BijGeHYB.js} +1 -1
- package/dist/client/assets/{command-CtOWm1VV.js → command-KtP0d-HZ.js} +1 -1
- package/dist/client/assets/{connection-card-DcT51RGy.js → connection-card-DT3Fx28T.js} +1 -1
- package/dist/client/assets/{connection-detail-BRK14vIh.js → connection-detail-DwgDpXcB.js} +1 -1
- package/dist/client/assets/{connections-D2sLUHTG.js → connections-C_kRN8jY.js} +1 -1
- package/dist/client/assets/{constants-DEVLPir8.js → constants-2OCwh60p.js} +1 -1
- package/dist/client/assets/constants-BwEgB5ct.js +1 -0
- package/dist/client/assets/{context-BPeBGjOy.js → context-CuNDOhoh.js} +1 -1
- package/dist/client/assets/{create-organization-dialog-R77KhBvZ.js → create-organization-dialog-Cd0g9HkW.js} +1 -1
- package/dist/client/assets/{create-project-dialog-D41xkdsb.js → create-project-dialog-CU5VLoep.js} +1 -1
- package/dist/client/assets/{danger-zX3Qk8cM.js → danger-CFl_eB5k.js} +1 -1
- package/dist/client/assets/{danger-zone-DqYkGDIc.js → danger-zone-BSvLmne8.js} +1 -1
- package/dist/client/assets/{dependencies-9-wz4Xxc.js → dependencies-DDWJJnWt.js} +1 -1
- package/dist/client/assets/{dialog-BCMFAhkI.js → dialog-D46ZA88r.js} +1 -1
- package/dist/client/assets/{drawer-Bl6NlnaH.js → drawer-DsEaI2mC.js} +1 -1
- package/dist/client/assets/{dropdown-menu-BbHSISkN.js → dropdown-menu-BJLjCuY0.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-BIILduy1.js → dynamic-plugin-layout-DQu_PXGi.js} +1 -1
- package/dist/client/assets/{editable-task-title-Br5O_iLC.js → editable-task-title-BXxkXNIX.js} +1 -1
- package/dist/client/assets/{empty-state-C0dwe4U0.js → empty-state-B7nlLEUe.js} +1 -1
- package/dist/client/assets/{empty-state-5noOSGfK.js → empty-state-unH0aOxb.js} +1 -1
- package/dist/client/assets/{env-vars-editor-CmxN_shK.js → env-vars-editor-COVavLgR.js} +1 -1
- package/dist/client/assets/{extract-connection-data-DJbja1-q.js → extract-connection-data-BxATAvFG.js} +1 -1
- package/dist/client/assets/{file-browser-DUjv8sIJ.js → file-browser-Y37oB16s.js} +2 -2
- package/dist/client/assets/{form-DUoo-ylF.js → form-BC654cr0.js} +1 -1
- package/dist/client/assets/{general-CGJ44hLj.js → general-DnNKCd5D.js} +1 -1
- package/dist/client/assets/{grid-view-BoGBtir5.js → grid-view-DBiOShLC.js} +1 -1
- package/dist/client/assets/{home-C0TXQswt.js → home-DoIljK7E.js} +1 -1
- package/dist/client/assets/{index-BKxenrdO.js → index-BRbdC8tb.js} +3 -3
- package/dist/client/assets/{index-DHg1fc5U.js → index-BbKz4tLm.js} +1 -1
- package/dist/client/assets/{index-hk9wzRwg.js → index-CKlHjZGl.js} +1 -1
- package/dist/client/assets/{index-D-VE8zlf.js → index-CvdTWVPu.js} +1 -1
- package/dist/client/assets/{index-C7rxOK6C.js → index-DSSbY8iZ.js} +1 -1
- package/dist/client/assets/{index-DaynUkW8.js → index-DSiECZF0.js} +1 -1
- package/dist/client/assets/{index-D73K8P0E.js → index-DW3Gddt1.js} +1 -1
- package/dist/client/assets/{index-Do3azGem.js → index-DhwDaiqy.js} +1 -1
- package/dist/client/assets/{index-CJahu32N.js → index-Do980wUe.js} +1 -1
- package/dist/client/assets/{index-BHTlDqaD.js → index-P1BeuVDU.js} +1 -1
- package/dist/client/assets/{index-BZ1qyalZ.js → index-Z-Bosamk.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-D-mOGz06.js → infiniteQueryObserver-DozliAIg.js} +1 -1
- package/dist/client/assets/{input-BOFUz0aj.js → input-BOjviNKP.js} +1 -1
- package/dist/client/assets/{integration-icon-DgW660ho.js → integration-icon-BxAcqR_W.js} +1 -1
- package/dist/client/assets/{label-CwYk_3Ey.js → label-h0Vcc2GK.js} +1 -1
- package/dist/client/assets/{layout-DAeDMG0b.js → layout-B-xxTjgY.js} +1 -1
- package/dist/client/assets/{layout-C3AUYf3J.js → layout-B1L9zKc4.js} +1 -1
- package/dist/client/assets/{login-DuIR9S1j.js → login-DGiUNRC7.js} +1 -1
- package/dist/client/assets/{logo-upload-CgauH7P2.js → logo-upload-PCOmxOCx.js} +1 -1
- package/dist/client/assets/{mcp-app-renderer-DGEXm5IH.js → mcp-app-renderer-CRS3A1HB.js} +1 -1
- package/dist/client/assets/{mcp-server-card-CK4sGKdu.js → mcp-server-card-B6PFNGFX.js} +1 -1
- package/dist/client/assets/{mcp-server-detail-D69tJNJ-.js → mcp-server-detail-oU638r_U.js} +2 -2
- package/dist/client/assets/{members-BE0-LX8z.js → members-CNzL9zLR.js} +1 -1
- package/dist/client/assets/{monaco-editor-DKgjhGyK.js → monaco-editor-vJr8RDGl.js} +1 -1
- package/dist/client/assets/{monitoring-mL0YGaG3.js → monitoring-CxIOWArS.js} +1 -1
- package/dist/client/assets/{monitoring-dashboard-edit-BU6wqp6k.js → monitoring-dashboard-edit-DxfJ4WNy.js} +1 -1
- package/dist/client/assets/{monitoring-dashboard-view-DpgR3HBD.js → monitoring-dashboard-view-BL4nPi_-.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-DGTvXy8L.js → monitoring-stats-row-CrNnPzpZ.js} +1 -1
- package/dist/client/assets/{oauth-callback-DXq4VAB4.js → oauth-callback-Cq38djsA.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-DLq9Afvv.js → oauth-callback-ai-provider-CYTOAGu5.js} +1 -1
- package/dist/client/assets/{org-ai-providers-Cz242a6o.js → org-ai-providers-DtsI9IWI.js} +1 -1
- package/dist/client/assets/{page-x_-Jc14s.js → page-CYpcNv9e.js} +1 -1
- package/dist/client/assets/{page-D3b1s6a2.js → page-zavfyW1i.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-B3_dpS13.js → plugin-empty-state-CgDAJvPC.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-Cj0RnDfG.js → plugin-empty-state-Dl_2Uo0y.js} +1 -1
- package/dist/client/assets/{plugin-header-BKXZ081u.js → plugin-header-D43xaGJs.js} +1 -1
- package/dist/client/assets/{plugin-header-DlN-1PR6.js → plugin-header-Dv9ESxEb.js} +1 -1
- package/dist/client/assets/plugins-DBMyeN4D.js +1 -0
- package/dist/client/assets/{popover-CRZZJD6X.js → popover-DWheVeA1.js} +1 -1
- package/dist/client/assets/{project-app-view-Dei8g4l2.js → project-app-view-9tWFjZrt.js} +1 -1
- package/dist/client/assets/{project-layout-dAA71zE-.js → project-layout-Dv-Q6xBk.js} +1 -1
- package/dist/client/assets/{project-plugins-BaJYUdT2.js → project-plugins-Bw8tiinl.js} +1 -1
- package/dist/client/assets/{projects-list-Cv_y3Y1y.js → projects-list-DokYG2lJ.js} +1 -1
- package/dist/client/assets/{registry-layout-C04LM3fN.js → registry-layout-CxVYwTXn.js} +1 -1
- package/dist/client/assets/{registry-utils-C0FVK22y.js → registry-utils-BSd5ITwa.js} +1 -1
- package/dist/client/assets/{reset-password-CKoF4675.js → reset-password-C7Dj7QEf.js} +1 -1
- package/dist/client/assets/{resizable-nYmcarWg.js → resizable-DixBhzs0.js} +1 -1
- package/dist/client/assets/{save-actions-eZ1LrcFs.js → save-actions-qtl58c-n.js} +1 -1
- package/dist/client/assets/{scroll-area-BTvSahh5.js → scroll-area-COTWSYpJ.js} +1 -1
- package/dist/client/assets/{select-LSyRUUkM.js → select-Duo4-kjU.js} +1 -1
- package/dist/client/assets/{select-virtual-mcp-CQf_NH1Z.js → select-virtual-mcp-DmwglbWt.js} +1 -1
- package/dist/client/assets/{shell-layout-DaNKzCH1.js → shell-layout-BKPGcmv4.js} +2 -2
- package/dist/client/assets/{sidebar-settings-CArfFMjP.js → sidebar-settings-Bvnz3xIL.js} +1 -1
- package/dist/client/assets/{skeleton-DdkQJ8Ke.js → skeleton-CxmuAljC.js} +1 -1
- package/dist/client/assets/{spinner-BbwK2nZf.js → spinner-Bvsf8yBr.js} +1 -1
- package/dist/client/assets/{store-invite-38lQwS2V.js → store-invite-B3ZITnmR.js} +1 -1
- package/dist/client/assets/{switch-C4iOvYgm.js → switch-DgSoD5A_.js} +1 -1
- package/dist/client/assets/{table-CvG2iH0y.js → table-6Exocylh.js} +1 -1
- package/dist/client/assets/{tabs-D48yslt8.js → tabs-BawFIUQp.js} +1 -1
- package/dist/client/assets/{task-status-CfdaAVDd.js → task-status-DCcRj1iH.js} +32 -32
- package/dist/client/assets/tasks-BXLnBJIq.js +1 -0
- package/dist/client/assets/{tasks-panel-CngVyrSR.js → tasks-panel-DWjSzHZC.js} +1 -1
- package/dist/client/assets/{textarea-pMGiDvfM.js → textarea-DdRl57bf.js} +1 -1
- package/dist/client/assets/{time-range-picker-hMmDbLQS.js → time-range-picker-DOqabEZA.js} +1 -1
- package/dist/client/assets/{toggle-group-DB7gCSVI.js → toggle-group-B0IrEjNf.js} +1 -1
- package/dist/client/assets/{tools-list-DqDOl_iw.js → tools-list-DbIvei1P.js} +1 -1
- package/dist/client/assets/{tooltip-BYpVdvUr.js → tooltip-xl3GoSVP.js} +1 -1
- package/dist/client/assets/{topbar-portal-BT3L0OHL.js → topbar-portal-DVwzk_zs.js} +1 -1
- package/dist/client/assets/{types-1J8PljZw.js → types-DPAE4wXV.js} +1 -1
- package/dist/client/assets/{use-automations-BMRGIsk5.js → use-automations-BTjhSzA_.js} +1 -1
- package/dist/client/assets/{use-collections-DNZPF16v.js → use-collections-Bqp5H9bu.js} +1 -1
- package/dist/client/assets/{use-connection-OaJxXLK-.js → use-connection-De5rVqrE.js} +1 -1
- package/dist/client/assets/{use-copy-RSAu7_j7.js → use-copy-CogCWJQ7.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-CrkA34pw.js → use-create-virtual-mcp-CdSUPhk5.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-cI-C0iaq.js → use-infinite-scroll-CQVKBMoy.js} +1 -1
- package/dist/client/assets/{use-install-from-registry-Cw1tOxSk.js → use-install-from-registry-D7V-rpJ0.js} +1 -1
- package/dist/client/assets/{use-list-state-CSTOpaV4.js → use-list-state-BtvQgv8T.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-FfAzq9P9.js → use-mcp-prompts-k7CgkVwI.js} +1 -1
- package/dist/client/assets/{use-mcp-resources-Jm6NvGgP.js → use-mcp-resources-BfKeTtfq.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-B10GVMq1.js → use-mcp-tools-iD-VGNhw.js} +1 -1
- package/dist/client/assets/{use-members-BEgSet5G.js → use-members-CYI2sNHs.js} +1 -1
- package/dist/client/assets/{use-project-BxO41BBL.js → use-project-DdgxiICX.js} +1 -1
- package/dist/client/assets/{use-store-discovery-DVCWh6aJ.js → use-store-discovery-DdbArpnw.js} +1 -1
- package/dist/client/assets/{use-view-mode-0u9SIVO4.js → use-view-mode-BiSEdh0M.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-BZiKlRZJ.js → use-virtual-mcp-DxTKYWLn.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-DMnx1-Vs.js +1 -0
- package/dist/client/assets/{useMutation-BaFlpWJP.js → useMutation-C_Uj7oOe.js} +1 -1
- package/dist/client/assets/useQuery-C31bP6Ck.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-D-WGLpBh.js +1 -0
- package/dist/client/assets/{user-Bx46t5R3.js → user-tg9kwvXU.js} +1 -1
- package/dist/client/assets/{workflow-BIBTFj9e.js → workflow-D6TrKvm2.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/node_modules/async-exit-hook/CHANGELOG.md +62 -0
- package/dist/server/node_modules/async-exit-hook/index.js +171 -0
- package/dist/server/node_modules/{postgres-array → async-exit-hook}/license +1 -1
- package/dist/server/node_modules/async-exit-hook/package.json +66 -0
- package/dist/server/node_modules/async-exit-hook/readme.md +118 -0
- package/package.json +1 -1
- package/dist/client/assets/constants-BLFOykPL.js +0 -1
- package/dist/client/assets/plugins-D1_YmAIA.js +0 -1
- package/dist/client/assets/tasks-CHK2wNRc.js +0 -1
- package/dist/client/assets/useInfiniteQuery-DzvJ2Vyd.js +0 -1
- package/dist/client/assets/useQuery-DG4WKkPy.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-DKieyXx7.js +0 -1
- package/dist/server/node_modules/pg/LICENSE +0 -21
- 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-int8/LICENSE +0 -13
- package/dist/server/node_modules/pg-int8/README.md +0 -16
- package/dist/server/node_modules/pg-int8/index.js +0 -100
- package/dist/server/node_modules/pg-int8/package.json +0 -24
- package/dist/server/node_modules/pg-pool/LICENSE +0 -21
- package/dist/server/node_modules/pg-pool/README.md +0 -357
- package/dist/server/node_modules/pg-pool/esm/index.mjs +0 -5
- package/dist/server/node_modules/pg-pool/index.js +0 -517
- package/dist/server/node_modules/pg-pool/package.json +0 -51
- package/dist/server/node_modules/pg-protocol/LICENSE +0 -21
- package/dist/server/node_modules/pg-protocol/README.md +0 -3
- package/dist/server/node_modules/pg-protocol/dist/b.d.ts +0 -1
- package/dist/server/node_modules/pg-protocol/dist/b.js +0 -23
- package/dist/server/node_modules/pg-protocol/dist/b.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/buffer-reader.d.ts +0 -15
- package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js +0 -55
- package/dist/server/node_modules/pg-protocol/dist/buffer-reader.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/buffer-writer.d.ts +0 -16
- package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js +0 -81
- package/dist/server/node_modules/pg-protocol/dist/buffer-writer.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.d.ts +0 -1
- package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js +0 -530
- package/dist/server/node_modules/pg-protocol/dist/inbound-parser.test.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/index.d.ts +0 -6
- package/dist/server/node_modules/pg-protocol/dist/index.js +0 -15
- package/dist/server/node_modules/pg-protocol/dist/index.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/messages.d.ts +0 -162
- package/dist/server/node_modules/pg-protocol/dist/messages.js +0 -160
- package/dist/server/node_modules/pg-protocol/dist/messages.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.d.ts +0 -1
- package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js +0 -252
- package/dist/server/node_modules/pg-protocol/dist/outbound-serializer.test.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/parser.d.ts +0 -24
- package/dist/server/node_modules/pg-protocol/dist/parser.js +0 -324
- package/dist/server/node_modules/pg-protocol/dist/parser.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/dist/serializer.d.ts +0 -42
- package/dist/server/node_modules/pg-protocol/dist/serializer.js +0 -189
- package/dist/server/node_modules/pg-protocol/dist/serializer.js.map +0 -1
- package/dist/server/node_modules/pg-protocol/esm/index.js +0 -11
- package/dist/server/node_modules/pg-protocol/package.json +0 -45
- package/dist/server/node_modules/pg-protocol/src/b.ts +0 -25
- package/dist/server/node_modules/pg-protocol/src/buffer-reader.ts +0 -58
- package/dist/server/node_modules/pg-protocol/src/buffer-writer.ts +0 -85
- package/dist/server/node_modules/pg-protocol/src/inbound-parser.test.ts +0 -575
- package/dist/server/node_modules/pg-protocol/src/index.ts +0 -11
- package/dist/server/node_modules/pg-protocol/src/messages.ts +0 -262
- package/dist/server/node_modules/pg-protocol/src/outbound-serializer.test.ts +0 -276
- package/dist/server/node_modules/pg-protocol/src/parser.ts +0 -413
- package/dist/server/node_modules/pg-protocol/src/serializer.ts +0 -274
- package/dist/server/node_modules/pg-protocol/src/testing/buffer-list.ts +0 -67
- package/dist/server/node_modules/pg-protocol/src/testing/test-buffers.ts +0 -166
- package/dist/server/node_modules/pg-protocol/src/types/chunky.d.ts +0 -1
- package/dist/server/node_modules/pg-types/.travis.yml +0 -7
- package/dist/server/node_modules/pg-types/Makefile +0 -14
- package/dist/server/node_modules/pg-types/README.md +0 -75
- package/dist/server/node_modules/pg-types/index.d.ts +0 -137
- package/dist/server/node_modules/pg-types/index.js +0 -47
- package/dist/server/node_modules/pg-types/index.test-d.ts +0 -21
- package/dist/server/node_modules/pg-types/lib/arrayParser.js +0 -11
- package/dist/server/node_modules/pg-types/lib/binaryParsers.js +0 -257
- package/dist/server/node_modules/pg-types/lib/builtins.js +0 -73
- package/dist/server/node_modules/pg-types/lib/textParsers.js +0 -215
- package/dist/server/node_modules/pg-types/package.json +0 -42
- package/dist/server/node_modules/pg-types/test/index.js +0 -24
- package/dist/server/node_modules/pg-types/test/types.js +0 -597
- package/dist/server/node_modules/postgres-array/index.d.ts +0 -4
- package/dist/server/node_modules/postgres-array/index.js +0 -97
- package/dist/server/node_modules/postgres-array/package.json +0 -35
- package/dist/server/node_modules/postgres-array/readme.md +0 -43
- package/dist/server/node_modules/postgres-date/index.js +0 -116
- package/dist/server/node_modules/postgres-date/license +0 -21
- package/dist/server/node_modules/postgres-date/package.json +0 -33
- package/dist/server/node_modules/postgres-date/readme.md +0 -49
- package/dist/server/node_modules/split2/LICENSE +0 -13
- package/dist/server/node_modules/split2/README.md +0 -85
- package/dist/server/node_modules/split2/bench.js +0 -27
- package/dist/server/node_modules/split2/index.js +0 -141
- package/dist/server/node_modules/split2/package.json +0 -39
- package/dist/server/node_modules/split2/test.js +0 -409
- package/dist/server/node_modules/xtend/.jshintrc +0 -30
- package/dist/server/node_modules/xtend/LICENSE +0 -20
- package/dist/server/node_modules/xtend/README.md +0 -32
- package/dist/server/node_modules/xtend/immutable.js +0 -19
- package/dist/server/node_modules/xtend/mutable.js +0 -17
- package/dist/server/node_modules/xtend/package.json +0 -55
- package/dist/server/node_modules/xtend/test.js +0 -103
|
@@ -1,517 +0,0 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
const EventEmitter = require('events').EventEmitter
|
|
3
|
-
|
|
4
|
-
const NOOP = function () {}
|
|
5
|
-
|
|
6
|
-
const removeWhere = (list, predicate) => {
|
|
7
|
-
const i = list.findIndex(predicate)
|
|
8
|
-
|
|
9
|
-
return i === -1 ? undefined : list.splice(i, 1)[0]
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
class IdleItem {
|
|
13
|
-
constructor(client, idleListener, timeoutId) {
|
|
14
|
-
this.client = client
|
|
15
|
-
this.idleListener = idleListener
|
|
16
|
-
this.timeoutId = timeoutId
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
class PendingItem {
|
|
21
|
-
constructor(callback) {
|
|
22
|
-
this.callback = callback
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
function throwOnDoubleRelease() {
|
|
27
|
-
throw new Error('Release called on client which has already been released to the pool.')
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
function promisify(Promise, callback) {
|
|
31
|
-
if (callback) {
|
|
32
|
-
return { callback: callback, result: undefined }
|
|
33
|
-
}
|
|
34
|
-
let rej
|
|
35
|
-
let res
|
|
36
|
-
const cb = function (err, client) {
|
|
37
|
-
err ? rej(err) : res(client)
|
|
38
|
-
}
|
|
39
|
-
const result = new Promise(function (resolve, reject) {
|
|
40
|
-
res = resolve
|
|
41
|
-
rej = reject
|
|
42
|
-
}).catch((err) => {
|
|
43
|
-
// replace the stack trace that leads to `TCP.onStreamRead` with one that leads back to the
|
|
44
|
-
// application that created the query
|
|
45
|
-
Error.captureStackTrace(err)
|
|
46
|
-
throw err
|
|
47
|
-
})
|
|
48
|
-
return { callback: cb, result: result }
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
function makeIdleListener(pool, client) {
|
|
52
|
-
return function idleListener(err) {
|
|
53
|
-
err.client = client
|
|
54
|
-
|
|
55
|
-
client.removeListener('error', idleListener)
|
|
56
|
-
client.on('error', () => {
|
|
57
|
-
pool.log('additional client error after disconnection due to error', err)
|
|
58
|
-
})
|
|
59
|
-
pool._remove(client)
|
|
60
|
-
// TODO - document that once the pool emits an error
|
|
61
|
-
// the client has already been closed & purged and is unusable
|
|
62
|
-
pool.emit('error', err, client)
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
class Pool extends EventEmitter {
|
|
67
|
-
constructor(options, Client) {
|
|
68
|
-
super()
|
|
69
|
-
this.options = Object.assign({}, options)
|
|
70
|
-
|
|
71
|
-
if (options != null && 'password' in options) {
|
|
72
|
-
// "hiding" the password so it doesn't show up in stack traces
|
|
73
|
-
// or if the client is console.logged
|
|
74
|
-
Object.defineProperty(this.options, 'password', {
|
|
75
|
-
configurable: true,
|
|
76
|
-
enumerable: false,
|
|
77
|
-
writable: true,
|
|
78
|
-
value: options.password,
|
|
79
|
-
})
|
|
80
|
-
}
|
|
81
|
-
if (options != null && options.ssl && options.ssl.key) {
|
|
82
|
-
// "hiding" the ssl->key so it doesn't show up in stack traces
|
|
83
|
-
// or if the client is console.logged
|
|
84
|
-
Object.defineProperty(this.options.ssl, 'key', {
|
|
85
|
-
enumerable: false,
|
|
86
|
-
})
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
this.options.max = this.options.max || this.options.poolSize || 10
|
|
90
|
-
this.options.min = this.options.min || 0
|
|
91
|
-
this.options.maxUses = this.options.maxUses || Infinity
|
|
92
|
-
this.options.allowExitOnIdle = this.options.allowExitOnIdle || false
|
|
93
|
-
this.options.maxLifetimeSeconds = this.options.maxLifetimeSeconds || 0
|
|
94
|
-
this.log = this.options.log || function () {}
|
|
95
|
-
this.Client = this.options.Client || Client || require('pg').Client
|
|
96
|
-
this.Promise = this.options.Promise || global.Promise
|
|
97
|
-
|
|
98
|
-
if (typeof this.options.idleTimeoutMillis === 'undefined') {
|
|
99
|
-
this.options.idleTimeoutMillis = 10000
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
this._clients = []
|
|
103
|
-
this._idle = []
|
|
104
|
-
this._expired = new WeakSet()
|
|
105
|
-
this._pendingQueue = []
|
|
106
|
-
this._endCallback = undefined
|
|
107
|
-
this.ending = false
|
|
108
|
-
this.ended = false
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
_promiseTry(f) {
|
|
112
|
-
const Promise = this.Promise
|
|
113
|
-
if (typeof Promise.try === 'function') {
|
|
114
|
-
return Promise.try(f)
|
|
115
|
-
}
|
|
116
|
-
return new Promise((resolve) => resolve(f()))
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
_isFull() {
|
|
120
|
-
return this._clients.length >= this.options.max
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
_isAboveMin() {
|
|
124
|
-
return this._clients.length > this.options.min
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
_pulseQueue() {
|
|
128
|
-
this.log('pulse queue')
|
|
129
|
-
if (this.ended) {
|
|
130
|
-
this.log('pulse queue ended')
|
|
131
|
-
return
|
|
132
|
-
}
|
|
133
|
-
if (this.ending) {
|
|
134
|
-
this.log('pulse queue on ending')
|
|
135
|
-
if (this._idle.length) {
|
|
136
|
-
this._idle.slice().map((item) => {
|
|
137
|
-
this._remove(item.client)
|
|
138
|
-
})
|
|
139
|
-
}
|
|
140
|
-
if (!this._clients.length) {
|
|
141
|
-
this.ended = true
|
|
142
|
-
this._endCallback()
|
|
143
|
-
}
|
|
144
|
-
return
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
// if we don't have any waiting, do nothing
|
|
148
|
-
if (!this._pendingQueue.length) {
|
|
149
|
-
this.log('no queued requests')
|
|
150
|
-
return
|
|
151
|
-
}
|
|
152
|
-
// if we don't have any idle clients and we have no more room do nothing
|
|
153
|
-
if (!this._idle.length && this._isFull()) {
|
|
154
|
-
return
|
|
155
|
-
}
|
|
156
|
-
const pendingItem = this._pendingQueue.shift()
|
|
157
|
-
if (this._idle.length) {
|
|
158
|
-
const idleItem = this._idle.pop()
|
|
159
|
-
clearTimeout(idleItem.timeoutId)
|
|
160
|
-
const client = idleItem.client
|
|
161
|
-
client.ref && client.ref()
|
|
162
|
-
const idleListener = idleItem.idleListener
|
|
163
|
-
|
|
164
|
-
return this._acquireClient(client, pendingItem, idleListener, false)
|
|
165
|
-
}
|
|
166
|
-
if (!this._isFull()) {
|
|
167
|
-
return this.newClient(pendingItem)
|
|
168
|
-
}
|
|
169
|
-
throw new Error('unexpected condition')
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
_remove(client, callback) {
|
|
173
|
-
const removed = removeWhere(this._idle, (item) => item.client === client)
|
|
174
|
-
|
|
175
|
-
if (removed !== undefined) {
|
|
176
|
-
clearTimeout(removed.timeoutId)
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
this._clients = this._clients.filter((c) => c !== client)
|
|
180
|
-
const context = this
|
|
181
|
-
client.end(() => {
|
|
182
|
-
context.emit('remove', client)
|
|
183
|
-
|
|
184
|
-
if (typeof callback === 'function') {
|
|
185
|
-
callback()
|
|
186
|
-
}
|
|
187
|
-
})
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
connect(cb) {
|
|
191
|
-
if (this.ending) {
|
|
192
|
-
const err = new Error('Cannot use a pool after calling end on the pool')
|
|
193
|
-
return cb ? cb(err) : this.Promise.reject(err)
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
const response = promisify(this.Promise, cb)
|
|
197
|
-
const result = response.result
|
|
198
|
-
|
|
199
|
-
// if we don't have to connect a new client, don't do so
|
|
200
|
-
if (this._isFull() || this._idle.length) {
|
|
201
|
-
// if we have idle clients schedule a pulse immediately
|
|
202
|
-
if (this._idle.length) {
|
|
203
|
-
process.nextTick(() => this._pulseQueue())
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
if (!this.options.connectionTimeoutMillis) {
|
|
207
|
-
this._pendingQueue.push(new PendingItem(response.callback))
|
|
208
|
-
return result
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
const queueCallback = (err, res, done) => {
|
|
212
|
-
clearTimeout(tid)
|
|
213
|
-
response.callback(err, res, done)
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
const pendingItem = new PendingItem(queueCallback)
|
|
217
|
-
|
|
218
|
-
// set connection timeout on checking out an existing client
|
|
219
|
-
const tid = setTimeout(() => {
|
|
220
|
-
// remove the callback from pending waiters because
|
|
221
|
-
// we're going to call it with a timeout error
|
|
222
|
-
removeWhere(this._pendingQueue, (i) => i.callback === queueCallback)
|
|
223
|
-
pendingItem.timedOut = true
|
|
224
|
-
response.callback(new Error('timeout exceeded when trying to connect'))
|
|
225
|
-
}, this.options.connectionTimeoutMillis)
|
|
226
|
-
|
|
227
|
-
if (tid.unref) {
|
|
228
|
-
tid.unref()
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
this._pendingQueue.push(pendingItem)
|
|
232
|
-
return result
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
this.newClient(new PendingItem(response.callback))
|
|
236
|
-
|
|
237
|
-
return result
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
newClient(pendingItem) {
|
|
241
|
-
const client = new this.Client(this.options)
|
|
242
|
-
this._clients.push(client)
|
|
243
|
-
const idleListener = makeIdleListener(this, client)
|
|
244
|
-
|
|
245
|
-
this.log('checking client timeout')
|
|
246
|
-
|
|
247
|
-
// connection timeout logic
|
|
248
|
-
let tid
|
|
249
|
-
let timeoutHit = false
|
|
250
|
-
if (this.options.connectionTimeoutMillis) {
|
|
251
|
-
tid = setTimeout(() => {
|
|
252
|
-
if (client.connection) {
|
|
253
|
-
this.log('ending client due to timeout')
|
|
254
|
-
timeoutHit = true
|
|
255
|
-
client.connection.stream.destroy()
|
|
256
|
-
} else if (!client.isConnected()) {
|
|
257
|
-
this.log('ending client due to timeout')
|
|
258
|
-
timeoutHit = true
|
|
259
|
-
// force kill the node driver, and let libpq do its teardown
|
|
260
|
-
client.end()
|
|
261
|
-
}
|
|
262
|
-
}, this.options.connectionTimeoutMillis)
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
this.log('connecting new client')
|
|
266
|
-
client.connect((err) => {
|
|
267
|
-
if (tid) {
|
|
268
|
-
clearTimeout(tid)
|
|
269
|
-
}
|
|
270
|
-
client.on('error', idleListener)
|
|
271
|
-
if (err) {
|
|
272
|
-
this.log('client failed to connect', err)
|
|
273
|
-
// remove the dead client from our list of clients
|
|
274
|
-
this._clients = this._clients.filter((c) => c !== client)
|
|
275
|
-
if (timeoutHit) {
|
|
276
|
-
err = new Error('Connection terminated due to connection timeout', { cause: err })
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
// this client won’t be released, so move on immediately
|
|
280
|
-
this._pulseQueue()
|
|
281
|
-
|
|
282
|
-
if (!pendingItem.timedOut) {
|
|
283
|
-
pendingItem.callback(err, undefined, NOOP)
|
|
284
|
-
}
|
|
285
|
-
} else {
|
|
286
|
-
this.log('new client connected')
|
|
287
|
-
|
|
288
|
-
if (this.options.onConnect) {
|
|
289
|
-
this._promiseTry(() => this.options.onConnect(client)).then(
|
|
290
|
-
() => {
|
|
291
|
-
this._afterConnect(client, pendingItem, idleListener)
|
|
292
|
-
},
|
|
293
|
-
(hookErr) => {
|
|
294
|
-
this._clients = this._clients.filter((c) => c !== client)
|
|
295
|
-
client.end(() => {
|
|
296
|
-
this._pulseQueue()
|
|
297
|
-
if (!pendingItem.timedOut) {
|
|
298
|
-
pendingItem.callback(hookErr, undefined, NOOP)
|
|
299
|
-
}
|
|
300
|
-
})
|
|
301
|
-
}
|
|
302
|
-
)
|
|
303
|
-
return
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
return this._afterConnect(client, pendingItem, idleListener)
|
|
307
|
-
}
|
|
308
|
-
})
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
_afterConnect(client, pendingItem, idleListener) {
|
|
312
|
-
if (this.options.maxLifetimeSeconds !== 0) {
|
|
313
|
-
const maxLifetimeTimeout = setTimeout(() => {
|
|
314
|
-
this.log('ending client due to expired lifetime')
|
|
315
|
-
this._expired.add(client)
|
|
316
|
-
const idleIndex = this._idle.findIndex((idleItem) => idleItem.client === client)
|
|
317
|
-
if (idleIndex !== -1) {
|
|
318
|
-
this._acquireClient(
|
|
319
|
-
client,
|
|
320
|
-
new PendingItem((err, client, clientRelease) => clientRelease()),
|
|
321
|
-
idleListener,
|
|
322
|
-
false
|
|
323
|
-
)
|
|
324
|
-
}
|
|
325
|
-
}, this.options.maxLifetimeSeconds * 1000)
|
|
326
|
-
|
|
327
|
-
maxLifetimeTimeout.unref()
|
|
328
|
-
client.once('end', () => clearTimeout(maxLifetimeTimeout))
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
return this._acquireClient(client, pendingItem, idleListener, true)
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
// acquire a client for a pending work item
|
|
335
|
-
_acquireClient(client, pendingItem, idleListener, isNew) {
|
|
336
|
-
if (isNew) {
|
|
337
|
-
this.emit('connect', client)
|
|
338
|
-
}
|
|
339
|
-
|
|
340
|
-
this.emit('acquire', client)
|
|
341
|
-
|
|
342
|
-
client.release = this._releaseOnce(client, idleListener)
|
|
343
|
-
|
|
344
|
-
client.removeListener('error', idleListener)
|
|
345
|
-
|
|
346
|
-
if (!pendingItem.timedOut) {
|
|
347
|
-
if (isNew && this.options.verify) {
|
|
348
|
-
this.options.verify(client, (err) => {
|
|
349
|
-
if (err) {
|
|
350
|
-
client.release(err)
|
|
351
|
-
return pendingItem.callback(err, undefined, NOOP)
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
pendingItem.callback(undefined, client, client.release)
|
|
355
|
-
})
|
|
356
|
-
} else {
|
|
357
|
-
pendingItem.callback(undefined, client, client.release)
|
|
358
|
-
}
|
|
359
|
-
} else {
|
|
360
|
-
if (isNew && this.options.verify) {
|
|
361
|
-
this.options.verify(client, client.release)
|
|
362
|
-
} else {
|
|
363
|
-
client.release()
|
|
364
|
-
}
|
|
365
|
-
}
|
|
366
|
-
}
|
|
367
|
-
|
|
368
|
-
// returns a function that wraps _release and throws if called more than once
|
|
369
|
-
_releaseOnce(client, idleListener) {
|
|
370
|
-
let released = false
|
|
371
|
-
|
|
372
|
-
return (err) => {
|
|
373
|
-
if (released) {
|
|
374
|
-
throwOnDoubleRelease()
|
|
375
|
-
}
|
|
376
|
-
|
|
377
|
-
released = true
|
|
378
|
-
this._release(client, idleListener, err)
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
|
-
|
|
382
|
-
// release a client back to the poll, include an error
|
|
383
|
-
// to remove it from the pool
|
|
384
|
-
_release(client, idleListener, err) {
|
|
385
|
-
client.on('error', idleListener)
|
|
386
|
-
|
|
387
|
-
client._poolUseCount = (client._poolUseCount || 0) + 1
|
|
388
|
-
|
|
389
|
-
this.emit('release', err, client)
|
|
390
|
-
|
|
391
|
-
// TODO(bmc): expose a proper, public interface _queryable and _ending
|
|
392
|
-
if (err || this.ending || !client._queryable || client._ending || client._poolUseCount >= this.options.maxUses) {
|
|
393
|
-
if (client._poolUseCount >= this.options.maxUses) {
|
|
394
|
-
this.log('remove expended client')
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
return this._remove(client, this._pulseQueue.bind(this))
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
const isExpired = this._expired.has(client)
|
|
401
|
-
if (isExpired) {
|
|
402
|
-
this.log('remove expired client')
|
|
403
|
-
this._expired.delete(client)
|
|
404
|
-
return this._remove(client, this._pulseQueue.bind(this))
|
|
405
|
-
}
|
|
406
|
-
|
|
407
|
-
// idle timeout
|
|
408
|
-
let tid
|
|
409
|
-
if (this.options.idleTimeoutMillis && this._isAboveMin()) {
|
|
410
|
-
tid = setTimeout(() => {
|
|
411
|
-
if (this._isAboveMin()) {
|
|
412
|
-
this.log('remove idle client')
|
|
413
|
-
this._remove(client, this._pulseQueue.bind(this))
|
|
414
|
-
}
|
|
415
|
-
}, this.options.idleTimeoutMillis)
|
|
416
|
-
|
|
417
|
-
if (this.options.allowExitOnIdle) {
|
|
418
|
-
// allow Node to exit if this is all that's left
|
|
419
|
-
tid.unref()
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
if (this.options.allowExitOnIdle) {
|
|
424
|
-
client.unref()
|
|
425
|
-
}
|
|
426
|
-
|
|
427
|
-
this._idle.push(new IdleItem(client, idleListener, tid))
|
|
428
|
-
this._pulseQueue()
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
query(text, values, cb) {
|
|
432
|
-
// guard clause against passing a function as the first parameter
|
|
433
|
-
if (typeof text === 'function') {
|
|
434
|
-
const response = promisify(this.Promise, text)
|
|
435
|
-
setImmediate(function () {
|
|
436
|
-
return response.callback(new Error('Passing a function as the first parameter to pool.query is not supported'))
|
|
437
|
-
})
|
|
438
|
-
return response.result
|
|
439
|
-
}
|
|
440
|
-
|
|
441
|
-
// allow plain text query without values
|
|
442
|
-
if (typeof values === 'function') {
|
|
443
|
-
cb = values
|
|
444
|
-
values = undefined
|
|
445
|
-
}
|
|
446
|
-
const response = promisify(this.Promise, cb)
|
|
447
|
-
cb = response.callback
|
|
448
|
-
|
|
449
|
-
this.connect((err, client) => {
|
|
450
|
-
if (err) {
|
|
451
|
-
return cb(err)
|
|
452
|
-
}
|
|
453
|
-
|
|
454
|
-
let clientReleased = false
|
|
455
|
-
const onError = (err) => {
|
|
456
|
-
if (clientReleased) {
|
|
457
|
-
return
|
|
458
|
-
}
|
|
459
|
-
clientReleased = true
|
|
460
|
-
client.release(err)
|
|
461
|
-
cb(err)
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
client.once('error', onError)
|
|
465
|
-
this.log('dispatching query')
|
|
466
|
-
try {
|
|
467
|
-
client.query(text, values, (err, res) => {
|
|
468
|
-
this.log('query dispatched')
|
|
469
|
-
client.removeListener('error', onError)
|
|
470
|
-
if (clientReleased) {
|
|
471
|
-
return
|
|
472
|
-
}
|
|
473
|
-
clientReleased = true
|
|
474
|
-
client.release(err)
|
|
475
|
-
if (err) {
|
|
476
|
-
return cb(err)
|
|
477
|
-
}
|
|
478
|
-
return cb(undefined, res)
|
|
479
|
-
})
|
|
480
|
-
} catch (err) {
|
|
481
|
-
client.release(err)
|
|
482
|
-
return cb(err)
|
|
483
|
-
}
|
|
484
|
-
})
|
|
485
|
-
return response.result
|
|
486
|
-
}
|
|
487
|
-
|
|
488
|
-
end(cb) {
|
|
489
|
-
this.log('ending')
|
|
490
|
-
if (this.ending) {
|
|
491
|
-
const err = new Error('Called end on pool more than once')
|
|
492
|
-
return cb ? cb(err) : this.Promise.reject(err)
|
|
493
|
-
}
|
|
494
|
-
this.ending = true
|
|
495
|
-
const promised = promisify(this.Promise, cb)
|
|
496
|
-
this._endCallback = promised.callback
|
|
497
|
-
this._pulseQueue()
|
|
498
|
-
return promised.result
|
|
499
|
-
}
|
|
500
|
-
|
|
501
|
-
get waitingCount() {
|
|
502
|
-
return this._pendingQueue.length
|
|
503
|
-
}
|
|
504
|
-
|
|
505
|
-
get idleCount() {
|
|
506
|
-
return this._idle.length
|
|
507
|
-
}
|
|
508
|
-
|
|
509
|
-
get expiredCount() {
|
|
510
|
-
return this._clients.reduce((acc, client) => acc + (this._expired.has(client) ? 1 : 0), 0)
|
|
511
|
-
}
|
|
512
|
-
|
|
513
|
-
get totalCount() {
|
|
514
|
-
return this._clients.length
|
|
515
|
-
}
|
|
516
|
-
}
|
|
517
|
-
module.exports = Pool
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "pg-pool",
|
|
3
|
-
"version": "3.13.0",
|
|
4
|
-
"description": "Connection pool for node-postgres",
|
|
5
|
-
"main": "index.js",
|
|
6
|
-
"exports": {
|
|
7
|
-
".": {
|
|
8
|
-
"import": "./esm/index.mjs",
|
|
9
|
-
"require": "./index.js",
|
|
10
|
-
"default": "./index.js"
|
|
11
|
-
}
|
|
12
|
-
},
|
|
13
|
-
"directories": {
|
|
14
|
-
"test": "test"
|
|
15
|
-
},
|
|
16
|
-
"scripts": {
|
|
17
|
-
"test": " node_modules/.bin/mocha"
|
|
18
|
-
},
|
|
19
|
-
"repository": {
|
|
20
|
-
"type": "git",
|
|
21
|
-
"url": "git://github.com/brianc/node-postgres.git",
|
|
22
|
-
"directory": "packages/pg-pool"
|
|
23
|
-
},
|
|
24
|
-
"keywords": [
|
|
25
|
-
"pg",
|
|
26
|
-
"postgres",
|
|
27
|
-
"pool",
|
|
28
|
-
"database"
|
|
29
|
-
],
|
|
30
|
-
"author": "Brian M. Carlson",
|
|
31
|
-
"license": "MIT",
|
|
32
|
-
"bugs": {
|
|
33
|
-
"url": "https://github.com/brianc/node-postgres/issues"
|
|
34
|
-
},
|
|
35
|
-
"homepage": "https://github.com/brianc/node-postgres/tree/master/packages/pg-pool#readme",
|
|
36
|
-
"devDependencies": {
|
|
37
|
-
"bluebird": "3.7.2",
|
|
38
|
-
"co": "4.6.0",
|
|
39
|
-
"expect.js": "0.3.1",
|
|
40
|
-
"lodash": "^4.17.11",
|
|
41
|
-
"mocha": "^11.7.5"
|
|
42
|
-
},
|
|
43
|
-
"peerDependencies": {
|
|
44
|
-
"pg": ">=8.0"
|
|
45
|
-
},
|
|
46
|
-
"files": [
|
|
47
|
-
"index.js",
|
|
48
|
-
"esm"
|
|
49
|
-
],
|
|
50
|
-
"gitHead": "c9070cc8d526fca65780cedc25c1966b57cf7532"
|
|
51
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2010 - 2021 Brian Carlson
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// file for microbenchmarking
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
const buffer_reader_1 = require("./buffer-reader");
|
|
5
|
-
const LOOPS = 1000;
|
|
6
|
-
let count = 0;
|
|
7
|
-
const start = performance.now();
|
|
8
|
-
const reader = new buffer_reader_1.BufferReader();
|
|
9
|
-
const buffer = Buffer.from([33, 33, 33, 33, 33, 33, 33, 0]);
|
|
10
|
-
const run = () => {
|
|
11
|
-
if (count > LOOPS) {
|
|
12
|
-
console.log(performance.now() - start);
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
count++;
|
|
16
|
-
for (let i = 0; i < LOOPS; i++) {
|
|
17
|
-
reader.setBuffer(0, buffer);
|
|
18
|
-
reader.cstring();
|
|
19
|
-
}
|
|
20
|
-
setImmediate(run);
|
|
21
|
-
};
|
|
22
|
-
run();
|
|
23
|
-
//# sourceMappingURL=b.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"b.js","sourceRoot":"","sources":["../src/b.ts"],"names":[],"mappings":";AAAA,6BAA6B;;AAE7B,mDAA8C;AAE9C,MAAM,KAAK,GAAG,IAAI,CAAA;AAClB,IAAI,KAAK,GAAG,CAAC,CAAA;AACb,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;AAE/B,MAAM,MAAM,GAAG,IAAI,4BAAY,EAAE,CAAA;AACjC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AAE3D,MAAM,GAAG,GAAG,GAAG,EAAE;IACf,IAAI,KAAK,GAAG,KAAK,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAA;QACtC,OAAM;KACP;IACD,KAAK,EAAE,CAAA;IACP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9B,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAC3B,MAAM,CAAC,OAAO,EAAE,CAAA;KACjB;IACD,YAAY,CAAC,GAAG,CAAC,CAAA;AACnB,CAAC,CAAA;AAED,GAAG,EAAE,CAAA"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
export declare class BufferReader {
|
|
3
|
-
private offset;
|
|
4
|
-
private buffer;
|
|
5
|
-
private encoding;
|
|
6
|
-
constructor(offset?: number);
|
|
7
|
-
setBuffer(offset: number, buffer: Buffer): void;
|
|
8
|
-
int16(): number;
|
|
9
|
-
byte(): number;
|
|
10
|
-
int32(): number;
|
|
11
|
-
uint32(): number;
|
|
12
|
-
string(length: number): string;
|
|
13
|
-
cstring(): string;
|
|
14
|
-
bytes(length: number): Buffer;
|
|
15
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BufferReader = void 0;
|
|
4
|
-
class BufferReader {
|
|
5
|
-
constructor(offset = 0) {
|
|
6
|
-
this.offset = offset;
|
|
7
|
-
this.buffer = Buffer.allocUnsafe(0);
|
|
8
|
-
// TODO(bmc): support non-utf8 encoding?
|
|
9
|
-
this.encoding = 'utf-8';
|
|
10
|
-
}
|
|
11
|
-
setBuffer(offset, buffer) {
|
|
12
|
-
this.offset = offset;
|
|
13
|
-
this.buffer = buffer;
|
|
14
|
-
}
|
|
15
|
-
int16() {
|
|
16
|
-
const result = this.buffer.readInt16BE(this.offset);
|
|
17
|
-
this.offset += 2;
|
|
18
|
-
return result;
|
|
19
|
-
}
|
|
20
|
-
byte() {
|
|
21
|
-
const result = this.buffer[this.offset];
|
|
22
|
-
this.offset++;
|
|
23
|
-
return result;
|
|
24
|
-
}
|
|
25
|
-
int32() {
|
|
26
|
-
const result = this.buffer.readInt32BE(this.offset);
|
|
27
|
-
this.offset += 4;
|
|
28
|
-
return result;
|
|
29
|
-
}
|
|
30
|
-
uint32() {
|
|
31
|
-
const result = this.buffer.readUInt32BE(this.offset);
|
|
32
|
-
this.offset += 4;
|
|
33
|
-
return result;
|
|
34
|
-
}
|
|
35
|
-
string(length) {
|
|
36
|
-
const result = this.buffer.toString(this.encoding, this.offset, this.offset + length);
|
|
37
|
-
this.offset += length;
|
|
38
|
-
return result;
|
|
39
|
-
}
|
|
40
|
-
cstring() {
|
|
41
|
-
const start = this.offset;
|
|
42
|
-
let end = start;
|
|
43
|
-
// eslint-disable-next-line no-empty
|
|
44
|
-
while (this.buffer[end++] !== 0) { }
|
|
45
|
-
this.offset = end;
|
|
46
|
-
return this.buffer.toString(this.encoding, start, end - 1);
|
|
47
|
-
}
|
|
48
|
-
bytes(length) {
|
|
49
|
-
const result = this.buffer.slice(this.offset, this.offset + length);
|
|
50
|
-
this.offset += length;
|
|
51
|
-
return result;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
exports.BufferReader = BufferReader;
|
|
55
|
-
//# sourceMappingURL=buffer-reader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buffer-reader.js","sourceRoot":"","sources":["../src/buffer-reader.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IAMvB,YAAoB,SAAiB,CAAC;QAAlB,WAAM,GAAN,MAAM,CAAY;QAL9B,WAAM,GAAW,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;QAE9C,wCAAwC;QAChC,aAAQ,GAAW,OAAO,CAAA;IAEO,CAAC;IAEnC,SAAS,CAAC,MAAc,EAAE,MAAc;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAEM,KAAK;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnD,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA;QAChB,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,IAAI;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,CAAC,MAAM,EAAE,CAAA;QACb,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,KAAK;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnD,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA;QAChB,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,MAAM;QACX,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpD,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA;QAChB,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,MAAM,CAAC,MAAc;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;QACrF,IAAI,CAAC,MAAM,IAAI,MAAM,CAAA;QACrB,OAAO,MAAM,CAAA;IACf,CAAC;IAEM,OAAO;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,GAAG,GAAG,KAAK,CAAA;QACf,oCAAoC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,GAAE;QACnC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;IAC5D,CAAC;IAEM,KAAK,CAAC,MAAc;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;QACnE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAA;QACrB,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AAzDD,oCAyDC"}
|