tlc-claude-code 0.9.7 → 0.9.8
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/CLAUDE.md +16 -1
- package/README.md +2 -0
- package/dashboard/dist/components/AppPreview.d.ts +34 -0
- package/dashboard/dist/components/AppPreview.js +87 -0
- package/dashboard/dist/components/AppPreview.test.js +151 -0
- package/dashboard/dist/components/DocsPane.d.ts +33 -0
- package/dashboard/dist/components/DocsPane.js +110 -0
- package/dashboard/dist/components/DocsPane.test.js +154 -0
- package/dashboard/dist/components/HealthPane.d.ts +22 -0
- package/dashboard/dist/components/HealthPane.js +33 -0
- package/dashboard/dist/components/HealthPane.test.js +67 -0
- package/dashboard/dist/components/LogsPane.d.ts +19 -0
- package/dashboard/dist/components/LogsPane.js +103 -0
- package/dashboard/dist/components/LogsPane.test.d.ts +1 -0
- package/dashboard/dist/components/LogsPane.test.js +128 -0
- package/dashboard/dist/components/QualityPane.d.ts +18 -0
- package/dashboard/dist/components/QualityPane.js +21 -0
- package/dashboard/dist/components/QualityPane.test.d.ts +1 -0
- package/dashboard/dist/components/QualityPane.test.js +88 -0
- package/dashboard/dist/components/ServicesPane.d.ts +26 -0
- package/dashboard/dist/components/ServicesPane.js +61 -0
- package/dashboard/dist/components/ServicesPane.test.d.ts +1 -0
- package/dashboard/dist/components/ServicesPane.test.js +103 -0
- package/dashboard/package.json +3 -1
- package/docker-compose.dev.yml +32 -0
- package/help.md +22 -3
- package/package.json +7 -2
- package/server/lib/auth-flow-docs.js +375 -0
- package/server/lib/auth-flow-docs.test.js +268 -0
- package/server/lib/auth-system.js +577 -0
- package/server/lib/auth-system.test.js +518 -0
- package/server/lib/auto-database.js +332 -17
- package/server/lib/autofix-command.js +134 -0
- package/server/lib/autofix-command.test.js +157 -0
- package/server/lib/autofix-engine.js +210 -0
- package/server/lib/autofix-engine.test.js +232 -0
- package/server/lib/branch-deployer.js +632 -0
- package/server/lib/branch-deployer.test.js +213 -0
- package/server/lib/bug-sync.js +450 -0
- package/server/lib/bug-sync.test.js +451 -0
- package/server/lib/ci-command.js +342 -0
- package/server/lib/ci-command.test.js +356 -0
- package/server/lib/config.js +222 -0
- package/server/lib/config.test.js +154 -0
- package/server/lib/container-orchestrator.js +251 -0
- package/server/lib/container-orchestrator.test.js +277 -0
- package/server/lib/coverage-threshold.js +409 -0
- package/server/lib/coverage-threshold.test.js +441 -0
- package/server/lib/dependency-update.js +216 -0
- package/server/lib/dependency-update.test.js +192 -0
- package/server/lib/deploy-command.js +536 -0
- package/server/lib/deploy-command.test.js +301 -0
- package/server/lib/dev-server-command.js +277 -0
- package/server/lib/dev-server-command.test.js +326 -0
- package/server/lib/dev-server-runtime.js +382 -0
- package/server/lib/dev-server-runtime.test.js +378 -0
- package/server/lib/docker-manager.js +419 -0
- package/server/lib/docker-manager.test.js +267 -0
- package/server/lib/docs-command.js +271 -0
- package/server/lib/docs-command.test.js +269 -0
- package/server/lib/docs-generator.js +311 -0
- package/server/lib/docs-generator.test.js +143 -0
- package/server/lib/edge-case-generator.js +209 -0
- package/server/lib/edge-case-generator.test.js +206 -0
- package/server/lib/edge-cases-command.js +175 -0
- package/server/lib/edge-cases-command.test.js +157 -0
- package/server/lib/example-generator.js +402 -0
- package/server/lib/example-generator.test.js +377 -0
- package/server/lib/export-command.js +395 -0
- package/server/lib/export-command.test.js +358 -0
- package/server/lib/file-watcher.js +350 -0
- package/server/lib/file-watcher.test.js +286 -0
- package/server/lib/github-actions.js +542 -0
- package/server/lib/github-actions.test.js +353 -0
- package/server/lib/issue-command.js +413 -0
- package/server/lib/issue-command.test.js +393 -0
- package/server/lib/issue-tracker.js +445 -0
- package/server/lib/issue-tracker.test.js +463 -0
- package/server/lib/log-streamer.js +161 -0
- package/server/lib/log-streamer.test.js +193 -0
- package/server/lib/mcp-format.js +395 -0
- package/server/lib/mcp-format.test.js +391 -0
- package/server/lib/merge-command.js +446 -0
- package/server/lib/merge-command.test.js +246 -0
- package/server/lib/openapi-generator.js +421 -0
- package/server/lib/openapi-generator.test.js +457 -0
- package/server/lib/orm-schema-parser.js +417 -0
- package/server/lib/orm-schema-parser.test.js +395 -0
- package/server/lib/overdrive-command.js +522 -0
- package/server/lib/overdrive-command.test.js +368 -0
- package/server/lib/pr-report.js +435 -0
- package/server/lib/pr-report.test.js +412 -0
- package/server/lib/quality-command.js +200 -0
- package/server/lib/quality-command.test.js +210 -0
- package/server/lib/quality-scorer.js +200 -0
- package/server/lib/quality-scorer.test.js +229 -0
- package/server/lib/route-detector.js +358 -0
- package/server/lib/route-detector.test.js +333 -0
- package/server/lib/screenshot-capture.js +288 -0
- package/server/lib/screenshot-capture.test.js +348 -0
- package/server/lib/security-audit.js +245 -0
- package/server/lib/security-audit.test.js +214 -0
- package/server/lib/service-proxy.js +197 -0
- package/server/lib/service-proxy.test.js +198 -0
- package/server/lib/slack-notifier.js +601 -0
- package/server/lib/slack-notifier.test.js +393 -0
- package/server/lib/spec-merger.js +388 -0
- package/server/lib/spec-merger.test.js +342 -0
- package/server/lib/team-docs-command.js +348 -0
- package/server/lib/team-docs-command.test.js +213 -0
- package/server/lib/team-docs.js +591 -0
- package/server/lib/team-docs.test.js +318 -0
- package/server/lib/tool-detector.js +289 -0
- package/server/lib/tool-detector.test.js +401 -0
- package/server/lib/tool-rules.js +591 -0
- package/server/lib/tool-rules.test.js +502 -0
- package/server/lib/webhook-listener.js +603 -0
- package/server/lib/webhook-listener.test.js +424 -0
- package/server/lib/websocket-server.js +288 -0
- package/server/lib/websocket-server.test.js +383 -0
- package/server/package-lock.json +1493 -11
- package/server/package.json +6 -1
- package/server/node_modules/.package-lock.json +0 -1303
- package/server/node_modules/@electric-sql/pglite/LICENSE +0 -176
- package/server/node_modules/@electric-sql/pglite/README.md +0 -189
- package/server/node_modules/@electric-sql/pglite/dist/amcheck.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/auth_delay.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/auto_explain.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/basebackup_to_shell.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/basic_archive.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/bloom.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/btree_gin.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/btree_gist.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/chunk-3WWIVTCY.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/chunk-3WWIVTCY.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/chunk-F2DQ4FIK.js +0 -9
- package/server/node_modules/@electric-sql/pglite/dist/chunk-F2DQ4FIK.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/chunk-F4GETNPB.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/chunk-F4GETNPB.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/chunk-QY3QWFKW.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/chunk-QY3QWFKW.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/chunk-VBDAOXYI.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/chunk-VBDAOXYI.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/citext.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/contrib/amcheck.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/amcheck.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/amcheck.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/amcheck.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/amcheck.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/amcheck.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/auto_explain.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/auto_explain.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/auto_explain.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/auto_explain.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/auto_explain.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/auto_explain.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/bloom.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/bloom.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/bloom.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/bloom.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/bloom.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/bloom.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gin.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gin.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gin.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gin.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gin.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gin.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gist.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gist.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gist.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gist.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gist.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/btree_gist.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/citext.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/citext.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/citext.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/citext.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/citext.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/citext.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/cube.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/cube.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/cube.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/cube.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/cube.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/cube.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_int.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_int.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_int.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_int.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_int.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_int.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_xsyn.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_xsyn.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_xsyn.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_xsyn.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_xsyn.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/dict_xsyn.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/earthdistance.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/earthdistance.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/earthdistance.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/earthdistance.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/earthdistance.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/earthdistance.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/file_fdw.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/file_fdw.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/file_fdw.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/file_fdw.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/file_fdw.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/file_fdw.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/fuzzystrmatch.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/fuzzystrmatch.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/fuzzystrmatch.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/fuzzystrmatch.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/fuzzystrmatch.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/fuzzystrmatch.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/hstore.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/hstore.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/hstore.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/hstore.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/hstore.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/hstore.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/intarray.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/intarray.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/intarray.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/intarray.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/intarray.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/intarray.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/isn.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/isn.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/isn.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/isn.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/isn.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/isn.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/lo.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/lo.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/lo.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/lo.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/lo.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/lo.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/ltree.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/ltree.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/ltree.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/ltree.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/ltree.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/ltree.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pageinspect.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pageinspect.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pageinspect.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pageinspect.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pageinspect.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pageinspect.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_buffercache.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_buffercache.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_buffercache.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_buffercache.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_buffercache.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_buffercache.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_freespacemap.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_freespacemap.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_freespacemap.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_freespacemap.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_freespacemap.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_freespacemap.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_surgery.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_surgery.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_surgery.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_surgery.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_surgery.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_surgery.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_trgm.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_trgm.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_trgm.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_trgm.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_trgm.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_trgm.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_visibility.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_visibility.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_visibility.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_visibility.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_visibility.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_visibility.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_walinspect.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_walinspect.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_walinspect.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_walinspect.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_walinspect.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pg_walinspect.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pgcrypto.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pgcrypto.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pgcrypto.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pgcrypto.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pgcrypto.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/pgcrypto.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/seg.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/seg.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/seg.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/seg.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/seg.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/seg.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tablefunc.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tablefunc.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tablefunc.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tablefunc.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tablefunc.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tablefunc.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tcn.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tcn.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tcn.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tcn.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tcn.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tcn.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_rows.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_rows.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_rows.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_rows.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_rows.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_rows.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_time.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_time.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_time.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_time.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_time.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/tsm_system_time.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/unaccent.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/unaccent.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/unaccent.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/unaccent.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/unaccent.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/unaccent.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/uuid_ossp.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/uuid_ossp.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/contrib/uuid_ossp.d.cts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/uuid_ossp.d.ts +0 -10
- package/server/node_modules/@electric-sql/pglite/dist/contrib/uuid_ossp.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/contrib/uuid_ossp.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/cube.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/dblink.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/dict_int.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/dict_xsyn.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/earthdistance.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/file_fdw.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/fs/base.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/fs/base.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fs/base.d.cts +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fs/base.d.ts +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fs/base.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/fs/base.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fs/nodefs.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/fs/nodefs.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fs/nodefs.d.cts +0 -12
- package/server/node_modules/@electric-sql/pglite/dist/fs/nodefs.d.ts +0 -12
- package/server/node_modules/@electric-sql/pglite/dist/fs/nodefs.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/fs/nodefs.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fs/opfs-ahp.cjs +0 -4
- package/server/node_modules/@electric-sql/pglite/dist/fs/opfs-ahp.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fs/opfs-ahp.d.cts +0 -112
- package/server/node_modules/@electric-sql/pglite/dist/fs/opfs-ahp.d.ts +0 -112
- package/server/node_modules/@electric-sql/pglite/dist/fs/opfs-ahp.js +0 -4
- package/server/node_modules/@electric-sql/pglite/dist/fs/opfs-ahp.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/fuzzystrmatch.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/hstore.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/index.cjs +0 -13
- package/server/node_modules/@electric-sql/pglite/dist/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/index.d.cts +0 -372
- package/server/node_modules/@electric-sql/pglite/dist/index.d.ts +0 -372
- package/server/node_modules/@electric-sql/pglite/dist/index.js +0 -4
- package/server/node_modules/@electric-sql/pglite/dist/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/intagg.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/intarray.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/isn.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/live/index.cjs +0 -133
- package/server/node_modules/@electric-sql/pglite/dist/live/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/live/index.d.cts +0 -149
- package/server/node_modules/@electric-sql/pglite/dist/live/index.d.ts +0 -149
- package/server/node_modules/@electric-sql/pglite/dist/live/index.js +0 -133
- package/server/node_modules/@electric-sql/pglite/dist/live/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/lo.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/ltree.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/oid2name.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pageinspect.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/passwordcheck.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_buffercache.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_freespacemap.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_hashids/index.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pg_hashids/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pg_hashids/index.d.cts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pg_hashids/index.d.ts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pg_hashids/index.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pg_hashids/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pg_hashids.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_ivm/index.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pg_ivm/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pg_ivm/index.d.cts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pg_ivm/index.d.ts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pg_ivm/index.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pg_ivm/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pg_ivm.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_prewarm.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_stat_statements.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_surgery.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_trgm.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_uuidv7/index.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pg_uuidv7/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pg_uuidv7/index.d.cts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pg_uuidv7/index.d.ts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pg_uuidv7/index.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pg_uuidv7/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pg_uuidv7.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_visibility.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pg_walinspect.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pgcrypto.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pglite-CntadC_p.d.cts +0 -1034
- package/server/node_modules/@electric-sql/pglite/dist/pglite-CntadC_p.d.ts +0 -1034
- package/server/node_modules/@electric-sql/pglite/dist/pglite.cjs +0 -3
- package/server/node_modules/@electric-sql/pglite/dist/pglite.data +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pglite.html +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pglite.js +0 -16
- package/server/node_modules/@electric-sql/pglite/dist/pglite.wasm +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pgrowlocks.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pgstattuple.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/pgtap/index.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pgtap/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pgtap/index.d.cts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pgtap/index.d.ts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/pgtap/index.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/pgtap/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/pgtap.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/postgres_fdw.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/seg.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/spi.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/tablefunc.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/tcn.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/templating.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/templating.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/templating.d.cts +0 -69
- package/server/node_modules/@electric-sql/pglite/dist/templating.d.ts +0 -69
- package/server/node_modules/@electric-sql/pglite/dist/templating.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/templating.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/test_decoding.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/tsm_system_rows.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/tsm_system_time.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/unaccent.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/uuid-ossp.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/vacuumlo.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/vector/index.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/vector/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/vector/index.d.cts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/vector/index.d.ts +0 -11
- package/server/node_modules/@electric-sql/pglite/dist/vector/index.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/vector/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/vector.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/dist/worker/index.cjs +0 -9
- package/server/node_modules/@electric-sql/pglite/dist/worker/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/worker/index.d.cts +0 -114
- package/server/node_modules/@electric-sql/pglite/dist/worker/index.d.ts +0 -114
- package/server/node_modules/@electric-sql/pglite/dist/worker/index.js +0 -2
- package/server/node_modules/@electric-sql/pglite/dist/worker/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite/dist/xml2.tar.gz +0 -0
- package/server/node_modules/@electric-sql/pglite/package.json +0 -209
- package/server/node_modules/@electric-sql/pglite-socket/CHANGELOG.md +0 -146
- package/server/node_modules/@electric-sql/pglite-socket/LICENSE +0 -176
- package/server/node_modules/@electric-sql/pglite-socket/README.md +0 -265
- package/server/node_modules/@electric-sql/pglite-socket/dist/chunk-F6KLIXM7.js +0 -2
- package/server/node_modules/@electric-sql/pglite-socket/dist/chunk-F6KLIXM7.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite-socket/dist/index.cjs +0 -2
- package/server/node_modules/@electric-sql/pglite-socket/dist/index.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite-socket/dist/index.d.cts +0 -160
- package/server/node_modules/@electric-sql/pglite-socket/dist/index.d.ts +0 -160
- package/server/node_modules/@electric-sql/pglite-socket/dist/index.js +0 -2
- package/server/node_modules/@electric-sql/pglite-socket/dist/index.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite-socket/dist/scripts/server.cjs +0 -19
- package/server/node_modules/@electric-sql/pglite-socket/dist/scripts/server.cjs.map +0 -1
- package/server/node_modules/@electric-sql/pglite-socket/dist/scripts/server.d.cts +0 -1
- package/server/node_modules/@electric-sql/pglite-socket/dist/scripts/server.d.ts +0 -1
- package/server/node_modules/@electric-sql/pglite-socket/dist/scripts/server.js +0 -19
- package/server/node_modules/@electric-sql/pglite-socket/dist/scripts/server.js.map +0 -1
- package/server/node_modules/@electric-sql/pglite-socket/eslint.config.js +0 -29
- package/server/node_modules/@electric-sql/pglite-socket/examples/basic-server.ts +0 -76
- package/server/node_modules/@electric-sql/pglite-socket/package.json +0 -69
- package/server/node_modules/@electric-sql/pglite-socket/src/index.ts +0 -720
- package/server/node_modules/@electric-sql/pglite-socket/src/scripts/server.ts +0 -415
- package/server/node_modules/@electric-sql/pglite-socket/tests/index.test.ts +0 -512
- package/server/node_modules/@electric-sql/pglite-socket/tests/query-with-node-pg.test.ts +0 -717
- package/server/node_modules/@electric-sql/pglite-socket/tests/query-with-postgres-js.test.ts +0 -678
- package/server/node_modules/@electric-sql/pglite-socket/tests/server.test.ts +0 -233
- package/server/node_modules/@electric-sql/pglite-socket/tsconfig.json +0 -10
- package/server/node_modules/@electric-sql/pglite-socket/tsup.config.ts +0 -20
- package/server/node_modules/@electric-sql/pglite-socket/vitest.config.ts +0 -16
- package/server/node_modules/@types/http-proxy/LICENSE +0 -21
- package/server/node_modules/@types/http-proxy/README.md +0 -15
- package/server/node_modules/@types/http-proxy/index.d.ts +0 -252
- package/server/node_modules/@types/http-proxy/package.json +0 -48
- package/server/node_modules/@types/node/LICENSE +0 -21
- package/server/node_modules/@types/node/README.md +0 -15
- package/server/node_modules/@types/node/assert/strict.d.ts +0 -105
- package/server/node_modules/@types/node/assert.d.ts +0 -955
- package/server/node_modules/@types/node/async_hooks.d.ts +0 -623
- package/server/node_modules/@types/node/buffer.buffer.d.ts +0 -466
- package/server/node_modules/@types/node/buffer.d.ts +0 -1810
- package/server/node_modules/@types/node/child_process.d.ts +0 -1428
- package/server/node_modules/@types/node/cluster.d.ts +0 -486
- package/server/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
- package/server/node_modules/@types/node/console.d.ts +0 -151
- package/server/node_modules/@types/node/constants.d.ts +0 -20
- package/server/node_modules/@types/node/crypto.d.ts +0 -4065
- package/server/node_modules/@types/node/dgram.d.ts +0 -564
- package/server/node_modules/@types/node/diagnostics_channel.d.ts +0 -576
- package/server/node_modules/@types/node/dns/promises.d.ts +0 -503
- package/server/node_modules/@types/node/dns.d.ts +0 -922
- package/server/node_modules/@types/node/domain.d.ts +0 -166
- package/server/node_modules/@types/node/events.d.ts +0 -1054
- package/server/node_modules/@types/node/fs/promises.d.ts +0 -1329
- package/server/node_modules/@types/node/fs.d.ts +0 -4676
- package/server/node_modules/@types/node/globals.d.ts +0 -150
- package/server/node_modules/@types/node/globals.typedarray.d.ts +0 -101
- package/server/node_modules/@types/node/http.d.ts +0 -2143
- package/server/node_modules/@types/node/http2.d.ts +0 -2480
- package/server/node_modules/@types/node/https.d.ts +0 -399
- package/server/node_modules/@types/node/index.d.ts +0 -115
- package/server/node_modules/@types/node/inspector/promises.d.ts +0 -41
- package/server/node_modules/@types/node/inspector.d.ts +0 -224
- package/server/node_modules/@types/node/inspector.generated.d.ts +0 -4226
- package/server/node_modules/@types/node/module.d.ts +0 -819
- package/server/node_modules/@types/node/net.d.ts +0 -933
- package/server/node_modules/@types/node/os.d.ts +0 -507
- package/server/node_modules/@types/node/package.json +0 -155
- package/server/node_modules/@types/node/path/posix.d.ts +0 -8
- package/server/node_modules/@types/node/path/win32.d.ts +0 -8
- package/server/node_modules/@types/node/path.d.ts +0 -187
- package/server/node_modules/@types/node/perf_hooks.d.ts +0 -621
- package/server/node_modules/@types/node/process.d.ts +0 -2161
- package/server/node_modules/@types/node/punycode.d.ts +0 -117
- package/server/node_modules/@types/node/querystring.d.ts +0 -152
- package/server/node_modules/@types/node/quic.d.ts +0 -910
- package/server/node_modules/@types/node/readline/promises.d.ts +0 -161
- package/server/node_modules/@types/node/readline.d.ts +0 -541
- package/server/node_modules/@types/node/repl.d.ts +0 -415
- package/server/node_modules/@types/node/sea.d.ts +0 -162
- package/server/node_modules/@types/node/sqlite.d.ts +0 -937
- package/server/node_modules/@types/node/stream/consumers.d.ts +0 -38
- package/server/node_modules/@types/node/stream/promises.d.ts +0 -211
- package/server/node_modules/@types/node/stream/web.d.ts +0 -296
- package/server/node_modules/@types/node/stream.d.ts +0 -1760
- package/server/node_modules/@types/node/string_decoder.d.ts +0 -67
- package/server/node_modules/@types/node/test/reporters.d.ts +0 -96
- package/server/node_modules/@types/node/test.d.ts +0 -2239
- package/server/node_modules/@types/node/timers/promises.d.ts +0 -108
- package/server/node_modules/@types/node/timers.d.ts +0 -159
- package/server/node_modules/@types/node/tls.d.ts +0 -1198
- package/server/node_modules/@types/node/trace_events.d.ts +0 -197
- package/server/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
- package/server/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
- package/server/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
- package/server/node_modules/@types/node/ts5.6/index.d.ts +0 -117
- package/server/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
- package/server/node_modules/@types/node/ts5.7/index.d.ts +0 -117
- package/server/node_modules/@types/node/tty.d.ts +0 -250
- package/server/node_modules/@types/node/url.d.ts +0 -519
- package/server/node_modules/@types/node/util/types.d.ts +0 -558
- package/server/node_modules/@types/node/util.d.ts +0 -1653
- package/server/node_modules/@types/node/v8.d.ts +0 -979
- package/server/node_modules/@types/node/vm.d.ts +0 -1180
- package/server/node_modules/@types/node/wasi.d.ts +0 -202
- package/server/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
- package/server/node_modules/@types/node/web-globals/blob.d.ts +0 -23
- package/server/node_modules/@types/node/web-globals/console.d.ts +0 -9
- package/server/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
- package/server/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
- package/server/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
- package/server/node_modules/@types/node/web-globals/events.d.ts +0 -106
- package/server/node_modules/@types/node/web-globals/fetch.d.ts +0 -54
- package/server/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
- package/server/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
- package/server/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
- package/server/node_modules/@types/node/web-globals/performance.d.ts +0 -45
- package/server/node_modules/@types/node/web-globals/storage.d.ts +0 -24
- package/server/node_modules/@types/node/web-globals/streams.d.ts +0 -115
- package/server/node_modules/@types/node/web-globals/timers.d.ts +0 -44
- package/server/node_modules/@types/node/web-globals/url.d.ts +0 -24
- package/server/node_modules/@types/node/worker_threads.d.ts +0 -717
- package/server/node_modules/@types/node/zlib.d.ts +0 -618
- package/server/node_modules/accepts/HISTORY.md +0 -243
- package/server/node_modules/accepts/LICENSE +0 -23
- package/server/node_modules/accepts/README.md +0 -140
- package/server/node_modules/accepts/index.js +0 -238
- package/server/node_modules/accepts/package.json +0 -47
- package/server/node_modules/anymatch/LICENSE +0 -15
- package/server/node_modules/anymatch/README.md +0 -87
- package/server/node_modules/anymatch/index.d.ts +0 -20
- package/server/node_modules/anymatch/index.js +0 -104
- package/server/node_modules/anymatch/package.json +0 -48
- package/server/node_modules/array-flatten/LICENSE +0 -21
- package/server/node_modules/array-flatten/README.md +0 -43
- package/server/node_modules/array-flatten/array-flatten.js +0 -64
- package/server/node_modules/array-flatten/package.json +0 -39
- package/server/node_modules/binary-extensions/binary-extensions.json +0 -263
- package/server/node_modules/binary-extensions/binary-extensions.json.d.ts +0 -3
- package/server/node_modules/binary-extensions/index.d.ts +0 -14
- package/server/node_modules/binary-extensions/index.js +0 -1
- package/server/node_modules/binary-extensions/license +0 -10
- package/server/node_modules/binary-extensions/package.json +0 -40
- package/server/node_modules/binary-extensions/readme.md +0 -25
- package/server/node_modules/body-parser/HISTORY.md +0 -680
- package/server/node_modules/body-parser/LICENSE +0 -23
- package/server/node_modules/body-parser/README.md +0 -476
- package/server/node_modules/body-parser/index.js +0 -156
- package/server/node_modules/body-parser/lib/read.js +0 -205
- package/server/node_modules/body-parser/lib/types/json.js +0 -247
- package/server/node_modules/body-parser/lib/types/raw.js +0 -101
- package/server/node_modules/body-parser/lib/types/text.js +0 -121
- package/server/node_modules/body-parser/lib/types/urlencoded.js +0 -300
- package/server/node_modules/body-parser/package.json +0 -55
- package/server/node_modules/braces/LICENSE +0 -21
- package/server/node_modules/braces/README.md +0 -586
- package/server/node_modules/braces/index.js +0 -170
- package/server/node_modules/braces/lib/compile.js +0 -60
- package/server/node_modules/braces/lib/constants.js +0 -57
- package/server/node_modules/braces/lib/expand.js +0 -113
- package/server/node_modules/braces/lib/parse.js +0 -331
- package/server/node_modules/braces/lib/stringify.js +0 -32
- package/server/node_modules/braces/lib/utils.js +0 -122
- package/server/node_modules/braces/package.json +0 -77
- package/server/node_modules/bytes/History.md +0 -97
- package/server/node_modules/bytes/LICENSE +0 -23
- package/server/node_modules/bytes/Readme.md +0 -152
- package/server/node_modules/bytes/index.js +0 -170
- package/server/node_modules/bytes/package.json +0 -42
- package/server/node_modules/call-bind-apply-helpers/.eslintrc +0 -17
- package/server/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +0 -12
- package/server/node_modules/call-bind-apply-helpers/.nycrc +0 -9
- package/server/node_modules/call-bind-apply-helpers/CHANGELOG.md +0 -30
- package/server/node_modules/call-bind-apply-helpers/LICENSE +0 -21
- package/server/node_modules/call-bind-apply-helpers/README.md +0 -62
- package/server/node_modules/call-bind-apply-helpers/actualApply.d.ts +0 -1
- package/server/node_modules/call-bind-apply-helpers/actualApply.js +0 -10
- package/server/node_modules/call-bind-apply-helpers/applyBind.d.ts +0 -19
- package/server/node_modules/call-bind-apply-helpers/applyBind.js +0 -10
- package/server/node_modules/call-bind-apply-helpers/functionApply.d.ts +0 -1
- package/server/node_modules/call-bind-apply-helpers/functionApply.js +0 -4
- package/server/node_modules/call-bind-apply-helpers/functionCall.d.ts +0 -1
- package/server/node_modules/call-bind-apply-helpers/functionCall.js +0 -4
- package/server/node_modules/call-bind-apply-helpers/index.d.ts +0 -64
- package/server/node_modules/call-bind-apply-helpers/index.js +0 -15
- package/server/node_modules/call-bind-apply-helpers/package.json +0 -85
- package/server/node_modules/call-bind-apply-helpers/reflectApply.d.ts +0 -3
- package/server/node_modules/call-bind-apply-helpers/reflectApply.js +0 -4
- package/server/node_modules/call-bind-apply-helpers/test/index.js +0 -63
- package/server/node_modules/call-bind-apply-helpers/tsconfig.json +0 -9
- package/server/node_modules/call-bound/.eslintrc +0 -13
- package/server/node_modules/call-bound/.github/FUNDING.yml +0 -12
- package/server/node_modules/call-bound/.nycrc +0 -9
- package/server/node_modules/call-bound/CHANGELOG.md +0 -42
- package/server/node_modules/call-bound/LICENSE +0 -21
- package/server/node_modules/call-bound/README.md +0 -53
- package/server/node_modules/call-bound/index.d.ts +0 -94
- package/server/node_modules/call-bound/index.js +0 -19
- package/server/node_modules/call-bound/package.json +0 -99
- package/server/node_modules/call-bound/test/index.js +0 -61
- package/server/node_modules/call-bound/tsconfig.json +0 -10
- package/server/node_modules/chokidar/LICENSE +0 -21
- package/server/node_modules/chokidar/README.md +0 -308
- package/server/node_modules/chokidar/index.js +0 -973
- package/server/node_modules/chokidar/lib/constants.js +0 -66
- package/server/node_modules/chokidar/lib/fsevents-handler.js +0 -526
- package/server/node_modules/chokidar/lib/nodefs-handler.js +0 -654
- package/server/node_modules/chokidar/package.json +0 -70
- package/server/node_modules/chokidar/types/index.d.ts +0 -192
- package/server/node_modules/content-disposition/HISTORY.md +0 -60
- package/server/node_modules/content-disposition/LICENSE +0 -22
- package/server/node_modules/content-disposition/README.md +0 -142
- package/server/node_modules/content-disposition/index.js +0 -458
- package/server/node_modules/content-disposition/package.json +0 -44
- package/server/node_modules/content-type/HISTORY.md +0 -29
- package/server/node_modules/content-type/LICENSE +0 -22
- package/server/node_modules/content-type/README.md +0 -94
- package/server/node_modules/content-type/index.js +0 -225
- package/server/node_modules/content-type/package.json +0 -42
- package/server/node_modules/cookie/LICENSE +0 -24
- package/server/node_modules/cookie/README.md +0 -317
- package/server/node_modules/cookie/SECURITY.md +0 -25
- package/server/node_modules/cookie/index.js +0 -335
- package/server/node_modules/cookie/package.json +0 -44
- package/server/node_modules/cookie-signature/History.md +0 -42
- package/server/node_modules/cookie-signature/Readme.md +0 -42
- package/server/node_modules/cookie-signature/index.js +0 -51
- package/server/node_modules/cookie-signature/package.json +0 -18
- package/server/node_modules/debug/.coveralls.yml +0 -1
- package/server/node_modules/debug/.eslintrc +0 -11
- package/server/node_modules/debug/.travis.yml +0 -14
- package/server/node_modules/debug/CHANGELOG.md +0 -362
- package/server/node_modules/debug/LICENSE +0 -19
- package/server/node_modules/debug/Makefile +0 -50
- package/server/node_modules/debug/README.md +0 -312
- package/server/node_modules/debug/component.json +0 -19
- package/server/node_modules/debug/karma.conf.js +0 -70
- package/server/node_modules/debug/node.js +0 -1
- package/server/node_modules/debug/package.json +0 -49
- package/server/node_modules/debug/src/browser.js +0 -185
- package/server/node_modules/debug/src/debug.js +0 -202
- package/server/node_modules/debug/src/index.js +0 -10
- package/server/node_modules/debug/src/inspector-log.js +0 -15
- package/server/node_modules/debug/src/node.js +0 -248
- package/server/node_modules/depd/History.md +0 -103
- package/server/node_modules/depd/LICENSE +0 -22
- package/server/node_modules/depd/Readme.md +0 -280
- package/server/node_modules/depd/index.js +0 -538
- package/server/node_modules/depd/lib/browser/index.js +0 -77
- package/server/node_modules/depd/package.json +0 -45
- package/server/node_modules/destroy/LICENSE +0 -23
- package/server/node_modules/destroy/README.md +0 -63
- package/server/node_modules/destroy/index.js +0 -209
- package/server/node_modules/destroy/package.json +0 -48
- package/server/node_modules/dunder-proto/.eslintrc +0 -5
- package/server/node_modules/dunder-proto/.github/FUNDING.yml +0 -12
- package/server/node_modules/dunder-proto/.nycrc +0 -13
- package/server/node_modules/dunder-proto/CHANGELOG.md +0 -24
- package/server/node_modules/dunder-proto/LICENSE +0 -21
- package/server/node_modules/dunder-proto/README.md +0 -54
- package/server/node_modules/dunder-proto/get.d.ts +0 -5
- package/server/node_modules/dunder-proto/get.js +0 -30
- package/server/node_modules/dunder-proto/package.json +0 -76
- package/server/node_modules/dunder-proto/set.d.ts +0 -5
- package/server/node_modules/dunder-proto/set.js +0 -35
- package/server/node_modules/dunder-proto/test/get.js +0 -34
- package/server/node_modules/dunder-proto/test/index.js +0 -4
- package/server/node_modules/dunder-proto/test/set.js +0 -50
- package/server/node_modules/dunder-proto/tsconfig.json +0 -9
- package/server/node_modules/ee-first/LICENSE +0 -22
- package/server/node_modules/ee-first/README.md +0 -80
- package/server/node_modules/ee-first/index.js +0 -95
- package/server/node_modules/ee-first/package.json +0 -29
- package/server/node_modules/encodeurl/LICENSE +0 -22
- package/server/node_modules/encodeurl/README.md +0 -109
- package/server/node_modules/encodeurl/index.js +0 -60
- package/server/node_modules/encodeurl/package.json +0 -40
- package/server/node_modules/es-define-property/.eslintrc +0 -13
- package/server/node_modules/es-define-property/.github/FUNDING.yml +0 -12
- package/server/node_modules/es-define-property/.nycrc +0 -9
- package/server/node_modules/es-define-property/CHANGELOG.md +0 -29
- package/server/node_modules/es-define-property/LICENSE +0 -21
- package/server/node_modules/es-define-property/README.md +0 -49
- package/server/node_modules/es-define-property/index.d.ts +0 -3
- package/server/node_modules/es-define-property/index.js +0 -14
- package/server/node_modules/es-define-property/package.json +0 -81
- package/server/node_modules/es-define-property/test/index.js +0 -56
- package/server/node_modules/es-define-property/tsconfig.json +0 -10
- package/server/node_modules/es-errors/.eslintrc +0 -5
- package/server/node_modules/es-errors/.github/FUNDING.yml +0 -12
- package/server/node_modules/es-errors/CHANGELOG.md +0 -40
- package/server/node_modules/es-errors/LICENSE +0 -21
- package/server/node_modules/es-errors/README.md +0 -55
- package/server/node_modules/es-errors/eval.d.ts +0 -3
- package/server/node_modules/es-errors/eval.js +0 -4
- package/server/node_modules/es-errors/index.d.ts +0 -3
- package/server/node_modules/es-errors/index.js +0 -4
- package/server/node_modules/es-errors/package.json +0 -80
- package/server/node_modules/es-errors/range.d.ts +0 -3
- package/server/node_modules/es-errors/range.js +0 -4
- package/server/node_modules/es-errors/ref.d.ts +0 -3
- package/server/node_modules/es-errors/ref.js +0 -4
- package/server/node_modules/es-errors/syntax.d.ts +0 -3
- package/server/node_modules/es-errors/syntax.js +0 -4
- package/server/node_modules/es-errors/test/index.js +0 -19
- package/server/node_modules/es-errors/tsconfig.json +0 -49
- package/server/node_modules/es-errors/type.d.ts +0 -3
- package/server/node_modules/es-errors/type.js +0 -4
- package/server/node_modules/es-errors/uri.d.ts +0 -3
- package/server/node_modules/es-errors/uri.js +0 -4
- package/server/node_modules/es-object-atoms/.eslintrc +0 -16
- package/server/node_modules/es-object-atoms/.github/FUNDING.yml +0 -12
- package/server/node_modules/es-object-atoms/CHANGELOG.md +0 -37
- package/server/node_modules/es-object-atoms/LICENSE +0 -21
- package/server/node_modules/es-object-atoms/README.md +0 -63
- package/server/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +0 -3
- package/server/node_modules/es-object-atoms/RequireObjectCoercible.js +0 -11
- package/server/node_modules/es-object-atoms/ToObject.d.ts +0 -7
- package/server/node_modules/es-object-atoms/ToObject.js +0 -10
- package/server/node_modules/es-object-atoms/index.d.ts +0 -3
- package/server/node_modules/es-object-atoms/index.js +0 -4
- package/server/node_modules/es-object-atoms/isObject.d.ts +0 -3
- package/server/node_modules/es-object-atoms/isObject.js +0 -6
- package/server/node_modules/es-object-atoms/package.json +0 -80
- package/server/node_modules/es-object-atoms/test/index.js +0 -38
- package/server/node_modules/es-object-atoms/tsconfig.json +0 -6
- package/server/node_modules/escape-html/LICENSE +0 -24
- package/server/node_modules/escape-html/Readme.md +0 -43
- package/server/node_modules/escape-html/index.js +0 -78
- package/server/node_modules/escape-html/package.json +0 -24
- package/server/node_modules/etag/HISTORY.md +0 -83
- package/server/node_modules/etag/LICENSE +0 -22
- package/server/node_modules/etag/README.md +0 -159
- package/server/node_modules/etag/index.js +0 -131
- package/server/node_modules/etag/package.json +0 -47
- package/server/node_modules/eventemitter3/LICENSE +0 -21
- package/server/node_modules/eventemitter3/README.md +0 -94
- package/server/node_modules/eventemitter3/index.d.ts +0 -134
- package/server/node_modules/eventemitter3/index.js +0 -336
- package/server/node_modules/eventemitter3/package.json +0 -56
- package/server/node_modules/eventemitter3/umd/eventemitter3.js +0 -340
- package/server/node_modules/eventemitter3/umd/eventemitter3.min.js +0 -1
- package/server/node_modules/eventemitter3/umd/eventemitter3.min.js.map +0 -1
- package/server/node_modules/express/History.md +0 -3667
- package/server/node_modules/express/LICENSE +0 -24
- package/server/node_modules/express/Readme.md +0 -260
- package/server/node_modules/express/index.js +0 -11
- package/server/node_modules/express/lib/application.js +0 -661
- package/server/node_modules/express/lib/express.js +0 -116
- package/server/node_modules/express/lib/middleware/init.js +0 -43
- package/server/node_modules/express/lib/middleware/query.js +0 -47
- package/server/node_modules/express/lib/request.js +0 -525
- package/server/node_modules/express/lib/response.js +0 -1179
- package/server/node_modules/express/lib/router/index.js +0 -673
- package/server/node_modules/express/lib/router/layer.js +0 -181
- package/server/node_modules/express/lib/router/route.js +0 -230
- package/server/node_modules/express/lib/utils.js +0 -303
- package/server/node_modules/express/lib/view.js +0 -182
- package/server/node_modules/express/package.json +0 -102
- package/server/node_modules/fill-range/LICENSE +0 -21
- package/server/node_modules/fill-range/README.md +0 -237
- package/server/node_modules/fill-range/index.js +0 -248
- package/server/node_modules/fill-range/package.json +0 -74
- package/server/node_modules/finalhandler/HISTORY.md +0 -216
- package/server/node_modules/finalhandler/LICENSE +0 -22
- package/server/node_modules/finalhandler/README.md +0 -147
- package/server/node_modules/finalhandler/SECURITY.md +0 -25
- package/server/node_modules/finalhandler/index.js +0 -341
- package/server/node_modules/finalhandler/package.json +0 -47
- package/server/node_modules/follow-redirects/LICENSE +0 -18
- package/server/node_modules/follow-redirects/README.md +0 -155
- package/server/node_modules/follow-redirects/debug.js +0 -15
- package/server/node_modules/follow-redirects/http.js +0 -1
- package/server/node_modules/follow-redirects/https.js +0 -1
- package/server/node_modules/follow-redirects/index.js +0 -686
- package/server/node_modules/follow-redirects/package.json +0 -58
- package/server/node_modules/forwarded/HISTORY.md +0 -21
- package/server/node_modules/forwarded/LICENSE +0 -22
- package/server/node_modules/forwarded/README.md +0 -57
- package/server/node_modules/forwarded/index.js +0 -90
- package/server/node_modules/forwarded/package.json +0 -45
- package/server/node_modules/fresh/HISTORY.md +0 -70
- package/server/node_modules/fresh/LICENSE +0 -23
- package/server/node_modules/fresh/README.md +0 -119
- package/server/node_modules/fresh/index.js +0 -137
- package/server/node_modules/fresh/package.json +0 -46
- package/server/node_modules/function-bind/.eslintrc +0 -21
- package/server/node_modules/function-bind/.github/FUNDING.yml +0 -12
- package/server/node_modules/function-bind/.github/SECURITY.md +0 -3
- package/server/node_modules/function-bind/.nycrc +0 -13
- package/server/node_modules/function-bind/CHANGELOG.md +0 -136
- package/server/node_modules/function-bind/LICENSE +0 -20
- package/server/node_modules/function-bind/README.md +0 -46
- package/server/node_modules/function-bind/implementation.js +0 -84
- package/server/node_modules/function-bind/index.js +0 -5
- package/server/node_modules/function-bind/package.json +0 -87
- package/server/node_modules/function-bind/test/.eslintrc +0 -9
- package/server/node_modules/function-bind/test/index.js +0 -252
- package/server/node_modules/get-intrinsic/.eslintrc +0 -42
- package/server/node_modules/get-intrinsic/.github/FUNDING.yml +0 -12
- package/server/node_modules/get-intrinsic/.nycrc +0 -9
- package/server/node_modules/get-intrinsic/CHANGELOG.md +0 -186
- package/server/node_modules/get-intrinsic/LICENSE +0 -21
- package/server/node_modules/get-intrinsic/README.md +0 -71
- package/server/node_modules/get-intrinsic/index.js +0 -378
- package/server/node_modules/get-intrinsic/package.json +0 -97
- package/server/node_modules/get-intrinsic/test/GetIntrinsic.js +0 -274
- package/server/node_modules/get-proto/.eslintrc +0 -10
- package/server/node_modules/get-proto/.github/FUNDING.yml +0 -12
- package/server/node_modules/get-proto/.nycrc +0 -9
- package/server/node_modules/get-proto/CHANGELOG.md +0 -21
- package/server/node_modules/get-proto/LICENSE +0 -21
- package/server/node_modules/get-proto/Object.getPrototypeOf.d.ts +0 -5
- package/server/node_modules/get-proto/Object.getPrototypeOf.js +0 -6
- package/server/node_modules/get-proto/README.md +0 -50
- package/server/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +0 -3
- package/server/node_modules/get-proto/Reflect.getPrototypeOf.js +0 -4
- package/server/node_modules/get-proto/index.d.ts +0 -5
- package/server/node_modules/get-proto/index.js +0 -27
- package/server/node_modules/get-proto/package.json +0 -81
- package/server/node_modules/get-proto/test/index.js +0 -68
- package/server/node_modules/get-proto/tsconfig.json +0 -9
- package/server/node_modules/glob-parent/CHANGELOG.md +0 -110
- package/server/node_modules/glob-parent/LICENSE +0 -15
- package/server/node_modules/glob-parent/README.md +0 -137
- package/server/node_modules/glob-parent/index.js +0 -42
- package/server/node_modules/glob-parent/package.json +0 -48
- package/server/node_modules/gopd/.eslintrc +0 -16
- package/server/node_modules/gopd/.github/FUNDING.yml +0 -12
- package/server/node_modules/gopd/CHANGELOG.md +0 -45
- package/server/node_modules/gopd/LICENSE +0 -21
- package/server/node_modules/gopd/README.md +0 -40
- package/server/node_modules/gopd/gOPD.d.ts +0 -1
- package/server/node_modules/gopd/gOPD.js +0 -4
- package/server/node_modules/gopd/index.d.ts +0 -5
- package/server/node_modules/gopd/index.js +0 -15
- package/server/node_modules/gopd/package.json +0 -77
- package/server/node_modules/gopd/test/index.js +0 -36
- package/server/node_modules/gopd/tsconfig.json +0 -9
- package/server/node_modules/has-symbols/.eslintrc +0 -11
- package/server/node_modules/has-symbols/.github/FUNDING.yml +0 -12
- package/server/node_modules/has-symbols/.nycrc +0 -9
- package/server/node_modules/has-symbols/CHANGELOG.md +0 -91
- package/server/node_modules/has-symbols/LICENSE +0 -21
- package/server/node_modules/has-symbols/README.md +0 -46
- package/server/node_modules/has-symbols/index.d.ts +0 -3
- package/server/node_modules/has-symbols/index.js +0 -14
- package/server/node_modules/has-symbols/package.json +0 -111
- package/server/node_modules/has-symbols/shams.d.ts +0 -3
- package/server/node_modules/has-symbols/shams.js +0 -45
- package/server/node_modules/has-symbols/test/index.js +0 -22
- package/server/node_modules/has-symbols/test/shams/core-js.js +0 -29
- package/server/node_modules/has-symbols/test/shams/get-own-property-symbols.js +0 -29
- package/server/node_modules/has-symbols/test/tests.js +0 -58
- package/server/node_modules/has-symbols/tsconfig.json +0 -10
- package/server/node_modules/hasown/.eslintrc +0 -5
- package/server/node_modules/hasown/.github/FUNDING.yml +0 -12
- package/server/node_modules/hasown/.nycrc +0 -13
- package/server/node_modules/hasown/CHANGELOG.md +0 -40
- package/server/node_modules/hasown/LICENSE +0 -21
- package/server/node_modules/hasown/README.md +0 -40
- package/server/node_modules/hasown/index.d.ts +0 -3
- package/server/node_modules/hasown/index.js +0 -8
- package/server/node_modules/hasown/package.json +0 -92
- package/server/node_modules/hasown/tsconfig.json +0 -6
- package/server/node_modules/http-errors/HISTORY.md +0 -186
- package/server/node_modules/http-errors/LICENSE +0 -23
- package/server/node_modules/http-errors/README.md +0 -169
- package/server/node_modules/http-errors/index.js +0 -290
- package/server/node_modules/http-errors/package.json +0 -54
- package/server/node_modules/http-proxy/.auto-changelog +0 -6
- package/server/node_modules/http-proxy/.gitattributes +0 -1
- package/server/node_modules/http-proxy/CHANGELOG.md +0 -1872
- package/server/node_modules/http-proxy/CODE_OF_CONDUCT.md +0 -74
- package/server/node_modules/http-proxy/LICENSE +0 -23
- package/server/node_modules/http-proxy/README.md +0 -568
- package/server/node_modules/http-proxy/codecov.yml +0 -10
- package/server/node_modules/http-proxy/index.js +0 -13
- package/server/node_modules/http-proxy/lib/http-proxy/common.js +0 -248
- package/server/node_modules/http-proxy/lib/http-proxy/index.js +0 -185
- package/server/node_modules/http-proxy/lib/http-proxy/passes/web-incoming.js +0 -194
- package/server/node_modules/http-proxy/lib/http-proxy/passes/web-outgoing.js +0 -147
- package/server/node_modules/http-proxy/lib/http-proxy/passes/ws-incoming.js +0 -162
- package/server/node_modules/http-proxy/lib/http-proxy.js +0 -66
- package/server/node_modules/http-proxy/package.json +0 -41
- package/server/node_modules/http-proxy/renovate.json +0 -19
- package/server/node_modules/http-proxy-middleware/LICENSE +0 -22
- package/server/node_modules/http-proxy-middleware/README.md +0 -598
- package/server/node_modules/http-proxy-middleware/dist/_handlers.d.ts +0 -4
- package/server/node_modules/http-proxy-middleware/dist/_handlers.js +0 -84
- package/server/node_modules/http-proxy-middleware/dist/config-factory.d.ts +0 -6
- package/server/node_modules/http-proxy-middleware/dist/config-factory.js +0 -80
- package/server/node_modules/http-proxy-middleware/dist/context-matcher.d.ts +0 -2
- package/server/node_modules/http-proxy-middleware/dist/context-matcher.js +0 -81
- package/server/node_modules/http-proxy-middleware/dist/errors.d.ts +0 -6
- package/server/node_modules/http-proxy-middleware/dist/errors.js +0 -10
- package/server/node_modules/http-proxy-middleware/dist/handlers/fix-request-body.d.ts +0 -6
- package/server/node_modules/http-proxy-middleware/dist/handlers/fix-request-body.js +0 -33
- package/server/node_modules/http-proxy-middleware/dist/handlers/index.d.ts +0 -1
- package/server/node_modules/http-proxy-middleware/dist/handlers/index.js +0 -13
- package/server/node_modules/http-proxy-middleware/dist/handlers/public.d.ts +0 -2
- package/server/node_modules/http-proxy-middleware/dist/handlers/public.js +0 -7
- package/server/node_modules/http-proxy-middleware/dist/handlers/response-interceptor.d.ts +0 -12
- package/server/node_modules/http-proxy-middleware/dist/handlers/response-interceptor.js +0 -86
- package/server/node_modules/http-proxy-middleware/dist/http-proxy-middleware.d.ts +0 -35
- package/server/node_modules/http-proxy-middleware/dist/http-proxy-middleware.js +0 -163
- package/server/node_modules/http-proxy-middleware/dist/index.d.ts +0 -4
- package/server/node_modules/http-proxy-middleware/dist/index.js +0 -20
- package/server/node_modules/http-proxy-middleware/dist/logger.d.ts +0 -14
- package/server/node_modules/http-proxy-middleware/dist/logger.js +0 -135
- package/server/node_modules/http-proxy-middleware/dist/path-rewriter.d.ts +0 -7
- package/server/node_modules/http-proxy-middleware/dist/path-rewriter.js +0 -66
- package/server/node_modules/http-proxy-middleware/dist/router.d.ts +0 -1
- package/server/node_modules/http-proxy-middleware/dist/router.js +0 -46
- package/server/node_modules/http-proxy-middleware/dist/types.d.ts +0 -54
- package/server/node_modules/http-proxy-middleware/dist/types.js +0 -6
- package/server/node_modules/http-proxy-middleware/package.json +0 -109
- package/server/node_modules/iconv-lite/Changelog.md +0 -162
- package/server/node_modules/iconv-lite/LICENSE +0 -21
- package/server/node_modules/iconv-lite/README.md +0 -156
- package/server/node_modules/iconv-lite/encodings/dbcs-codec.js +0 -555
- package/server/node_modules/iconv-lite/encodings/dbcs-data.js +0 -176
- package/server/node_modules/iconv-lite/encodings/index.js +0 -22
- package/server/node_modules/iconv-lite/encodings/internal.js +0 -188
- package/server/node_modules/iconv-lite/encodings/sbcs-codec.js +0 -72
- package/server/node_modules/iconv-lite/encodings/sbcs-data-generated.js +0 -451
- package/server/node_modules/iconv-lite/encodings/sbcs-data.js +0 -174
- package/server/node_modules/iconv-lite/encodings/tables/big5-added.json +0 -122
- package/server/node_modules/iconv-lite/encodings/tables/cp936.json +0 -264
- package/server/node_modules/iconv-lite/encodings/tables/cp949.json +0 -273
- package/server/node_modules/iconv-lite/encodings/tables/cp950.json +0 -177
- package/server/node_modules/iconv-lite/encodings/tables/eucjp.json +0 -182
- package/server/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +0 -1
- package/server/node_modules/iconv-lite/encodings/tables/gbk-added.json +0 -55
- package/server/node_modules/iconv-lite/encodings/tables/shiftjis.json +0 -125
- package/server/node_modules/iconv-lite/encodings/utf16.js +0 -177
- package/server/node_modules/iconv-lite/encodings/utf7.js +0 -290
- package/server/node_modules/iconv-lite/lib/bom-handling.js +0 -52
- package/server/node_modules/iconv-lite/lib/extend-node.js +0 -217
- package/server/node_modules/iconv-lite/lib/index.d.ts +0 -24
- package/server/node_modules/iconv-lite/lib/index.js +0 -153
- package/server/node_modules/iconv-lite/lib/streams.js +0 -121
- package/server/node_modules/iconv-lite/package.json +0 -46
- package/server/node_modules/inherits/LICENSE +0 -16
- package/server/node_modules/inherits/README.md +0 -42
- package/server/node_modules/inherits/inherits.js +0 -9
- package/server/node_modules/inherits/inherits_browser.js +0 -27
- package/server/node_modules/inherits/package.json +0 -29
- package/server/node_modules/ipaddr.js/LICENSE +0 -19
- package/server/node_modules/ipaddr.js/README.md +0 -233
- package/server/node_modules/ipaddr.js/ipaddr.min.js +0 -1
- package/server/node_modules/ipaddr.js/lib/ipaddr.js +0 -673
- package/server/node_modules/ipaddr.js/lib/ipaddr.js.d.ts +0 -68
- package/server/node_modules/ipaddr.js/package.json +0 -35
- package/server/node_modules/is-binary-path/index.d.ts +0 -17
- package/server/node_modules/is-binary-path/index.js +0 -7
- package/server/node_modules/is-binary-path/license +0 -9
- package/server/node_modules/is-binary-path/package.json +0 -40
- package/server/node_modules/is-binary-path/readme.md +0 -34
- package/server/node_modules/is-extglob/LICENSE +0 -21
- package/server/node_modules/is-extglob/README.md +0 -107
- package/server/node_modules/is-extglob/index.js +0 -20
- package/server/node_modules/is-extglob/package.json +0 -69
- package/server/node_modules/is-glob/LICENSE +0 -21
- package/server/node_modules/is-glob/README.md +0 -206
- package/server/node_modules/is-glob/index.js +0 -150
- package/server/node_modules/is-glob/package.json +0 -81
- package/server/node_modules/is-number/LICENSE +0 -21
- package/server/node_modules/is-number/README.md +0 -187
- package/server/node_modules/is-number/index.js +0 -18
- package/server/node_modules/is-number/package.json +0 -82
- package/server/node_modules/is-plain-obj/index.d.ts +0 -29
- package/server/node_modules/is-plain-obj/index.js +0 -10
- package/server/node_modules/is-plain-obj/license +0 -9
- package/server/node_modules/is-plain-obj/package.json +0 -39
- package/server/node_modules/is-plain-obj/readme.md +0 -51
- package/server/node_modules/math-intrinsics/.eslintrc +0 -16
- package/server/node_modules/math-intrinsics/.github/FUNDING.yml +0 -12
- package/server/node_modules/math-intrinsics/CHANGELOG.md +0 -24
- package/server/node_modules/math-intrinsics/LICENSE +0 -21
- package/server/node_modules/math-intrinsics/README.md +0 -50
- package/server/node_modules/math-intrinsics/abs.d.ts +0 -1
- package/server/node_modules/math-intrinsics/abs.js +0 -4
- package/server/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +0 -3
- package/server/node_modules/math-intrinsics/constants/maxArrayLength.js +0 -4
- package/server/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +0 -3
- package/server/node_modules/math-intrinsics/constants/maxSafeInteger.js +0 -5
- package/server/node_modules/math-intrinsics/constants/maxValue.d.ts +0 -3
- package/server/node_modules/math-intrinsics/constants/maxValue.js +0 -5
- package/server/node_modules/math-intrinsics/floor.d.ts +0 -1
- package/server/node_modules/math-intrinsics/floor.js +0 -4
- package/server/node_modules/math-intrinsics/isFinite.d.ts +0 -3
- package/server/node_modules/math-intrinsics/isFinite.js +0 -12
- package/server/node_modules/math-intrinsics/isInteger.d.ts +0 -3
- package/server/node_modules/math-intrinsics/isInteger.js +0 -16
- package/server/node_modules/math-intrinsics/isNaN.d.ts +0 -1
- package/server/node_modules/math-intrinsics/isNaN.js +0 -6
- package/server/node_modules/math-intrinsics/isNegativeZero.d.ts +0 -3
- package/server/node_modules/math-intrinsics/isNegativeZero.js +0 -6
- package/server/node_modules/math-intrinsics/max.d.ts +0 -1
- package/server/node_modules/math-intrinsics/max.js +0 -4
- package/server/node_modules/math-intrinsics/min.d.ts +0 -1
- package/server/node_modules/math-intrinsics/min.js +0 -4
- package/server/node_modules/math-intrinsics/mod.d.ts +0 -3
- package/server/node_modules/math-intrinsics/mod.js +0 -9
- package/server/node_modules/math-intrinsics/package.json +0 -86
- package/server/node_modules/math-intrinsics/pow.d.ts +0 -1
- package/server/node_modules/math-intrinsics/pow.js +0 -4
- package/server/node_modules/math-intrinsics/round.d.ts +0 -1
- package/server/node_modules/math-intrinsics/round.js +0 -4
- package/server/node_modules/math-intrinsics/sign.d.ts +0 -3
- package/server/node_modules/math-intrinsics/sign.js +0 -11
- package/server/node_modules/math-intrinsics/test/index.js +0 -192
- package/server/node_modules/math-intrinsics/tsconfig.json +0 -3
- package/server/node_modules/media-typer/HISTORY.md +0 -22
- package/server/node_modules/media-typer/LICENSE +0 -22
- package/server/node_modules/media-typer/README.md +0 -81
- package/server/node_modules/media-typer/index.js +0 -270
- package/server/node_modules/media-typer/package.json +0 -26
- package/server/node_modules/merge-descriptors/HISTORY.md +0 -21
- package/server/node_modules/merge-descriptors/LICENSE +0 -23
- package/server/node_modules/merge-descriptors/README.md +0 -49
- package/server/node_modules/merge-descriptors/index.js +0 -60
- package/server/node_modules/merge-descriptors/package.json +0 -39
- package/server/node_modules/methods/HISTORY.md +0 -29
- package/server/node_modules/methods/LICENSE +0 -24
- package/server/node_modules/methods/README.md +0 -51
- package/server/node_modules/methods/index.js +0 -69
- package/server/node_modules/methods/package.json +0 -36
- package/server/node_modules/micromatch/LICENSE +0 -21
- package/server/node_modules/micromatch/README.md +0 -1024
- package/server/node_modules/micromatch/index.js +0 -474
- package/server/node_modules/micromatch/package.json +0 -119
- package/server/node_modules/mime/CHANGELOG.md +0 -164
- package/server/node_modules/mime/LICENSE +0 -21
- package/server/node_modules/mime/README.md +0 -90
- package/server/node_modules/mime/cli.js +0 -8
- package/server/node_modules/mime/mime.js +0 -108
- package/server/node_modules/mime/package.json +0 -44
- package/server/node_modules/mime/src/build.js +0 -53
- package/server/node_modules/mime/src/test.js +0 -60
- package/server/node_modules/mime/types.json +0 -1
- package/server/node_modules/mime-db/HISTORY.md +0 -507
- package/server/node_modules/mime-db/LICENSE +0 -23
- package/server/node_modules/mime-db/README.md +0 -100
- package/server/node_modules/mime-db/db.json +0 -8519
- package/server/node_modules/mime-db/index.js +0 -12
- package/server/node_modules/mime-db/package.json +0 -60
- package/server/node_modules/mime-types/HISTORY.md +0 -397
- package/server/node_modules/mime-types/LICENSE +0 -23
- package/server/node_modules/mime-types/README.md +0 -113
- package/server/node_modules/mime-types/index.js +0 -188
- package/server/node_modules/mime-types/package.json +0 -44
- package/server/node_modules/ms/index.js +0 -152
- package/server/node_modules/ms/license.md +0 -21
- package/server/node_modules/ms/package.json +0 -37
- package/server/node_modules/ms/readme.md +0 -51
- package/server/node_modules/negotiator/HISTORY.md +0 -108
- package/server/node_modules/negotiator/LICENSE +0 -24
- package/server/node_modules/negotiator/README.md +0 -203
- package/server/node_modules/negotiator/index.js +0 -82
- package/server/node_modules/negotiator/lib/charset.js +0 -169
- package/server/node_modules/negotiator/lib/encoding.js +0 -184
- package/server/node_modules/negotiator/lib/language.js +0 -179
- package/server/node_modules/negotiator/lib/mediaType.js +0 -294
- package/server/node_modules/negotiator/package.json +0 -42
- package/server/node_modules/normalize-path/LICENSE +0 -21
- package/server/node_modules/normalize-path/README.md +0 -127
- package/server/node_modules/normalize-path/index.js +0 -35
- package/server/node_modules/normalize-path/package.json +0 -77
- package/server/node_modules/object-inspect/.eslintrc +0 -53
- package/server/node_modules/object-inspect/.github/FUNDING.yml +0 -12
- package/server/node_modules/object-inspect/.nycrc +0 -13
- package/server/node_modules/object-inspect/CHANGELOG.md +0 -424
- package/server/node_modules/object-inspect/LICENSE +0 -21
- package/server/node_modules/object-inspect/example/all.js +0 -23
- package/server/node_modules/object-inspect/example/circular.js +0 -6
- package/server/node_modules/object-inspect/example/fn.js +0 -5
- package/server/node_modules/object-inspect/example/inspect.js +0 -10
- package/server/node_modules/object-inspect/index.js +0 -544
- package/server/node_modules/object-inspect/package-support.json +0 -20
- package/server/node_modules/object-inspect/package.json +0 -105
- package/server/node_modules/object-inspect/readme.markdown +0 -84
- package/server/node_modules/object-inspect/test/bigint.js +0 -58
- package/server/node_modules/object-inspect/test/browser/dom.js +0 -15
- package/server/node_modules/object-inspect/test/circular.js +0 -16
- package/server/node_modules/object-inspect/test/deep.js +0 -12
- package/server/node_modules/object-inspect/test/element.js +0 -53
- package/server/node_modules/object-inspect/test/err.js +0 -48
- package/server/node_modules/object-inspect/test/fakes.js +0 -29
- package/server/node_modules/object-inspect/test/fn.js +0 -76
- package/server/node_modules/object-inspect/test/global.js +0 -17
- package/server/node_modules/object-inspect/test/has.js +0 -15
- package/server/node_modules/object-inspect/test/holes.js +0 -15
- package/server/node_modules/object-inspect/test/indent-option.js +0 -271
- package/server/node_modules/object-inspect/test/inspect.js +0 -139
- package/server/node_modules/object-inspect/test/lowbyte.js +0 -12
- package/server/node_modules/object-inspect/test/number.js +0 -58
- package/server/node_modules/object-inspect/test/quoteStyle.js +0 -26
- package/server/node_modules/object-inspect/test/toStringTag.js +0 -40
- package/server/node_modules/object-inspect/test/undef.js +0 -12
- package/server/node_modules/object-inspect/test/values.js +0 -261
- package/server/node_modules/object-inspect/test-core-js.js +0 -26
- package/server/node_modules/object-inspect/util.inspect.js +0 -1
- package/server/node_modules/on-finished/HISTORY.md +0 -98
- package/server/node_modules/on-finished/LICENSE +0 -23
- package/server/node_modules/on-finished/README.md +0 -162
- package/server/node_modules/on-finished/index.js +0 -234
- package/server/node_modules/on-finished/package.json +0 -39
- package/server/node_modules/parseurl/HISTORY.md +0 -58
- package/server/node_modules/parseurl/LICENSE +0 -24
- package/server/node_modules/parseurl/README.md +0 -133
- package/server/node_modules/parseurl/index.js +0 -158
- package/server/node_modules/parseurl/package.json +0 -40
- package/server/node_modules/path-to-regexp/LICENSE +0 -21
- package/server/node_modules/path-to-regexp/Readme.md +0 -35
- package/server/node_modules/path-to-regexp/index.js +0 -156
- package/server/node_modules/path-to-regexp/package.json +0 -30
- package/server/node_modules/pg/LICENSE +0 -21
- package/server/node_modules/pg/README.md +0 -95
- package/server/node_modules/pg/esm/index.mjs +0 -20
- package/server/node_modules/pg/lib/client.js +0 -697
- package/server/node_modules/pg/lib/connection-parameters.js +0 -171
- package/server/node_modules/pg/lib/connection.js +0 -221
- package/server/node_modules/pg/lib/crypto/cert-signatures.js +0 -122
- package/server/node_modules/pg/lib/crypto/sasl.js +0 -212
- package/server/node_modules/pg/lib/crypto/utils-legacy.js +0 -43
- package/server/node_modules/pg/lib/crypto/utils-webcrypto.js +0 -89
- package/server/node_modules/pg/lib/crypto/utils.js +0 -9
- package/server/node_modules/pg/lib/defaults.js +0 -91
- package/server/node_modules/pg/lib/index.js +0 -73
- package/server/node_modules/pg/lib/native/client.js +0 -308
- package/server/node_modules/pg/lib/native/index.js +0 -2
- package/server/node_modules/pg/lib/native/query.js +0 -165
- package/server/node_modules/pg/lib/query.js +0 -252
- package/server/node_modules/pg/lib/result.js +0 -109
- package/server/node_modules/pg/lib/stream.js +0 -83
- package/server/node_modules/pg/lib/type-overrides.js +0 -35
- package/server/node_modules/pg/lib/utils.js +0 -217
- package/server/node_modules/pg/package.json +0 -76
- package/server/node_modules/pg-cloudflare/LICENSE +0 -21
- package/server/node_modules/pg-cloudflare/README.md +0 -112
- package/server/node_modules/pg-cloudflare/dist/empty.d.ts +0 -2
- package/server/node_modules/pg-cloudflare/dist/empty.js +0 -6
- package/server/node_modules/pg-cloudflare/dist/empty.js.map +0 -1
- package/server/node_modules/pg-cloudflare/dist/index.d.ts +0 -31
- package/server/node_modules/pg-cloudflare/dist/index.js +0 -152
- package/server/node_modules/pg-cloudflare/dist/index.js.map +0 -1
- package/server/node_modules/pg-cloudflare/esm/index.mjs +0 -3
- package/server/node_modules/pg-cloudflare/package.json +0 -39
- package/server/node_modules/pg-cloudflare/src/empty.ts +0 -3
- package/server/node_modules/pg-cloudflare/src/index.ts +0 -166
- package/server/node_modules/pg-cloudflare/src/types.d.ts +0 -25
- package/server/node_modules/pg-connection-string/LICENSE +0 -21
- package/server/node_modules/pg-connection-string/README.md +0 -105
- package/server/node_modules/pg-connection-string/esm/index.mjs +0 -8
- package/server/node_modules/pg-connection-string/index.d.ts +0 -36
- package/server/node_modules/pg-connection-string/index.js +0 -233
- package/server/node_modules/pg-connection-string/package.json +0 -52
- package/server/node_modules/pg-int8/LICENSE +0 -13
- package/server/node_modules/pg-int8/README.md +0 -16
- package/server/node_modules/pg-int8/index.js +0 -100
- package/server/node_modules/pg-int8/package.json +0 -24
- package/server/node_modules/pg-pool/LICENSE +0 -21
- package/server/node_modules/pg-pool/README.md +0 -358
- package/server/node_modules/pg-pool/esm/index.mjs +0 -5
- package/server/node_modules/pg-pool/index.js +0 -481
- package/server/node_modules/pg-pool/package.json +0 -51
- package/server/node_modules/pg-protocol/LICENSE +0 -21
- package/server/node_modules/pg-protocol/README.md +0 -3
- package/server/node_modules/pg-protocol/dist/b.js +0 -23
- package/server/node_modules/pg-protocol/dist/b.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/buffer-reader.d.ts +0 -15
- package/server/node_modules/pg-protocol/dist/buffer-reader.js +0 -56
- package/server/node_modules/pg-protocol/dist/buffer-reader.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/buffer-writer.d.ts +0 -16
- package/server/node_modules/pg-protocol/dist/buffer-writer.js +0 -81
- package/server/node_modules/pg-protocol/dist/buffer-writer.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/inbound-parser.test.js +0 -530
- package/server/node_modules/pg-protocol/dist/inbound-parser.test.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/index.d.ts +0 -6
- package/server/node_modules/pg-protocol/dist/index.js +0 -15
- package/server/node_modules/pg-protocol/dist/index.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/messages.d.ts +0 -162
- package/server/node_modules/pg-protocol/dist/messages.js +0 -160
- package/server/node_modules/pg-protocol/dist/messages.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/outbound-serializer.test.js +0 -252
- package/server/node_modules/pg-protocol/dist/outbound-serializer.test.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/parser.d.ts +0 -24
- package/server/node_modules/pg-protocol/dist/parser.js +0 -324
- package/server/node_modules/pg-protocol/dist/parser.js.map +0 -1
- package/server/node_modules/pg-protocol/dist/serializer.d.ts +0 -42
- package/server/node_modules/pg-protocol/dist/serializer.js +0 -189
- package/server/node_modules/pg-protocol/dist/serializer.js.map +0 -1
- package/server/node_modules/pg-protocol/esm/index.js +0 -11
- package/server/node_modules/pg-protocol/package.json +0 -45
- package/server/node_modules/pg-protocol/src/b.ts +0 -25
- package/server/node_modules/pg-protocol/src/buffer-reader.ts +0 -60
- package/server/node_modules/pg-protocol/src/buffer-writer.ts +0 -85
- package/server/node_modules/pg-protocol/src/inbound-parser.test.ts +0 -575
- package/server/node_modules/pg-protocol/src/index.ts +0 -11
- package/server/node_modules/pg-protocol/src/messages.ts +0 -262
- package/server/node_modules/pg-protocol/src/outbound-serializer.test.ts +0 -276
- package/server/node_modules/pg-protocol/src/parser.ts +0 -413
- package/server/node_modules/pg-protocol/src/serializer.ts +0 -274
- package/server/node_modules/pg-protocol/src/testing/buffer-list.ts +0 -67
- package/server/node_modules/pg-protocol/src/testing/test-buffers.ts +0 -166
- package/server/node_modules/pg-protocol/src/types/chunky.d.ts +0 -1
- package/server/node_modules/pg-types/.travis.yml +0 -7
- package/server/node_modules/pg-types/Makefile +0 -14
- package/server/node_modules/pg-types/README.md +0 -75
- package/server/node_modules/pg-types/index.d.ts +0 -137
- package/server/node_modules/pg-types/index.js +0 -47
- package/server/node_modules/pg-types/index.test-d.ts +0 -21
- package/server/node_modules/pg-types/lib/arrayParser.js +0 -11
- package/server/node_modules/pg-types/lib/binaryParsers.js +0 -257
- package/server/node_modules/pg-types/lib/builtins.js +0 -73
- package/server/node_modules/pg-types/lib/textParsers.js +0 -215
- package/server/node_modules/pg-types/package.json +0 -42
- package/server/node_modules/pg-types/test/index.js +0 -24
- package/server/node_modules/pg-types/test/types.js +0 -597
- package/server/node_modules/pgpass/README.md +0 -74
- package/server/node_modules/pgpass/lib/helper.js +0 -233
- package/server/node_modules/pgpass/lib/index.js +0 -23
- package/server/node_modules/pgpass/package.json +0 -41
- package/server/node_modules/picomatch/CHANGELOG.md +0 -136
- package/server/node_modules/picomatch/LICENSE +0 -21
- package/server/node_modules/picomatch/README.md +0 -708
- package/server/node_modules/picomatch/index.js +0 -3
- package/server/node_modules/picomatch/lib/constants.js +0 -179
- package/server/node_modules/picomatch/lib/parse.js +0 -1091
- package/server/node_modules/picomatch/lib/picomatch.js +0 -342
- package/server/node_modules/picomatch/lib/scan.js +0 -391
- package/server/node_modules/picomatch/lib/utils.js +0 -64
- package/server/node_modules/picomatch/package.json +0 -81
- package/server/node_modules/postgres-array/index.d.ts +0 -4
- package/server/node_modules/postgres-array/index.js +0 -97
- package/server/node_modules/postgres-array/license +0 -21
- package/server/node_modules/postgres-array/package.json +0 -35
- package/server/node_modules/postgres-array/readme.md +0 -43
- package/server/node_modules/postgres-bytea/index.js +0 -33
- package/server/node_modules/postgres-bytea/license +0 -21
- package/server/node_modules/postgres-bytea/package.json +0 -34
- package/server/node_modules/postgres-bytea/readme.md +0 -34
- package/server/node_modules/postgres-date/index.js +0 -116
- package/server/node_modules/postgres-date/license +0 -21
- package/server/node_modules/postgres-date/package.json +0 -33
- package/server/node_modules/postgres-date/readme.md +0 -49
- package/server/node_modules/postgres-interval/index.d.ts +0 -20
- package/server/node_modules/postgres-interval/index.js +0 -125
- package/server/node_modules/postgres-interval/license +0 -21
- package/server/node_modules/postgres-interval/package.json +0 -36
- package/server/node_modules/postgres-interval/readme.md +0 -48
- package/server/node_modules/proxy-addr/HISTORY.md +0 -161
- package/server/node_modules/proxy-addr/LICENSE +0 -22
- package/server/node_modules/proxy-addr/README.md +0 -139
- package/server/node_modules/proxy-addr/index.js +0 -327
- package/server/node_modules/proxy-addr/package.json +0 -47
- package/server/node_modules/qs/.editorconfig +0 -46
- package/server/node_modules/qs/.github/FUNDING.yml +0 -12
- package/server/node_modules/qs/.github/SECURITY.md +0 -11
- package/server/node_modules/qs/.github/THREAT_MODEL.md +0 -78
- package/server/node_modules/qs/.nycrc +0 -13
- package/server/node_modules/qs/CHANGELOG.md +0 -631
- package/server/node_modules/qs/LICENSE.md +0 -29
- package/server/node_modules/qs/README.md +0 -733
- package/server/node_modules/qs/dist/qs.js +0 -141
- package/server/node_modules/qs/eslint.config.mjs +0 -56
- package/server/node_modules/qs/lib/formats.js +0 -23
- package/server/node_modules/qs/lib/index.js +0 -11
- package/server/node_modules/qs/lib/parse.js +0 -360
- package/server/node_modules/qs/lib/stringify.js +0 -356
- package/server/node_modules/qs/lib/utils.js +0 -320
- package/server/node_modules/qs/package.json +0 -94
- package/server/node_modules/qs/test/empty-keys-cases.js +0 -267
- package/server/node_modules/qs/test/parse.js +0 -1396
- package/server/node_modules/qs/test/stringify.js +0 -1310
- package/server/node_modules/qs/test/utils.js +0 -381
- package/server/node_modules/range-parser/HISTORY.md +0 -56
- package/server/node_modules/range-parser/LICENSE +0 -23
- package/server/node_modules/range-parser/README.md +0 -84
- package/server/node_modules/range-parser/index.js +0 -162
- package/server/node_modules/range-parser/package.json +0 -44
- package/server/node_modules/raw-body/LICENSE +0 -22
- package/server/node_modules/raw-body/README.md +0 -223
- package/server/node_modules/raw-body/index.d.ts +0 -87
- package/server/node_modules/raw-body/index.js +0 -336
- package/server/node_modules/raw-body/package.json +0 -47
- package/server/node_modules/readdirp/LICENSE +0 -21
- package/server/node_modules/readdirp/README.md +0 -122
- package/server/node_modules/readdirp/index.d.ts +0 -43
- package/server/node_modules/readdirp/index.js +0 -287
- package/server/node_modules/readdirp/package.json +0 -122
- package/server/node_modules/requires-port/.travis.yml +0 -19
- package/server/node_modules/requires-port/LICENSE +0 -22
- package/server/node_modules/requires-port/README.md +0 -47
- package/server/node_modules/requires-port/index.js +0 -38
- package/server/node_modules/requires-port/package.json +0 -47
- package/server/node_modules/requires-port/test.js +0 -98
- package/server/node_modules/safe-buffer/LICENSE +0 -21
- package/server/node_modules/safe-buffer/README.md +0 -584
- package/server/node_modules/safe-buffer/index.d.ts +0 -187
- package/server/node_modules/safe-buffer/index.js +0 -65
- package/server/node_modules/safe-buffer/package.json +0 -51
- package/server/node_modules/safer-buffer/LICENSE +0 -21
- package/server/node_modules/safer-buffer/Porting-Buffer.md +0 -268
- package/server/node_modules/safer-buffer/Readme.md +0 -156
- package/server/node_modules/safer-buffer/dangerous.js +0 -58
- package/server/node_modules/safer-buffer/package.json +0 -34
- package/server/node_modules/safer-buffer/safer.js +0 -77
- package/server/node_modules/safer-buffer/tests.js +0 -406
- package/server/node_modules/send/HISTORY.md +0 -538
- package/server/node_modules/send/LICENSE +0 -23
- package/server/node_modules/send/README.md +0 -327
- package/server/node_modules/send/SECURITY.md +0 -24
- package/server/node_modules/send/index.js +0 -1142
- package/server/node_modules/send/node_modules/ms/index.js +0 -162
- package/server/node_modules/send/node_modules/ms/license.md +0 -21
- package/server/node_modules/send/node_modules/ms/package.json +0 -38
- package/server/node_modules/send/node_modules/ms/readme.md +0 -59
- package/server/node_modules/send/package.json +0 -62
- package/server/node_modules/serve-static/HISTORY.md +0 -493
- package/server/node_modules/serve-static/LICENSE +0 -25
- package/server/node_modules/serve-static/README.md +0 -257
- package/server/node_modules/serve-static/index.js +0 -209
- package/server/node_modules/serve-static/package.json +0 -42
- package/server/node_modules/setprototypeof/LICENSE +0 -13
- package/server/node_modules/setprototypeof/README.md +0 -31
- package/server/node_modules/setprototypeof/index.d.ts +0 -2
- package/server/node_modules/setprototypeof/index.js +0 -17
- package/server/node_modules/setprototypeof/package.json +0 -38
- package/server/node_modules/setprototypeof/test/index.js +0 -24
- package/server/node_modules/side-channel/.editorconfig +0 -9
- package/server/node_modules/side-channel/.eslintrc +0 -12
- package/server/node_modules/side-channel/.github/FUNDING.yml +0 -12
- package/server/node_modules/side-channel/.nycrc +0 -13
- package/server/node_modules/side-channel/CHANGELOG.md +0 -110
- package/server/node_modules/side-channel/LICENSE +0 -21
- package/server/node_modules/side-channel/README.md +0 -61
- package/server/node_modules/side-channel/index.d.ts +0 -14
- package/server/node_modules/side-channel/index.js +0 -43
- package/server/node_modules/side-channel/package.json +0 -85
- package/server/node_modules/side-channel/test/index.js +0 -104
- package/server/node_modules/side-channel/tsconfig.json +0 -9
- package/server/node_modules/side-channel-list/.editorconfig +0 -9
- package/server/node_modules/side-channel-list/.eslintrc +0 -11
- package/server/node_modules/side-channel-list/.github/FUNDING.yml +0 -12
- package/server/node_modules/side-channel-list/.nycrc +0 -13
- package/server/node_modules/side-channel-list/CHANGELOG.md +0 -15
- package/server/node_modules/side-channel-list/LICENSE +0 -21
- package/server/node_modules/side-channel-list/README.md +0 -62
- package/server/node_modules/side-channel-list/index.d.ts +0 -13
- package/server/node_modules/side-channel-list/index.js +0 -113
- package/server/node_modules/side-channel-list/list.d.ts +0 -14
- package/server/node_modules/side-channel-list/package.json +0 -77
- package/server/node_modules/side-channel-list/test/index.js +0 -104
- package/server/node_modules/side-channel-list/tsconfig.json +0 -9
- package/server/node_modules/side-channel-map/.editorconfig +0 -9
- package/server/node_modules/side-channel-map/.eslintrc +0 -11
- package/server/node_modules/side-channel-map/.github/FUNDING.yml +0 -12
- package/server/node_modules/side-channel-map/.nycrc +0 -13
- package/server/node_modules/side-channel-map/CHANGELOG.md +0 -22
- package/server/node_modules/side-channel-map/LICENSE +0 -21
- package/server/node_modules/side-channel-map/README.md +0 -62
- package/server/node_modules/side-channel-map/index.d.ts +0 -15
- package/server/node_modules/side-channel-map/index.js +0 -68
- package/server/node_modules/side-channel-map/package.json +0 -80
- package/server/node_modules/side-channel-map/test/index.js +0 -114
- package/server/node_modules/side-channel-map/tsconfig.json +0 -9
- package/server/node_modules/side-channel-weakmap/.editorconfig +0 -9
- package/server/node_modules/side-channel-weakmap/.eslintrc +0 -12
- package/server/node_modules/side-channel-weakmap/.github/FUNDING.yml +0 -12
- package/server/node_modules/side-channel-weakmap/.nycrc +0 -13
- package/server/node_modules/side-channel-weakmap/CHANGELOG.md +0 -28
- package/server/node_modules/side-channel-weakmap/LICENSE +0 -21
- package/server/node_modules/side-channel-weakmap/README.md +0 -62
- package/server/node_modules/side-channel-weakmap/index.d.ts +0 -15
- package/server/node_modules/side-channel-weakmap/index.js +0 -84
- package/server/node_modules/side-channel-weakmap/package.json +0 -87
- package/server/node_modules/side-channel-weakmap/test/index.js +0 -114
- package/server/node_modules/side-channel-weakmap/tsconfig.json +0 -9
- package/server/node_modules/split2/LICENSE +0 -13
- package/server/node_modules/split2/README.md +0 -85
- package/server/node_modules/split2/bench.js +0 -27
- package/server/node_modules/split2/index.js +0 -141
- package/server/node_modules/split2/package.json +0 -39
- package/server/node_modules/split2/test.js +0 -409
- package/server/node_modules/statuses/HISTORY.md +0 -87
- package/server/node_modules/statuses/LICENSE +0 -23
- package/server/node_modules/statuses/README.md +0 -139
- package/server/node_modules/statuses/codes.json +0 -65
- package/server/node_modules/statuses/index.js +0 -146
- package/server/node_modules/statuses/package.json +0 -49
- package/server/node_modules/sudo-prompt/CHANGELOG.md +0 -143
- package/server/node_modules/sudo-prompt/LICENSE +0 -22
- package/server/node_modules/sudo-prompt/README.md +0 -62
- package/server/node_modules/sudo-prompt/index.d.ts +0 -4
- package/server/node_modules/sudo-prompt/index.js +0 -674
- package/server/node_modules/sudo-prompt/package.json +0 -41
- package/server/node_modules/sudo-prompt/test-concurrent.js +0 -29
- package/server/node_modules/sudo-prompt/test.js +0 -65
- package/server/node_modules/to-regex-range/LICENSE +0 -21
- package/server/node_modules/to-regex-range/README.md +0 -305
- package/server/node_modules/to-regex-range/index.js +0 -288
- package/server/node_modules/to-regex-range/package.json +0 -88
- package/server/node_modules/toidentifier/HISTORY.md +0 -9
- package/server/node_modules/toidentifier/LICENSE +0 -21
- package/server/node_modules/toidentifier/README.md +0 -61
- package/server/node_modules/toidentifier/index.js +0 -32
- package/server/node_modules/toidentifier/package.json +0 -38
- package/server/node_modules/type-is/HISTORY.md +0 -259
- package/server/node_modules/type-is/LICENSE +0 -23
- package/server/node_modules/type-is/README.md +0 -170
- package/server/node_modules/type-is/index.js +0 -266
- package/server/node_modules/type-is/package.json +0 -45
- package/server/node_modules/undici-types/LICENSE +0 -21
- package/server/node_modules/undici-types/README.md +0 -6
- package/server/node_modules/undici-types/agent.d.ts +0 -32
- package/server/node_modules/undici-types/api.d.ts +0 -43
- package/server/node_modules/undici-types/balanced-pool.d.ts +0 -29
- package/server/node_modules/undici-types/cache-interceptor.d.ts +0 -172
- package/server/node_modules/undici-types/cache.d.ts +0 -36
- package/server/node_modules/undici-types/client-stats.d.ts +0 -15
- package/server/node_modules/undici-types/client.d.ts +0 -108
- package/server/node_modules/undici-types/connector.d.ts +0 -34
- package/server/node_modules/undici-types/content-type.d.ts +0 -21
- package/server/node_modules/undici-types/cookies.d.ts +0 -30
- package/server/node_modules/undici-types/diagnostics-channel.d.ts +0 -74
- package/server/node_modules/undici-types/dispatcher.d.ts +0 -276
- package/server/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -22
- package/server/node_modules/undici-types/errors.d.ts +0 -161
- package/server/node_modules/undici-types/eventsource.d.ts +0 -66
- package/server/node_modules/undici-types/fetch.d.ts +0 -211
- package/server/node_modules/undici-types/formdata.d.ts +0 -108
- package/server/node_modules/undici-types/global-dispatcher.d.ts +0 -9
- package/server/node_modules/undici-types/global-origin.d.ts +0 -7
- package/server/node_modules/undici-types/h2c-client.d.ts +0 -73
- package/server/node_modules/undici-types/handlers.d.ts +0 -15
- package/server/node_modules/undici-types/header.d.ts +0 -160
- package/server/node_modules/undici-types/index.d.ts +0 -80
- package/server/node_modules/undici-types/interceptors.d.ts +0 -39
- package/server/node_modules/undici-types/mock-agent.d.ts +0 -68
- package/server/node_modules/undici-types/mock-call-history.d.ts +0 -111
- package/server/node_modules/undici-types/mock-client.d.ts +0 -27
- package/server/node_modules/undici-types/mock-errors.d.ts +0 -12
- package/server/node_modules/undici-types/mock-interceptor.d.ts +0 -94
- package/server/node_modules/undici-types/mock-pool.d.ts +0 -27
- package/server/node_modules/undici-types/package.json +0 -55
- package/server/node_modules/undici-types/patch.d.ts +0 -29
- package/server/node_modules/undici-types/pool-stats.d.ts +0 -19
- package/server/node_modules/undici-types/pool.d.ts +0 -41
- package/server/node_modules/undici-types/proxy-agent.d.ts +0 -29
- package/server/node_modules/undici-types/readable.d.ts +0 -68
- package/server/node_modules/undici-types/retry-agent.d.ts +0 -8
- package/server/node_modules/undici-types/retry-handler.d.ts +0 -125
- package/server/node_modules/undici-types/snapshot-agent.d.ts +0 -109
- package/server/node_modules/undici-types/util.d.ts +0 -18
- package/server/node_modules/undici-types/utility.d.ts +0 -7
- package/server/node_modules/undici-types/webidl.d.ts +0 -341
- package/server/node_modules/undici-types/websocket.d.ts +0 -186
- package/server/node_modules/unpipe/HISTORY.md +0 -4
- package/server/node_modules/unpipe/LICENSE +0 -22
- package/server/node_modules/unpipe/README.md +0 -43
- package/server/node_modules/unpipe/index.js +0 -69
- package/server/node_modules/unpipe/package.json +0 -27
- package/server/node_modules/utils-merge/LICENSE +0 -20
- package/server/node_modules/utils-merge/README.md +0 -34
- package/server/node_modules/utils-merge/index.js +0 -23
- package/server/node_modules/utils-merge/package.json +0 -40
- package/server/node_modules/vary/HISTORY.md +0 -39
- package/server/node_modules/vary/LICENSE +0 -22
- package/server/node_modules/vary/README.md +0 -101
- package/server/node_modules/vary/index.js +0 -149
- package/server/node_modules/vary/package.json +0 -43
- package/server/node_modules/ws/LICENSE +0 -20
- package/server/node_modules/ws/README.md +0 -548
- package/server/node_modules/ws/browser.js +0 -8
- package/server/node_modules/ws/index.js +0 -13
- package/server/node_modules/ws/lib/buffer-util.js +0 -131
- package/server/node_modules/ws/lib/constants.js +0 -19
- package/server/node_modules/ws/lib/event-target.js +0 -292
- package/server/node_modules/ws/lib/extension.js +0 -203
- package/server/node_modules/ws/lib/limiter.js +0 -55
- package/server/node_modules/ws/lib/permessage-deflate.js +0 -528
- package/server/node_modules/ws/lib/receiver.js +0 -706
- package/server/node_modules/ws/lib/sender.js +0 -602
- package/server/node_modules/ws/lib/stream.js +0 -161
- package/server/node_modules/ws/lib/subprotocol.js +0 -62
- package/server/node_modules/ws/lib/validation.js +0 -152
- package/server/node_modules/ws/lib/websocket-server.js +0 -554
- package/server/node_modules/ws/lib/websocket.js +0 -1393
- package/server/node_modules/ws/package.json +0 -69
- package/server/node_modules/ws/wrapper.mjs +0 -8
- package/server/node_modules/xtend/.jshintrc +0 -30
- package/server/node_modules/xtend/LICENSE +0 -20
- package/server/node_modules/xtend/README.md +0 -32
- package/server/node_modules/xtend/immutable.js +0 -19
- package/server/node_modules/xtend/mutable.js +0 -17
- package/server/node_modules/xtend/package.json +0 -55
- package/server/node_modules/xtend/test.js +0 -103
- /package/{server/node_modules/pg-protocol/dist/b.d.ts → dashboard/dist/components/AppPreview.test.d.ts} +0 -0
- /package/{server/node_modules/pg-protocol/dist/inbound-parser.test.d.ts → dashboard/dist/components/DocsPane.test.d.ts} +0 -0
- /package/{server/node_modules/pg-protocol/dist/outbound-serializer.test.d.ts → dashboard/dist/components/HealthPane.test.d.ts} +0 -0
|
@@ -1,265 +0,0 @@
|
|
|
1
|
-
# pglite-socket
|
|
2
|
-
|
|
3
|
-
A socket implementation for PGlite enabling remote connections. This package is a simple wrapper around the `net` module to allow PGlite to be used as a PostgreSQL server.
|
|
4
|
-
|
|
5
|
-
There are two main components to this package:
|
|
6
|
-
|
|
7
|
-
- [`PGLiteSocketServer`](#pglitesocketserver) - A TCP server that allows PostgreSQL clients to connect to a PGlite database instance.
|
|
8
|
-
- [`PGLiteSocketHandler`](#pglitesockethandler) - A low-level handler for a single socket connection to PGlite. This class handles the raw protocol communication between a socket and PGlite, and can be used to create a custom server.
|
|
9
|
-
|
|
10
|
-
The package also includes a [CLI](#cli-usage) for quickly starting a PGlite socket server.
|
|
11
|
-
|
|
12
|
-
Note: As PGlite is a single-connection database, it is not possible to have multiple simultaneous connections open. This means that the socket server will only support a single client connection at a time. While a `PGLiteSocketServer` or `PGLiteSocketHandler` are attached to a PGlite instance they hold an exclusive lock preventing any other connections, or queries on the PGlite instance.
|
|
13
|
-
|
|
14
|
-
## Installation
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
npm install @electric-sql/pglite-socket
|
|
18
|
-
# or
|
|
19
|
-
yarn add @electric-sql/pglite-socket
|
|
20
|
-
# or
|
|
21
|
-
pnpm add @electric-sql/pglite-socket
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## Usage
|
|
25
|
-
|
|
26
|
-
```typescript
|
|
27
|
-
import { PGlite } from '@electric-sql/pglite'
|
|
28
|
-
import { PGLiteSocketServer } from '@electric-sql/pglite-socket'
|
|
29
|
-
|
|
30
|
-
// Create a PGlite instance
|
|
31
|
-
const db = await PGlite.create()
|
|
32
|
-
|
|
33
|
-
// Create and start a socket server
|
|
34
|
-
const server = new PGLiteSocketServer({
|
|
35
|
-
db,
|
|
36
|
-
port: 5432,
|
|
37
|
-
host: '127.0.0.1',
|
|
38
|
-
})
|
|
39
|
-
|
|
40
|
-
await server.start()
|
|
41
|
-
console.log('Server started on 127.0.0.1:5432')
|
|
42
|
-
|
|
43
|
-
// Handle graceful shutdown
|
|
44
|
-
process.on('SIGINT', async () => {
|
|
45
|
-
await server.stop()
|
|
46
|
-
await db.close()
|
|
47
|
-
console.log('Server stopped and database closed')
|
|
48
|
-
process.exit(0)
|
|
49
|
-
})
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
## API
|
|
53
|
-
|
|
54
|
-
### PGLiteSocketServer
|
|
55
|
-
|
|
56
|
-
Creates a TCP server that allows PostgreSQL clients to connect to a PGlite database instance.
|
|
57
|
-
|
|
58
|
-
#### Options
|
|
59
|
-
|
|
60
|
-
- `db: PGlite` - The PGlite database instance
|
|
61
|
-
- `port?: number` - The port to listen on (default: 5432). Use port 0 to let the OS assign an available port
|
|
62
|
-
- `host?: string` - The host to bind to (default: 127.0.0.1)
|
|
63
|
-
- `path?: string` - Unix socket path to bind to (takes precedence over host:port)
|
|
64
|
-
- `inspect?: boolean` - Print the incoming and outgoing data to the console (default: false)
|
|
65
|
-
|
|
66
|
-
#### Methods
|
|
67
|
-
|
|
68
|
-
- `start(): Promise<void>` - Start the socket server
|
|
69
|
-
- `stop(): Promise<void>` - Stop the socket server
|
|
70
|
-
|
|
71
|
-
#### Events
|
|
72
|
-
|
|
73
|
-
- `listening` - Emitted when the server starts listening
|
|
74
|
-
- `connection` - Emitted when a client connects
|
|
75
|
-
- `error` - Emitted when an error occurs
|
|
76
|
-
- `close` - Emitted when the server is closed
|
|
77
|
-
|
|
78
|
-
### PGLiteSocketHandler
|
|
79
|
-
|
|
80
|
-
Low-level handler for a single socket connection to PGlite. This class handles the raw protocol communication between a socket and PGlite.
|
|
81
|
-
|
|
82
|
-
#### Options
|
|
83
|
-
|
|
84
|
-
- `db: PGlite` - The PGlite database instance
|
|
85
|
-
- `closeOnDetach?: boolean` - Whether to close the socket when detached (default: false)
|
|
86
|
-
- `inspect?: boolean` - Print the incoming and outgoing data to the console in hex and ascii (default: false)
|
|
87
|
-
|
|
88
|
-
#### Methods
|
|
89
|
-
|
|
90
|
-
- `attach(socket: Socket): Promise<PGLiteSocketHandler>` - Attach a socket to this handler
|
|
91
|
-
- `detach(close?: boolean): PGLiteSocketHandler` - Detach the current socket from this handler
|
|
92
|
-
- `isAttached: boolean` - Check if a socket is currently attached
|
|
93
|
-
|
|
94
|
-
#### Events
|
|
95
|
-
|
|
96
|
-
- `data` - Emitted when data is processed through the handler
|
|
97
|
-
- `error` - Emitted when an error occurs
|
|
98
|
-
- `close` - Emitted when the socket is closed
|
|
99
|
-
|
|
100
|
-
#### Example
|
|
101
|
-
|
|
102
|
-
```typescript
|
|
103
|
-
import { PGlite } from '@electric-sql/pglite'
|
|
104
|
-
import { PGLiteSocketHandler } from '@electric-sql/pglite-socket'
|
|
105
|
-
import { createServer, Socket } from 'net'
|
|
106
|
-
|
|
107
|
-
// Create a PGlite instance
|
|
108
|
-
const db = await PGlite.create()
|
|
109
|
-
|
|
110
|
-
// Create a handler
|
|
111
|
-
const handler = new PGLiteSocketHandler({
|
|
112
|
-
db,
|
|
113
|
-
closeOnDetach: true,
|
|
114
|
-
inspect: false,
|
|
115
|
-
})
|
|
116
|
-
|
|
117
|
-
// Create a server that uses the handler
|
|
118
|
-
const server = createServer(async (socket: Socket) => {
|
|
119
|
-
try {
|
|
120
|
-
await handler.attach(socket)
|
|
121
|
-
console.log('Client connected')
|
|
122
|
-
} catch (err) {
|
|
123
|
-
console.error('Error attaching socket', err)
|
|
124
|
-
socket.end()
|
|
125
|
-
}
|
|
126
|
-
})
|
|
127
|
-
|
|
128
|
-
server.listen(5432, '127.0.0.1')
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
## Examples
|
|
132
|
-
|
|
133
|
-
See the [examples directory](./examples) for more usage examples.
|
|
134
|
-
|
|
135
|
-
## CLI Usage
|
|
136
|
-
|
|
137
|
-
This package provides a command-line interface for quickly starting a PGlite socket server.
|
|
138
|
-
|
|
139
|
-
```bash
|
|
140
|
-
# Install globally
|
|
141
|
-
npm install -g @electric-sql/pglite-socket
|
|
142
|
-
|
|
143
|
-
# Start a server with default settings (in-memory database, port 5432)
|
|
144
|
-
pglite-server
|
|
145
|
-
|
|
146
|
-
# Start a server with custom options
|
|
147
|
-
pglite-server --db=/path/to/database --port=5433 --host=0.0.0.0 --debug=1
|
|
148
|
-
|
|
149
|
-
# Using short options
|
|
150
|
-
pglite-server -d /path/to/database -p 5433 -h 0.0.0.0 -v 1
|
|
151
|
-
|
|
152
|
-
# Show help
|
|
153
|
-
pglite-server --help
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
### CLI Options
|
|
157
|
-
|
|
158
|
-
- `-d, --db=PATH` - Database path (default: memory://)
|
|
159
|
-
- `-p, --port=PORT` - Port to listen on (default: 5432). Use 0 to let the OS assign an available port
|
|
160
|
-
- `-h, --host=HOST` - Host to bind to (default: 127.0.0.1)
|
|
161
|
-
- `-u, --path=UNIX` - Unix socket to bind to (takes precedence over host:port)
|
|
162
|
-
- `-v, --debug=LEVEL` - Debug level 0-5 (default: 0)
|
|
163
|
-
- `-e, --extensions=LIST` - Comma-separated list of extensions to load (e.g., vector,pgcrypto)
|
|
164
|
-
- `-r, --run=COMMAND` - Command to run after server starts
|
|
165
|
-
- `--include-database-url` - Include DATABASE_URL in subprocess environment
|
|
166
|
-
- `--shutdown-timeout=MS` - Timeout for graceful subprocess shutdown in ms (default: 5000)
|
|
167
|
-
|
|
168
|
-
### Development Server Integration
|
|
169
|
-
|
|
170
|
-
The `--run` option is particularly useful for development workflows where you want to use PGlite as a drop-in replacement for PostgreSQL. This allows you to wrap your development server and automatically provide it with a DATABASE_URL pointing to your PGlite instance.
|
|
171
|
-
|
|
172
|
-
```bash
|
|
173
|
-
# Start your Next.js dev server with PGlite
|
|
174
|
-
pglite-server --run "npm run dev" --include-database-url
|
|
175
|
-
|
|
176
|
-
# Start a Node.js app with PGlite
|
|
177
|
-
pglite-server --db=./dev-db --run "node server.js" --include-database-url
|
|
178
|
-
|
|
179
|
-
# Start multiple services (using a process manager like concurrently)
|
|
180
|
-
pglite-server --run "npx concurrently 'npm run dev' 'npm run worker'" --include-database-url
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
When using `--run` with `--include-database-url`, the subprocess will receive a `DATABASE_URL` environment variable with the correct connection string for your PGlite server. This enables seamless integration with applications that expect a PostgreSQL connection string.
|
|
184
|
-
|
|
185
|
-
### Using in npm scripts
|
|
186
|
-
|
|
187
|
-
You can add the CLI to your package.json scripts for convenient execution:
|
|
188
|
-
|
|
189
|
-
```json
|
|
190
|
-
{
|
|
191
|
-
"scripts": {
|
|
192
|
-
"db:start": "pglite-server --db=./data/mydb --port=5433",
|
|
193
|
-
"db:dev": "pglite-server --db=memory:// --debug=1",
|
|
194
|
-
"dev": "pglite-server --db=./dev-db --run 'npm run start:dev' --include-database-url",
|
|
195
|
-
"dev:clean": "pglite-server --run 'npm run start:dev' --include-database-url"
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
Then run with:
|
|
201
|
-
|
|
202
|
-
```bash
|
|
203
|
-
npm run dev # Start with persistent database
|
|
204
|
-
npm run dev:clean # Start with in-memory database
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
### Unix Socket Support
|
|
208
|
-
|
|
209
|
-
For better performance in local development, you can use Unix sockets instead of TCP:
|
|
210
|
-
|
|
211
|
-
```bash
|
|
212
|
-
# Start server on a Unix socket
|
|
213
|
-
pglite-server --path=/tmp/pglite.sock --run "npm run dev" --include-database-url
|
|
214
|
-
|
|
215
|
-
# The DATABASE_URL will be: postgresql://postgres:postgres@/postgres?host=/tmp
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
### Connecting to the server
|
|
219
|
-
|
|
220
|
-
Once the server is running, you can connect to it using any PostgreSQL client:
|
|
221
|
-
|
|
222
|
-
#### Using psql
|
|
223
|
-
|
|
224
|
-
```bash
|
|
225
|
-
PGSSLMODE=disable psql -h localhost -p 5432 -d template1
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
#### Using Node.js clients
|
|
229
|
-
|
|
230
|
-
```javascript
|
|
231
|
-
// Using node-postgres
|
|
232
|
-
import pg from 'pg'
|
|
233
|
-
const client = new pg.Client({
|
|
234
|
-
host: 'localhost',
|
|
235
|
-
port: 5432,
|
|
236
|
-
database: 'template1'
|
|
237
|
-
})
|
|
238
|
-
await client.connect()
|
|
239
|
-
|
|
240
|
-
// Using postgres.js
|
|
241
|
-
import postgres from 'postgres'
|
|
242
|
-
const sql = postgres({
|
|
243
|
-
host: 'localhost',
|
|
244
|
-
port: 5432,
|
|
245
|
-
database: 'template1'
|
|
246
|
-
})
|
|
247
|
-
|
|
248
|
-
// Using environment variable (when using --include-database-url)
|
|
249
|
-
const sql = postgres(process.env.DATABASE_URL)
|
|
250
|
-
```
|
|
251
|
-
|
|
252
|
-
### Limitations and Tips
|
|
253
|
-
|
|
254
|
-
- Remember that PGlite only supports one connection at a time. If you're unable to connect, make sure no other client is currently connected.
|
|
255
|
-
- For development purposes, using an in-memory database (`--db=memory://`) is fastest but data won't persist after the server is stopped.
|
|
256
|
-
- For persistent storage, specify a file path for the database (e.g., `--db=./data/mydb`).
|
|
257
|
-
- When using debug mode (`--debug=1` or higher), additional protocol information will be displayed in the console.
|
|
258
|
-
- To allow connections from other machines, set the host to `0.0.0.0` with `--host=0.0.0.0`.
|
|
259
|
-
- SSL connections are **NOT** supported. For `psql`, set env var `PGSSLMODE=disable`.
|
|
260
|
-
- When using `--run`, the server will automatically shut down if the subprocess exits with a non-zero code.
|
|
261
|
-
- Use `--shutdown-timeout` to adjust how long to wait for graceful subprocess termination (default: 5 seconds).
|
|
262
|
-
|
|
263
|
-
## License
|
|
264
|
-
|
|
265
|
-
Apache 2.0
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{createServer as u}from"net";var g=6e4,a=class a extends EventTarget{constructor(e){super();this.socket=null;this.active=!1;this.db=e.db,this.closeOnDetach=e.closeOnDetach??!1,this.inspect=e.inspect??!1,this.debug=e.debug??!1,this.id=a.nextHandlerId++,this.log("constructor: created new handler")}get handlerId(){return this.id}log(e,...t){this.debug&&console.log(`[PGLiteSocketHandler#${this.id}] ${e}`,...t)}async attach(e){if(this.log(`attach: attaching socket from ${e.remoteAddress}:${e.remotePort}`),this.socket)throw new Error("Socket already attached");return this.socket=e,this.active=!0,this.log("attach: waiting for PGlite to be ready"),await this.db.waitReady,this.log("attach: acquiring exclusive lock on PGlite instance"),await new Promise(t=>{this.db.runExclusive(()=>(t(),new Promise((i,n)=>{this.resolveLock=i,this.rejectLock=n})))}),this.log("attach: setting up socket event handlers"),e.on("data",async t=>{try{let i=await this.handleData(t);this.log(`socket on data sent: ${i} bytes`)}catch(i){this.log("socket on data error: ",i)}}),e.on("error",t=>this.handleError(t)),e.on("close",()=>this.handleClose()),this}detach(e){return this.log(`detach: detaching socket, close=${e??this.closeOnDetach}`),this.socket?(this.socket.removeAllListeners("data"),this.socket.removeAllListeners("error"),this.socket.removeAllListeners("close"),(e??this.closeOnDetach)&&this.socket.writable&&(this.log("detach: closing socket"),this.socket.end(),this.socket.destroy()),this.log("detach: releasing exclusive lock on PGlite instance"),this.resolveLock?.(),this.socket=null,this.active=!1,this):(this.log("detach: no socket attached, nothing to do"),this)}get isAttached(){return this.socket!==null}async handleData(e){if(!this.socket||!this.active)return this.log("handleData: no active socket, ignoring data"),new Promise((t,i)=>i("no active socket"));this.log(`handleData: received ${e.length} bytes`),this.inspectData("incoming",e);try{this.log("handleData: sending data to PGlite for processing");let t=await this.db.execProtocolRaw(new Uint8Array(e));if(this.log(`handleData: received ${t.length} bytes from PGlite`),this.inspectData("outgoing",t),this.socket&&this.socket.writable&&this.active){if(t.length<=0)return this.log("handleData: cowardly refusing to send empty packet"),new Promise((n,o)=>o("no data"));let i=new Promise((n,o)=>{this.log("handleData: writing response to socket"),this.socket?this.socket.write(Buffer.from(t),r=>{r?o(`Error while writing to the socket ${r.toString()}`):n(t.length)}):o("No socket")});return this.dispatchEvent(new CustomEvent("data",{detail:{incoming:e.length,outgoing:t.length}})),i}else return this.log("handleData: socket no longer writable or active, discarding response"),new Promise((i,n)=>n("No socket, not active or not writeable"))}catch(t){return this.log("handleData: error processing data:",t),this.handleError(t),new Promise((i,n)=>n(`Error while processing data ${t.toString()}`))}}handleError(e){this.log("handleError:",e),this.dispatchEvent(new CustomEvent("error",{detail:e})),this.log("handleError: rejecting exclusive lock on PGlite instance"),this.rejectLock?.(e),this.resolveLock=void 0,this.rejectLock=void 0,this.detach(!0)}handleClose(){this.log("handleClose: socket closed"),this.dispatchEvent(new CustomEvent("close")),this.detach(!1)}inspectData(e,t){if(this.inspect){console.log("-".repeat(75)),console.log(e==="incoming"?"-> incoming":"<- outgoing",t.length,"bytes");for(let i=0;i<t.length;i+=16){let n=Math.min(16,t.length-i),o="";for(let s=0;s<16;s++)if(s<n){let c=t[i+s];o+=c.toString(16).padStart(2,"0")+" "}else o+=" ";let r="";for(let s=0;s<n;s++){let c=t[i+s];r+=c>=32&&c<=126?String.fromCharCode(c):"."}console.log(`${i.toString(16).padStart(8,"0")} ${o} ${r}`)}}}};a.nextHandlerId=1;var h=a,l=class extends EventTarget{constructor(e){super();this.server=null;this.active=!1;this.activeHandler=null;this.connectionQueue=[];this.handlerCount=0;this.db=e.db,e.path?this.path=e.path:(typeof e.port=="number"?this.port=e.port??e.port:this.port=5432,this.host=e.host||"127.0.0.1"),this.inspect=e.inspect??!1,this.debug=e.debug??!1,this.connectionQueueTimeout=e.connectionQueueTimeout??g,this.log(`constructor: created server on ${this.host}:${this.port}`),this.log(`constructor: connection queue timeout: ${this.connectionQueueTimeout}ms`)}log(e,...t){this.debug&&console.log(`[PGLiteSocketServer] ${e}`,...t)}async start(){if(this.log(`start: starting server on ${this.getServerConn()}`),this.server)throw new Error("Socket server already started");return this.active=!0,this.server=u(e=>this.handleConnection(e)),new Promise((e,t)=>{if(!this.server)return t(new Error("Server not initialized"));if(this.server.on("error",i=>{this.log("start: server error:",i),this.dispatchEvent(new CustomEvent("error",{detail:i})),t(i)}),this.path)this.server.listen(this.path,()=>{this.log(`start: server listening on ${this.getServerConn()}`),this.dispatchEvent(new CustomEvent("listening",{detail:{path:this.path}})),e()});else{let i=this.server;i.listen(this.port,this.host,()=>{let n=i.address();if(n===null||typeof n!="object")throw Error("Expected address info");this.port=n.port,this.log(`start: server listening on ${this.getServerConn()}`),this.dispatchEvent(new CustomEvent("listening",{detail:{port:this.port,host:this.host}})),e()})}})}getServerConn(){return this.path?this.path:`${this.host}:${this.port}`}async stop(){return this.log("stop: stopping server"),this.active=!1,this.log(`stop: clearing connection queue (${this.connectionQueue.length} connections)`),this.connectionQueue.forEach(e=>{clearTimeout(e.timeoutId),e.socket.writable&&(this.log(`stop: closing queued connection from ${e.clientInfo.clientAddress}:${e.clientInfo.clientPort}`),e.socket.end())}),this.connectionQueue=[],this.activeHandler&&(this.log(`stop: detaching active handler #${this.activeHandlerId}`),this.activeHandler.detach(!0),this.activeHandler=null),this.server?new Promise(e=>{if(!this.server)return e();this.server.close(()=>{this.log("stop: server closed"),this.server=null,this.dispatchEvent(new CustomEvent("close")),e()})}):(this.log("stop: server not running, nothing to do"),Promise.resolve())}get activeHandlerId(){return this.activeHandler?.handlerId??null}async handleConnection(e){let t={clientAddress:e.remoteAddress||"unknown",clientPort:e.remotePort||0};if(this.log(`handleConnection: new connection from ${t.clientAddress}:${t.clientPort}`),!this.active){this.log("handleConnection: server not active, closing connection"),e.end();return}if(!this.activeHandler||!this.activeHandler.isAttached){this.log("handleConnection: no active handler, attaching socket directly"),this.dispatchEvent(new CustomEvent("connection",{detail:t})),await this.attachSocketToNewHandler(e,t);return}this.log(`handleConnection: active handler #${this.activeHandlerId} exists, queueing connection`),this.enqueueConnection(e,t)}enqueueConnection(e,t){this.log(`enqueueConnection: queueing connection from ${t.clientAddress}:${t.clientPort}, timeout: ${this.connectionQueueTimeout}ms`);let i=setTimeout(()=>{this.log(`enqueueConnection: timeout for connection from ${t.clientAddress}:${t.clientPort}`),this.connectionQueue=this.connectionQueue.filter(n=>n.socket!==e),e.writable&&(this.log("enqueueConnection: closing timed out connection"),e.end()),this.dispatchEvent(new CustomEvent("queueTimeout",{detail:{...t,queueSize:this.connectionQueue.length}}))},this.connectionQueueTimeout);this.connectionQueue.push({socket:e,clientInfo:t,timeoutId:i}),this.log(`enqueueConnection: connection queued, queue size: ${this.connectionQueue.length}`),this.dispatchEvent(new CustomEvent("queuedConnection",{detail:{...t,queueSize:this.connectionQueue.length}}))}processNextInQueue(){if(this.log(`processNextInQueue: processing next connection, queue size: ${this.connectionQueue.length}`),this.connectionQueue.length===0||!this.active){this.log("processNextInQueue: no connections in queue or server not active, nothing to do");return}let e=this.connectionQueue.shift();if(e){if(this.log(`processNextInQueue: processing connection from ${e.clientInfo.clientAddress}:${e.clientInfo.clientPort}`),clearTimeout(e.timeoutId),!e.socket.writable){this.log("processNextInQueue: socket no longer writable, skipping to next connection"),this.processNextInQueue();return}this.attachSocketToNewHandler(e.socket,e.clientInfo).catch(t=>{this.log("processNextInQueue: error attaching socket:",t),this.dispatchEvent(new CustomEvent("error",{detail:t})),this.processNextInQueue()})}}async attachSocketToNewHandler(e,t){this.handlerCount++,this.log(`attachSocketToNewHandler: creating new handler for ${t.clientAddress}:${t.clientPort} (handler #${this.handlerCount})`);let i=new h({db:this.db,closeOnDetach:!0,inspect:this.inspect,debug:this.debug});i.addEventListener("error",n=>{this.log(`handler #${i.handlerId}: error from handler:`,n.detail),this.dispatchEvent(new CustomEvent("error",{detail:n.detail}))}),i.addEventListener("close",()=>{this.log(`handler #${i.handlerId}: closed`),this.activeHandler===i&&(this.log(`handler #${i.handlerId}: was active handler, processing next connection in queue`),this.activeHandler=null,this.processNextInQueue())});try{this.activeHandler=i,this.log(`handler #${i.handlerId}: attaching socket`),await i.attach(e),this.dispatchEvent(new CustomEvent("connection",{detail:t}))}catch(n){throw this.log(`handler #${i.handlerId}: error attaching socket:`,n),this.activeHandler=null,e.writable&&e.end(),n}}};export{g as a,h as b,l as c};
|
|
2
|
-
//# sourceMappingURL=chunk-F6KLIXM7.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { PGlite } from '@electric-sql/pglite'\nimport { createServer, Server, Socket } from 'net'\n\n// Connection queue timeout in milliseconds\nexport const CONNECTION_QUEUE_TIMEOUT = 60000 // 60 seconds\n\n/**\n * Options for creating a PGLiteSocketHandler\n */\nexport interface PGLiteSocketHandlerOptions {\n /** The PGlite database instance */\n db: PGlite\n /** Whether to close the socket when detached (default: false) */\n closeOnDetach?: boolean\n /** Print the incoming and outgoing data to the console in hex and ascii */\n inspect?: boolean\n /** Enable debug logging of method calls */\n debug?: boolean\n}\n\n/**\n * Low-level handler for a single socket connection to PGLite\n * Handles the raw protocol communication between a socket and PGLite\n */\nexport class PGLiteSocketHandler extends EventTarget {\n readonly db: PGlite\n private socket: Socket | null = null\n private active = false\n private closeOnDetach: boolean\n private resolveLock?: () => void\n private rejectLock?: (err: Error) => void\n private inspect: boolean\n private debug: boolean\n private readonly id: number\n\n // Static counter for generating unique handler IDs\n private static nextHandlerId = 1\n\n /**\n * Create a new PGLiteSocketHandler\n * @param options Options for the handler\n */\n constructor(options: PGLiteSocketHandlerOptions) {\n super()\n this.db = options.db\n this.closeOnDetach = options.closeOnDetach ?? false\n this.inspect = options.inspect ?? false\n this.debug = options.debug ?? false\n this.id = PGLiteSocketHandler.nextHandlerId++\n\n this.log('constructor: created new handler')\n }\n\n /**\n * Get the unique ID of this handler\n */\n public get handlerId(): number {\n return this.id\n }\n\n /**\n * Log a message if debug is enabled\n * @private\n */\n private log(message: string, ...args: any[]): void {\n if (this.debug) {\n console.log(`[PGLiteSocketHandler#${this.id}] ${message}`, ...args)\n }\n }\n\n /**\n * Attach a socket to this handler\n * @param socket The socket to attach\n * @returns this handler instance\n * @throws Error if a socket is already attached\n */\n public async attach(socket: Socket): Promise<PGLiteSocketHandler> {\n this.log(\n `attach: attaching socket from ${socket.remoteAddress}:${socket.remotePort}`,\n )\n\n if (this.socket) {\n throw new Error('Socket already attached')\n }\n\n this.socket = socket\n this.active = true\n\n // Ensure the PGlite instance is ready\n this.log(`attach: waiting for PGlite to be ready`)\n await this.db.waitReady\n\n // Hold the lock on the PGlite instance\n this.log(`attach: acquiring exclusive lock on PGlite instance`)\n await new Promise<void>((resolve) => {\n this.db.runExclusive(() => {\n // Ensure we have the lock on the PGlite instance\n resolve()\n\n // Use a promise to hold the lock on the PGlite instance\n // this can be resolved or rejected by the handler to release the lock\n return new Promise<void>((resolveLock, rejectLock) => {\n this.resolveLock = resolveLock\n this.rejectLock = rejectLock\n })\n })\n })\n\n // Setup event handlers\n this.log(`attach: setting up socket event handlers`)\n socket.on('data', async (data) => {\n try {\n const result = await this.handleData(data)\n this.log(`socket on data sent: ${result} bytes`)\n } catch (err) {\n this.log('socket on data error: ', err)\n }\n })\n socket.on('error', (err) => this.handleError(err))\n socket.on('close', () => this.handleClose())\n\n return this\n }\n\n /**\n * Detach the current socket from this handler\n * @param close Whether to close the socket when detaching (overrides constructor option)\n * @returns this handler instance\n */\n public detach(close?: boolean): PGLiteSocketHandler {\n this.log(`detach: detaching socket, close=${close ?? this.closeOnDetach}`)\n\n if (!this.socket) {\n this.log(`detach: no socket attached, nothing to do`)\n return this\n }\n\n // Remove all listeners\n this.socket.removeAllListeners('data')\n this.socket.removeAllListeners('error')\n this.socket.removeAllListeners('close')\n\n // Close the socket if requested\n if (close ?? this.closeOnDetach) {\n if (this.socket.writable) {\n this.log(`detach: closing socket`)\n this.socket.end()\n this.socket.destroy()\n }\n }\n\n // Release the lock on the PGlite instance\n this.log(`detach: releasing exclusive lock on PGlite instance`)\n this.resolveLock?.()\n\n this.socket = null\n this.active = false\n return this\n }\n\n /**\n * Check if a socket is currently attached\n */\n public get isAttached(): boolean {\n return this.socket !== null\n }\n\n /**\n * Handle incoming data from the socket\n */\n private async handleData(data: Buffer): Promise<number> {\n if (!this.socket || !this.active) {\n this.log(`handleData: no active socket, ignoring data`)\n return new Promise((_, reject) => reject(`no active socket`))\n }\n\n this.log(`handleData: received ${data.length} bytes`)\n\n // Print the incoming data to the console\n this.inspectData('incoming', data)\n\n try {\n // Process the raw protocol data\n this.log(`handleData: sending data to PGlite for processing`)\n const result = await this.db.execProtocolRaw(new Uint8Array(data))\n\n this.log(`handleData: received ${result.length} bytes from PGlite`)\n\n // Print the outgoing data to the console\n this.inspectData('outgoing', result)\n\n // Send the result back if the socket is still connected\n if (this.socket && this.socket.writable && this.active) {\n if (result.length <= 0) {\n this.log(`handleData: cowardly refusing to send empty packet`)\n return new Promise((_, reject) => reject('no data'))\n }\n\n const promise = new Promise<number>((resolve, reject) => {\n this.log(`handleData: writing response to socket`)\n if (this.socket) {\n this.socket.write(Buffer.from(result), (err?: Error) => {\n if (err) {\n reject(`Error while writing to the socket ${err.toString()}`)\n } else {\n resolve(result.length)\n }\n })\n } else {\n reject(`No socket`)\n }\n })\n\n // Emit data event with byte sizes\n this.dispatchEvent(\n new CustomEvent('data', {\n detail: { incoming: data.length, outgoing: result.length },\n }),\n )\n return promise\n } else {\n this.log(\n `handleData: socket no longer writable or active, discarding response`,\n )\n return new Promise((_, reject) =>\n reject(`No socket, not active or not writeable`),\n )\n }\n } catch (err) {\n this.log(`handleData: error processing data:`, err)\n this.handleError(err as Error)\n return new Promise((_, reject) =>\n reject(`Error while processing data ${(err as Error).toString()}`),\n )\n }\n }\n\n /**\n * Handle errors from the socket\n */\n private handleError(err: Error): void {\n this.log(`handleError:`, err)\n\n // Emit error event\n this.dispatchEvent(new CustomEvent('error', { detail: err }))\n\n // Reject the lock on the PGlite instance\n this.log(`handleError: rejecting exclusive lock on PGlite instance`)\n this.rejectLock?.(err)\n this.resolveLock = undefined\n this.rejectLock = undefined\n\n // Close the connection on error\n this.detach(true)\n }\n\n /**\n * Handle socket close event\n */\n private handleClose(): void {\n this.log(`handleClose: socket closed`)\n\n this.dispatchEvent(new CustomEvent('close'))\n this.detach(false) // Already closed, just clean up\n }\n\n /**\n * Print data in hex and ascii to the console\n */\n private inspectData(\n direction: 'incoming' | 'outgoing',\n data: Buffer | Uint8Array,\n ): void {\n if (!this.inspect) return\n console.log('-'.repeat(75))\n if (direction === 'incoming') {\n console.log('-> incoming', data.length, 'bytes')\n } else {\n console.log('<- outgoing', data.length, 'bytes')\n }\n\n // Process 16 bytes per line\n for (let offset = 0; offset < data.length; offset += 16) {\n // Calculate current chunk size (may be less than 16 for the last chunk)\n const chunkSize = Math.min(16, data.length - offset)\n\n // Build the hex representation\n let hexPart = ''\n for (let i = 0; i < 16; i++) {\n if (i < chunkSize) {\n const byte = data[offset + i]\n hexPart += byte.toString(16).padStart(2, '0') + ' '\n } else {\n hexPart += ' ' // 3 spaces for missing bytes\n }\n }\n\n // Build the ASCII representation\n let asciiPart = ''\n for (let i = 0; i < chunkSize; i++) {\n const byte = data[offset + i]\n // Use printable characters (32-126), replace others with a dot\n asciiPart += byte >= 32 && byte <= 126 ? String.fromCharCode(byte) : '.'\n }\n\n // Print the line with offset in hex, hex values, and ASCII representation\n console.log(\n `${offset.toString(16).padStart(8, '0')} ${hexPart} ${asciiPart}`,\n )\n }\n }\n}\n\n/**\n * Represents a queued connection with timeout\n */\ninterface QueuedConnection {\n socket: Socket\n clientInfo: {\n clientAddress: string\n clientPort: number\n }\n timeoutId: NodeJS.Timeout\n}\n\n/**\n * Options for creating a PGLiteSocketServer\n */\nexport interface PGLiteSocketServerOptions {\n /** The PGlite database instance */\n db: PGlite\n /** The port to listen on (default: 5432) */\n port?: number\n /** The host to bind to (default: 127.0.0.1) */\n host?: string\n /** Unix socket path to bind to (default: undefined). If specified, takes precedence over host:port */\n path?: string\n /** Print the incoming and outgoing data to the console in hex and ascii */\n inspect?: boolean\n /** Connection queue timeout in milliseconds (default: 10000) */\n connectionQueueTimeout?: number\n /** Enable debug logging of method calls */\n debug?: boolean\n}\n\n/**\n * High-level server that manages socket connections to PGLite\n * Creates and manages a TCP server and handles client connections\n */\nexport class PGLiteSocketServer extends EventTarget {\n readonly db: PGlite\n private server: Server | null = null\n private port?: number\n private host?: string\n private path?: string\n private active = false\n private inspect: boolean\n private debug: boolean\n private connectionQueueTimeout: number\n private activeHandler: PGLiteSocketHandler | null = null\n private connectionQueue: QueuedConnection[] = []\n private handlerCount: number = 0\n\n /**\n * Create a new PGLiteSocketServer\n * @param options Options for the server\n */\n constructor(options: PGLiteSocketServerOptions) {\n super()\n this.db = options.db\n if (options.path) {\n this.path = options.path\n } else {\n if (typeof options.port === 'number') {\n // Keep port undefined on port 0, will be set by the OS when we start the server.\n this.port = options.port ?? options.port\n } else {\n this.port = 5432\n }\n this.host = options.host || '127.0.0.1'\n }\n this.inspect = options.inspect ?? false\n this.debug = options.debug ?? false\n this.connectionQueueTimeout =\n options.connectionQueueTimeout ?? CONNECTION_QUEUE_TIMEOUT\n\n this.log(`constructor: created server on ${this.host}:${this.port}`)\n this.log(\n `constructor: connection queue timeout: ${this.connectionQueueTimeout}ms`,\n )\n }\n\n /**\n * Log a message if debug is enabled\n * @private\n */\n private log(message: string, ...args: any[]): void {\n if (this.debug) {\n console.log(`[PGLiteSocketServer] ${message}`, ...args)\n }\n }\n\n /**\n * Start the socket server\n * @returns Promise that resolves when the server is listening\n */\n public async start(): Promise<void> {\n this.log(`start: starting server on ${this.getServerConn()}`)\n\n if (this.server) {\n throw new Error('Socket server already started')\n }\n\n this.active = true\n this.server = createServer((socket) => this.handleConnection(socket))\n\n return new Promise<void>((resolve, reject) => {\n if (!this.server) return reject(new Error('Server not initialized'))\n\n this.server.on('error', (err) => {\n this.log(`start: server error:`, err)\n this.dispatchEvent(new CustomEvent('error', { detail: err }))\n reject(err)\n })\n\n if (this.path) {\n this.server.listen(this.path, () => {\n this.log(`start: server listening on ${this.getServerConn()}`)\n this.dispatchEvent(\n new CustomEvent('listening', {\n detail: { path: this.path },\n }),\n )\n resolve()\n })\n } else {\n const server = this.server\n server.listen(this.port, this.host, () => {\n const address = server.address()\n // We are not using pipes, so return type should be AddressInfo\n if (address === null || typeof address !== 'object') {\n throw Error('Expected address info')\n }\n // Assign the new port number\n this.port = address.port\n this.log(`start: server listening on ${this.getServerConn()}`)\n this.dispatchEvent(\n new CustomEvent('listening', {\n detail: { port: this.port, host: this.host },\n }),\n )\n resolve()\n })\n }\n })\n }\n\n public getServerConn(): string {\n if (this.path) return this.path\n return `${this.host}:${this.port}`\n }\n\n /**\n * Stop the socket server\n * @returns Promise that resolves when the server is closed\n */\n public async stop(): Promise<void> {\n this.log(`stop: stopping server`)\n\n this.active = false\n\n // Clear connection queue\n this.log(\n `stop: clearing connection queue (${this.connectionQueue.length} connections)`,\n )\n\n this.connectionQueue.forEach((queuedConn) => {\n clearTimeout(queuedConn.timeoutId)\n if (queuedConn.socket.writable) {\n this.log(\n `stop: closing queued connection from ${queuedConn.clientInfo.clientAddress}:${queuedConn.clientInfo.clientPort}`,\n )\n queuedConn.socket.end()\n }\n })\n this.connectionQueue = []\n\n // Detach active handler if exists\n if (this.activeHandler) {\n this.log(`stop: detaching active handler #${this.activeHandlerId}`)\n this.activeHandler.detach(true)\n this.activeHandler = null\n }\n\n if (!this.server) {\n this.log(`stop: server not running, nothing to do`)\n return Promise.resolve()\n }\n\n return new Promise<void>((resolve) => {\n if (!this.server) return resolve()\n\n this.server.close(() => {\n this.log(`stop: server closed`)\n this.server = null\n this.dispatchEvent(new CustomEvent('close'))\n resolve()\n })\n })\n }\n\n /**\n * Get the active handler ID, or null if no active handler\n */\n private get activeHandlerId(): number | null {\n return this.activeHandler?.handlerId ?? null\n }\n\n /**\n * Handle a new client connection\n */\n private async handleConnection(socket: Socket): Promise<void> {\n const clientInfo = {\n clientAddress: socket.remoteAddress || 'unknown',\n clientPort: socket.remotePort || 0,\n }\n\n this.log(\n `handleConnection: new connection from ${clientInfo.clientAddress}:${clientInfo.clientPort}`,\n )\n\n // If server is not active, close the connection immediately\n if (!this.active) {\n this.log(`handleConnection: server not active, closing connection`)\n socket.end()\n return\n }\n\n // If we don't have an active handler or it's not attached, we can use this connection immediately\n if (!this.activeHandler || !this.activeHandler.isAttached) {\n this.log(`handleConnection: no active handler, attaching socket directly`)\n this.dispatchEvent(new CustomEvent('connection', { detail: clientInfo }))\n await this.attachSocketToNewHandler(socket, clientInfo)\n return\n }\n\n // Otherwise, queue the connection\n this.log(\n `handleConnection: active handler #${this.activeHandlerId} exists, queueing connection`,\n )\n this.enqueueConnection(socket, clientInfo)\n }\n\n /**\n * Add a connection to the queue\n */\n private enqueueConnection(\n socket: Socket,\n clientInfo: { clientAddress: string; clientPort: number },\n ): void {\n this.log(\n `enqueueConnection: queueing connection from ${clientInfo.clientAddress}:${clientInfo.clientPort}, timeout: ${this.connectionQueueTimeout}ms`,\n )\n\n // Set a timeout for this queued connection\n const timeoutId = setTimeout(() => {\n this.log(\n `enqueueConnection: timeout for connection from ${clientInfo.clientAddress}:${clientInfo.clientPort}`,\n )\n\n // Remove from queue\n this.connectionQueue = this.connectionQueue.filter(\n (queuedConn) => queuedConn.socket !== socket,\n )\n\n // End the connection if it's still open\n if (socket.writable) {\n this.log(`enqueueConnection: closing timed out connection`)\n socket.end()\n }\n\n this.dispatchEvent(\n new CustomEvent('queueTimeout', {\n detail: { ...clientInfo, queueSize: this.connectionQueue.length },\n }),\n )\n }, this.connectionQueueTimeout)\n\n // Add to queue\n this.connectionQueue.push({ socket, clientInfo, timeoutId })\n\n this.log(\n `enqueueConnection: connection queued, queue size: ${this.connectionQueue.length}`,\n )\n\n this.dispatchEvent(\n new CustomEvent('queuedConnection', {\n detail: { ...clientInfo, queueSize: this.connectionQueue.length },\n }),\n )\n }\n\n /**\n * Process the next connection in the queue\n */\n private processNextInQueue(): void {\n this.log(\n `processNextInQueue: processing next connection, queue size: ${this.connectionQueue.length}`,\n )\n\n // No connections in queue or server not active\n if (this.connectionQueue.length === 0 || !this.active) {\n this.log(\n `processNextInQueue: no connections in queue or server not active, nothing to do`,\n )\n return\n }\n\n // Get the next connection\n const nextConn = this.connectionQueue.shift()\n if (!nextConn) return\n\n this.log(\n `processNextInQueue: processing connection from ${nextConn.clientInfo.clientAddress}:${nextConn.clientInfo.clientPort}`,\n )\n\n // Clear the timeout\n clearTimeout(nextConn.timeoutId)\n\n // Check if the socket is still valid\n if (!nextConn.socket.writable) {\n this.log(\n `processNextInQueue: socket no longer writable, skipping to next connection`,\n )\n // Socket closed while waiting, process next in queue\n this.processNextInQueue()\n return\n }\n\n // Attach this socket to a new handler\n this.attachSocketToNewHandler(nextConn.socket, nextConn.clientInfo).catch(\n (err) => {\n this.log(`processNextInQueue: error attaching socket:`, err)\n this.dispatchEvent(new CustomEvent('error', { detail: err }))\n // Try the next connection\n this.processNextInQueue()\n },\n )\n }\n\n /**\n * Attach a socket to a new handler\n */\n private async attachSocketToNewHandler(\n socket: Socket,\n clientInfo: { clientAddress: string; clientPort: number },\n ): Promise<void> {\n this.handlerCount++\n\n this.log(\n `attachSocketToNewHandler: creating new handler for ${clientInfo.clientAddress}:${clientInfo.clientPort} (handler #${this.handlerCount})`,\n )\n\n // Create a new handler for this connection\n const handler = new PGLiteSocketHandler({\n db: this.db,\n closeOnDetach: true,\n inspect: this.inspect,\n debug: this.debug,\n })\n\n // Forward error events from the handler\n handler.addEventListener('error', (event) => {\n this.log(\n `handler #${handler.handlerId}: error from handler:`,\n (event as CustomEvent<Error>).detail,\n )\n this.dispatchEvent(\n new CustomEvent('error', {\n detail: (event as CustomEvent<Error>).detail,\n }),\n )\n })\n\n // Handle close event to process next queued connection\n handler.addEventListener('close', () => {\n this.log(`handler #${handler.handlerId}: closed`)\n\n // If this is our active handler, clear it\n if (this.activeHandler === handler) {\n this.log(\n `handler #${handler.handlerId}: was active handler, processing next connection in queue`,\n )\n this.activeHandler = null\n // Process next connection in queue\n this.processNextInQueue()\n }\n })\n\n try {\n // Set as active handler\n this.activeHandler = handler\n\n this.log(`handler #${handler.handlerId}: attaching socket`)\n\n // Attach the socket to the handler\n await handler.attach(socket)\n\n this.dispatchEvent(new CustomEvent('connection', { detail: clientInfo }))\n } catch (err) {\n // If there was an error attaching, clean up\n this.log(`handler #${handler.handlerId}: error attaching socket:`, err)\n this.activeHandler = null\n if (socket.writable) {\n socket.end()\n }\n throw err\n }\n }\n}\n"],"mappings":"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","names":["createServer","CONNECTION_QUEUE_TIMEOUT","_PGLiteSocketHandler","options","message","args","socket","resolve","resolveLock","rejectLock","data","result","err","close","_","reject","promise","direction","offset","chunkSize","hexPart","i","byte","asciiPart","PGLiteSocketHandler","PGLiteSocketServer","server","address","queuedConn","clientInfo","timeoutId","nextConn","handler","event"]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var u=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var w=(s,o)=>{for(var e in o)u(s,e,{get:o[e],enumerable:!0})},k=(s,o,e,t)=>{if(o&&typeof o=="object"||typeof o=="function")for(let i of f(o))!b.call(s,i)&&i!==e&&u(s,i,{get:()=>o[i],enumerable:!(t=m(o,i))||t.enumerable});return s};var E=s=>k(u({},"__esModule",{value:!0}),s);var P={};w(P,{CONNECTION_QUEUE_TIMEOUT:()=>p,PGLiteSocketHandler:()=>l,PGLiteSocketServer:()=>g});module.exports=E(P);var v=require("net"),p=6e4,d=class d extends EventTarget{constructor(e){super();this.socket=null;this.active=!1;this.db=e.db,this.closeOnDetach=e.closeOnDetach??!1,this.inspect=e.inspect??!1,this.debug=e.debug??!1,this.id=d.nextHandlerId++,this.log("constructor: created new handler")}get handlerId(){return this.id}log(e,...t){this.debug&&console.log(`[PGLiteSocketHandler#${this.id}] ${e}`,...t)}async attach(e){if(this.log(`attach: attaching socket from ${e.remoteAddress}:${e.remotePort}`),this.socket)throw new Error("Socket already attached");return this.socket=e,this.active=!0,this.log("attach: waiting for PGlite to be ready"),await this.db.waitReady,this.log("attach: acquiring exclusive lock on PGlite instance"),await new Promise(t=>{this.db.runExclusive(()=>(t(),new Promise((i,n)=>{this.resolveLock=i,this.rejectLock=n})))}),this.log("attach: setting up socket event handlers"),e.on("data",async t=>{try{let i=await this.handleData(t);this.log(`socket on data sent: ${i} bytes`)}catch(i){this.log("socket on data error: ",i)}}),e.on("error",t=>this.handleError(t)),e.on("close",()=>this.handleClose()),this}detach(e){return this.log(`detach: detaching socket, close=${e??this.closeOnDetach}`),this.socket?(this.socket.removeAllListeners("data"),this.socket.removeAllListeners("error"),this.socket.removeAllListeners("close"),(e??this.closeOnDetach)&&this.socket.writable&&(this.log("detach: closing socket"),this.socket.end(),this.socket.destroy()),this.log("detach: releasing exclusive lock on PGlite instance"),this.resolveLock?.(),this.socket=null,this.active=!1,this):(this.log("detach: no socket attached, nothing to do"),this)}get isAttached(){return this.socket!==null}async handleData(e){if(!this.socket||!this.active)return this.log("handleData: no active socket, ignoring data"),new Promise((t,i)=>i("no active socket"));this.log(`handleData: received ${e.length} bytes`),this.inspectData("incoming",e);try{this.log("handleData: sending data to PGlite for processing");let t=await this.db.execProtocolRaw(new Uint8Array(e));if(this.log(`handleData: received ${t.length} bytes from PGlite`),this.inspectData("outgoing",t),this.socket&&this.socket.writable&&this.active){if(t.length<=0)return this.log("handleData: cowardly refusing to send empty packet"),new Promise((n,r)=>r("no data"));let i=new Promise((n,r)=>{this.log("handleData: writing response to socket"),this.socket?this.socket.write(Buffer.from(t),a=>{a?r(`Error while writing to the socket ${a.toString()}`):n(t.length)}):r("No socket")});return this.dispatchEvent(new CustomEvent("data",{detail:{incoming:e.length,outgoing:t.length}})),i}else return this.log("handleData: socket no longer writable or active, discarding response"),new Promise((i,n)=>n("No socket, not active or not writeable"))}catch(t){return this.log("handleData: error processing data:",t),this.handleError(t),new Promise((i,n)=>n(`Error while processing data ${t.toString()}`))}}handleError(e){this.log("handleError:",e),this.dispatchEvent(new CustomEvent("error",{detail:e})),this.log("handleError: rejecting exclusive lock on PGlite instance"),this.rejectLock?.(e),this.resolveLock=void 0,this.rejectLock=void 0,this.detach(!0)}handleClose(){this.log("handleClose: socket closed"),this.dispatchEvent(new CustomEvent("close")),this.detach(!1)}inspectData(e,t){if(this.inspect){console.log("-".repeat(75)),console.log(e==="incoming"?"-> incoming":"<- outgoing",t.length,"bytes");for(let i=0;i<t.length;i+=16){let n=Math.min(16,t.length-i),r="";for(let c=0;c<16;c++)if(c<n){let h=t[i+c];r+=h.toString(16).padStart(2,"0")+" "}else r+=" ";let a="";for(let c=0;c<n;c++){let h=t[i+c];a+=h>=32&&h<=126?String.fromCharCode(h):"."}console.log(`${i.toString(16).padStart(8,"0")} ${r} ${a}`)}}}};d.nextHandlerId=1;var l=d,g=class extends EventTarget{constructor(e){super();this.server=null;this.active=!1;this.activeHandler=null;this.connectionQueue=[];this.handlerCount=0;this.db=e.db,e.path?this.path=e.path:(typeof e.port=="number"?this.port=e.port??e.port:this.port=5432,this.host=e.host||"127.0.0.1"),this.inspect=e.inspect??!1,this.debug=e.debug??!1,this.connectionQueueTimeout=e.connectionQueueTimeout??p,this.log(`constructor: created server on ${this.host}:${this.port}`),this.log(`constructor: connection queue timeout: ${this.connectionQueueTimeout}ms`)}log(e,...t){this.debug&&console.log(`[PGLiteSocketServer] ${e}`,...t)}async start(){if(this.log(`start: starting server on ${this.getServerConn()}`),this.server)throw new Error("Socket server already started");return this.active=!0,this.server=(0,v.createServer)(e=>this.handleConnection(e)),new Promise((e,t)=>{if(!this.server)return t(new Error("Server not initialized"));if(this.server.on("error",i=>{this.log("start: server error:",i),this.dispatchEvent(new CustomEvent("error",{detail:i})),t(i)}),this.path)this.server.listen(this.path,()=>{this.log(`start: server listening on ${this.getServerConn()}`),this.dispatchEvent(new CustomEvent("listening",{detail:{path:this.path}})),e()});else{let i=this.server;i.listen(this.port,this.host,()=>{let n=i.address();if(n===null||typeof n!="object")throw Error("Expected address info");this.port=n.port,this.log(`start: server listening on ${this.getServerConn()}`),this.dispatchEvent(new CustomEvent("listening",{detail:{port:this.port,host:this.host}})),e()})}})}getServerConn(){return this.path?this.path:`${this.host}:${this.port}`}async stop(){return this.log("stop: stopping server"),this.active=!1,this.log(`stop: clearing connection queue (${this.connectionQueue.length} connections)`),this.connectionQueue.forEach(e=>{clearTimeout(e.timeoutId),e.socket.writable&&(this.log(`stop: closing queued connection from ${e.clientInfo.clientAddress}:${e.clientInfo.clientPort}`),e.socket.end())}),this.connectionQueue=[],this.activeHandler&&(this.log(`stop: detaching active handler #${this.activeHandlerId}`),this.activeHandler.detach(!0),this.activeHandler=null),this.server?new Promise(e=>{if(!this.server)return e();this.server.close(()=>{this.log("stop: server closed"),this.server=null,this.dispatchEvent(new CustomEvent("close")),e()})}):(this.log("stop: server not running, nothing to do"),Promise.resolve())}get activeHandlerId(){return this.activeHandler?.handlerId??null}async handleConnection(e){let t={clientAddress:e.remoteAddress||"unknown",clientPort:e.remotePort||0};if(this.log(`handleConnection: new connection from ${t.clientAddress}:${t.clientPort}`),!this.active){this.log("handleConnection: server not active, closing connection"),e.end();return}if(!this.activeHandler||!this.activeHandler.isAttached){this.log("handleConnection: no active handler, attaching socket directly"),this.dispatchEvent(new CustomEvent("connection",{detail:t})),await this.attachSocketToNewHandler(e,t);return}this.log(`handleConnection: active handler #${this.activeHandlerId} exists, queueing connection`),this.enqueueConnection(e,t)}enqueueConnection(e,t){this.log(`enqueueConnection: queueing connection from ${t.clientAddress}:${t.clientPort}, timeout: ${this.connectionQueueTimeout}ms`);let i=setTimeout(()=>{this.log(`enqueueConnection: timeout for connection from ${t.clientAddress}:${t.clientPort}`),this.connectionQueue=this.connectionQueue.filter(n=>n.socket!==e),e.writable&&(this.log("enqueueConnection: closing timed out connection"),e.end()),this.dispatchEvent(new CustomEvent("queueTimeout",{detail:{...t,queueSize:this.connectionQueue.length}}))},this.connectionQueueTimeout);this.connectionQueue.push({socket:e,clientInfo:t,timeoutId:i}),this.log(`enqueueConnection: connection queued, queue size: ${this.connectionQueue.length}`),this.dispatchEvent(new CustomEvent("queuedConnection",{detail:{...t,queueSize:this.connectionQueue.length}}))}processNextInQueue(){if(this.log(`processNextInQueue: processing next connection, queue size: ${this.connectionQueue.length}`),this.connectionQueue.length===0||!this.active){this.log("processNextInQueue: no connections in queue or server not active, nothing to do");return}let e=this.connectionQueue.shift();if(e){if(this.log(`processNextInQueue: processing connection from ${e.clientInfo.clientAddress}:${e.clientInfo.clientPort}`),clearTimeout(e.timeoutId),!e.socket.writable){this.log("processNextInQueue: socket no longer writable, skipping to next connection"),this.processNextInQueue();return}this.attachSocketToNewHandler(e.socket,e.clientInfo).catch(t=>{this.log("processNextInQueue: error attaching socket:",t),this.dispatchEvent(new CustomEvent("error",{detail:t})),this.processNextInQueue()})}}async attachSocketToNewHandler(e,t){this.handlerCount++,this.log(`attachSocketToNewHandler: creating new handler for ${t.clientAddress}:${t.clientPort} (handler #${this.handlerCount})`);let i=new l({db:this.db,closeOnDetach:!0,inspect:this.inspect,debug:this.debug});i.addEventListener("error",n=>{this.log(`handler #${i.handlerId}: error from handler:`,n.detail),this.dispatchEvent(new CustomEvent("error",{detail:n.detail}))}),i.addEventListener("close",()=>{this.log(`handler #${i.handlerId}: closed`),this.activeHandler===i&&(this.log(`handler #${i.handlerId}: was active handler, processing next connection in queue`),this.activeHandler=null,this.processNextInQueue())});try{this.activeHandler=i,this.log(`handler #${i.handlerId}: attaching socket`),await i.attach(e),this.dispatchEvent(new CustomEvent("connection",{detail:t}))}catch(n){throw this.log(`handler #${i.handlerId}: error attaching socket:`,n),this.activeHandler=null,e.writable&&e.end(),n}}};0&&(module.exports={CONNECTION_QUEUE_TIMEOUT,PGLiteSocketHandler,PGLiteSocketServer});
|
|
2
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { PGlite } from '@electric-sql/pglite'\nimport { createServer, Server, Socket } from 'net'\n\n// Connection queue timeout in milliseconds\nexport const CONNECTION_QUEUE_TIMEOUT = 60000 // 60 seconds\n\n/**\n * Options for creating a PGLiteSocketHandler\n */\nexport interface PGLiteSocketHandlerOptions {\n /** The PGlite database instance */\n db: PGlite\n /** Whether to close the socket when detached (default: false) */\n closeOnDetach?: boolean\n /** Print the incoming and outgoing data to the console in hex and ascii */\n inspect?: boolean\n /** Enable debug logging of method calls */\n debug?: boolean\n}\n\n/**\n * Low-level handler for a single socket connection to PGLite\n * Handles the raw protocol communication between a socket and PGLite\n */\nexport class PGLiteSocketHandler extends EventTarget {\n readonly db: PGlite\n private socket: Socket | null = null\n private active = false\n private closeOnDetach: boolean\n private resolveLock?: () => void\n private rejectLock?: (err: Error) => void\n private inspect: boolean\n private debug: boolean\n private readonly id: number\n\n // Static counter for generating unique handler IDs\n private static nextHandlerId = 1\n\n /**\n * Create a new PGLiteSocketHandler\n * @param options Options for the handler\n */\n constructor(options: PGLiteSocketHandlerOptions) {\n super()\n this.db = options.db\n this.closeOnDetach = options.closeOnDetach ?? false\n this.inspect = options.inspect ?? false\n this.debug = options.debug ?? false\n this.id = PGLiteSocketHandler.nextHandlerId++\n\n this.log('constructor: created new handler')\n }\n\n /**\n * Get the unique ID of this handler\n */\n public get handlerId(): number {\n return this.id\n }\n\n /**\n * Log a message if debug is enabled\n * @private\n */\n private log(message: string, ...args: any[]): void {\n if (this.debug) {\n console.log(`[PGLiteSocketHandler#${this.id}] ${message}`, ...args)\n }\n }\n\n /**\n * Attach a socket to this handler\n * @param socket The socket to attach\n * @returns this handler instance\n * @throws Error if a socket is already attached\n */\n public async attach(socket: Socket): Promise<PGLiteSocketHandler> {\n this.log(\n `attach: attaching socket from ${socket.remoteAddress}:${socket.remotePort}`,\n )\n\n if (this.socket) {\n throw new Error('Socket already attached')\n }\n\n this.socket = socket\n this.active = true\n\n // Ensure the PGlite instance is ready\n this.log(`attach: waiting for PGlite to be ready`)\n await this.db.waitReady\n\n // Hold the lock on the PGlite instance\n this.log(`attach: acquiring exclusive lock on PGlite instance`)\n await new Promise<void>((resolve) => {\n this.db.runExclusive(() => {\n // Ensure we have the lock on the PGlite instance\n resolve()\n\n // Use a promise to hold the lock on the PGlite instance\n // this can be resolved or rejected by the handler to release the lock\n return new Promise<void>((resolveLock, rejectLock) => {\n this.resolveLock = resolveLock\n this.rejectLock = rejectLock\n })\n })\n })\n\n // Setup event handlers\n this.log(`attach: setting up socket event handlers`)\n socket.on('data', async (data) => {\n try {\n const result = await this.handleData(data)\n this.log(`socket on data sent: ${result} bytes`)\n } catch (err) {\n this.log('socket on data error: ', err)\n }\n })\n socket.on('error', (err) => this.handleError(err))\n socket.on('close', () => this.handleClose())\n\n return this\n }\n\n /**\n * Detach the current socket from this handler\n * @param close Whether to close the socket when detaching (overrides constructor option)\n * @returns this handler instance\n */\n public detach(close?: boolean): PGLiteSocketHandler {\n this.log(`detach: detaching socket, close=${close ?? this.closeOnDetach}`)\n\n if (!this.socket) {\n this.log(`detach: no socket attached, nothing to do`)\n return this\n }\n\n // Remove all listeners\n this.socket.removeAllListeners('data')\n this.socket.removeAllListeners('error')\n this.socket.removeAllListeners('close')\n\n // Close the socket if requested\n if (close ?? this.closeOnDetach) {\n if (this.socket.writable) {\n this.log(`detach: closing socket`)\n this.socket.end()\n this.socket.destroy()\n }\n }\n\n // Release the lock on the PGlite instance\n this.log(`detach: releasing exclusive lock on PGlite instance`)\n this.resolveLock?.()\n\n this.socket = null\n this.active = false\n return this\n }\n\n /**\n * Check if a socket is currently attached\n */\n public get isAttached(): boolean {\n return this.socket !== null\n }\n\n /**\n * Handle incoming data from the socket\n */\n private async handleData(data: Buffer): Promise<number> {\n if (!this.socket || !this.active) {\n this.log(`handleData: no active socket, ignoring data`)\n return new Promise((_, reject) => reject(`no active socket`))\n }\n\n this.log(`handleData: received ${data.length} bytes`)\n\n // Print the incoming data to the console\n this.inspectData('incoming', data)\n\n try {\n // Process the raw protocol data\n this.log(`handleData: sending data to PGlite for processing`)\n const result = await this.db.execProtocolRaw(new Uint8Array(data))\n\n this.log(`handleData: received ${result.length} bytes from PGlite`)\n\n // Print the outgoing data to the console\n this.inspectData('outgoing', result)\n\n // Send the result back if the socket is still connected\n if (this.socket && this.socket.writable && this.active) {\n if (result.length <= 0) {\n this.log(`handleData: cowardly refusing to send empty packet`)\n return new Promise((_, reject) => reject('no data'))\n }\n\n const promise = new Promise<number>((resolve, reject) => {\n this.log(`handleData: writing response to socket`)\n if (this.socket) {\n this.socket.write(Buffer.from(result), (err?: Error) => {\n if (err) {\n reject(`Error while writing to the socket ${err.toString()}`)\n } else {\n resolve(result.length)\n }\n })\n } else {\n reject(`No socket`)\n }\n })\n\n // Emit data event with byte sizes\n this.dispatchEvent(\n new CustomEvent('data', {\n detail: { incoming: data.length, outgoing: result.length },\n }),\n )\n return promise\n } else {\n this.log(\n `handleData: socket no longer writable or active, discarding response`,\n )\n return new Promise((_, reject) =>\n reject(`No socket, not active or not writeable`),\n )\n }\n } catch (err) {\n this.log(`handleData: error processing data:`, err)\n this.handleError(err as Error)\n return new Promise((_, reject) =>\n reject(`Error while processing data ${(err as Error).toString()}`),\n )\n }\n }\n\n /**\n * Handle errors from the socket\n */\n private handleError(err: Error): void {\n this.log(`handleError:`, err)\n\n // Emit error event\n this.dispatchEvent(new CustomEvent('error', { detail: err }))\n\n // Reject the lock on the PGlite instance\n this.log(`handleError: rejecting exclusive lock on PGlite instance`)\n this.rejectLock?.(err)\n this.resolveLock = undefined\n this.rejectLock = undefined\n\n // Close the connection on error\n this.detach(true)\n }\n\n /**\n * Handle socket close event\n */\n private handleClose(): void {\n this.log(`handleClose: socket closed`)\n\n this.dispatchEvent(new CustomEvent('close'))\n this.detach(false) // Already closed, just clean up\n }\n\n /**\n * Print data in hex and ascii to the console\n */\n private inspectData(\n direction: 'incoming' | 'outgoing',\n data: Buffer | Uint8Array,\n ): void {\n if (!this.inspect) return\n console.log('-'.repeat(75))\n if (direction === 'incoming') {\n console.log('-> incoming', data.length, 'bytes')\n } else {\n console.log('<- outgoing', data.length, 'bytes')\n }\n\n // Process 16 bytes per line\n for (let offset = 0; offset < data.length; offset += 16) {\n // Calculate current chunk size (may be less than 16 for the last chunk)\n const chunkSize = Math.min(16, data.length - offset)\n\n // Build the hex representation\n let hexPart = ''\n for (let i = 0; i < 16; i++) {\n if (i < chunkSize) {\n const byte = data[offset + i]\n hexPart += byte.toString(16).padStart(2, '0') + ' '\n } else {\n hexPart += ' ' // 3 spaces for missing bytes\n }\n }\n\n // Build the ASCII representation\n let asciiPart = ''\n for (let i = 0; i < chunkSize; i++) {\n const byte = data[offset + i]\n // Use printable characters (32-126), replace others with a dot\n asciiPart += byte >= 32 && byte <= 126 ? String.fromCharCode(byte) : '.'\n }\n\n // Print the line with offset in hex, hex values, and ASCII representation\n console.log(\n `${offset.toString(16).padStart(8, '0')} ${hexPart} ${asciiPart}`,\n )\n }\n }\n}\n\n/**\n * Represents a queued connection with timeout\n */\ninterface QueuedConnection {\n socket: Socket\n clientInfo: {\n clientAddress: string\n clientPort: number\n }\n timeoutId: NodeJS.Timeout\n}\n\n/**\n * Options for creating a PGLiteSocketServer\n */\nexport interface PGLiteSocketServerOptions {\n /** The PGlite database instance */\n db: PGlite\n /** The port to listen on (default: 5432) */\n port?: number\n /** The host to bind to (default: 127.0.0.1) */\n host?: string\n /** Unix socket path to bind to (default: undefined). If specified, takes precedence over host:port */\n path?: string\n /** Print the incoming and outgoing data to the console in hex and ascii */\n inspect?: boolean\n /** Connection queue timeout in milliseconds (default: 10000) */\n connectionQueueTimeout?: number\n /** Enable debug logging of method calls */\n debug?: boolean\n}\n\n/**\n * High-level server that manages socket connections to PGLite\n * Creates and manages a TCP server and handles client connections\n */\nexport class PGLiteSocketServer extends EventTarget {\n readonly db: PGlite\n private server: Server | null = null\n private port?: number\n private host?: string\n private path?: string\n private active = false\n private inspect: boolean\n private debug: boolean\n private connectionQueueTimeout: number\n private activeHandler: PGLiteSocketHandler | null = null\n private connectionQueue: QueuedConnection[] = []\n private handlerCount: number = 0\n\n /**\n * Create a new PGLiteSocketServer\n * @param options Options for the server\n */\n constructor(options: PGLiteSocketServerOptions) {\n super()\n this.db = options.db\n if (options.path) {\n this.path = options.path\n } else {\n if (typeof options.port === 'number') {\n // Keep port undefined on port 0, will be set by the OS when we start the server.\n this.port = options.port ?? options.port\n } else {\n this.port = 5432\n }\n this.host = options.host || '127.0.0.1'\n }\n this.inspect = options.inspect ?? false\n this.debug = options.debug ?? false\n this.connectionQueueTimeout =\n options.connectionQueueTimeout ?? CONNECTION_QUEUE_TIMEOUT\n\n this.log(`constructor: created server on ${this.host}:${this.port}`)\n this.log(\n `constructor: connection queue timeout: ${this.connectionQueueTimeout}ms`,\n )\n }\n\n /**\n * Log a message if debug is enabled\n * @private\n */\n private log(message: string, ...args: any[]): void {\n if (this.debug) {\n console.log(`[PGLiteSocketServer] ${message}`, ...args)\n }\n }\n\n /**\n * Start the socket server\n * @returns Promise that resolves when the server is listening\n */\n public async start(): Promise<void> {\n this.log(`start: starting server on ${this.getServerConn()}`)\n\n if (this.server) {\n throw new Error('Socket server already started')\n }\n\n this.active = true\n this.server = createServer((socket) => this.handleConnection(socket))\n\n return new Promise<void>((resolve, reject) => {\n if (!this.server) return reject(new Error('Server not initialized'))\n\n this.server.on('error', (err) => {\n this.log(`start: server error:`, err)\n this.dispatchEvent(new CustomEvent('error', { detail: err }))\n reject(err)\n })\n\n if (this.path) {\n this.server.listen(this.path, () => {\n this.log(`start: server listening on ${this.getServerConn()}`)\n this.dispatchEvent(\n new CustomEvent('listening', {\n detail: { path: this.path },\n }),\n )\n resolve()\n })\n } else {\n const server = this.server\n server.listen(this.port, this.host, () => {\n const address = server.address()\n // We are not using pipes, so return type should be AddressInfo\n if (address === null || typeof address !== 'object') {\n throw Error('Expected address info')\n }\n // Assign the new port number\n this.port = address.port\n this.log(`start: server listening on ${this.getServerConn()}`)\n this.dispatchEvent(\n new CustomEvent('listening', {\n detail: { port: this.port, host: this.host },\n }),\n )\n resolve()\n })\n }\n })\n }\n\n public getServerConn(): string {\n if (this.path) return this.path\n return `${this.host}:${this.port}`\n }\n\n /**\n * Stop the socket server\n * @returns Promise that resolves when the server is closed\n */\n public async stop(): Promise<void> {\n this.log(`stop: stopping server`)\n\n this.active = false\n\n // Clear connection queue\n this.log(\n `stop: clearing connection queue (${this.connectionQueue.length} connections)`,\n )\n\n this.connectionQueue.forEach((queuedConn) => {\n clearTimeout(queuedConn.timeoutId)\n if (queuedConn.socket.writable) {\n this.log(\n `stop: closing queued connection from ${queuedConn.clientInfo.clientAddress}:${queuedConn.clientInfo.clientPort}`,\n )\n queuedConn.socket.end()\n }\n })\n this.connectionQueue = []\n\n // Detach active handler if exists\n if (this.activeHandler) {\n this.log(`stop: detaching active handler #${this.activeHandlerId}`)\n this.activeHandler.detach(true)\n this.activeHandler = null\n }\n\n if (!this.server) {\n this.log(`stop: server not running, nothing to do`)\n return Promise.resolve()\n }\n\n return new Promise<void>((resolve) => {\n if (!this.server) return resolve()\n\n this.server.close(() => {\n this.log(`stop: server closed`)\n this.server = null\n this.dispatchEvent(new CustomEvent('close'))\n resolve()\n })\n })\n }\n\n /**\n * Get the active handler ID, or null if no active handler\n */\n private get activeHandlerId(): number | null {\n return this.activeHandler?.handlerId ?? null\n }\n\n /**\n * Handle a new client connection\n */\n private async handleConnection(socket: Socket): Promise<void> {\n const clientInfo = {\n clientAddress: socket.remoteAddress || 'unknown',\n clientPort: socket.remotePort || 0,\n }\n\n this.log(\n `handleConnection: new connection from ${clientInfo.clientAddress}:${clientInfo.clientPort}`,\n )\n\n // If server is not active, close the connection immediately\n if (!this.active) {\n this.log(`handleConnection: server not active, closing connection`)\n socket.end()\n return\n }\n\n // If we don't have an active handler or it's not attached, we can use this connection immediately\n if (!this.activeHandler || !this.activeHandler.isAttached) {\n this.log(`handleConnection: no active handler, attaching socket directly`)\n this.dispatchEvent(new CustomEvent('connection', { detail: clientInfo }))\n await this.attachSocketToNewHandler(socket, clientInfo)\n return\n }\n\n // Otherwise, queue the connection\n this.log(\n `handleConnection: active handler #${this.activeHandlerId} exists, queueing connection`,\n )\n this.enqueueConnection(socket, clientInfo)\n }\n\n /**\n * Add a connection to the queue\n */\n private enqueueConnection(\n socket: Socket,\n clientInfo: { clientAddress: string; clientPort: number },\n ): void {\n this.log(\n `enqueueConnection: queueing connection from ${clientInfo.clientAddress}:${clientInfo.clientPort}, timeout: ${this.connectionQueueTimeout}ms`,\n )\n\n // Set a timeout for this queued connection\n const timeoutId = setTimeout(() => {\n this.log(\n `enqueueConnection: timeout for connection from ${clientInfo.clientAddress}:${clientInfo.clientPort}`,\n )\n\n // Remove from queue\n this.connectionQueue = this.connectionQueue.filter(\n (queuedConn) => queuedConn.socket !== socket,\n )\n\n // End the connection if it's still open\n if (socket.writable) {\n this.log(`enqueueConnection: closing timed out connection`)\n socket.end()\n }\n\n this.dispatchEvent(\n new CustomEvent('queueTimeout', {\n detail: { ...clientInfo, queueSize: this.connectionQueue.length },\n }),\n )\n }, this.connectionQueueTimeout)\n\n // Add to queue\n this.connectionQueue.push({ socket, clientInfo, timeoutId })\n\n this.log(\n `enqueueConnection: connection queued, queue size: ${this.connectionQueue.length}`,\n )\n\n this.dispatchEvent(\n new CustomEvent('queuedConnection', {\n detail: { ...clientInfo, queueSize: this.connectionQueue.length },\n }),\n )\n }\n\n /**\n * Process the next connection in the queue\n */\n private processNextInQueue(): void {\n this.log(\n `processNextInQueue: processing next connection, queue size: ${this.connectionQueue.length}`,\n )\n\n // No connections in queue or server not active\n if (this.connectionQueue.length === 0 || !this.active) {\n this.log(\n `processNextInQueue: no connections in queue or server not active, nothing to do`,\n )\n return\n }\n\n // Get the next connection\n const nextConn = this.connectionQueue.shift()\n if (!nextConn) return\n\n this.log(\n `processNextInQueue: processing connection from ${nextConn.clientInfo.clientAddress}:${nextConn.clientInfo.clientPort}`,\n )\n\n // Clear the timeout\n clearTimeout(nextConn.timeoutId)\n\n // Check if the socket is still valid\n if (!nextConn.socket.writable) {\n this.log(\n `processNextInQueue: socket no longer writable, skipping to next connection`,\n )\n // Socket closed while waiting, process next in queue\n this.processNextInQueue()\n return\n }\n\n // Attach this socket to a new handler\n this.attachSocketToNewHandler(nextConn.socket, nextConn.clientInfo).catch(\n (err) => {\n this.log(`processNextInQueue: error attaching socket:`, err)\n this.dispatchEvent(new CustomEvent('error', { detail: err }))\n // Try the next connection\n this.processNextInQueue()\n },\n )\n }\n\n /**\n * Attach a socket to a new handler\n */\n private async attachSocketToNewHandler(\n socket: Socket,\n clientInfo: { clientAddress: string; clientPort: number },\n ): Promise<void> {\n this.handlerCount++\n\n this.log(\n `attachSocketToNewHandler: creating new handler for ${clientInfo.clientAddress}:${clientInfo.clientPort} (handler #${this.handlerCount})`,\n )\n\n // Create a new handler for this connection\n const handler = new PGLiteSocketHandler({\n db: this.db,\n closeOnDetach: true,\n inspect: this.inspect,\n debug: this.debug,\n })\n\n // Forward error events from the handler\n handler.addEventListener('error', (event) => {\n this.log(\n `handler #${handler.handlerId}: error from handler:`,\n (event as CustomEvent<Error>).detail,\n )\n this.dispatchEvent(\n new CustomEvent('error', {\n detail: (event as CustomEvent<Error>).detail,\n }),\n )\n })\n\n // Handle close event to process next queued connection\n handler.addEventListener('close', () => {\n this.log(`handler #${handler.handlerId}: closed`)\n\n // If this is our active handler, clear it\n if (this.activeHandler === handler) {\n this.log(\n `handler #${handler.handlerId}: was active handler, processing next connection in queue`,\n )\n this.activeHandler = null\n // Process next connection in queue\n this.processNextInQueue()\n }\n })\n\n try {\n // Set as active handler\n this.activeHandler = handler\n\n this.log(`handler #${handler.handlerId}: attaching socket`)\n\n // Attach the socket to the handler\n await handler.attach(socket)\n\n this.dispatchEvent(new CustomEvent('connection', { detail: clientInfo }))\n } catch (err) {\n // If there was an error attaching, clean up\n this.log(`handler #${handler.handlerId}: error attaching socket:`, err)\n this.activeHandler = null\n if (socket.writable) {\n socket.end()\n }\n throw err\n }\n }\n}\n"],"mappings":"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","names":["src_exports","__export","CONNECTION_QUEUE_TIMEOUT","PGLiteSocketHandler","PGLiteSocketServer","__toCommonJS","import_net","CONNECTION_QUEUE_TIMEOUT","_PGLiteSocketHandler","options","message","args","socket","resolve","resolveLock","rejectLock","data","result","err","close","_","reject","promise","direction","offset","chunkSize","hexPart","i","byte","asciiPart","PGLiteSocketHandler","PGLiteSocketServer","server","address","queuedConn","clientInfo","timeoutId","nextConn","handler","event"]}
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
import { PGlite } from '@electric-sql/pglite';
|
|
2
|
-
import { Socket } from 'net';
|
|
3
|
-
|
|
4
|
-
declare const CONNECTION_QUEUE_TIMEOUT = 60000;
|
|
5
|
-
/**
|
|
6
|
-
* Options for creating a PGLiteSocketHandler
|
|
7
|
-
*/
|
|
8
|
-
interface PGLiteSocketHandlerOptions {
|
|
9
|
-
/** The PGlite database instance */
|
|
10
|
-
db: PGlite;
|
|
11
|
-
/** Whether to close the socket when detached (default: false) */
|
|
12
|
-
closeOnDetach?: boolean;
|
|
13
|
-
/** Print the incoming and outgoing data to the console in hex and ascii */
|
|
14
|
-
inspect?: boolean;
|
|
15
|
-
/** Enable debug logging of method calls */
|
|
16
|
-
debug?: boolean;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Low-level handler for a single socket connection to PGLite
|
|
20
|
-
* Handles the raw protocol communication between a socket and PGLite
|
|
21
|
-
*/
|
|
22
|
-
declare class PGLiteSocketHandler extends EventTarget {
|
|
23
|
-
readonly db: PGlite;
|
|
24
|
-
private socket;
|
|
25
|
-
private active;
|
|
26
|
-
private closeOnDetach;
|
|
27
|
-
private resolveLock?;
|
|
28
|
-
private rejectLock?;
|
|
29
|
-
private inspect;
|
|
30
|
-
private debug;
|
|
31
|
-
private readonly id;
|
|
32
|
-
private static nextHandlerId;
|
|
33
|
-
/**
|
|
34
|
-
* Create a new PGLiteSocketHandler
|
|
35
|
-
* @param options Options for the handler
|
|
36
|
-
*/
|
|
37
|
-
constructor(options: PGLiteSocketHandlerOptions);
|
|
38
|
-
/**
|
|
39
|
-
* Get the unique ID of this handler
|
|
40
|
-
*/
|
|
41
|
-
get handlerId(): number;
|
|
42
|
-
/**
|
|
43
|
-
* Log a message if debug is enabled
|
|
44
|
-
* @private
|
|
45
|
-
*/
|
|
46
|
-
private log;
|
|
47
|
-
/**
|
|
48
|
-
* Attach a socket to this handler
|
|
49
|
-
* @param socket The socket to attach
|
|
50
|
-
* @returns this handler instance
|
|
51
|
-
* @throws Error if a socket is already attached
|
|
52
|
-
*/
|
|
53
|
-
attach(socket: Socket): Promise<PGLiteSocketHandler>;
|
|
54
|
-
/**
|
|
55
|
-
* Detach the current socket from this handler
|
|
56
|
-
* @param close Whether to close the socket when detaching (overrides constructor option)
|
|
57
|
-
* @returns this handler instance
|
|
58
|
-
*/
|
|
59
|
-
detach(close?: boolean): PGLiteSocketHandler;
|
|
60
|
-
/**
|
|
61
|
-
* Check if a socket is currently attached
|
|
62
|
-
*/
|
|
63
|
-
get isAttached(): boolean;
|
|
64
|
-
/**
|
|
65
|
-
* Handle incoming data from the socket
|
|
66
|
-
*/
|
|
67
|
-
private handleData;
|
|
68
|
-
/**
|
|
69
|
-
* Handle errors from the socket
|
|
70
|
-
*/
|
|
71
|
-
private handleError;
|
|
72
|
-
/**
|
|
73
|
-
* Handle socket close event
|
|
74
|
-
*/
|
|
75
|
-
private handleClose;
|
|
76
|
-
/**
|
|
77
|
-
* Print data in hex and ascii to the console
|
|
78
|
-
*/
|
|
79
|
-
private inspectData;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Options for creating a PGLiteSocketServer
|
|
83
|
-
*/
|
|
84
|
-
interface PGLiteSocketServerOptions {
|
|
85
|
-
/** The PGlite database instance */
|
|
86
|
-
db: PGlite;
|
|
87
|
-
/** The port to listen on (default: 5432) */
|
|
88
|
-
port?: number;
|
|
89
|
-
/** The host to bind to (default: 127.0.0.1) */
|
|
90
|
-
host?: string;
|
|
91
|
-
/** Unix socket path to bind to (default: undefined). If specified, takes precedence over host:port */
|
|
92
|
-
path?: string;
|
|
93
|
-
/** Print the incoming and outgoing data to the console in hex and ascii */
|
|
94
|
-
inspect?: boolean;
|
|
95
|
-
/** Connection queue timeout in milliseconds (default: 10000) */
|
|
96
|
-
connectionQueueTimeout?: number;
|
|
97
|
-
/** Enable debug logging of method calls */
|
|
98
|
-
debug?: boolean;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* High-level server that manages socket connections to PGLite
|
|
102
|
-
* Creates and manages a TCP server and handles client connections
|
|
103
|
-
*/
|
|
104
|
-
declare class PGLiteSocketServer extends EventTarget {
|
|
105
|
-
readonly db: PGlite;
|
|
106
|
-
private server;
|
|
107
|
-
private port?;
|
|
108
|
-
private host?;
|
|
109
|
-
private path?;
|
|
110
|
-
private active;
|
|
111
|
-
private inspect;
|
|
112
|
-
private debug;
|
|
113
|
-
private connectionQueueTimeout;
|
|
114
|
-
private activeHandler;
|
|
115
|
-
private connectionQueue;
|
|
116
|
-
private handlerCount;
|
|
117
|
-
/**
|
|
118
|
-
* Create a new PGLiteSocketServer
|
|
119
|
-
* @param options Options for the server
|
|
120
|
-
*/
|
|
121
|
-
constructor(options: PGLiteSocketServerOptions);
|
|
122
|
-
/**
|
|
123
|
-
* Log a message if debug is enabled
|
|
124
|
-
* @private
|
|
125
|
-
*/
|
|
126
|
-
private log;
|
|
127
|
-
/**
|
|
128
|
-
* Start the socket server
|
|
129
|
-
* @returns Promise that resolves when the server is listening
|
|
130
|
-
*/
|
|
131
|
-
start(): Promise<void>;
|
|
132
|
-
getServerConn(): string;
|
|
133
|
-
/**
|
|
134
|
-
* Stop the socket server
|
|
135
|
-
* @returns Promise that resolves when the server is closed
|
|
136
|
-
*/
|
|
137
|
-
stop(): Promise<void>;
|
|
138
|
-
/**
|
|
139
|
-
* Get the active handler ID, or null if no active handler
|
|
140
|
-
*/
|
|
141
|
-
private get activeHandlerId();
|
|
142
|
-
/**
|
|
143
|
-
* Handle a new client connection
|
|
144
|
-
*/
|
|
145
|
-
private handleConnection;
|
|
146
|
-
/**
|
|
147
|
-
* Add a connection to the queue
|
|
148
|
-
*/
|
|
149
|
-
private enqueueConnection;
|
|
150
|
-
/**
|
|
151
|
-
* Process the next connection in the queue
|
|
152
|
-
*/
|
|
153
|
-
private processNextInQueue;
|
|
154
|
-
/**
|
|
155
|
-
* Attach a socket to a new handler
|
|
156
|
-
*/
|
|
157
|
-
private attachSocketToNewHandler;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
export { CONNECTION_QUEUE_TIMEOUT, PGLiteSocketHandler, type PGLiteSocketHandlerOptions, PGLiteSocketServer, type PGLiteSocketServerOptions };
|