From 9bfd91d39fafd027ea2fe161ba8adad5954723b7 Mon Sep 17 00:00:00 2001
From: akdeb
Date: Fri, 18 Apr 2025 14:15:56 +0100
Subject: [PATCH] updating frontend
---
README.md | 78 +-
frontend-nextjs/.env.example | 2 +-
frontend-nextjs/app/children/page.tsx | 5 -
.../app/components/Insights/BarChart.tsx | 136 -
.../app/components/Insights/Heatmap.tsx | 107 -
.../app/components/Insights/LineChart.tsx | 128 -
.../app/components/Insights/PieChart.tsx | 125 -
.../app/components/Insights/TopCard.tsx | 79 -
.../components/LandingPage/InsightsDemo.tsx | 204 -
.../LandingPage/InsightsDemoSection.tsx | 38 -
.../app/components/Nav/LeftNavbarButtons.tsx | 73 -
.../app/components/Nav/NavbarButtons.tsx | 9 +-
.../app/components/Nav/NavbarDropdownMenu.tsx | 15 -
.../app/components/Settings/AppSettings.tsx | 9 +-
frontend-nextjs/app/docs/page.tsx | 13 -
frontend-nextjs/app/healthcare/page.tsx | 157 -
frontend-nextjs/app/kids/page.tsx | 115 -
frontend-nextjs/app/layout.tsx | 2 +-
frontend-nextjs/app/sitemap.ts | 6 -
frontend-nextjs/lib/azureOpenai.ts | 82 -
frontend-nextjs/lib/data.ts | 90 +-
node_modules/.bin/mkdirp | 1 -
node_modules/.bin/supabase | 1 -
node_modules/.package-lock.json | 356 --
node_modules/@isaacs/fs-minipass/LICENSE | 15 -
node_modules/@isaacs/fs-minipass/README.md | 71 -
.../fs-minipass/dist/commonjs/index.d.ts | 118 -
.../fs-minipass/dist/commonjs/index.d.ts.map | 1 -
.../fs-minipass/dist/commonjs/index.js | 430 --
.../fs-minipass/dist/commonjs/index.js.map | 1 -
.../fs-minipass/dist/commonjs/package.json | 3 -
.../@isaacs/fs-minipass/dist/esm/index.d.ts | 118 -
.../fs-minipass/dist/esm/index.d.ts.map | 1 -
.../@isaacs/fs-minipass/dist/esm/index.js | 420 --
.../@isaacs/fs-minipass/dist/esm/index.js.map | 1 -
.../@isaacs/fs-minipass/dist/esm/package.json | 3 -
node_modules/@isaacs/fs-minipass/package.json | 72 -
node_modules/agent-base/LICENSE | 22 -
node_modules/agent-base/README.md | 69 -
node_modules/agent-base/dist/helpers.d.ts | 15 -
node_modules/agent-base/dist/helpers.d.ts.map | 1 -
node_modules/agent-base/dist/helpers.js | 66 -
node_modules/agent-base/dist/helpers.js.map | 1 -
node_modules/agent-base/dist/index.d.ts | 41 -
node_modules/agent-base/dist/index.d.ts.map | 1 -
node_modules/agent-base/dist/index.js | 180 -
node_modules/agent-base/dist/index.js.map | 1 -
node_modules/agent-base/package.json | 46 -
node_modules/bin-links/LICENSE | 15 -
node_modules/bin-links/README.md | 90 -
node_modules/bin-links/lib/bin-target.js | 9 -
node_modules/bin-links/lib/check-bin.js | 74 -
node_modules/bin-links/lib/check-bins.js | 18 -
node_modules/bin-links/lib/fix-bin.js | 42 -
.../bin-links/lib/get-node-modules.js | 19 -
node_modules/bin-links/lib/get-paths.js | 42 -
node_modules/bin-links/lib/get-prefix.js | 3 -
node_modules/bin-links/lib/index.js | 44 -
node_modules/bin-links/lib/is-windows.js | 2 -
node_modules/bin-links/lib/link-bin.js | 9 -
node_modules/bin-links/lib/link-bins.js | 23 -
node_modules/bin-links/lib/link-gently.js | 96 -
node_modules/bin-links/lib/link-mans.js | 53 -
node_modules/bin-links/lib/man-target.js | 6 -
node_modules/bin-links/lib/shim-bin.js | 86 -
node_modules/bin-links/package.json | 61 -
node_modules/chownr/LICENSE.md | 63 -
node_modules/chownr/README.md | 3 -
node_modules/chownr/dist/commonjs/index.d.ts | 3 -
.../chownr/dist/commonjs/index.d.ts.map | 1 -
node_modules/chownr/dist/commonjs/index.js | 93 -
.../chownr/dist/commonjs/index.js.map | 1 -
.../chownr/dist/commonjs/package.json | 3 -
node_modules/chownr/dist/esm/index.d.ts | 3 -
node_modules/chownr/dist/esm/index.d.ts.map | 1 -
node_modules/chownr/dist/esm/index.js | 85 -
node_modules/chownr/dist/esm/index.js.map | 1 -
node_modules/chownr/dist/esm/package.json | 3 -
node_modules/chownr/package.json | 69 -
node_modules/cmd-shim/LICENSE | 15 -
node_modules/cmd-shim/README.md | 34 -
node_modules/cmd-shim/lib/index.js | 247 -
node_modules/cmd-shim/lib/to-batch-syntax.js | 49 -
node_modules/cmd-shim/package.json | 48 -
node_modules/data-uri-to-buffer/README.md | 88 -
.../data-uri-to-buffer/dist/index.d.ts | 15 -
node_modules/data-uri-to-buffer/dist/index.js | 53 -
.../data-uri-to-buffer/dist/index.js.map | 1 -
node_modules/data-uri-to-buffer/package.json | 62 -
node_modules/data-uri-to-buffer/src/index.ts | 68 -
node_modules/debug/LICENSE | 20 -
node_modules/debug/README.md | 481 --
node_modules/debug/package.json | 65 -
node_modules/debug/src/browser.js | 272 -
node_modules/debug/src/common.js | 292 -
node_modules/debug/src/index.js | 10 -
node_modules/debug/src/node.js | 263 -
node_modules/fetch-blob/LICENSE | 21 -
node_modules/fetch-blob/README.md | 106 -
node_modules/fetch-blob/file.d.ts | 2 -
node_modules/fetch-blob/file.js | 49 -
node_modules/fetch-blob/from.d.ts | 26 -
node_modules/fetch-blob/from.js | 100 -
node_modules/fetch-blob/index.d.ts | 3 -
node_modules/fetch-blob/index.js | 250 -
node_modules/fetch-blob/package.json | 56 -
node_modules/fetch-blob/streams.cjs | 51 -
node_modules/formdata-polyfill/FormData.js | 441 --
node_modules/formdata-polyfill/LICENSE | 21 -
node_modules/formdata-polyfill/README.md | 145 -
node_modules/formdata-polyfill/esm.min.d.ts | 5 -
node_modules/formdata-polyfill/esm.min.js | 40 -
.../formdata-polyfill/formdata-to-blob.js | 39 -
.../formdata-polyfill/formdata.min.js | 21 -
node_modules/formdata-polyfill/package.json | 50 -
node_modules/https-proxy-agent/LICENSE | 22 -
node_modules/https-proxy-agent/README.md | 70 -
.../https-proxy-agent/dist/index.d.ts | 47 -
.../https-proxy-agent/dist/index.d.ts.map | 1 -
node_modules/https-proxy-agent/dist/index.js | 180 -
.../https-proxy-agent/dist/index.js.map | 1 -
.../dist/parse-proxy-response.d.ts | 15 -
.../dist/parse-proxy-response.d.ts.map | 1 -
.../dist/parse-proxy-response.js | 101 -
.../dist/parse-proxy-response.js.map | 1 -
node_modules/https-proxy-agent/package.json | 50 -
node_modules/imurmurhash/README.md | 122 -
node_modules/imurmurhash/imurmurhash.js | 138 -
node_modules/imurmurhash/imurmurhash.min.js | 12 -
node_modules/imurmurhash/package.json | 40 -
node_modules/minipass/LICENSE | 15 -
node_modules/minipass/README.md | 825 ---
.../minipass/dist/commonjs/index.d.ts | 549 --
.../minipass/dist/commonjs/index.d.ts.map | 1 -
node_modules/minipass/dist/commonjs/index.js | 1028 ----
.../minipass/dist/commonjs/index.js.map | 1 -
.../minipass/dist/commonjs/package.json | 3 -
node_modules/minipass/dist/esm/index.d.ts | 549 --
node_modules/minipass/dist/esm/index.d.ts.map | 1 -
node_modules/minipass/dist/esm/index.js | 1018 ----
node_modules/minipass/dist/esm/index.js.map | 1 -
node_modules/minipass/dist/esm/package.json | 3 -
node_modules/minipass/package.json | 82 -
node_modules/minizlib/LICENSE | 26 -
node_modules/minizlib/README.md | 62 -
.../minizlib/dist/commonjs/constants.d.ts | 2 -
.../minizlib/dist/commonjs/constants.d.ts.map | 1 -
.../minizlib/dist/commonjs/constants.js | 123 -
.../minizlib/dist/commonjs/constants.js.map | 1 -
.../minizlib/dist/commonjs/index.d.ts | 89 -
.../minizlib/dist/commonjs/index.d.ts.map | 1 -
node_modules/minizlib/dist/commonjs/index.js | 392 --
.../minizlib/dist/commonjs/index.js.map | 1 -
.../minizlib/dist/commonjs/package.json | 3 -
node_modules/minizlib/dist/esm/constants.d.ts | 2 -
.../minizlib/dist/esm/constants.d.ts.map | 1 -
node_modules/minizlib/dist/esm/constants.js | 117 -
.../minizlib/dist/esm/constants.js.map | 1 -
node_modules/minizlib/dist/esm/index.d.ts | 89 -
node_modules/minizlib/dist/esm/index.d.ts.map | 1 -
node_modules/minizlib/dist/esm/index.js | 340 --
node_modules/minizlib/dist/esm/index.js.map | 1 -
node_modules/minizlib/dist/esm/package.json | 3 -
node_modules/minizlib/package.json | 80 -
node_modules/mkdirp/LICENSE | 21 -
node_modules/mkdirp/dist/cjs/package.json | 91 -
node_modules/mkdirp/dist/cjs/src/bin.d.ts | 3 -
node_modules/mkdirp/dist/cjs/src/bin.d.ts.map | 1 -
node_modules/mkdirp/dist/cjs/src/bin.js | 80 -
node_modules/mkdirp/dist/cjs/src/bin.js.map | 1 -
.../mkdirp/dist/cjs/src/find-made.d.ts | 4 -
.../mkdirp/dist/cjs/src/find-made.d.ts.map | 1 -
node_modules/mkdirp/dist/cjs/src/find-made.js | 35 -
.../mkdirp/dist/cjs/src/find-made.js.map | 1 -
node_modules/mkdirp/dist/cjs/src/index.d.ts | 39 -
.../mkdirp/dist/cjs/src/index.d.ts.map | 1 -
node_modules/mkdirp/dist/cjs/src/index.js | 53 -
node_modules/mkdirp/dist/cjs/src/index.js.map | 1 -
.../mkdirp/dist/cjs/src/mkdirp-manual.d.ts | 6 -
.../dist/cjs/src/mkdirp-manual.d.ts.map | 1 -
.../mkdirp/dist/cjs/src/mkdirp-manual.js | 79 -
.../mkdirp/dist/cjs/src/mkdirp-manual.js.map | 1 -
.../mkdirp/dist/cjs/src/mkdirp-native.d.ts | 6 -
.../dist/cjs/src/mkdirp-native.d.ts.map | 1 -
.../mkdirp/dist/cjs/src/mkdirp-native.js | 50 -
.../mkdirp/dist/cjs/src/mkdirp-native.js.map | 1 -
.../mkdirp/dist/cjs/src/opts-arg.d.ts | 42 -
.../mkdirp/dist/cjs/src/opts-arg.d.ts.map | 1 -
node_modules/mkdirp/dist/cjs/src/opts-arg.js | 38 -
.../mkdirp/dist/cjs/src/opts-arg.js.map | 1 -
.../mkdirp/dist/cjs/src/path-arg.d.ts | 2 -
.../mkdirp/dist/cjs/src/path-arg.d.ts.map | 1 -
node_modules/mkdirp/dist/cjs/src/path-arg.js | 28 -
.../mkdirp/dist/cjs/src/path-arg.js.map | 1 -
.../mkdirp/dist/cjs/src/use-native.d.ts | 6 -
.../mkdirp/dist/cjs/src/use-native.d.ts.map | 1 -
.../mkdirp/dist/cjs/src/use-native.js | 17 -
.../mkdirp/dist/cjs/src/use-native.js.map | 1 -
node_modules/mkdirp/dist/mjs/find-made.d.ts | 4 -
.../mkdirp/dist/mjs/find-made.d.ts.map | 1 -
node_modules/mkdirp/dist/mjs/find-made.js | 30 -
node_modules/mkdirp/dist/mjs/find-made.js.map | 1 -
node_modules/mkdirp/dist/mjs/index.d.ts | 39 -
node_modules/mkdirp/dist/mjs/index.d.ts.map | 1 -
node_modules/mkdirp/dist/mjs/index.js | 43 -
node_modules/mkdirp/dist/mjs/index.js.map | 1 -
.../mkdirp/dist/mjs/mkdirp-manual.d.ts | 6 -
.../mkdirp/dist/mjs/mkdirp-manual.d.ts.map | 1 -
node_modules/mkdirp/dist/mjs/mkdirp-manual.js | 75 -
.../mkdirp/dist/mjs/mkdirp-manual.js.map | 1 -
.../mkdirp/dist/mjs/mkdirp-native.d.ts | 6 -
.../mkdirp/dist/mjs/mkdirp-native.d.ts.map | 1 -
node_modules/mkdirp/dist/mjs/mkdirp-native.js | 46 -
.../mkdirp/dist/mjs/mkdirp-native.js.map | 1 -
node_modules/mkdirp/dist/mjs/opts-arg.d.ts | 42 -
.../mkdirp/dist/mjs/opts-arg.d.ts.map | 1 -
node_modules/mkdirp/dist/mjs/opts-arg.js | 34 -
node_modules/mkdirp/dist/mjs/opts-arg.js.map | 1 -
node_modules/mkdirp/dist/mjs/package.json | 3 -
node_modules/mkdirp/dist/mjs/path-arg.d.ts | 2 -
.../mkdirp/dist/mjs/path-arg.d.ts.map | 1 -
node_modules/mkdirp/dist/mjs/path-arg.js | 24 -
node_modules/mkdirp/dist/mjs/path-arg.js.map | 1 -
node_modules/mkdirp/dist/mjs/use-native.d.ts | 6 -
.../mkdirp/dist/mjs/use-native.d.ts.map | 1 -
node_modules/mkdirp/dist/mjs/use-native.js | 14 -
.../mkdirp/dist/mjs/use-native.js.map | 1 -
node_modules/mkdirp/package.json | 91 -
node_modules/mkdirp/readme.markdown | 281 -
node_modules/ms/index.js | 162 -
node_modules/ms/license.md | 21 -
node_modules/ms/package.json | 38 -
node_modules/ms/readme.md | 59 -
.../.history/README_20210527203617.md | 2 -
.../.history/README_20210527212714.md | 41 -
.../.history/README_20210527213345.md | 36 -
.../.history/README_20210527213411.md | 36 -
.../.history/README_20210527213803.md | 36 -
.../.history/README_20210527214323.md | 38 -
.../.history/README_20210527214408.md | 38 -
.../.history/index_20210527203842.js | 0
.../.history/index_20210527203947.js | 8 -
.../.history/index_20210527204259.js | 9 -
.../.history/index_20210527204418.js | 9 -
.../.history/index_20210527204756.js | 11 -
.../.history/index_20210527204833.js | 11 -
.../.history/index_20210527211208.js | 15 -
.../.history/index_20210527211248.js | 15 -
.../.history/index_20210527212722.js | 23 -
.../.history/index_20210527212731.js | 23 -
.../.history/index_20210527212746.js | 15 -
.../.history/index_20210527212900.js | 16 -
.../.history/index_20210527213022.js | 16 -
.../.history/index_20210527213822.js | 16 -
.../.history/index_20210527213843.js | 17 -
.../.history/index_20210527213852.js | 17 -
.../.history/index_20210527213910.js | 16 -
.../.history/index_20210527214034.js | 16 -
.../.history/index_20210527214643.js | 41 -
.../.history/index_20210527214654.js | 41 -
.../.history/index_20210527214700.js | 16 -
.../.history/package_20210527203733.json | 19 -
.../.history/package_20210527203825.json | 16 -
.../.history/package_20210527204621.json | 19 -
.../.history/package_20210527204913.json | 25 -
.../.history/package_20210527204925.json | 25 -
.../.history/package_20210527205145.json | 29 -
.../.history/package_20210527205156.json | 29 -
.../.history/test_20210527205603.js | 0
.../.history/test_20210527205957.js | 3 -
.../.history/test_20210527210021.js | 3 -
node_modules/node-domexception/LICENSE | 21 -
node_modules/node-domexception/README.md | 46 -
node_modules/node-domexception/index.js | 16 -
node_modules/node-domexception/package.json | 29 -
node_modules/node-fetch/@types/index.d.ts | 219 -
node_modules/node-fetch/LICENSE.md | 22 -
node_modules/node-fetch/README.md | 872 ---
node_modules/node-fetch/package.json | 131 -
node_modules/node-fetch/src/body.js | 397 --
.../node-fetch/src/errors/abort-error.js | 10 -
node_modules/node-fetch/src/errors/base.js | 17 -
.../node-fetch/src/errors/fetch-error.js | 26 -
node_modules/node-fetch/src/headers.js | 267 -
node_modules/node-fetch/src/index.js | 417 --
node_modules/node-fetch/src/request.js | 313 -
node_modules/node-fetch/src/response.js | 160 -
.../node-fetch/src/utils/get-search.js | 9 -
.../node-fetch/src/utils/is-redirect.js | 11 -
node_modules/node-fetch/src/utils/is.js | 87 -
.../node-fetch/src/utils/multipart-parser.js | 432 --
node_modules/node-fetch/src/utils/referrer.js | 340 --
.../npm-normalize-package-bin/LICENSE | 15 -
.../npm-normalize-package-bin/README.md | 14 -
.../npm-normalize-package-bin/lib/index.js | 64 -
.../npm-normalize-package-bin/package.json | 45 -
node_modules/proc-log/LICENSE | 15 -
node_modules/proc-log/README.md | 226 -
node_modules/proc-log/lib/index.js | 153 -
node_modules/proc-log/package.json | 46 -
node_modules/read-cmd-shim/LICENSE | 14 -
node_modules/read-cmd-shim/README.md | 36 -
node_modules/read-cmd-shim/lib/index.js | 75 -
node_modules/read-cmd-shim/package.json | 48 -
node_modules/signal-exit/LICENSE.txt | 16 -
node_modules/signal-exit/README.md | 74 -
.../signal-exit/dist/cjs/browser.d.ts | 12 -
.../signal-exit/dist/cjs/browser.d.ts.map | 1 -
node_modules/signal-exit/dist/cjs/browser.js | 10 -
.../signal-exit/dist/cjs/browser.js.map | 1 -
node_modules/signal-exit/dist/cjs/index.d.ts | 48 -
.../signal-exit/dist/cjs/index.d.ts.map | 1 -
node_modules/signal-exit/dist/cjs/index.js | 279 -
.../signal-exit/dist/cjs/index.js.map | 1 -
.../signal-exit/dist/cjs/package.json | 3 -
.../signal-exit/dist/cjs/signals.d.ts | 29 -
.../signal-exit/dist/cjs/signals.d.ts.map | 1 -
node_modules/signal-exit/dist/cjs/signals.js | 42 -
.../signal-exit/dist/cjs/signals.js.map | 1 -
.../signal-exit/dist/mjs/browser.d.ts | 12 -
.../signal-exit/dist/mjs/browser.d.ts.map | 1 -
node_modules/signal-exit/dist/mjs/browser.js | 4 -
.../signal-exit/dist/mjs/browser.js.map | 1 -
node_modules/signal-exit/dist/mjs/index.d.ts | 48 -
.../signal-exit/dist/mjs/index.d.ts.map | 1 -
node_modules/signal-exit/dist/mjs/index.js | 275 -
.../signal-exit/dist/mjs/index.js.map | 1 -
.../signal-exit/dist/mjs/package.json | 3 -
.../signal-exit/dist/mjs/signals.d.ts | 29 -
.../signal-exit/dist/mjs/signals.d.ts.map | 1 -
node_modules/signal-exit/dist/mjs/signals.js | 39 -
.../signal-exit/dist/mjs/signals.js.map | 1 -
node_modules/signal-exit/package.json | 106 -
node_modules/supabase/LICENSE | 21 -
node_modules/supabase/README.md | 183 -
node_modules/supabase/bin/supabase | Bin 38016546 -> 0 bytes
node_modules/supabase/package.json | 45 -
node_modules/supabase/scripts/postinstall.js | 180 -
node_modules/tar/LICENSE | 15 -
node_modules/tar/README.md | 1105 ----
node_modules/tar/dist/commonjs/create.d.ts | 3 -
.../tar/dist/commonjs/create.d.ts.map | 1 -
node_modules/tar/dist/commonjs/create.js | 83 -
node_modules/tar/dist/commonjs/create.js.map | 1 -
node_modules/tar/dist/commonjs/cwd-error.d.ts | 8 -
.../tar/dist/commonjs/cwd-error.d.ts.map | 1 -
node_modules/tar/dist/commonjs/cwd-error.js | 18 -
.../tar/dist/commonjs/cwd-error.js.map | 1 -
node_modules/tar/dist/commonjs/extract.d.ts | 3 -
.../tar/dist/commonjs/extract.d.ts.map | 1 -
node_modules/tar/dist/commonjs/extract.js | 78 -
node_modules/tar/dist/commonjs/extract.js.map | 1 -
.../tar/dist/commonjs/get-write-flag.d.ts | 2 -
.../tar/dist/commonjs/get-write-flag.d.ts.map | 1 -
.../tar/dist/commonjs/get-write-flag.js | 29 -
.../tar/dist/commonjs/get-write-flag.js.map | 1 -
node_modules/tar/dist/commonjs/header.d.ts | 54 -
.../tar/dist/commonjs/header.d.ts.map | 1 -
node_modules/tar/dist/commonjs/header.js | 306 -
node_modules/tar/dist/commonjs/header.js.map | 1 -
node_modules/tar/dist/commonjs/index.d.ts | 20 -
node_modules/tar/dist/commonjs/index.d.ts.map | 1 -
node_modules/tar/dist/commonjs/index.js | 54 -
node_modules/tar/dist/commonjs/index.js.map | 1 -
.../tar/dist/commonjs/large-numbers.d.ts | 4 -
.../tar/dist/commonjs/large-numbers.d.ts.map | 1 -
.../tar/dist/commonjs/large-numbers.js | 99 -
.../tar/dist/commonjs/large-numbers.js.map | 1 -
node_modules/tar/dist/commonjs/list.d.ts | 7 -
node_modules/tar/dist/commonjs/list.d.ts.map | 1 -
node_modules/tar/dist/commonjs/list.js | 136 -
node_modules/tar/dist/commonjs/list.js.map | 1 -
.../tar/dist/commonjs/make-command.d.ts | 49 -
.../tar/dist/commonjs/make-command.d.ts.map | 1 -
.../tar/dist/commonjs/make-command.js | 61 -
.../tar/dist/commonjs/make-command.js.map | 1 -
node_modules/tar/dist/commonjs/mkdir.d.ts | 27 -
node_modules/tar/dist/commonjs/mkdir.d.ts.map | 1 -
node_modules/tar/dist/commonjs/mkdir.js | 209 -
node_modules/tar/dist/commonjs/mkdir.js.map | 1 -
node_modules/tar/dist/commonjs/mode-fix.d.ts | 2 -
.../tar/dist/commonjs/mode-fix.d.ts.map | 1 -
node_modules/tar/dist/commonjs/mode-fix.js | 29 -
.../tar/dist/commonjs/mode-fix.js.map | 1 -
.../tar/dist/commonjs/normalize-unicode.d.ts | 2 -
.../dist/commonjs/normalize-unicode.d.ts.map | 1 -
.../tar/dist/commonjs/normalize-unicode.js | 17 -
.../dist/commonjs/normalize-unicode.js.map | 1 -
.../dist/commonjs/normalize-windows-path.d.ts | 2 -
.../commonjs/normalize-windows-path.d.ts.map | 1 -
.../dist/commonjs/normalize-windows-path.js | 12 -
.../commonjs/normalize-windows-path.js.map | 1 -
node_modules/tar/dist/commonjs/options.d.ts | 605 --
.../tar/dist/commonjs/options.d.ts.map | 1 -
node_modules/tar/dist/commonjs/options.js | 66 -
node_modules/tar/dist/commonjs/options.js.map | 1 -
node_modules/tar/dist/commonjs/pack.d.ts | 102 -
node_modules/tar/dist/commonjs/pack.d.ts.map | 1 -
node_modules/tar/dist/commonjs/pack.js | 477 --
node_modules/tar/dist/commonjs/pack.js.map | 1 -
node_modules/tar/dist/commonjs/package.json | 3 -
node_modules/tar/dist/commonjs/parse.d.ts | 87 -
node_modules/tar/dist/commonjs/parse.d.ts.map | 1 -
node_modules/tar/dist/commonjs/parse.js | 599 --
node_modules/tar/dist/commonjs/parse.js.map | 1 -
.../tar/dist/commonjs/path-reservations.d.ts | 11 -
.../dist/commonjs/path-reservations.d.ts.map | 1 -
.../tar/dist/commonjs/path-reservations.js | 170 -
.../dist/commonjs/path-reservations.js.map | 1 -
node_modules/tar/dist/commonjs/pax.d.ts | 27 -
node_modules/tar/dist/commonjs/pax.d.ts.map | 1 -
node_modules/tar/dist/commonjs/pax.js | 158 -
node_modules/tar/dist/commonjs/pax.js.map | 1 -
.../tar/dist/commonjs/read-entry.d.ts | 37 -
.../tar/dist/commonjs/read-entry.d.ts.map | 1 -
node_modules/tar/dist/commonjs/read-entry.js | 140 -
.../tar/dist/commonjs/read-entry.js.map | 1 -
node_modules/tar/dist/commonjs/replace.d.ts | 2 -
.../tar/dist/commonjs/replace.d.ts.map | 1 -
node_modules/tar/dist/commonjs/replace.js | 231 -
node_modules/tar/dist/commonjs/replace.js.map | 1 -
.../dist/commonjs/strip-absolute-path.d.ts | 2 -
.../commonjs/strip-absolute-path.d.ts.map | 1 -
.../tar/dist/commonjs/strip-absolute-path.js | 29 -
.../dist/commonjs/strip-absolute-path.js.map | 1 -
.../dist/commonjs/strip-trailing-slashes.d.ts | 2 -
.../commonjs/strip-trailing-slashes.d.ts.map | 1 -
.../dist/commonjs/strip-trailing-slashes.js | 18 -
.../commonjs/strip-trailing-slashes.js.map | 1 -
.../tar/dist/commonjs/symlink-error.d.ts | 9 -
.../tar/dist/commonjs/symlink-error.d.ts.map | 1 -
.../tar/dist/commonjs/symlink-error.js | 19 -
.../tar/dist/commonjs/symlink-error.js.map | 1 -
node_modules/tar/dist/commonjs/types.d.ts | 7 -
node_modules/tar/dist/commonjs/types.d.ts.map | 1 -
node_modules/tar/dist/commonjs/types.js | 50 -
node_modules/tar/dist/commonjs/types.js.map | 1 -
node_modules/tar/dist/commonjs/unpack.d.ts | 99 -
.../tar/dist/commonjs/unpack.d.ts.map | 1 -
node_modules/tar/dist/commonjs/unpack.js | 919 ---
node_modules/tar/dist/commonjs/unpack.js.map | 1 -
node_modules/tar/dist/commonjs/update.d.ts | 2 -
.../tar/dist/commonjs/update.d.ts.map | 1 -
node_modules/tar/dist/commonjs/update.js | 33 -
node_modules/tar/dist/commonjs/update.js.map | 1 -
.../tar/dist/commonjs/warn-method.d.ts | 25 -
.../tar/dist/commonjs/warn-method.d.ts.map | 1 -
node_modules/tar/dist/commonjs/warn-method.js | 31 -
.../tar/dist/commonjs/warn-method.js.map | 1 -
node_modules/tar/dist/commonjs/winchars.d.ts | 3 -
.../tar/dist/commonjs/winchars.d.ts.map | 1 -
node_modules/tar/dist/commonjs/winchars.js | 14 -
.../tar/dist/commonjs/winchars.js.map | 1 -
.../tar/dist/commonjs/write-entry.d.ts | 132 -
.../tar/dist/commonjs/write-entry.d.ts.map | 1 -
node_modules/tar/dist/commonjs/write-entry.js | 689 ---
.../tar/dist/commonjs/write-entry.js.map | 1 -
node_modules/tar/dist/esm/create.d.ts | 3 -
node_modules/tar/dist/esm/create.d.ts.map | 1 -
node_modules/tar/dist/esm/create.js | 77 -
node_modules/tar/dist/esm/create.js.map | 1 -
node_modules/tar/dist/esm/cwd-error.d.ts | 8 -
node_modules/tar/dist/esm/cwd-error.d.ts.map | 1 -
node_modules/tar/dist/esm/cwd-error.js | 14 -
node_modules/tar/dist/esm/cwd-error.js.map | 1 -
node_modules/tar/dist/esm/extract.d.ts | 3 -
node_modules/tar/dist/esm/extract.d.ts.map | 1 -
node_modules/tar/dist/esm/extract.js | 49 -
node_modules/tar/dist/esm/extract.js.map | 1 -
node_modules/tar/dist/esm/get-write-flag.d.ts | 2 -
.../tar/dist/esm/get-write-flag.d.ts.map | 1 -
node_modules/tar/dist/esm/get-write-flag.js | 23 -
.../tar/dist/esm/get-write-flag.js.map | 1 -
node_modules/tar/dist/esm/header.d.ts | 54 -
node_modules/tar/dist/esm/header.d.ts.map | 1 -
node_modules/tar/dist/esm/header.js | 279 -
node_modules/tar/dist/esm/header.js.map | 1 -
node_modules/tar/dist/esm/index.d.ts | 20 -
node_modules/tar/dist/esm/index.d.ts.map | 1 -
node_modules/tar/dist/esm/index.js | 20 -
node_modules/tar/dist/esm/index.js.map | 1 -
node_modules/tar/dist/esm/large-numbers.d.ts | 4 -
.../tar/dist/esm/large-numbers.d.ts.map | 1 -
node_modules/tar/dist/esm/large-numbers.js | 94 -
.../tar/dist/esm/large-numbers.js.map | 1 -
node_modules/tar/dist/esm/list.d.ts | 7 -
node_modules/tar/dist/esm/list.d.ts.map | 1 -
node_modules/tar/dist/esm/list.js | 106 -
node_modules/tar/dist/esm/list.js.map | 1 -
node_modules/tar/dist/esm/make-command.d.ts | 49 -
.../tar/dist/esm/make-command.d.ts.map | 1 -
node_modules/tar/dist/esm/make-command.js | 57 -
node_modules/tar/dist/esm/make-command.js.map | 1 -
node_modules/tar/dist/esm/mkdir.d.ts | 27 -
node_modules/tar/dist/esm/mkdir.d.ts.map | 1 -
node_modules/tar/dist/esm/mkdir.js | 201 -
node_modules/tar/dist/esm/mkdir.js.map | 1 -
node_modules/tar/dist/esm/mode-fix.d.ts | 2 -
node_modules/tar/dist/esm/mode-fix.d.ts.map | 1 -
node_modules/tar/dist/esm/mode-fix.js | 25 -
node_modules/tar/dist/esm/mode-fix.js.map | 1 -
.../tar/dist/esm/normalize-unicode.d.ts | 2 -
.../tar/dist/esm/normalize-unicode.d.ts.map | 1 -
.../tar/dist/esm/normalize-unicode.js | 13 -
.../tar/dist/esm/normalize-unicode.js.map | 1 -
.../tar/dist/esm/normalize-windows-path.d.ts | 2 -
.../dist/esm/normalize-windows-path.d.ts.map | 1 -
.../tar/dist/esm/normalize-windows-path.js | 9 -
.../dist/esm/normalize-windows-path.js.map | 1 -
node_modules/tar/dist/esm/options.d.ts | 605 --
node_modules/tar/dist/esm/options.d.ts.map | 1 -
node_modules/tar/dist/esm/options.js | 54 -
node_modules/tar/dist/esm/options.js.map | 1 -
node_modules/tar/dist/esm/pack.d.ts | 102 -
node_modules/tar/dist/esm/pack.d.ts.map | 1 -
node_modules/tar/dist/esm/pack.js | 445 --
node_modules/tar/dist/esm/pack.js.map | 1 -
node_modules/tar/dist/esm/package.json | 3 -
node_modules/tar/dist/esm/parse.d.ts | 87 -
node_modules/tar/dist/esm/parse.d.ts.map | 1 -
node_modules/tar/dist/esm/parse.js | 595 --
node_modules/tar/dist/esm/parse.js.map | 1 -
.../tar/dist/esm/path-reservations.d.ts | 11 -
.../tar/dist/esm/path-reservations.d.ts.map | 1 -
.../tar/dist/esm/path-reservations.js | 166 -
.../tar/dist/esm/path-reservations.js.map | 1 -
node_modules/tar/dist/esm/pax.d.ts | 27 -
node_modules/tar/dist/esm/pax.d.ts.map | 1 -
node_modules/tar/dist/esm/pax.js | 154 -
node_modules/tar/dist/esm/pax.js.map | 1 -
node_modules/tar/dist/esm/read-entry.d.ts | 37 -
node_modules/tar/dist/esm/read-entry.d.ts.map | 1 -
node_modules/tar/dist/esm/read-entry.js | 136 -
node_modules/tar/dist/esm/read-entry.js.map | 1 -
node_modules/tar/dist/esm/replace.d.ts | 2 -
node_modules/tar/dist/esm/replace.d.ts.map | 1 -
node_modules/tar/dist/esm/replace.js | 225 -
node_modules/tar/dist/esm/replace.js.map | 1 -
.../tar/dist/esm/strip-absolute-path.d.ts | 2 -
.../tar/dist/esm/strip-absolute-path.d.ts.map | 1 -
.../tar/dist/esm/strip-absolute-path.js | 25 -
.../tar/dist/esm/strip-absolute-path.js.map | 1 -
.../tar/dist/esm/strip-trailing-slashes.d.ts | 2 -
.../dist/esm/strip-trailing-slashes.d.ts.map | 1 -
.../tar/dist/esm/strip-trailing-slashes.js | 14 -
.../dist/esm/strip-trailing-slashes.js.map | 1 -
node_modules/tar/dist/esm/symlink-error.d.ts | 9 -
.../tar/dist/esm/symlink-error.d.ts.map | 1 -
node_modules/tar/dist/esm/symlink-error.js | 15 -
.../tar/dist/esm/symlink-error.js.map | 1 -
node_modules/tar/dist/esm/types.d.ts | 7 -
node_modules/tar/dist/esm/types.d.ts.map | 1 -
node_modules/tar/dist/esm/types.js | 45 -
node_modules/tar/dist/esm/types.js.map | 1 -
node_modules/tar/dist/esm/unpack.d.ts | 99 -
node_modules/tar/dist/esm/unpack.d.ts.map | 1 -
node_modules/tar/dist/esm/unpack.js | 888 ---
node_modules/tar/dist/esm/unpack.js.map | 1 -
node_modules/tar/dist/esm/update.d.ts | 2 -
node_modules/tar/dist/esm/update.d.ts.map | 1 -
node_modules/tar/dist/esm/update.js | 30 -
node_modules/tar/dist/esm/update.js.map | 1 -
node_modules/tar/dist/esm/warn-method.d.ts | 25 -
.../tar/dist/esm/warn-method.d.ts.map | 1 -
node_modules/tar/dist/esm/warn-method.js | 27 -
node_modules/tar/dist/esm/warn-method.js.map | 1 -
node_modules/tar/dist/esm/winchars.d.ts | 3 -
node_modules/tar/dist/esm/winchars.d.ts.map | 1 -
node_modules/tar/dist/esm/winchars.js | 9 -
node_modules/tar/dist/esm/winchars.js.map | 1 -
node_modules/tar/dist/esm/write-entry.d.ts | 132 -
.../tar/dist/esm/write-entry.d.ts.map | 1 -
node_modules/tar/dist/esm/write-entry.js | 657 ---
node_modules/tar/dist/esm/write-entry.js.map | 1 -
node_modules/tar/package.json | 325 --
node_modules/web-streams-polyfill/LICENSE | 22 -
node_modules/web-streams-polyfill/README.md | 110 -
.../dist/polyfill.es2018.js | 4765 ----------------
.../dist/polyfill.es2018.js.map | 1 -
.../dist/polyfill.es2018.min.js | 9 -
.../dist/polyfill.es2018.min.js.map | 1 -
.../dist/polyfill.es2018.mjs | 4745 ----------------
.../dist/polyfill.es2018.mjs.map | 1 -
.../web-streams-polyfill/dist/polyfill.es6.js | 4838 ----------------
.../dist/polyfill.es6.js.map | 1 -
.../dist/polyfill.es6.min.js | 9 -
.../dist/polyfill.es6.min.js.map | 1 -
.../dist/polyfill.es6.mjs | 4818 ----------------
.../dist/polyfill.es6.mjs.map | 1 -
.../web-streams-polyfill/dist/polyfill.js | 5011 -----------------
.../web-streams-polyfill/dist/polyfill.js.map | 1 -
.../web-streams-polyfill/dist/polyfill.min.js | 9 -
.../dist/polyfill.min.js.map | 1 -
.../web-streams-polyfill/dist/polyfill.mjs | 4991 ----------------
.../dist/polyfill.mjs.map | 1 -
.../dist/ponyfill.es2018.js | 4737 ----------------
.../dist/ponyfill.es2018.js.map | 1 -
.../dist/ponyfill.es2018.mjs | 4717 ----------------
.../dist/ponyfill.es2018.mjs.map | 1 -
.../web-streams-polyfill/dist/ponyfill.es6.js | 4810 ----------------
.../dist/ponyfill.es6.js.map | 1 -
.../dist/ponyfill.es6.mjs | 4790 ----------------
.../dist/ponyfill.es6.mjs.map | 1 -
.../web-streams-polyfill/dist/ponyfill.js | 4983 ----------------
.../web-streams-polyfill/dist/ponyfill.js.map | 1 -
.../web-streams-polyfill/dist/ponyfill.mjs | 4963 ----------------
.../dist/ponyfill.mjs.map | 1 -
.../dist/types/polyfill.d.ts | 24 -
.../dist/types/ponyfill.d.ts | 780 ---
.../dist/types/ts3.6/polyfill.d.ts | 28 -
.../dist/types/ts3.6/ponyfill.d.ts | 821 ---
.../dist/types/tsdoc-metadata.json | 11 -
.../web-streams-polyfill/es2018/package.json | 14 -
.../web-streams-polyfill/es6/package.json | 14 -
.../web-streams-polyfill/package.json | 83 -
.../ponyfill/es2018/package.json | 13 -
.../ponyfill/es6/package.json | 13 -
.../ponyfill/package.json | 13 -
node_modules/write-file-atomic/LICENSE.md | 6 -
node_modules/write-file-atomic/README.md | 91 -
node_modules/write-file-atomic/lib/index.js | 267 -
node_modules/write-file-atomic/package.json | 58 -
node_modules/yallist/LICENSE.md | 63 -
node_modules/yallist/README.md | 205 -
node_modules/yallist/dist/commonjs/index.d.ts | 39 -
.../yallist/dist/commonjs/index.d.ts.map | 1 -
node_modules/yallist/dist/commonjs/index.js | 384 --
.../yallist/dist/commonjs/index.js.map | 1 -
.../yallist/dist/commonjs/package.json | 3 -
node_modules/yallist/dist/esm/index.d.ts | 39 -
node_modules/yallist/dist/esm/index.d.ts.map | 1 -
node_modules/yallist/dist/esm/index.js | 379 --
node_modules/yallist/dist/esm/index.js.map | 1 -
node_modules/yallist/dist/esm/package.json | 3 -
node_modules/yallist/package.json | 68 -
package-lock.json | 361 --
package.json | 5 -
server-deno/.env.example | 6 +
server-deno/main.ts | 273 +-
server-deno/supabase.ts | 117 +-
640 files changed, 368 insertions(+), 98358 deletions(-)
delete mode 100644 frontend-nextjs/app/children/page.tsx
delete mode 100644 frontend-nextjs/app/components/Insights/BarChart.tsx
delete mode 100644 frontend-nextjs/app/components/Insights/Heatmap.tsx
delete mode 100644 frontend-nextjs/app/components/Insights/LineChart.tsx
delete mode 100644 frontend-nextjs/app/components/Insights/PieChart.tsx
delete mode 100644 frontend-nextjs/app/components/Insights/TopCard.tsx
delete mode 100644 frontend-nextjs/app/components/LandingPage/InsightsDemo.tsx
delete mode 100644 frontend-nextjs/app/components/LandingPage/InsightsDemoSection.tsx
delete mode 100644 frontend-nextjs/app/docs/page.tsx
delete mode 100644 frontend-nextjs/app/healthcare/page.tsx
delete mode 100644 frontend-nextjs/app/kids/page.tsx
delete mode 100644 frontend-nextjs/lib/azureOpenai.ts
delete mode 120000 node_modules/.bin/mkdirp
delete mode 120000 node_modules/.bin/supabase
delete mode 100644 node_modules/.package-lock.json
delete mode 100644 node_modules/@isaacs/fs-minipass/LICENSE
delete mode 100644 node_modules/@isaacs/fs-minipass/README.md
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts.map
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/commonjs/index.js
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/commonjs/index.js.map
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/commonjs/package.json
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts.map
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/esm/index.js
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/esm/index.js.map
delete mode 100644 node_modules/@isaacs/fs-minipass/dist/esm/package.json
delete mode 100644 node_modules/@isaacs/fs-minipass/package.json
delete mode 100644 node_modules/agent-base/LICENSE
delete mode 100644 node_modules/agent-base/README.md
delete mode 100644 node_modules/agent-base/dist/helpers.d.ts
delete mode 100644 node_modules/agent-base/dist/helpers.d.ts.map
delete mode 100644 node_modules/agent-base/dist/helpers.js
delete mode 100644 node_modules/agent-base/dist/helpers.js.map
delete mode 100644 node_modules/agent-base/dist/index.d.ts
delete mode 100644 node_modules/agent-base/dist/index.d.ts.map
delete mode 100644 node_modules/agent-base/dist/index.js
delete mode 100644 node_modules/agent-base/dist/index.js.map
delete mode 100644 node_modules/agent-base/package.json
delete mode 100644 node_modules/bin-links/LICENSE
delete mode 100644 node_modules/bin-links/README.md
delete mode 100644 node_modules/bin-links/lib/bin-target.js
delete mode 100644 node_modules/bin-links/lib/check-bin.js
delete mode 100644 node_modules/bin-links/lib/check-bins.js
delete mode 100644 node_modules/bin-links/lib/fix-bin.js
delete mode 100644 node_modules/bin-links/lib/get-node-modules.js
delete mode 100644 node_modules/bin-links/lib/get-paths.js
delete mode 100644 node_modules/bin-links/lib/get-prefix.js
delete mode 100644 node_modules/bin-links/lib/index.js
delete mode 100644 node_modules/bin-links/lib/is-windows.js
delete mode 100644 node_modules/bin-links/lib/link-bin.js
delete mode 100644 node_modules/bin-links/lib/link-bins.js
delete mode 100644 node_modules/bin-links/lib/link-gently.js
delete mode 100644 node_modules/bin-links/lib/link-mans.js
delete mode 100644 node_modules/bin-links/lib/man-target.js
delete mode 100644 node_modules/bin-links/lib/shim-bin.js
delete mode 100644 node_modules/bin-links/package.json
delete mode 100644 node_modules/chownr/LICENSE.md
delete mode 100644 node_modules/chownr/README.md
delete mode 100644 node_modules/chownr/dist/commonjs/index.d.ts
delete mode 100644 node_modules/chownr/dist/commonjs/index.d.ts.map
delete mode 100644 node_modules/chownr/dist/commonjs/index.js
delete mode 100644 node_modules/chownr/dist/commonjs/index.js.map
delete mode 100644 node_modules/chownr/dist/commonjs/package.json
delete mode 100644 node_modules/chownr/dist/esm/index.d.ts
delete mode 100644 node_modules/chownr/dist/esm/index.d.ts.map
delete mode 100644 node_modules/chownr/dist/esm/index.js
delete mode 100644 node_modules/chownr/dist/esm/index.js.map
delete mode 100644 node_modules/chownr/dist/esm/package.json
delete mode 100644 node_modules/chownr/package.json
delete mode 100644 node_modules/cmd-shim/LICENSE
delete mode 100644 node_modules/cmd-shim/README.md
delete mode 100644 node_modules/cmd-shim/lib/index.js
delete mode 100644 node_modules/cmd-shim/lib/to-batch-syntax.js
delete mode 100644 node_modules/cmd-shim/package.json
delete mode 100644 node_modules/data-uri-to-buffer/README.md
delete mode 100644 node_modules/data-uri-to-buffer/dist/index.d.ts
delete mode 100644 node_modules/data-uri-to-buffer/dist/index.js
delete mode 100644 node_modules/data-uri-to-buffer/dist/index.js.map
delete mode 100644 node_modules/data-uri-to-buffer/package.json
delete mode 100644 node_modules/data-uri-to-buffer/src/index.ts
delete mode 100644 node_modules/debug/LICENSE
delete mode 100644 node_modules/debug/README.md
delete mode 100644 node_modules/debug/package.json
delete mode 100644 node_modules/debug/src/browser.js
delete mode 100644 node_modules/debug/src/common.js
delete mode 100644 node_modules/debug/src/index.js
delete mode 100644 node_modules/debug/src/node.js
delete mode 100644 node_modules/fetch-blob/LICENSE
delete mode 100644 node_modules/fetch-blob/README.md
delete mode 100644 node_modules/fetch-blob/file.d.ts
delete mode 100644 node_modules/fetch-blob/file.js
delete mode 100644 node_modules/fetch-blob/from.d.ts
delete mode 100644 node_modules/fetch-blob/from.js
delete mode 100644 node_modules/fetch-blob/index.d.ts
delete mode 100644 node_modules/fetch-blob/index.js
delete mode 100644 node_modules/fetch-blob/package.json
delete mode 100644 node_modules/fetch-blob/streams.cjs
delete mode 100644 node_modules/formdata-polyfill/FormData.js
delete mode 100644 node_modules/formdata-polyfill/LICENSE
delete mode 100644 node_modules/formdata-polyfill/README.md
delete mode 100644 node_modules/formdata-polyfill/esm.min.d.ts
delete mode 100644 node_modules/formdata-polyfill/esm.min.js
delete mode 100644 node_modules/formdata-polyfill/formdata-to-blob.js
delete mode 100644 node_modules/formdata-polyfill/formdata.min.js
delete mode 100644 node_modules/formdata-polyfill/package.json
delete mode 100644 node_modules/https-proxy-agent/LICENSE
delete mode 100644 node_modules/https-proxy-agent/README.md
delete mode 100644 node_modules/https-proxy-agent/dist/index.d.ts
delete mode 100644 node_modules/https-proxy-agent/dist/index.d.ts.map
delete mode 100644 node_modules/https-proxy-agent/dist/index.js
delete mode 100644 node_modules/https-proxy-agent/dist/index.js.map
delete mode 100644 node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts
delete mode 100644 node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts.map
delete mode 100644 node_modules/https-proxy-agent/dist/parse-proxy-response.js
delete mode 100644 node_modules/https-proxy-agent/dist/parse-proxy-response.js.map
delete mode 100644 node_modules/https-proxy-agent/package.json
delete mode 100644 node_modules/imurmurhash/README.md
delete mode 100644 node_modules/imurmurhash/imurmurhash.js
delete mode 100644 node_modules/imurmurhash/imurmurhash.min.js
delete mode 100644 node_modules/imurmurhash/package.json
delete mode 100644 node_modules/minipass/LICENSE
delete mode 100644 node_modules/minipass/README.md
delete mode 100644 node_modules/minipass/dist/commonjs/index.d.ts
delete mode 100644 node_modules/minipass/dist/commonjs/index.d.ts.map
delete mode 100644 node_modules/minipass/dist/commonjs/index.js
delete mode 100644 node_modules/minipass/dist/commonjs/index.js.map
delete mode 100644 node_modules/minipass/dist/commonjs/package.json
delete mode 100644 node_modules/minipass/dist/esm/index.d.ts
delete mode 100644 node_modules/minipass/dist/esm/index.d.ts.map
delete mode 100644 node_modules/minipass/dist/esm/index.js
delete mode 100644 node_modules/minipass/dist/esm/index.js.map
delete mode 100644 node_modules/minipass/dist/esm/package.json
delete mode 100644 node_modules/minipass/package.json
delete mode 100644 node_modules/minizlib/LICENSE
delete mode 100644 node_modules/minizlib/README.md
delete mode 100644 node_modules/minizlib/dist/commonjs/constants.d.ts
delete mode 100644 node_modules/minizlib/dist/commonjs/constants.d.ts.map
delete mode 100644 node_modules/minizlib/dist/commonjs/constants.js
delete mode 100644 node_modules/minizlib/dist/commonjs/constants.js.map
delete mode 100644 node_modules/minizlib/dist/commonjs/index.d.ts
delete mode 100644 node_modules/minizlib/dist/commonjs/index.d.ts.map
delete mode 100644 node_modules/minizlib/dist/commonjs/index.js
delete mode 100644 node_modules/minizlib/dist/commonjs/index.js.map
delete mode 100644 node_modules/minizlib/dist/commonjs/package.json
delete mode 100644 node_modules/minizlib/dist/esm/constants.d.ts
delete mode 100644 node_modules/minizlib/dist/esm/constants.d.ts.map
delete mode 100644 node_modules/minizlib/dist/esm/constants.js
delete mode 100644 node_modules/minizlib/dist/esm/constants.js.map
delete mode 100644 node_modules/minizlib/dist/esm/index.d.ts
delete mode 100644 node_modules/minizlib/dist/esm/index.d.ts.map
delete mode 100644 node_modules/minizlib/dist/esm/index.js
delete mode 100644 node_modules/minizlib/dist/esm/index.js.map
delete mode 100644 node_modules/minizlib/dist/esm/package.json
delete mode 100644 node_modules/minizlib/package.json
delete mode 100644 node_modules/mkdirp/LICENSE
delete mode 100644 node_modules/mkdirp/dist/cjs/package.json
delete mode 100644 node_modules/mkdirp/dist/cjs/src/bin.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/bin.d.ts.map
delete mode 100755 node_modules/mkdirp/dist/cjs/src/bin.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/bin.js.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/find-made.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/find-made.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/find-made.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/find-made.js.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/index.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/index.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/index.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/index.js.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-manual.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-manual.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-manual.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-manual.js.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-native.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-native.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-native.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/mkdirp-native.js.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/opts-arg.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/opts-arg.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/opts-arg.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/opts-arg.js.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/path-arg.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/path-arg.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/path-arg.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/path-arg.js.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/use-native.d.ts
delete mode 100644 node_modules/mkdirp/dist/cjs/src/use-native.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/cjs/src/use-native.js
delete mode 100644 node_modules/mkdirp/dist/cjs/src/use-native.js.map
delete mode 100644 node_modules/mkdirp/dist/mjs/find-made.d.ts
delete mode 100644 node_modules/mkdirp/dist/mjs/find-made.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/mjs/find-made.js
delete mode 100644 node_modules/mkdirp/dist/mjs/find-made.js.map
delete mode 100644 node_modules/mkdirp/dist/mjs/index.d.ts
delete mode 100644 node_modules/mkdirp/dist/mjs/index.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/mjs/index.js
delete mode 100644 node_modules/mkdirp/dist/mjs/index.js.map
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-manual.d.ts
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-manual.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-manual.js
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-manual.js.map
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-native.d.ts
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-native.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-native.js
delete mode 100644 node_modules/mkdirp/dist/mjs/mkdirp-native.js.map
delete mode 100644 node_modules/mkdirp/dist/mjs/opts-arg.d.ts
delete mode 100644 node_modules/mkdirp/dist/mjs/opts-arg.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/mjs/opts-arg.js
delete mode 100644 node_modules/mkdirp/dist/mjs/opts-arg.js.map
delete mode 100644 node_modules/mkdirp/dist/mjs/package.json
delete mode 100644 node_modules/mkdirp/dist/mjs/path-arg.d.ts
delete mode 100644 node_modules/mkdirp/dist/mjs/path-arg.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/mjs/path-arg.js
delete mode 100644 node_modules/mkdirp/dist/mjs/path-arg.js.map
delete mode 100644 node_modules/mkdirp/dist/mjs/use-native.d.ts
delete mode 100644 node_modules/mkdirp/dist/mjs/use-native.d.ts.map
delete mode 100644 node_modules/mkdirp/dist/mjs/use-native.js
delete mode 100644 node_modules/mkdirp/dist/mjs/use-native.js.map
delete mode 100644 node_modules/mkdirp/package.json
delete mode 100644 node_modules/mkdirp/readme.markdown
delete mode 100644 node_modules/ms/index.js
delete mode 100644 node_modules/ms/license.md
delete mode 100644 node_modules/ms/package.json
delete mode 100644 node_modules/ms/readme.md
delete mode 100644 node_modules/node-domexception/.history/README_20210527203617.md
delete mode 100644 node_modules/node-domexception/.history/README_20210527212714.md
delete mode 100644 node_modules/node-domexception/.history/README_20210527213345.md
delete mode 100644 node_modules/node-domexception/.history/README_20210527213411.md
delete mode 100644 node_modules/node-domexception/.history/README_20210527213803.md
delete mode 100644 node_modules/node-domexception/.history/README_20210527214323.md
delete mode 100644 node_modules/node-domexception/.history/README_20210527214408.md
delete mode 100644 node_modules/node-domexception/.history/index_20210527203842.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527203947.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527204259.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527204418.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527204756.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527204833.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527211208.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527211248.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527212722.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527212731.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527212746.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527212900.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527213022.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527213822.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527213843.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527213852.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527213910.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527214034.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527214643.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527214654.js
delete mode 100644 node_modules/node-domexception/.history/index_20210527214700.js
delete mode 100644 node_modules/node-domexception/.history/package_20210527203733.json
delete mode 100644 node_modules/node-domexception/.history/package_20210527203825.json
delete mode 100644 node_modules/node-domexception/.history/package_20210527204621.json
delete mode 100644 node_modules/node-domexception/.history/package_20210527204913.json
delete mode 100644 node_modules/node-domexception/.history/package_20210527204925.json
delete mode 100644 node_modules/node-domexception/.history/package_20210527205145.json
delete mode 100644 node_modules/node-domexception/.history/package_20210527205156.json
delete mode 100644 node_modules/node-domexception/.history/test_20210527205603.js
delete mode 100644 node_modules/node-domexception/.history/test_20210527205957.js
delete mode 100644 node_modules/node-domexception/.history/test_20210527210021.js
delete mode 100644 node_modules/node-domexception/LICENSE
delete mode 100644 node_modules/node-domexception/README.md
delete mode 100644 node_modules/node-domexception/index.js
delete mode 100644 node_modules/node-domexception/package.json
delete mode 100644 node_modules/node-fetch/@types/index.d.ts
delete mode 100644 node_modules/node-fetch/LICENSE.md
delete mode 100644 node_modules/node-fetch/README.md
delete mode 100644 node_modules/node-fetch/package.json
delete mode 100644 node_modules/node-fetch/src/body.js
delete mode 100644 node_modules/node-fetch/src/errors/abort-error.js
delete mode 100644 node_modules/node-fetch/src/errors/base.js
delete mode 100644 node_modules/node-fetch/src/errors/fetch-error.js
delete mode 100644 node_modules/node-fetch/src/headers.js
delete mode 100644 node_modules/node-fetch/src/index.js
delete mode 100644 node_modules/node-fetch/src/request.js
delete mode 100644 node_modules/node-fetch/src/response.js
delete mode 100644 node_modules/node-fetch/src/utils/get-search.js
delete mode 100644 node_modules/node-fetch/src/utils/is-redirect.js
delete mode 100644 node_modules/node-fetch/src/utils/is.js
delete mode 100644 node_modules/node-fetch/src/utils/multipart-parser.js
delete mode 100644 node_modules/node-fetch/src/utils/referrer.js
delete mode 100644 node_modules/npm-normalize-package-bin/LICENSE
delete mode 100644 node_modules/npm-normalize-package-bin/README.md
delete mode 100644 node_modules/npm-normalize-package-bin/lib/index.js
delete mode 100644 node_modules/npm-normalize-package-bin/package.json
delete mode 100644 node_modules/proc-log/LICENSE
delete mode 100644 node_modules/proc-log/README.md
delete mode 100644 node_modules/proc-log/lib/index.js
delete mode 100644 node_modules/proc-log/package.json
delete mode 100644 node_modules/read-cmd-shim/LICENSE
delete mode 100644 node_modules/read-cmd-shim/README.md
delete mode 100644 node_modules/read-cmd-shim/lib/index.js
delete mode 100644 node_modules/read-cmd-shim/package.json
delete mode 100644 node_modules/signal-exit/LICENSE.txt
delete mode 100644 node_modules/signal-exit/README.md
delete mode 100644 node_modules/signal-exit/dist/cjs/browser.d.ts
delete mode 100644 node_modules/signal-exit/dist/cjs/browser.d.ts.map
delete mode 100644 node_modules/signal-exit/dist/cjs/browser.js
delete mode 100644 node_modules/signal-exit/dist/cjs/browser.js.map
delete mode 100644 node_modules/signal-exit/dist/cjs/index.d.ts
delete mode 100644 node_modules/signal-exit/dist/cjs/index.d.ts.map
delete mode 100644 node_modules/signal-exit/dist/cjs/index.js
delete mode 100644 node_modules/signal-exit/dist/cjs/index.js.map
delete mode 100644 node_modules/signal-exit/dist/cjs/package.json
delete mode 100644 node_modules/signal-exit/dist/cjs/signals.d.ts
delete mode 100644 node_modules/signal-exit/dist/cjs/signals.d.ts.map
delete mode 100644 node_modules/signal-exit/dist/cjs/signals.js
delete mode 100644 node_modules/signal-exit/dist/cjs/signals.js.map
delete mode 100644 node_modules/signal-exit/dist/mjs/browser.d.ts
delete mode 100644 node_modules/signal-exit/dist/mjs/browser.d.ts.map
delete mode 100644 node_modules/signal-exit/dist/mjs/browser.js
delete mode 100644 node_modules/signal-exit/dist/mjs/browser.js.map
delete mode 100644 node_modules/signal-exit/dist/mjs/index.d.ts
delete mode 100644 node_modules/signal-exit/dist/mjs/index.d.ts.map
delete mode 100644 node_modules/signal-exit/dist/mjs/index.js
delete mode 100644 node_modules/signal-exit/dist/mjs/index.js.map
delete mode 100644 node_modules/signal-exit/dist/mjs/package.json
delete mode 100644 node_modules/signal-exit/dist/mjs/signals.d.ts
delete mode 100644 node_modules/signal-exit/dist/mjs/signals.d.ts.map
delete mode 100644 node_modules/signal-exit/dist/mjs/signals.js
delete mode 100644 node_modules/signal-exit/dist/mjs/signals.js.map
delete mode 100644 node_modules/signal-exit/package.json
delete mode 100644 node_modules/supabase/LICENSE
delete mode 100644 node_modules/supabase/README.md
delete mode 100755 node_modules/supabase/bin/supabase
delete mode 100644 node_modules/supabase/package.json
delete mode 100755 node_modules/supabase/scripts/postinstall.js
delete mode 100644 node_modules/tar/LICENSE
delete mode 100644 node_modules/tar/README.md
delete mode 100644 node_modules/tar/dist/commonjs/create.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/create.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/create.js
delete mode 100644 node_modules/tar/dist/commonjs/create.js.map
delete mode 100644 node_modules/tar/dist/commonjs/cwd-error.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/cwd-error.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/cwd-error.js
delete mode 100644 node_modules/tar/dist/commonjs/cwd-error.js.map
delete mode 100644 node_modules/tar/dist/commonjs/extract.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/extract.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/extract.js
delete mode 100644 node_modules/tar/dist/commonjs/extract.js.map
delete mode 100644 node_modules/tar/dist/commonjs/get-write-flag.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/get-write-flag.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/get-write-flag.js
delete mode 100644 node_modules/tar/dist/commonjs/get-write-flag.js.map
delete mode 100644 node_modules/tar/dist/commonjs/header.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/header.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/header.js
delete mode 100644 node_modules/tar/dist/commonjs/header.js.map
delete mode 100644 node_modules/tar/dist/commonjs/index.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/index.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/index.js
delete mode 100644 node_modules/tar/dist/commonjs/index.js.map
delete mode 100644 node_modules/tar/dist/commonjs/large-numbers.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/large-numbers.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/large-numbers.js
delete mode 100644 node_modules/tar/dist/commonjs/large-numbers.js.map
delete mode 100644 node_modules/tar/dist/commonjs/list.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/list.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/list.js
delete mode 100644 node_modules/tar/dist/commonjs/list.js.map
delete mode 100644 node_modules/tar/dist/commonjs/make-command.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/make-command.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/make-command.js
delete mode 100644 node_modules/tar/dist/commonjs/make-command.js.map
delete mode 100644 node_modules/tar/dist/commonjs/mkdir.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/mkdir.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/mkdir.js
delete mode 100644 node_modules/tar/dist/commonjs/mkdir.js.map
delete mode 100644 node_modules/tar/dist/commonjs/mode-fix.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/mode-fix.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/mode-fix.js
delete mode 100644 node_modules/tar/dist/commonjs/mode-fix.js.map
delete mode 100644 node_modules/tar/dist/commonjs/normalize-unicode.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/normalize-unicode.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/normalize-unicode.js
delete mode 100644 node_modules/tar/dist/commonjs/normalize-unicode.js.map
delete mode 100644 node_modules/tar/dist/commonjs/normalize-windows-path.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/normalize-windows-path.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/normalize-windows-path.js
delete mode 100644 node_modules/tar/dist/commonjs/normalize-windows-path.js.map
delete mode 100644 node_modules/tar/dist/commonjs/options.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/options.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/options.js
delete mode 100644 node_modules/tar/dist/commonjs/options.js.map
delete mode 100644 node_modules/tar/dist/commonjs/pack.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/pack.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/pack.js
delete mode 100644 node_modules/tar/dist/commonjs/pack.js.map
delete mode 100644 node_modules/tar/dist/commonjs/package.json
delete mode 100644 node_modules/tar/dist/commonjs/parse.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/parse.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/parse.js
delete mode 100644 node_modules/tar/dist/commonjs/parse.js.map
delete mode 100644 node_modules/tar/dist/commonjs/path-reservations.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/path-reservations.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/path-reservations.js
delete mode 100644 node_modules/tar/dist/commonjs/path-reservations.js.map
delete mode 100644 node_modules/tar/dist/commonjs/pax.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/pax.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/pax.js
delete mode 100644 node_modules/tar/dist/commonjs/pax.js.map
delete mode 100644 node_modules/tar/dist/commonjs/read-entry.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/read-entry.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/read-entry.js
delete mode 100644 node_modules/tar/dist/commonjs/read-entry.js.map
delete mode 100644 node_modules/tar/dist/commonjs/replace.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/replace.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/replace.js
delete mode 100644 node_modules/tar/dist/commonjs/replace.js.map
delete mode 100644 node_modules/tar/dist/commonjs/strip-absolute-path.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/strip-absolute-path.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/strip-absolute-path.js
delete mode 100644 node_modules/tar/dist/commonjs/strip-absolute-path.js.map
delete mode 100644 node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/strip-trailing-slashes.js
delete mode 100644 node_modules/tar/dist/commonjs/strip-trailing-slashes.js.map
delete mode 100644 node_modules/tar/dist/commonjs/symlink-error.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/symlink-error.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/symlink-error.js
delete mode 100644 node_modules/tar/dist/commonjs/symlink-error.js.map
delete mode 100644 node_modules/tar/dist/commonjs/types.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/types.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/types.js
delete mode 100644 node_modules/tar/dist/commonjs/types.js.map
delete mode 100644 node_modules/tar/dist/commonjs/unpack.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/unpack.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/unpack.js
delete mode 100644 node_modules/tar/dist/commonjs/unpack.js.map
delete mode 100644 node_modules/tar/dist/commonjs/update.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/update.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/update.js
delete mode 100644 node_modules/tar/dist/commonjs/update.js.map
delete mode 100644 node_modules/tar/dist/commonjs/warn-method.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/warn-method.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/warn-method.js
delete mode 100644 node_modules/tar/dist/commonjs/warn-method.js.map
delete mode 100644 node_modules/tar/dist/commonjs/winchars.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/winchars.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/winchars.js
delete mode 100644 node_modules/tar/dist/commonjs/winchars.js.map
delete mode 100644 node_modules/tar/dist/commonjs/write-entry.d.ts
delete mode 100644 node_modules/tar/dist/commonjs/write-entry.d.ts.map
delete mode 100644 node_modules/tar/dist/commonjs/write-entry.js
delete mode 100644 node_modules/tar/dist/commonjs/write-entry.js.map
delete mode 100644 node_modules/tar/dist/esm/create.d.ts
delete mode 100644 node_modules/tar/dist/esm/create.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/create.js
delete mode 100644 node_modules/tar/dist/esm/create.js.map
delete mode 100644 node_modules/tar/dist/esm/cwd-error.d.ts
delete mode 100644 node_modules/tar/dist/esm/cwd-error.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/cwd-error.js
delete mode 100644 node_modules/tar/dist/esm/cwd-error.js.map
delete mode 100644 node_modules/tar/dist/esm/extract.d.ts
delete mode 100644 node_modules/tar/dist/esm/extract.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/extract.js
delete mode 100644 node_modules/tar/dist/esm/extract.js.map
delete mode 100644 node_modules/tar/dist/esm/get-write-flag.d.ts
delete mode 100644 node_modules/tar/dist/esm/get-write-flag.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/get-write-flag.js
delete mode 100644 node_modules/tar/dist/esm/get-write-flag.js.map
delete mode 100644 node_modules/tar/dist/esm/header.d.ts
delete mode 100644 node_modules/tar/dist/esm/header.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/header.js
delete mode 100644 node_modules/tar/dist/esm/header.js.map
delete mode 100644 node_modules/tar/dist/esm/index.d.ts
delete mode 100644 node_modules/tar/dist/esm/index.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/index.js
delete mode 100644 node_modules/tar/dist/esm/index.js.map
delete mode 100644 node_modules/tar/dist/esm/large-numbers.d.ts
delete mode 100644 node_modules/tar/dist/esm/large-numbers.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/large-numbers.js
delete mode 100644 node_modules/tar/dist/esm/large-numbers.js.map
delete mode 100644 node_modules/tar/dist/esm/list.d.ts
delete mode 100644 node_modules/tar/dist/esm/list.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/list.js
delete mode 100644 node_modules/tar/dist/esm/list.js.map
delete mode 100644 node_modules/tar/dist/esm/make-command.d.ts
delete mode 100644 node_modules/tar/dist/esm/make-command.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/make-command.js
delete mode 100644 node_modules/tar/dist/esm/make-command.js.map
delete mode 100644 node_modules/tar/dist/esm/mkdir.d.ts
delete mode 100644 node_modules/tar/dist/esm/mkdir.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/mkdir.js
delete mode 100644 node_modules/tar/dist/esm/mkdir.js.map
delete mode 100644 node_modules/tar/dist/esm/mode-fix.d.ts
delete mode 100644 node_modules/tar/dist/esm/mode-fix.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/mode-fix.js
delete mode 100644 node_modules/tar/dist/esm/mode-fix.js.map
delete mode 100644 node_modules/tar/dist/esm/normalize-unicode.d.ts
delete mode 100644 node_modules/tar/dist/esm/normalize-unicode.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/normalize-unicode.js
delete mode 100644 node_modules/tar/dist/esm/normalize-unicode.js.map
delete mode 100644 node_modules/tar/dist/esm/normalize-windows-path.d.ts
delete mode 100644 node_modules/tar/dist/esm/normalize-windows-path.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/normalize-windows-path.js
delete mode 100644 node_modules/tar/dist/esm/normalize-windows-path.js.map
delete mode 100644 node_modules/tar/dist/esm/options.d.ts
delete mode 100644 node_modules/tar/dist/esm/options.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/options.js
delete mode 100644 node_modules/tar/dist/esm/options.js.map
delete mode 100644 node_modules/tar/dist/esm/pack.d.ts
delete mode 100644 node_modules/tar/dist/esm/pack.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/pack.js
delete mode 100644 node_modules/tar/dist/esm/pack.js.map
delete mode 100644 node_modules/tar/dist/esm/package.json
delete mode 100644 node_modules/tar/dist/esm/parse.d.ts
delete mode 100644 node_modules/tar/dist/esm/parse.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/parse.js
delete mode 100644 node_modules/tar/dist/esm/parse.js.map
delete mode 100644 node_modules/tar/dist/esm/path-reservations.d.ts
delete mode 100644 node_modules/tar/dist/esm/path-reservations.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/path-reservations.js
delete mode 100644 node_modules/tar/dist/esm/path-reservations.js.map
delete mode 100644 node_modules/tar/dist/esm/pax.d.ts
delete mode 100644 node_modules/tar/dist/esm/pax.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/pax.js
delete mode 100644 node_modules/tar/dist/esm/pax.js.map
delete mode 100644 node_modules/tar/dist/esm/read-entry.d.ts
delete mode 100644 node_modules/tar/dist/esm/read-entry.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/read-entry.js
delete mode 100644 node_modules/tar/dist/esm/read-entry.js.map
delete mode 100644 node_modules/tar/dist/esm/replace.d.ts
delete mode 100644 node_modules/tar/dist/esm/replace.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/replace.js
delete mode 100644 node_modules/tar/dist/esm/replace.js.map
delete mode 100644 node_modules/tar/dist/esm/strip-absolute-path.d.ts
delete mode 100644 node_modules/tar/dist/esm/strip-absolute-path.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/strip-absolute-path.js
delete mode 100644 node_modules/tar/dist/esm/strip-absolute-path.js.map
delete mode 100644 node_modules/tar/dist/esm/strip-trailing-slashes.d.ts
delete mode 100644 node_modules/tar/dist/esm/strip-trailing-slashes.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/strip-trailing-slashes.js
delete mode 100644 node_modules/tar/dist/esm/strip-trailing-slashes.js.map
delete mode 100644 node_modules/tar/dist/esm/symlink-error.d.ts
delete mode 100644 node_modules/tar/dist/esm/symlink-error.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/symlink-error.js
delete mode 100644 node_modules/tar/dist/esm/symlink-error.js.map
delete mode 100644 node_modules/tar/dist/esm/types.d.ts
delete mode 100644 node_modules/tar/dist/esm/types.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/types.js
delete mode 100644 node_modules/tar/dist/esm/types.js.map
delete mode 100644 node_modules/tar/dist/esm/unpack.d.ts
delete mode 100644 node_modules/tar/dist/esm/unpack.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/unpack.js
delete mode 100644 node_modules/tar/dist/esm/unpack.js.map
delete mode 100644 node_modules/tar/dist/esm/update.d.ts
delete mode 100644 node_modules/tar/dist/esm/update.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/update.js
delete mode 100644 node_modules/tar/dist/esm/update.js.map
delete mode 100644 node_modules/tar/dist/esm/warn-method.d.ts
delete mode 100644 node_modules/tar/dist/esm/warn-method.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/warn-method.js
delete mode 100644 node_modules/tar/dist/esm/warn-method.js.map
delete mode 100644 node_modules/tar/dist/esm/winchars.d.ts
delete mode 100644 node_modules/tar/dist/esm/winchars.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/winchars.js
delete mode 100644 node_modules/tar/dist/esm/winchars.js.map
delete mode 100644 node_modules/tar/dist/esm/write-entry.d.ts
delete mode 100644 node_modules/tar/dist/esm/write-entry.d.ts.map
delete mode 100644 node_modules/tar/dist/esm/write-entry.js
delete mode 100644 node_modules/tar/dist/esm/write-entry.js.map
delete mode 100644 node_modules/tar/package.json
delete mode 100644 node_modules/web-streams-polyfill/LICENSE
delete mode 100644 node_modules/web-streams-polyfill/README.md
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es2018.js
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es2018.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es2018.min.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es2018.mjs.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es6.js
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es6.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es6.min.js
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es6.min.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es6.mjs
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.es6.mjs.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.js
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.min.js
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.min.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.mjs
delete mode 100644 node_modules/web-streams-polyfill/dist/polyfill.mjs.map
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es2018.js
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es2018.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es2018.mjs.map
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es6.js
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es6.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.es6.mjs.map
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.js
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.js.map
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.mjs
delete mode 100644 node_modules/web-streams-polyfill/dist/ponyfill.mjs.map
delete mode 100644 node_modules/web-streams-polyfill/dist/types/polyfill.d.ts
delete mode 100644 node_modules/web-streams-polyfill/dist/types/ponyfill.d.ts
delete mode 100644 node_modules/web-streams-polyfill/dist/types/ts3.6/polyfill.d.ts
delete mode 100644 node_modules/web-streams-polyfill/dist/types/ts3.6/ponyfill.d.ts
delete mode 100644 node_modules/web-streams-polyfill/dist/types/tsdoc-metadata.json
delete mode 100644 node_modules/web-streams-polyfill/es2018/package.json
delete mode 100644 node_modules/web-streams-polyfill/es6/package.json
delete mode 100644 node_modules/web-streams-polyfill/package.json
delete mode 100644 node_modules/web-streams-polyfill/ponyfill/es2018/package.json
delete mode 100644 node_modules/web-streams-polyfill/ponyfill/es6/package.json
delete mode 100644 node_modules/web-streams-polyfill/ponyfill/package.json
delete mode 100644 node_modules/write-file-atomic/LICENSE.md
delete mode 100644 node_modules/write-file-atomic/README.md
delete mode 100644 node_modules/write-file-atomic/lib/index.js
delete mode 100644 node_modules/write-file-atomic/package.json
delete mode 100644 node_modules/yallist/LICENSE.md
delete mode 100644 node_modules/yallist/README.md
delete mode 100644 node_modules/yallist/dist/commonjs/index.d.ts
delete mode 100644 node_modules/yallist/dist/commonjs/index.d.ts.map
delete mode 100644 node_modules/yallist/dist/commonjs/index.js
delete mode 100644 node_modules/yallist/dist/commonjs/index.js.map
delete mode 100644 node_modules/yallist/dist/commonjs/package.json
delete mode 100644 node_modules/yallist/dist/esm/index.d.ts
delete mode 100644 node_modules/yallist/dist/esm/index.d.ts.map
delete mode 100644 node_modules/yallist/dist/esm/index.js
delete mode 100644 node_modules/yallist/dist/esm/index.js.map
delete mode 100644 node_modules/yallist/dist/esm/package.json
delete mode 100644 node_modules/yallist/package.json
delete mode 100644 package-lock.json
delete mode 100644 package.json
diff --git a/README.md b/README.md
index 39b0950..0a67de2 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# 🚀 ElatoAI: Realtime AI Speech for ESP32
-**Realtime AI Speech powered by OpenAI Realtime API, ESP32, Secure WebSockets, and Deno Edge Functions for >10-minute uninterrupted global conversations!**
+**Realtime AI Speech powered by OpenAI Realtime API, ESP32, Secure WebSockets, and Deno Edge Functions for >10-minute uninterrupted global conversations**
## 📺 Demo Video
@@ -10,41 +10,69 @@ https://github.com/user-attachments/assets/aa60e54c-5847-4a68-80b5-5d6b1a5b9328
----
+
+## Getting Started
+
+1. Set up your Local Supabase Backend. From the root directory, run:
+```bash
+supabase start # Starts your local Supabase server with the default migrations and seed data.
+```
+
+2. Set up your NextJS Frontend. From the `frontend-nextjs` directory, run:
+```bash
+npm install
+npm run dev
+```
+
+3. Add your ESP32-S3 Device MAC Address to the Settings page in the NextJS Frontend. (Remove colons and convert to lowercase, useful for adding friendly user codes when registering multiple devices)
+```bash
+# Example
+
+# 12:34:56:78:9A:BC -> 123456789abc
+# 12:34:56:78:9A:BD -> 123456789abd
+```
+> **Tip:** To find your ESP32-S3 Device's MAC Address, build and upload `test/print_mac_address_test.cpp` using PlatformIO.
+
+4. Add your OpenAI API Key in the `server-deno/.env` and `frontend-nextjs/.env.local` file.
+```
+OPENAI_API_KEY=your_openai_api_key
+```
+
+5. Set up your ESP32 Arduino Client. On PlatformIO, first `Build` the project, then `Upload` the project to your ESP32.
+
## 🌟 Features
- **Realtime Speech-to-Speech**: Instant speech conversion powered by OpenAI's Realtime APIs.
+- **Create Custom AI Agents**: Create custom agents with different personalities and voices.
- **Secure WebSockets**: Reliable, encrypted WebSocket communication.
- **Server Turn Detection**: Intelligent conversation flow handling for smooth interactions.
- **Opus Audio Compression**: High-quality audio streaming with minimal bandwidth.
- **Global Edge Performance**: Low latency Deno Edge Functions ensuring seamless global conversations.
- **ESP32 Arduino Framework**: Optimized and easy-to-use hardware integration.
----
## 📌 Project Architecture
ElatoAI consists of three main components:
1. **Frontend Client** (`Next.js` hosted on Vercel)
-2. **Edge Server Functions** (`Deno` running on Supabase Edge)
+2. **Edge Server Functions** (`Deno` running on Deno/Supabase Edge)
3. **ESP32 IoT Client** (`PlatformIO/Arduino`)
----
## 🛠 Tech Stack
| Component | Technology Used |
|-----------------|------------------------------------------|
-| Frontend | Next.js, Vercel, Supabase DB |
-| Edge Functions | Deno Edge Functions on Supabase |
+| Frontend | Next.js, Vercel |
+| Backend | Supabase DB |
+| Edge Functions | Deno Edge Functions on Deno/Supabase |
| IoT Client | PlatformIO, Arduino Framework, ESP32-S3 |
| Audio Codec | Opus |
| Communication | Secure WebSockets |
-| Libraries | ArduinoJson, WebSockets, AsyncTCP |
+| Libraries | ArduinoJson, WebSockets, AsyncWebServer, ESP32_Button, Arduino Audio Tools, ArduinoLibOpus |
----
## 🗺️ High-Level Flow
@@ -58,7 +86,6 @@ flowchart TD
ESP32 --> User[AI Generated Speech]
```
----
## 📂 Project Structure
@@ -75,8 +102,6 @@ graph TD
esp32 --> audio_tools[arduino-audio-tools]
```
----
-
## ⚙️ PlatformIO Configuration
```ini
@@ -89,42 +114,37 @@ monitor_speed = 115200
lib_deps =
bblanchon/ArduinoJson@^7.1.0
links2004/WebSockets@^2.4.1
- https://github.com/esp-arduino-libs/ESP32_Button.git
+ ESP32Async/ESPAsyncWebServer@^3.7.6
+ https://github.com/esp-arduino-libs/ESP32_Button.git#v0.0.1
https://github.com/pschatzmann/arduino-audio-tools.git#v1.0.1
- https://github.com/pschatzmann/arduino-libopus.git
- ESP32Async/AsyncTCP
- ESP32Async/ESPAsyncWebServer
+ https://github.com/pschatzmann/arduino-libopus.git#a1.1.0
```
----
## 📊 Important Stats
-- ⚡️ **Latency**: <150ms round-trip globally
+- ⚡️ **Latency**: <1s round-trip globally
- 🎧 **Audio Quality**: Opus codec at 24kbps (high clarity)
-- ⏳ **Uninterrupted Conversations**: Over 10 minutes continuous conversations
-- 🌎 **Global Availability**: Optimized with edge computing via Supabase
+- ⏳ **Uninterrupted Conversations**: Up to 10 minutes continuous conversations
+- 🌎 **Global Availability**: Optimized with edge computing with Deno
----
## 🛡 Security
- Secure WebSockets (WSS) for encrypted data transfers
- Edge validation and error handling for robust, secure deployment
----
## 🤝 Contributing
-We welcome contributions!
+We welcome contributions
- Fork this repository.
-- Create your feature branch (`git checkout -b feature/AmazingFeature`).
-- Commit your changes (`git commit -m 'Add AmazingFeature'`).
-- Push to the branch (`git push origin feature/AmazingFeature`).
-- Open a pull request!
+- Create your feature branch (`git checkout -b feature/EpicFeature`).
+- Commit your changes (`git commit -m 'Add EpicFeature'`).
+- Push to the branch (`git push origin feature/EpicFeature`).
+- Open a PR
----
## 📜 License
@@ -132,5 +152,5 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
---
-🎉 **Give a ⭐️ if you found this project interesting!**
+🎉 **Give a ⭐️ if you found this project interesting :)**
diff --git a/frontend-nextjs/.env.example b/frontend-nextjs/.env.example
index 05a39d7..9e332be 100644
--- a/frontend-nextjs/.env.example
+++ b/frontend-nextjs/.env.example
@@ -1,7 +1,7 @@
# Update these with your Supabase details from your project settings > API
# https://app.supabase.com/project/_/settings/api
-NEXT_PUBLIC_SUPABASE_URL=
+NEXT_PUBLIC_SUPABASE_URL=http://127.0.0.1:54321
NEXT_PUBLIC_SUPABASE_ANON_KEY=
JWT_SECRET_KEY=
diff --git a/frontend-nextjs/app/children/page.tsx b/frontend-nextjs/app/children/page.tsx
deleted file mode 100644
index 42d9a8b..0000000
--- a/frontend-nextjs/app/children/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { redirect } from "next/navigation";
-
-export default async function Home() {
- redirect("/healthcare");
-}
diff --git a/frontend-nextjs/app/components/Insights/BarChart.tsx b/frontend-nextjs/app/components/Insights/BarChart.tsx
deleted file mode 100644
index f5e2510..0000000
--- a/frontend-nextjs/app/components/Insights/BarChart.tsx
+++ /dev/null
@@ -1,136 +0,0 @@
-"use client";
-
-// install (please try to align the version of installed @nivo packages)
-// yarn add @nivo/bar
-import { ResponsiveBar } from "@nivo/bar";
-import { FC } from "react";
-
-// make sure parent container have a defined height when using
-// responsive component, otherwise height will be 0 and
-// no chart will be rendered.
-// website examples showcase many properties,
-// you'll often use just a few of them.
-
-type MyResponsiveBarProps = {
- data: BarData[];
- filter: string;
-};
-
-export const MyResponsiveBar: FC = ({ data, filter }) => {
- // Determine the keys based on the filter
- let currentPeriodLabel = "Current Period";
- let previousPeriodLabel = "Previous Period";
-
- if (filter === "days") {
- currentPeriodLabel = "Today";
- previousPeriodLabel = "Yesterday";
- } else if (filter === "weeks") {
- currentPeriodLabel = "This month";
- previousPeriodLabel = "Last month";
- }
-
- const keys = [currentPeriodLabel, previousPeriodLabel];
-
- return (
-
- `${e.id}: ${e.formattedValue} in emotion: ${e.indexValue}`
- }
- theme={{
- axis: {
- legend: {
- text: {
- fontSize: 12,
- fontWeight: 600,
- fill: "#4b5563",
- },
- },
- ticks: {
- text: {
- fontSize: 12,
- fontWeight: 500,
- fill: "#4b5563",
- },
- },
- },
- legends: {
- text: {
- fontSize: 12,
- fontWeight: 600,
- fill: "#4b5563",
- },
- },
- }}
- />
- );
-};
diff --git a/frontend-nextjs/app/components/Insights/Heatmap.tsx b/frontend-nextjs/app/components/Insights/Heatmap.tsx
deleted file mode 100644
index b2459ba..0000000
--- a/frontend-nextjs/app/components/Insights/Heatmap.tsx
+++ /dev/null
@@ -1,107 +0,0 @@
-"use client";
-
-// install (please try to align the version of installed @nivo packages)
-// yarn add @nivo/heatmap
-import { ResponsiveHeatMap } from "@nivo/heatmap";
-import { FC } from "react";
-
-// make sure parent container have a defined height when using
-// responsive component, otherwise height will be 0 and
-// no chart will be rendered.
-// website examples showcase many properties,
-// you'll often use just a few of them.
-
-type MyResponsiveHeatMapProps = {
- data: HeatMapData[];
-};
-
-export const MyResponsiveHeatMap: FC = ({ data }) => (
- -.2s",
- // title: "Value →",
- // titleAlign: "start",
- // titleOffset: 4,
- // },
- // ]}
- theme={{
- axis: {
- ticks: {
- text: {
- fontSize: 12, // Change this to your desired font size
- fontWeight: 600,
- fill: "#4b5563", // Change this to your desired text color
- },
- },
- legend: {
- text: {
- fontSize: 12, // Change this to your desired font size
- fontWeight: 600,
- fill: "#1f2937", // Change this to your desired text color
- },
- },
- },
- }}
- />
-);
diff --git a/frontend-nextjs/app/components/Insights/LineChart.tsx b/frontend-nextjs/app/components/Insights/LineChart.tsx
deleted file mode 100644
index 7209062..0000000
--- a/frontend-nextjs/app/components/Insights/LineChart.tsx
+++ /dev/null
@@ -1,128 +0,0 @@
-"use client";
-
-import { ResponsiveLine } from "@nivo/line";
-import { FC } from "react";
-
-// make sure parent container have a defined height when using
-// responsive component, otherwise height will be 0 and
-// no chart will be rendered.
-// website examples showcase many properties,
-// you'll often use just a few of them.
-
-type MyResponsiveLineProps = {
- data: LineChartData[];
-};
-
-export const MyResponsiveLine: FC = ({ data }) => (
- {
- const series = data.find((serie) => serie.id === point.serieId);
- return (
-
- {series?.name}
-
- {/* id: {point.data.xFormatted} */}
- {/* */}
- score: {point.data.yFormatted}
-
- );
- }}
- theme={{
- axis: {
- legend: {
- text: {
- fontSize: 12,
- fontWeight: 600,
- fill: "#4b5563",
- },
- },
- ticks: {
- text: {
- fontSize: 12,
- fontWeight: 500,
- fill: "#4b5563",
- },
- },
- },
- legends: {
- text: {
- fontSize: 12,
- fontWeight: 600,
- fill: "#4b5563",
- },
- },
- }}
- />
-);
diff --git a/frontend-nextjs/app/components/Insights/PieChart.tsx b/frontend-nextjs/app/components/Insights/PieChart.tsx
deleted file mode 100644
index 9657b6a..0000000
--- a/frontend-nextjs/app/components/Insights/PieChart.tsx
+++ /dev/null
@@ -1,125 +0,0 @@
-"use client";
-// install (please try to align the version of installed @nivo packages)
-// yarn add @nivo/bar
-import { ResponsivePie } from "@nivo/pie";
-import { FC } from "react";
-
-// make sure parent container have a defined height when using
-// responsive component, otherwise height will be 0 and
-// no chart will be rendered.
-// website examples showcase many properties,
-// you'll often use just a few of them.
-
-// const favorit = localFont({
-// src: "./fonts/ABCFavorit-Bold.woff2",
-// variable: "--font-favorit",
-// });
-
-// const fonts = `${favorit.variable}`;
-
-type MyResponsivePieProps = {
- data: PieData[];
-};
-
-// Define the theme object
-const theme = {
- legends: {
- text: {
- fontSize: 12, // Change this value to your desired font size
- fontWeight: 600,
- // fontFamily: fonts,
- },
- },
- labels: {
- text: {
- fontSize: 16, // Change this value to your desired font size for the labels inside the pie
- fontWeight: 700,
- // fontFamily: fonts,
- },
- },
-};
-
-export const MyResponsivePie: FC = ({ data }) => (
- `${d.value.toFixed(2)}%`} // Display value in percentage
- // defs={[
- // {
- // id: "dots",
- // type: "patternDots",
- // background: "inherit",
- // color: "rgba(255, 255, 255, 0.3)",
- // size: 4,
- // padding: 1,
- // stagger: true,
- // },
- // {
- // id: "lines",
- // type: "patternLines",
- // background: "inherit",
- // color: "rgba(255, 255, 255, 0.3)",
- // rotation: -45,
- // lineWidth: 6,
- // spacing: 10,
- // },
- // ]}
- fill={[
- {
- match: {
- id: "Negative",
- },
- id: "dots",
- },
- {
- match: {
- id: "Positive",
- },
- id: "lines",
- },
- ]}
- legends={[
- {
- anchor: "bottom",
- direction: "row",
- justify: false,
- translateX: 2,
- translateY: 40,
- itemsSpacing: 4,
- itemWidth: 80,
- itemHeight: 18,
- itemTextColor: "#4b5563",
- itemDirection: "left-to-right",
- itemOpacity: 1,
- symbolSize: 16,
- symbolShape: "circle",
- effects: [
- {
- on: "hover",
- style: {
- itemTextColor: "#000",
- },
- },
- ],
- },
- ]}
- theme={theme} // Apply the theme here
- colors={["#4ade80", "#d6d3d1", "#fb7185"]}
- />
-);
diff --git a/frontend-nextjs/app/components/Insights/TopCard.tsx b/frontend-nextjs/app/components/Insights/TopCard.tsx
deleted file mode 100644
index 2ed4121..0000000
--- a/frontend-nextjs/app/components/Insights/TopCard.tsx
+++ /dev/null
@@ -1,79 +0,0 @@
-"use client";
-import {
- Card,
- CardContent,
- CardDescription,
- CardFooter,
- CardHeader,
- CardTitle,
-} from "@/components/ui/card";
-import { TrendingUp } from "lucide-react";
-import { TrendingDown } from "lucide-react";
-
-interface CardProps {
- title: string | null;
- value: number | string | null;
- delta: number | null;
- filter: string;
- type: string | null;
-}
-
-const TopCard: React.FC = ({
- title,
- value,
- delta,
- filter,
- type,
-}) => {
- const isPositiveDelta = delta !== null && delta >= 0;
- // get the user data from the selected user and period
-
- const bgColor = type === "top" ? "bg-amber-500" : "bg-violet-500";
- const titleColor = type === "top" ? "text-amber-50" : "text-violet-50";
- const footerColor = type === "top" ? "text-amber-100" : "text-violet-100";
-
- const getTimePeriod = (filter: string): string => {
- if (filter === "weeks") return "last week";
- if (filter === "days") return "yesterday";
- if (filter === "months") return "last month";
- return ""; // Default case, can be adjusted based on your needs
- };
-
- return (
- <>
-
-
-
-
- {title}
-
-
- {/*
- + 1.8%
- */}
-
-
- {value}
-
-
-
- {delta !== null &&
- (isPositiveDelta ? (
-
- ) : (
-
- ))}
-
- {delta}% from {getTimePeriod(filter)}
-
-
-
- >
- );
-};
-
-export default TopCard;
diff --git a/frontend-nextjs/app/components/LandingPage/InsightsDemo.tsx b/frontend-nextjs/app/components/LandingPage/InsightsDemo.tsx
deleted file mode 100644
index 766367c..0000000
--- a/frontend-nextjs/app/components/LandingPage/InsightsDemo.tsx
+++ /dev/null
@@ -1,204 +0,0 @@
-"use client";
-
-import Usecase from "./Usecase";
-import TopCard from "../Insights/TopCard";
-import { MyResponsiveLine } from "../Insights/LineChart";
-import { MyResponsivePie } from "../Insights/PieChart";
-import { MyResponsiveBar } from "../Insights/BarChart";
-
-const suggestions =
- "Based on the recent data, maintaining a neutral emotional state is predominant. Although there is a slight emergence of negative emotions like disgust, sadness, and anger, they are balanced by an equal presence of joy and surprise. Encourage positive interactions and activities to enhance the joy and neutral emotions further.";
-
-const cardData = {
- main_emotion_1: { title: "Joy", value: 28.8, change: 28 },
- main_emotion_2: { title: "Suprise", value: 19.2, change: -12 },
- change_1: { title: "Anger", value: 12.1, change: 69 },
- change_2: { title: "Fear", value: 5.9, change: -52 },
-};
-
-const barData = [
- { emotion: "Surprise", Today: 0.28, Yesterday: 0.25 },
- { emotion: "Joy", Today: 0.13, Yesterday: 0.22 },
- { emotion: "Sadness", Today: 0.12, Yesterday: 0.18 },
- { emotion: "Anger", Today: 0.12, Yesterday: 0.12 },
- { emotion: "Neutral", Today: 0.12, Yesterday: 0.1 },
- { emotion: "Fear", Today: 0.12, Yesterday: 0.1 },
- { emotion: "Disgust", Today: 0.12, Yesterday: 0.09 },
-];
-
-const lineData = [
- {
- id: "Negative",
- name: "Negative",
- data: [
- { x: "2024-09-4", y: 0.23122093090355336 },
- { x: "2024-09-5", y: 0.21122093090355345 },
- { x: "2024-09-6", y: 0.13122093090355345 },
- { x: "2024-09-7", y: 0.18122093090355345 },
- { x: "2024-09-8", y: 0.43122093090355345 },
- { x: "2024-09-9", y: 0.23122093090355345 },
- { x: "2024-09-10", y: 0.13122093090355345 },
- ],
- },
- {
- id: "Neutral",
- name: "Neutral",
- data: [
- { x: "2024-09-4", y: 0.2433541552767576 },
- { x: "2024-09-5", y: 0.1433541552767577 },
- { x: "2024-09-6", y: 0.11122093090355345 },
- { x: "2024-09-7", y: 0.20122093090355345 },
- { x: "2024-09-8", y: 0.23122093090355345 },
- { x: "2024-09-9", y: 0.20122093090355345 },
- { x: "2024-09-10", y: 0.23122093090355345 },
- ],
- },
- {
- id: "Positive",
- name: "Positive",
- data: [
- { x: "2024-09-4", y: 0.3233541552767576 },
- { x: "2024-09-5", y: 0.2433541552767577 },
- { x: "2024-09-6", y: 0.23122093090355345 },
- { x: "2024-09-7", y: 0.23122093090355345 },
- { x: "2024-09-8", y: 0.13122093090355345 },
- { x: "2024-09-9", y: 0.28122093090355345 },
- { x: "2024-09-10", y: 0.33122093090355345 },
- ],
- },
-];
-
-const pieData = [
- { id: "Positive", label: "Positive", value: 0.43 },
- { id: "Neutral", label: "Neutral", value: 0.34 },
- { id: "Negative", label: "Negative", value: 0.23 },
-];
-
-export default function InsightsDemo() {
- const isEmpty = (data: any) => {
- return !data || data.length === 0;
- };
-
- const placeholder = (
-
-
- Talk to a character to view your trends
-
-
- );
-
- // console.log(cardData?.["change_1"]);
- return (
-
- {/*
Insights
-
{suggestions}
*/}
-
-
-
- Daily emotion highlights
-
-
-
-
-
-
- Significant emotion shifts
-
-
-
-
-
-
-
- {/* Sentiment Over Time and Forecast */}
- Sentiment over time
-
-
- {isEmpty(lineData) ? (
- placeholder
- ) : (
-
- )}
-
-
-
-
-
- Daily sentiment proportions
-
-
- {isEmpty(pieData) ? (
- placeholder
- ) : (
-
- )}
-
-
-
- {/*
-
- Emotions Breakdown
-
-
- {isEmpty(barData) ? (
- placeholder
- ) : (
-
- )}
-
-
*/}
-
- );
-}
diff --git a/frontend-nextjs/app/components/LandingPage/InsightsDemoSection.tsx b/frontend-nextjs/app/components/LandingPage/InsightsDemoSection.tsx
deleted file mode 100644
index 734bcd2..0000000
--- a/frontend-nextjs/app/components/LandingPage/InsightsDemoSection.tsx
+++ /dev/null
@@ -1,38 +0,0 @@
-"use client";
-
-import IllustrationInsights from "@/public/insights_section.svg";
-
-import InsightsDemo from "./InsightsDemo";
-
-export default function InsightsDemoSection() {
- return (
-
-
-
-
-
-
- Get trends and insights
-
-
- Our AI platform can analyse human-speech and emotion,
- and respond with empathy, offering supportive
- conversations and personalized learning assistance.
-
-
-
-
-
-
-
- );
-}
diff --git a/frontend-nextjs/app/components/Nav/LeftNavbarButtons.tsx b/frontend-nextjs/app/components/Nav/LeftNavbarButtons.tsx
index afadc5b..f9b48f3 100644
--- a/frontend-nextjs/app/components/Nav/LeftNavbarButtons.tsx
+++ b/frontend-nextjs/app/components/Nav/LeftNavbarButtons.tsx
@@ -49,79 +49,6 @@ export default function LeftNavbarButtons({ user }: LeftNavbarButtonsProps) {
)}
- {/* {!isHome && (
- {
- if (!open) {
- // Remove focus from any active element when dropdown closes
- document.activeElement instanceof HTMLElement &&
- document.activeElement.blur();
- }
- }}
- >
-
-
-
- Use cases
-
-
-
-
-
- Use Cases
-
-
-
-
-
-
- Elato for Hobbyists
-
- {isRoot && (
-
- )}
-
-
-
-
-
-
- Elato for Kids
-
- {!isRoot && (
-
- )}
-
-
-
-
-
- )} */}
);
}
diff --git a/frontend-nextjs/app/components/Nav/NavbarButtons.tsx b/frontend-nextjs/app/components/Nav/NavbarButtons.tsx
index 78d573e..b0425fd 100644
--- a/frontend-nextjs/app/components/Nav/NavbarButtons.tsx
+++ b/frontend-nextjs/app/components/Nav/NavbarButtons.tsx
@@ -24,7 +24,6 @@ const NavbarButtons: React.FC = ({
isHome,
}) => {
const isMobile = useMediaQuery("(max-width: 768px)");
- const isHealthcare = usePathname().includes("/healthcare");
return (
)}
- {/* {isHealthcare ? (
-
- ) : (
-
- )} */}
-
{!isHome && (
= ({
)}
- {!isHome && !isHealthcare && !isMobile && (
+ {!isHome && !isMobile && (
{
const setUserPremium = async () => {
if (user) {
@@ -124,17 +120,6 @@ export function NavbarDropdownMenu({ user, stars }: NavbarMenuButtonProps) {
{user ? : }
-
- {/*
-
- {isKids ? : }
- {isKids ? "Elato for Hobbyists" : "Elato for Kids"}
-
- */}
= ({
Device settings
-
+ {/*
Set your OpenAI API Key
@@ -155,7 +154,7 @@ const AppSettings: React.FC = ({
Your keys are E2E encrypted and never stored on our servers as plain text.
-
+
*/}
@@ -167,7 +166,7 @@ const AppSettings: React.FC = ({
?
- For simplicity, you can register your ESP32 MAC address without the colons
+ For simplicity, you can register your ESP32 MAC address here without colons
diff --git a/frontend-nextjs/app/docs/page.tsx b/frontend-nextjs/app/docs/page.tsx
deleted file mode 100644
index ef595a1..0000000
--- a/frontend-nextjs/app/docs/page.tsx
+++ /dev/null
@@ -1,13 +0,0 @@
-import { docsLink } from "@/lib/data";
-import { getOpenGraphMetadata } from "@/lib/utils";
-import { Metadata } from "next";
-import { permanentRedirect } from "next/navigation";
-
-export const metadata: Metadata = {
- title: "Docs",
- ...getOpenGraphMetadata("Docs"),
-};
-
-export default async function RootLayout() {
- permanentRedirect(docsLink);
-}
diff --git a/frontend-nextjs/app/healthcare/page.tsx b/frontend-nextjs/app/healthcare/page.tsx
deleted file mode 100644
index 5ee50a6..0000000
--- a/frontend-nextjs/app/healthcare/page.tsx
+++ /dev/null
@@ -1,157 +0,0 @@
-import LandingPageSection from "../components/LandingPage/LandingPageSection";
-import { Stethoscope } from "lucide-react";
-import { Metadata } from "next";
-import { getOpenGraphMetadata } from "@/lib/utils";
-import ToyPicker from "../components/LandingPage/ToyPicker";
-import GetInTouchButton from "../components/GetInTouch";
-import { Badge } from "@/components/ui/badge";
-import { redirect } from "next/navigation";
-export const metadata: Metadata = {
- title: "Pediatric Care",
- ...getOpenGraphMetadata("Pediatric Care"),
-};
-
-const Sections = [
- {
- title: "A friendly face in unfamiliar places",
- progress: "Making hospital visits feel less scary",
- description:
- "Our AI companion helps children feel more at ease during medical procedures by explaining things in a friendly, age-appropriate way they can understand.",
- imageSrc: "/growth.jpg",
- },
- {
- title: "Speaking their language",
- progress: "Complex procedures made simple",
- description:
- "Through playful conversation and familiar superhero voices, we help children understand medical procedures in ways that make sense to them.",
- imageSrc: "/learning.jpg",
- isImageRight: true,
- },
- {
- title: "Always there to listen",
- progress: "24/7 emotional support for little warriors",
- description:
- "Whether it's pre-procedure jitters or recovery time, our companion provides constant emotional support and encouragement when children need it most.",
- imageSrc: "/safety.jpg",
- },
- {
- title: "Teamwork with healthcare heroes",
- progress: "Building trust between kids and medical staff",
- description:
- "We help create positive associations with health-play staff, making it easier for children to form trusting relationships with their medical team.",
- imageSrc: "/privacy.jpg",
- isImageRight: true,
- },
-];
-
-export default async function Healthcare() {
- redirect("/");
- return (
-
-
- This product is currently in Beta testing and is not yet
- certified for clinical use.
-
-
-
-
-
-
-
- An AI-enabled healthcare{" "}
-
- {"companion toy"}
-
-
-
- The Elato device makes toys
- conversational using familiar superhero voices
- to explain procedures and provide comfort{" "}
-
-
-
-
-
-
-
-
-
-
-
-
-
- {/* */}
-
-
-
-
-
-
- {Sections.map((section, index) => (
-
- ))}
-
-
-
- );
-}
diff --git a/frontend-nextjs/app/kids/page.tsx b/frontend-nextjs/app/kids/page.tsx
deleted file mode 100644
index ccb7353..0000000
--- a/frontend-nextjs/app/kids/page.tsx
+++ /dev/null
@@ -1,115 +0,0 @@
-import { createClient } from "@/utils/supabase/server";
-import { getAllPersonalities } from "@/db/personalities";
-import EndingSection from "../components/LandingPage/EndingSection";
-import FrontPage from "../components/LandingPage/FrontPage";
-import Personalities from "../components/LandingPage/Personalities";
-import { Button } from "@/components/ui/button";
-import { Gamepad2, SmilePlus, Command, MessagesSquare, Bookmark, Share2, MessageCircle, Heart, Share, Wand } from "lucide-react";
-import PreorderButton from "../components/PreorderButton";
-import Link from "next/link";
-import Usecases from "../components/LandingPage/Usecases";
-import VideoPlayer from "../components/LandingPage/VideoPlayer";
-import { videoSrc, videoSrc2, videoSrc3, videoSrc4 } from "@/lib/data";
-import { redirect } from "next/navigation";
-
-const steps = [
- {
- title: "1. Pick their favorite story",
- description: "Select from a wide range of AI characters, each with unique personalities, stories and knowledge bases.",
- icon: ,
- color: "text-amber-400"
- },
- {
- title: "2. Connect the toy",
- description: "Easily set up your Elato device with your home Wi-Fi network or Personal hotspot.",
- icon: ,
- color: "text-amber-500"
- },
- {
- title: "3. Begin a new adventure",
- description: "Your characters are now always ready to chat. Watch your child's imagination come to life as they interact with (and create!) their own stories.",
- icon: ,
- color: "text-amber-600"
- },
-]
-export default async function Index() {
- redirect("/");
- const supabase = createClient();
-
- const {
- data: { user },
- } = await supabase.auth.getUser();
-
- const allPersonalities = await getAllPersonalities(supabase);
-
-
- return (
-
-
-
- {"The Elato toy combines AI-powered creative storytelling with a screen-free experience where children become the stars of their own adventures."}
-
-
-
- {/* */}
-
- {/*
-
- With a character for every occasion including
-
-
-
-
- */}
-
- {/* */}
- {/* */}
-
-
- {steps.map((step, index) => (
-
-
- {step.title} {step.icon}
-
-
- {step.description}
-
-
- ))}
-
-
- {/* */}
-
- {/* */}
-
-
- );
-}
diff --git a/frontend-nextjs/app/layout.tsx b/frontend-nextjs/app/layout.tsx
index 3387047..79c8aab 100644
--- a/frontend-nextjs/app/layout.tsx
+++ b/frontend-nextjs/app/layout.tsx
@@ -302,7 +302,7 @@ export default async function RootLayout({
}) {
const supabase = createClient();
- const { stars } = await fetchGithubStars("StarmoonAI/Starmoon");
+ const { stars } = await fetchGithubStars("akdeb/ElatoAI");
const {
data: { user },
diff --git a/frontend-nextjs/app/sitemap.ts b/frontend-nextjs/app/sitemap.ts
index 2317a61..5a0b970 100644
--- a/frontend-nextjs/app/sitemap.ts
+++ b/frontend-nextjs/app/sitemap.ts
@@ -16,11 +16,5 @@ export default function sitemap(): MetadataRoute.Sitemap {
changeFrequency: "weekly",
priority: 0.9,
},
- {
- url: "https://elatoai.com/healthcare",
- lastModified: new Date(),
- changeFrequency: "monthly",
- priority: 0.8,
- },
];
}
diff --git a/frontend-nextjs/lib/azureOpenai.ts b/frontend-nextjs/lib/azureOpenai.ts
deleted file mode 100644
index 7041f6e..0000000
--- a/frontend-nextjs/lib/azureOpenai.ts
+++ /dev/null
@@ -1,82 +0,0 @@
-const { AzureOpenAI } = require("openai");
-import OpenAI from "openai";
-
-// Load the .env file if it exists
-const dotenv = require("dotenv");
-dotenv.config();
-
-export const generateSuggestion = async (
- cardData: CardData | null,
- barData: BarData[],
- lineData: LineData[],
- pieData: PieData[]
-): Promise => {
- // You will need to set these environment variables or edit the following values
- // if OPENAI_API_KEY exists, use it, otherwise use AZURE_OPENAI_API_KEY
-
- const cardDataString = JSON.stringify(cardData);
- const barDatatring = JSON.stringify(barData);
- const lineDataString = JSON.stringify(lineData);
- const pieDataString = JSON.stringify(pieData);
-
- let client: any;
- let result: any;
- const deployment = process.env["LLM_MODEL_NAME"] || "gpt-4o";
- const messages = [
- {
- role: "system",
- content: `You are an assistant who provides insight based on children's emotional data.`,
- },
- {
- role: "user",
- content: `Please provide a 50-word of suggestion of the below data:
-
- Main emotions today & Significant Emotional Shifts with today's and yesterday's data:\n
- ${cardDataString}
-
- Sentiment Over Time:
- ${lineDataString}
-
- Sentiment Proportions Today:
- ${pieDataString}
-
- Current Emotions Breakdown:
- ${barDatatring}`,
- },
- ];
-
- if (process.env.OPENAI_API_KEY) {
- client = new OpenAI();
- result = await client.chat.completions.create({
- model: deployment,
- messages,
- });
- } else {
- const endpoint = process.env["AZURE_OPENAI_ENDPOINT"];
- const apiKey = process.env["AZURE_OPENAI_API_KEY"];
- const apiVersion = "2024-02-01"; //"2024-02-01"
-
- client = new AzureOpenAI({
- endpoint,
- apiKey,
- apiVersion,
- deployment,
- });
- result = await client.chat.completions.create({
- model: deployment,
- messages,
- });
- }
-
- // if cardData is null
- if (
- cardData === null &&
- barData.length === 0 &&
- lineData.length === 0 &&
- pieData.length === 0
- ) {
- return "Talk to a character in the Playground or on your Elato device to view your trends.";
- }
-
- return result.choices[0].message.content;
-};
diff --git a/frontend-nextjs/lib/data.ts b/frontend-nextjs/lib/data.ts
index c03ca69..65e4323 100644
--- a/frontend-nextjs/lib/data.ts
+++ b/frontend-nextjs/lib/data.ts
@@ -2,8 +2,7 @@ export const defaultToyId: string = "56224f7f-250d-4351-84ee-e4a13b881c7b";
export const defaultPersonalityId: string =
"a1c073e6-653d-40cf-acc1-891331689409";
- export const paymentLink = "https://buy.stripe.com/bIY0033Dc7LB28o9AJ";
- export const starmoonProductsLink = "https://elatoai.com/products";
+export const paymentLink = "https://buy.stripe.com/bIY0033Dc7LB28o9AJ";
export const discordInviteLink = "https://discord.gg/KJWxDPBRUj";
export const tiktokLink = "https://www.tiktok.com/@elatoai";
export const githubPublicLink = "https://github.com/akdeb/ElatoAI";
@@ -20,7 +19,6 @@ export const videoSrc4 = `${r2Url}/IMG_1677.mov`;
export const voiceSampleUrl =
"https://xygbupeczfhwamhqnucy.supabase.co/storage/v1/object/public/voices/";
-export const docsLink = "https://starmoonai.notion.site/doc?pvs=4";
export const userFormPersonaLabel =
"Briefly describe yourself and your interests, personality, and learning style";
@@ -39,21 +37,79 @@ export const ORIGINAL_COST = 111;
export const SUBSCRIPTION_COST = 10;
export const voices = [
- { id: 'alloy', name: 'Alloy', description: 'Neutral and balanced', color: 'bg-blue-100', emoji: '🧑' },
- { id: 'echo', name: 'Echo', description: 'Warm and melodic', color: 'bg-purple-100', emoji: '👩🎤' },
- { id: 'shimmer', name: 'Shimmer', description: 'Clear and bright', color: 'bg-cyan-100', emoji: '👱♀️' },
- { id: 'ash', name: 'Ash', description: 'Soft and thoughtful', color: 'bg-gray-100', emoji: '🧔' },
- { id: 'ballad', name: 'Ballad', description: 'Melodic and emotive', color: 'bg-indigo-100', emoji: '🎭' },
- { id: 'coral', name: 'Coral', description: 'Warm and friendly', color: 'bg-orange-100', emoji: '👩' },
- { id: 'sage', name: 'Sage', description: 'Wise and measured', color: 'bg-green-100', emoji: '🧓' },
- { id: 'verse', name: 'Verse', description: 'Poetic and expressive', color: 'bg-rose-100', emoji: '👨🎨' }
+ {
+ id: "alloy",
+ name: "Alloy",
+ description: "Neutral and balanced",
+ color: "bg-blue-100",
+ emoji: "🧑",
+ },
+ {
+ id: "echo",
+ name: "Echo",
+ description: "Warm and melodic",
+ color: "bg-purple-100",
+ emoji: "👩🎤",
+ },
+ {
+ id: "shimmer",
+ name: "Shimmer",
+ description: "Clear and bright",
+ color: "bg-cyan-100",
+ emoji: "👱♀️",
+ },
+ {
+ id: "ash",
+ name: "Ash",
+ description: "Soft and thoughtful",
+ color: "bg-gray-100",
+ emoji: "🧔",
+ },
+ {
+ id: "ballad",
+ name: "Ballad",
+ description: "Melodic and emotive",
+ color: "bg-indigo-100",
+ emoji: "🎭",
+ },
+ {
+ id: "coral",
+ name: "Coral",
+ description: "Warm and friendly",
+ color: "bg-orange-100",
+ emoji: "👩",
+ },
+ {
+ id: "sage",
+ name: "Sage",
+ description: "Wise and measured",
+ color: "bg-green-100",
+ emoji: "🧓",
+ },
+ {
+ id: "verse",
+ name: "Verse",
+ description: "Poetic and expressive",
+ color: "bg-rose-100",
+ emoji: "👨🎨",
+ },
];
export const emotionOptions = [
- { value: 'neutral', label: 'Neutral', icon: '😐', color: 'bg-red-100' },
- { value: 'cheerful', label: 'Cheerful', icon: '😊', color: 'bg-yellow-100' },
- { value: 'serious', label: 'Serious', icon: '🧐', color: 'bg-blue-100' },
- { value: 'calm', label: 'Calm', icon: '😌', color: 'bg-teal-100' },
- { value: 'excited', label: 'Excited', icon: '😃', color: 'bg-orange-100' },
- { value: 'professional', label: 'Professional', icon: '👔', color: 'bg-green-100' }
+ { value: "neutral", label: "Neutral", icon: "😐", color: "bg-red-100" },
+ {
+ value: "cheerful",
+ label: "Cheerful",
+ icon: "😊",
+ color: "bg-yellow-100",
+ },
+ { value: "serious", label: "Serious", icon: "🧐", color: "bg-blue-100" },
+ { value: "calm", label: "Calm", icon: "😌", color: "bg-teal-100" },
+ { value: "excited", label: "Excited", icon: "😃", color: "bg-orange-100" },
+ {
+ value: "professional",
+ label: "Professional",
+ icon: "👔",
+ color: "bg-green-100",
+ },
];
diff --git a/node_modules/.bin/mkdirp b/node_modules/.bin/mkdirp
deleted file mode 120000
index 0fd5193..0000000
--- a/node_modules/.bin/mkdirp
+++ /dev/null
@@ -1 +0,0 @@
-../mkdirp/dist/cjs/src/bin.js
\ No newline at end of file
diff --git a/node_modules/.bin/supabase b/node_modules/.bin/supabase
deleted file mode 120000
index 6f88843..0000000
--- a/node_modules/.bin/supabase
+++ /dev/null
@@ -1 +0,0 @@
-../supabase/bin/supabase
\ No newline at end of file
diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json
deleted file mode 100644
index 71f1031..0000000
--- a/node_modules/.package-lock.json
+++ /dev/null
@@ -1,356 +0,0 @@
-{
- "name": "ElatoAI",
- "lockfileVersion": 3,
- "requires": true,
- "packages": {
- "node_modules/@isaacs/fs-minipass": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz",
- "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "minipass": "^7.0.4"
- },
- "engines": {
- "node": ">=18.0.0"
- }
- },
- "node_modules/agent-base": {
- "version": "7.1.3",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz",
- "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/bin-links": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-5.0.0.tgz",
- "integrity": "sha512-sdleLVfCjBtgO5cNjA2HVRvWBJAHs4zwenaCPMNJAJU0yNxpzj80IpjOIimkpkr+mhlA+how5poQtt53PygbHA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "cmd-shim": "^7.0.0",
- "npm-normalize-package-bin": "^4.0.0",
- "proc-log": "^5.0.0",
- "read-cmd-shim": "^5.0.0",
- "write-file-atomic": "^6.0.0"
- },
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- }
- },
- "node_modules/chownr": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz",
- "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==",
- "dev": true,
- "license": "BlueOak-1.0.0",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/cmd-shim": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-7.0.0.tgz",
- "integrity": "sha512-rtpaCbr164TPPh+zFdkWpCyZuKkjpAzODfaZCf/SVJZzJN+4bHQb/LP3Jzq5/+84um3XXY8r548XiWKSborwVw==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- }
- },
- "node_modules/data-uri-to-buffer": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz",
- "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 12"
- }
- },
- "node_modules/debug": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
- "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "^2.1.3"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/fetch-blob": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
- "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/jimmywarting"
- },
- {
- "type": "paypal",
- "url": "https://paypal.me/jimmywarting"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "node-domexception": "^1.0.0",
- "web-streams-polyfill": "^3.0.3"
- },
- "engines": {
- "node": "^12.20 || >= 14.13"
- }
- },
- "node_modules/formdata-polyfill": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz",
- "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fetch-blob": "^3.1.2"
- },
- "engines": {
- "node": ">=12.20.0"
- }
- },
- "node_modules/https-proxy-agent": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
- "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "agent-base": "^7.1.2",
- "debug": "4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.19"
- }
- },
- "node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/minizlib": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.0.2.tgz",
- "integrity": "sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "minipass": "^7.1.2"
- },
- "engines": {
- "node": ">= 18"
- }
- },
- "node_modules/mkdirp": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz",
- "integrity": "sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mkdirp": "dist/cjs/src/bin.js"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/node-domexception": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
- "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/jimmywarting"
- },
- {
- "type": "github",
- "url": "https://paypal.me/jimmywarting"
- }
- ],
- "license": "MIT",
- "engines": {
- "node": ">=10.5.0"
- }
- },
- "node_modules/node-fetch": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz",
- "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "data-uri-to-buffer": "^4.0.0",
- "fetch-blob": "^3.1.4",
- "formdata-polyfill": "^4.0.10"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/node-fetch"
- }
- },
- "node_modules/npm-normalize-package-bin": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-4.0.0.tgz",
- "integrity": "sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- }
- },
- "node_modules/proc-log": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz",
- "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- }
- },
- "node_modules/read-cmd-shim": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-5.0.0.tgz",
- "integrity": "sha512-SEbJV7tohp3DAAILbEMPXavBjAnMN0tVnh4+9G8ihV4Pq3HYF9h8QNez9zkJ1ILkv9G2BjdzwctznGZXgu/HGw==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- }
- },
- "node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/supabase": {
- "version": "2.20.12",
- "resolved": "https://registry.npmjs.org/supabase/-/supabase-2.20.12.tgz",
- "integrity": "sha512-8UTRRvQdMsfs7jcHPDfv6cFYwrar5OyqidtB8GSdPCaKfEP+0n4TwCVwu7H0tDCbCYs28HDZDzQAZ8Ox+aVIiA==",
- "dev": true,
- "hasInstallScript": true,
- "license": "MIT",
- "dependencies": {
- "bin-links": "^5.0.0",
- "https-proxy-agent": "^7.0.2",
- "node-fetch": "^3.3.2",
- "tar": "7.4.3"
- },
- "bin": {
- "supabase": "bin/supabase"
- },
- "engines": {
- "npm": ">=8"
- }
- },
- "node_modules/tar": {
- "version": "7.4.3",
- "resolved": "https://registry.npmjs.org/tar/-/tar-7.4.3.tgz",
- "integrity": "sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "@isaacs/fs-minipass": "^4.0.0",
- "chownr": "^3.0.0",
- "minipass": "^7.1.2",
- "minizlib": "^3.0.1",
- "mkdirp": "^3.0.1",
- "yallist": "^5.0.0"
- },
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/web-streams-polyfill": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz",
- "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/write-file-atomic": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-6.0.0.tgz",
- "integrity": "sha512-GmqrO8WJ1NuzJ2DrziEI2o57jKAVIQNf8a18W3nCYU3H7PNWqCCVTeH6/NQE93CIllIgQS98rrmVkYgTX9fFJQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "signal-exit": "^4.0.1"
- },
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- }
- },
- "node_modules/yallist": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz",
- "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==",
- "dev": true,
- "license": "BlueOak-1.0.0",
- "engines": {
- "node": ">=18"
- }
- }
- }
-}
diff --git a/node_modules/@isaacs/fs-minipass/LICENSE b/node_modules/@isaacs/fs-minipass/LICENSE
deleted file mode 100644
index 19129e3..0000000
--- a/node_modules/@isaacs/fs-minipass/LICENSE
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) Isaac Z. Schlueter and Contributors
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/node_modules/@isaacs/fs-minipass/README.md b/node_modules/@isaacs/fs-minipass/README.md
deleted file mode 100644
index dac96e7..0000000
--- a/node_modules/@isaacs/fs-minipass/README.md
+++ /dev/null
@@ -1,71 +0,0 @@
-# fs-minipass
-
-Filesystem streams based on [minipass](http://npm.im/minipass).
-
-4 classes are exported:
-
-- ReadStream
-- ReadStreamSync
-- WriteStream
-- WriteStreamSync
-
-When using `ReadStreamSync`, all of the data is made available
-immediately upon consuming the stream. Nothing is buffered in memory
-when the stream is constructed. If the stream is piped to a writer,
-then it will synchronously `read()` and emit data into the writer as
-fast as the writer can consume it. (That is, it will respect
-backpressure.) If you call `stream.read()` then it will read the
-entire file and return the contents.
-
-When using `WriteStreamSync`, every write is flushed to the file
-synchronously. If your writes all come in a single tick, then it'll
-write it all out in a single tick. It's as synchronous as you are.
-
-The async versions work much like their node builtin counterparts,
-with the exception of introducing significantly less Stream machinery
-overhead.
-
-## USAGE
-
-It's just streams, you pipe them or read() them or write() to them.
-
-```js
-import { ReadStream, WriteStream } from 'fs-minipass'
-// or: const { ReadStream, WriteStream } = require('fs-minipass')
-const readStream = new ReadStream('file.txt')
-const writeStream = new WriteStream('output.txt')
-writeStream.write('some file header or whatever\n')
-readStream.pipe(writeStream)
-```
-
-## ReadStream(path, options)
-
-Path string is required, but somewhat irrelevant if an open file
-descriptor is passed in as an option.
-
-Options:
-
-- `fd` Pass in a numeric file descriptor, if the file is already open.
-- `readSize` The size of reads to do, defaults to 16MB
-- `size` The size of the file, if known. Prevents zero-byte read()
- call at the end.
-- `autoClose` Set to `false` to prevent the file descriptor from being
- closed when the file is done being read.
-
-## WriteStream(path, options)
-
-Path string is required, but somewhat irrelevant if an open file
-descriptor is passed in as an option.
-
-Options:
-
-- `fd` Pass in a numeric file descriptor, if the file is already open.
-- `mode` The mode to create the file with. Defaults to `0o666`.
-- `start` The position in the file to start reading. If not
- specified, then the file will start writing at position zero, and be
- truncated by default.
-- `autoClose` Set to `false` to prevent the file descriptor from being
- closed when the stream is ended.
-- `flags` Flags to use when opening the file. Irrelevant if `fd` is
- passed in, since file won't be opened in that case. Defaults to
- `'a'` if a `pos` is specified, or `'w'` otherwise.
diff --git a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts b/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts
deleted file mode 100644
index 38e8ccd..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts
+++ /dev/null
@@ -1,118 +0,0 @@
-///
-///
-///
-import EE from 'events';
-import { Minipass } from 'minipass';
-declare const _autoClose: unique symbol;
-declare const _close: unique symbol;
-declare const _ended: unique symbol;
-declare const _fd: unique symbol;
-declare const _finished: unique symbol;
-declare const _flags: unique symbol;
-declare const _flush: unique symbol;
-declare const _handleChunk: unique symbol;
-declare const _makeBuf: unique symbol;
-declare const _mode: unique symbol;
-declare const _needDrain: unique symbol;
-declare const _onerror: unique symbol;
-declare const _onopen: unique symbol;
-declare const _onread: unique symbol;
-declare const _onwrite: unique symbol;
-declare const _open: unique symbol;
-declare const _path: unique symbol;
-declare const _pos: unique symbol;
-declare const _queue: unique symbol;
-declare const _read: unique symbol;
-declare const _readSize: unique symbol;
-declare const _reading: unique symbol;
-declare const _remain: unique symbol;
-declare const _size: unique symbol;
-declare const _write: unique symbol;
-declare const _writing: unique symbol;
-declare const _defaultFlag: unique symbol;
-declare const _errored: unique symbol;
-export type ReadStreamOptions = Minipass.Options & {
- fd?: number;
- readSize?: number;
- size?: number;
- autoClose?: boolean;
-};
-export type ReadStreamEvents = Minipass.Events & {
- open: [fd: number];
-};
-export declare class ReadStream extends Minipass {
- [_errored]: boolean;
- [_fd]?: number;
- [_path]: string;
- [_readSize]: number;
- [_reading]: boolean;
- [_size]: number;
- [_remain]: number;
- [_autoClose]: boolean;
- constructor(path: string, opt: ReadStreamOptions);
- get fd(): number | undefined;
- get path(): string;
- write(): void;
- end(): void;
- [_open](): void;
- [_onopen](er?: NodeJS.ErrnoException | null, fd?: number): void;
- [_makeBuf](): Buffer;
- [_read](): void;
- [_onread](er?: NodeJS.ErrnoException | null, br?: number, buf?: Buffer): void;
- [_close](): void;
- [_onerror](er: NodeJS.ErrnoException): void;
- [_handleChunk](br: number, buf: Buffer): boolean;
- emit(ev: Event, ...args: ReadStreamEvents[Event]): boolean;
-}
-export declare class ReadStreamSync extends ReadStream {
- [_open](): void;
- [_read](): void;
- [_close](): void;
-}
-export type WriteStreamOptions = {
- fd?: number;
- autoClose?: boolean;
- mode?: number;
- captureRejections?: boolean;
- start?: number;
- flags?: string;
-};
-export declare class WriteStream extends EE {
- readable: false;
- writable: boolean;
- [_errored]: boolean;
- [_writing]: boolean;
- [_ended]: boolean;
- [_queue]: Buffer[];
- [_needDrain]: boolean;
- [_path]: string;
- [_mode]: number;
- [_autoClose]: boolean;
- [_fd]?: number;
- [_defaultFlag]: boolean;
- [_flags]: string;
- [_finished]: boolean;
- [_pos]?: number;
- constructor(path: string, opt: WriteStreamOptions);
- emit(ev: string, ...args: any[]): boolean;
- get fd(): number | undefined;
- get path(): string;
- [_onerror](er: NodeJS.ErrnoException): void;
- [_open](): void;
- [_onopen](er?: null | NodeJS.ErrnoException, fd?: number): void;
- end(buf: string, enc?: BufferEncoding): this;
- end(buf?: Buffer, enc?: undefined): this;
- write(buf: string, enc?: BufferEncoding): boolean;
- write(buf: Buffer, enc?: undefined): boolean;
- [_write](buf: Buffer): void;
- [_onwrite](er?: null | NodeJS.ErrnoException, bw?: number): void;
- [_flush](): void;
- [_close](): void;
-}
-export declare class WriteStreamSync extends WriteStream {
- [_open](): void;
- [_close](): void;
- [_write](buf: Buffer): void;
-}
-export {};
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts.map b/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts.map
deleted file mode 100644
index 3e2c703..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js b/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js
deleted file mode 100644
index 2b3178c..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js
+++ /dev/null
@@ -1,430 +0,0 @@
-"use strict";
-var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.WriteStreamSync = exports.WriteStream = exports.ReadStreamSync = exports.ReadStream = void 0;
-const events_1 = __importDefault(require("events"));
-const fs_1 = __importDefault(require("fs"));
-const minipass_1 = require("minipass");
-const writev = fs_1.default.writev;
-const _autoClose = Symbol('_autoClose');
-const _close = Symbol('_close');
-const _ended = Symbol('_ended');
-const _fd = Symbol('_fd');
-const _finished = Symbol('_finished');
-const _flags = Symbol('_flags');
-const _flush = Symbol('_flush');
-const _handleChunk = Symbol('_handleChunk');
-const _makeBuf = Symbol('_makeBuf');
-const _mode = Symbol('_mode');
-const _needDrain = Symbol('_needDrain');
-const _onerror = Symbol('_onerror');
-const _onopen = Symbol('_onopen');
-const _onread = Symbol('_onread');
-const _onwrite = Symbol('_onwrite');
-const _open = Symbol('_open');
-const _path = Symbol('_path');
-const _pos = Symbol('_pos');
-const _queue = Symbol('_queue');
-const _read = Symbol('_read');
-const _readSize = Symbol('_readSize');
-const _reading = Symbol('_reading');
-const _remain = Symbol('_remain');
-const _size = Symbol('_size');
-const _write = Symbol('_write');
-const _writing = Symbol('_writing');
-const _defaultFlag = Symbol('_defaultFlag');
-const _errored = Symbol('_errored');
-class ReadStream extends minipass_1.Minipass {
- [_errored] = false;
- [_fd];
- [_path];
- [_readSize];
- [_reading] = false;
- [_size];
- [_remain];
- [_autoClose];
- constructor(path, opt) {
- opt = opt || {};
- super(opt);
- this.readable = true;
- this.writable = false;
- if (typeof path !== 'string') {
- throw new TypeError('path must be a string');
- }
- this[_errored] = false;
- this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined;
- this[_path] = path;
- this[_readSize] = opt.readSize || 16 * 1024 * 1024;
- this[_reading] = false;
- this[_size] = typeof opt.size === 'number' ? opt.size : Infinity;
- this[_remain] = this[_size];
- this[_autoClose] =
- typeof opt.autoClose === 'boolean' ? opt.autoClose : true;
- if (typeof this[_fd] === 'number') {
- this[_read]();
- }
- else {
- this[_open]();
- }
- }
- get fd() {
- return this[_fd];
- }
- get path() {
- return this[_path];
- }
- //@ts-ignore
- write() {
- throw new TypeError('this is a readable stream');
- }
- //@ts-ignore
- end() {
- throw new TypeError('this is a readable stream');
- }
- [_open]() {
- fs_1.default.open(this[_path], 'r', (er, fd) => this[_onopen](er, fd));
- }
- [_onopen](er, fd) {
- if (er) {
- this[_onerror](er);
- }
- else {
- this[_fd] = fd;
- this.emit('open', fd);
- this[_read]();
- }
- }
- [_makeBuf]() {
- return Buffer.allocUnsafe(Math.min(this[_readSize], this[_remain]));
- }
- [_read]() {
- if (!this[_reading]) {
- this[_reading] = true;
- const buf = this[_makeBuf]();
- /* c8 ignore start */
- if (buf.length === 0) {
- return process.nextTick(() => this[_onread](null, 0, buf));
- }
- /* c8 ignore stop */
- fs_1.default.read(this[_fd], buf, 0, buf.length, null, (er, br, b) => this[_onread](er, br, b));
- }
- }
- [_onread](er, br, buf) {
- this[_reading] = false;
- if (er) {
- this[_onerror](er);
- }
- else if (this[_handleChunk](br, buf)) {
- this[_read]();
- }
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs_1.default.close(fd, er => er ? this.emit('error', er) : this.emit('close'));
- }
- }
- [_onerror](er) {
- this[_reading] = true;
- this[_close]();
- this.emit('error', er);
- }
- [_handleChunk](br, buf) {
- let ret = false;
- // no effect if infinite
- this[_remain] -= br;
- if (br > 0) {
- ret = super.write(br < buf.length ? buf.subarray(0, br) : buf);
- }
- if (br === 0 || this[_remain] <= 0) {
- ret = false;
- this[_close]();
- super.end();
- }
- return ret;
- }
- emit(ev, ...args) {
- switch (ev) {
- case 'prefinish':
- case 'finish':
- return false;
- case 'drain':
- if (typeof this[_fd] === 'number') {
- this[_read]();
- }
- return false;
- case 'error':
- if (this[_errored]) {
- return false;
- }
- this[_errored] = true;
- return super.emit(ev, ...args);
- default:
- return super.emit(ev, ...args);
- }
- }
-}
-exports.ReadStream = ReadStream;
-class ReadStreamSync extends ReadStream {
- [_open]() {
- let threw = true;
- try {
- this[_onopen](null, fs_1.default.openSync(this[_path], 'r'));
- threw = false;
- }
- finally {
- if (threw) {
- this[_close]();
- }
- }
- }
- [_read]() {
- let threw = true;
- try {
- if (!this[_reading]) {
- this[_reading] = true;
- do {
- const buf = this[_makeBuf]();
- /* c8 ignore start */
- const br = buf.length === 0
- ? 0
- : fs_1.default.readSync(this[_fd], buf, 0, buf.length, null);
- /* c8 ignore stop */
- if (!this[_handleChunk](br, buf)) {
- break;
- }
- } while (true);
- this[_reading] = false;
- }
- threw = false;
- }
- finally {
- if (threw) {
- this[_close]();
- }
- }
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs_1.default.closeSync(fd);
- this.emit('close');
- }
- }
-}
-exports.ReadStreamSync = ReadStreamSync;
-class WriteStream extends events_1.default {
- readable = false;
- writable = true;
- [_errored] = false;
- [_writing] = false;
- [_ended] = false;
- [_queue] = [];
- [_needDrain] = false;
- [_path];
- [_mode];
- [_autoClose];
- [_fd];
- [_defaultFlag];
- [_flags];
- [_finished] = false;
- [_pos];
- constructor(path, opt) {
- opt = opt || {};
- super(opt);
- this[_path] = path;
- this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined;
- this[_mode] = opt.mode === undefined ? 0o666 : opt.mode;
- this[_pos] = typeof opt.start === 'number' ? opt.start : undefined;
- this[_autoClose] =
- typeof opt.autoClose === 'boolean' ? opt.autoClose : true;
- // truncating makes no sense when writing into the middle
- const defaultFlag = this[_pos] !== undefined ? 'r+' : 'w';
- this[_defaultFlag] = opt.flags === undefined;
- this[_flags] = opt.flags === undefined ? defaultFlag : opt.flags;
- if (this[_fd] === undefined) {
- this[_open]();
- }
- }
- emit(ev, ...args) {
- if (ev === 'error') {
- if (this[_errored]) {
- return false;
- }
- this[_errored] = true;
- }
- return super.emit(ev, ...args);
- }
- get fd() {
- return this[_fd];
- }
- get path() {
- return this[_path];
- }
- [_onerror](er) {
- this[_close]();
- this[_writing] = true;
- this.emit('error', er);
- }
- [_open]() {
- fs_1.default.open(this[_path], this[_flags], this[_mode], (er, fd) => this[_onopen](er, fd));
- }
- [_onopen](er, fd) {
- if (this[_defaultFlag] &&
- this[_flags] === 'r+' &&
- er &&
- er.code === 'ENOENT') {
- this[_flags] = 'w';
- this[_open]();
- }
- else if (er) {
- this[_onerror](er);
- }
- else {
- this[_fd] = fd;
- this.emit('open', fd);
- if (!this[_writing]) {
- this[_flush]();
- }
- }
- }
- end(buf, enc) {
- if (buf) {
- //@ts-ignore
- this.write(buf, enc);
- }
- this[_ended] = true;
- // synthetic after-write logic, where drain/finish live
- if (!this[_writing] &&
- !this[_queue].length &&
- typeof this[_fd] === 'number') {
- this[_onwrite](null, 0);
- }
- return this;
- }
- write(buf, enc) {
- if (typeof buf === 'string') {
- buf = Buffer.from(buf, enc);
- }
- if (this[_ended]) {
- this.emit('error', new Error('write() after end()'));
- return false;
- }
- if (this[_fd] === undefined || this[_writing] || this[_queue].length) {
- this[_queue].push(buf);
- this[_needDrain] = true;
- return false;
- }
- this[_writing] = true;
- this[_write](buf);
- return true;
- }
- [_write](buf) {
- fs_1.default.write(this[_fd], buf, 0, buf.length, this[_pos], (er, bw) => this[_onwrite](er, bw));
- }
- [_onwrite](er, bw) {
- if (er) {
- this[_onerror](er);
- }
- else {
- if (this[_pos] !== undefined && typeof bw === 'number') {
- this[_pos] += bw;
- }
- if (this[_queue].length) {
- this[_flush]();
- }
- else {
- this[_writing] = false;
- if (this[_ended] && !this[_finished]) {
- this[_finished] = true;
- this[_close]();
- this.emit('finish');
- }
- else if (this[_needDrain]) {
- this[_needDrain] = false;
- this.emit('drain');
- }
- }
- }
- }
- [_flush]() {
- if (this[_queue].length === 0) {
- if (this[_ended]) {
- this[_onwrite](null, 0);
- }
- }
- else if (this[_queue].length === 1) {
- this[_write](this[_queue].pop());
- }
- else {
- const iovec = this[_queue];
- this[_queue] = [];
- writev(this[_fd], iovec, this[_pos], (er, bw) => this[_onwrite](er, bw));
- }
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs_1.default.close(fd, er => er ? this.emit('error', er) : this.emit('close'));
- }
- }
-}
-exports.WriteStream = WriteStream;
-class WriteStreamSync extends WriteStream {
- [_open]() {
- let fd;
- // only wrap in a try{} block if we know we'll retry, to avoid
- // the rethrow obscuring the error's source frame in most cases.
- if (this[_defaultFlag] && this[_flags] === 'r+') {
- try {
- fd = fs_1.default.openSync(this[_path], this[_flags], this[_mode]);
- }
- catch (er) {
- if (er?.code === 'ENOENT') {
- this[_flags] = 'w';
- return this[_open]();
- }
- else {
- throw er;
- }
- }
- }
- else {
- fd = fs_1.default.openSync(this[_path], this[_flags], this[_mode]);
- }
- this[_onopen](null, fd);
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs_1.default.closeSync(fd);
- this.emit('close');
- }
- }
- [_write](buf) {
- // throw the original, but try to close if it fails
- let threw = true;
- try {
- this[_onwrite](null, fs_1.default.writeSync(this[_fd], buf, 0, buf.length, this[_pos]));
- threw = false;
- }
- finally {
- if (threw) {
- try {
- this[_close]();
- }
- catch {
- // ok error
- }
- }
- }
- }
-}
-exports.WriteStreamSync = WriteStreamSync;
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js.map b/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js.map
deleted file mode 100644
index caee495..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import EE from 'events'\nimport fs from 'fs'\nimport { Minipass } from 'minipass'\n\nconst writev = fs.writev\n\nconst _autoClose = Symbol('_autoClose')\nconst _close = Symbol('_close')\nconst _ended = Symbol('_ended')\nconst _fd = Symbol('_fd')\nconst _finished = Symbol('_finished')\nconst _flags = Symbol('_flags')\nconst _flush = Symbol('_flush')\nconst _handleChunk = Symbol('_handleChunk')\nconst _makeBuf = Symbol('_makeBuf')\nconst _mode = Symbol('_mode')\nconst _needDrain = Symbol('_needDrain')\nconst _onerror = Symbol('_onerror')\nconst _onopen = Symbol('_onopen')\nconst _onread = Symbol('_onread')\nconst _onwrite = Symbol('_onwrite')\nconst _open = Symbol('_open')\nconst _path = Symbol('_path')\nconst _pos = Symbol('_pos')\nconst _queue = Symbol('_queue')\nconst _read = Symbol('_read')\nconst _readSize = Symbol('_readSize')\nconst _reading = Symbol('_reading')\nconst _remain = Symbol('_remain')\nconst _size = Symbol('_size')\nconst _write = Symbol('_write')\nconst _writing = Symbol('_writing')\nconst _defaultFlag = Symbol('_defaultFlag')\nconst _errored = Symbol('_errored')\n\nexport type ReadStreamOptions =\n Minipass.Options & {\n fd?: number\n readSize?: number\n size?: number\n autoClose?: boolean\n }\n\nexport type ReadStreamEvents = Minipass.Events & {\n open: [fd: number]\n}\n\nexport class ReadStream extends Minipass<\n Minipass.ContiguousData,\n Buffer,\n ReadStreamEvents\n> {\n [_errored]: boolean = false;\n [_fd]?: number;\n [_path]: string;\n [_readSize]: number;\n [_reading]: boolean = false;\n [_size]: number;\n [_remain]: number;\n [_autoClose]: boolean\n\n constructor(path: string, opt: ReadStreamOptions) {\n opt = opt || {}\n super(opt)\n\n this.readable = true\n this.writable = false\n\n if (typeof path !== 'string') {\n throw new TypeError('path must be a string')\n }\n\n this[_errored] = false\n this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined\n this[_path] = path\n this[_readSize] = opt.readSize || 16 * 1024 * 1024\n this[_reading] = false\n this[_size] = typeof opt.size === 'number' ? opt.size : Infinity\n this[_remain] = this[_size]\n this[_autoClose] =\n typeof opt.autoClose === 'boolean' ? opt.autoClose : true\n\n if (typeof this[_fd] === 'number') {\n this[_read]()\n } else {\n this[_open]()\n }\n }\n\n get fd() {\n return this[_fd]\n }\n\n get path() {\n return this[_path]\n }\n\n //@ts-ignore\n write() {\n throw new TypeError('this is a readable stream')\n }\n\n //@ts-ignore\n end() {\n throw new TypeError('this is a readable stream')\n }\n\n [_open]() {\n fs.open(this[_path], 'r', (er, fd) => this[_onopen](er, fd))\n }\n\n [_onopen](er?: NodeJS.ErrnoException | null, fd?: number) {\n if (er) {\n this[_onerror](er)\n } else {\n this[_fd] = fd\n this.emit('open', fd as number)\n this[_read]()\n }\n }\n\n [_makeBuf]() {\n return Buffer.allocUnsafe(Math.min(this[_readSize], this[_remain]))\n }\n\n [_read]() {\n if (!this[_reading]) {\n this[_reading] = true\n const buf = this[_makeBuf]()\n /* c8 ignore start */\n if (buf.length === 0) {\n return process.nextTick(() => this[_onread](null, 0, buf))\n }\n /* c8 ignore stop */\n fs.read(this[_fd] as number, buf, 0, buf.length, null, (er, br, b) =>\n this[_onread](er, br, b),\n )\n }\n }\n\n [_onread](er?: NodeJS.ErrnoException | null, br?: number, buf?: Buffer) {\n this[_reading] = false\n if (er) {\n this[_onerror](er)\n } else if (this[_handleChunk](br as number, buf as Buffer)) {\n this[_read]()\n }\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.close(fd, er =>\n er ? this.emit('error', er) : this.emit('close'),\n )\n }\n }\n\n [_onerror](er: NodeJS.ErrnoException) {\n this[_reading] = true\n this[_close]()\n this.emit('error', er)\n }\n\n [_handleChunk](br: number, buf: Buffer) {\n let ret = false\n // no effect if infinite\n this[_remain] -= br\n if (br > 0) {\n ret = super.write(br < buf.length ? buf.subarray(0, br) : buf)\n }\n\n if (br === 0 || this[_remain] <= 0) {\n ret = false\n this[_close]()\n super.end()\n }\n\n return ret\n }\n\n emit(\n ev: Event,\n ...args: ReadStreamEvents[Event]\n ): boolean {\n switch (ev) {\n case 'prefinish':\n case 'finish':\n return false\n\n case 'drain':\n if (typeof this[_fd] === 'number') {\n this[_read]()\n }\n return false\n\n case 'error':\n if (this[_errored]) {\n return false\n }\n this[_errored] = true\n return super.emit(ev, ...args)\n\n default:\n return super.emit(ev, ...args)\n }\n }\n}\n\nexport class ReadStreamSync extends ReadStream {\n [_open]() {\n let threw = true\n try {\n this[_onopen](null, fs.openSync(this[_path], 'r'))\n threw = false\n } finally {\n if (threw) {\n this[_close]()\n }\n }\n }\n\n [_read]() {\n let threw = true\n try {\n if (!this[_reading]) {\n this[_reading] = true\n do {\n const buf = this[_makeBuf]()\n /* c8 ignore start */\n const br =\n buf.length === 0\n ? 0\n : fs.readSync(this[_fd] as number, buf, 0, buf.length, null)\n /* c8 ignore stop */\n if (!this[_handleChunk](br, buf)) {\n break\n }\n } while (true)\n this[_reading] = false\n }\n threw = false\n } finally {\n if (threw) {\n this[_close]()\n }\n }\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.closeSync(fd)\n this.emit('close')\n }\n }\n}\n\nexport type WriteStreamOptions = {\n fd?: number\n autoClose?: boolean\n mode?: number\n captureRejections?: boolean\n start?: number\n flags?: string\n}\n\nexport class WriteStream extends EE {\n readable: false = false\n writable: boolean = true;\n [_errored]: boolean = false;\n [_writing]: boolean = false;\n [_ended]: boolean = false;\n [_queue]: Buffer[] = [];\n [_needDrain]: boolean = false;\n [_path]: string;\n [_mode]: number;\n [_autoClose]: boolean;\n [_fd]?: number;\n [_defaultFlag]: boolean;\n [_flags]: string;\n [_finished]: boolean = false;\n [_pos]?: number\n\n constructor(path: string, opt: WriteStreamOptions) {\n opt = opt || {}\n super(opt)\n this[_path] = path\n this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined\n this[_mode] = opt.mode === undefined ? 0o666 : opt.mode\n this[_pos] = typeof opt.start === 'number' ? opt.start : undefined\n this[_autoClose] =\n typeof opt.autoClose === 'boolean' ? opt.autoClose : true\n\n // truncating makes no sense when writing into the middle\n const defaultFlag = this[_pos] !== undefined ? 'r+' : 'w'\n this[_defaultFlag] = opt.flags === undefined\n this[_flags] = opt.flags === undefined ? defaultFlag : opt.flags\n\n if (this[_fd] === undefined) {\n this[_open]()\n }\n }\n\n emit(ev: string, ...args: any[]) {\n if (ev === 'error') {\n if (this[_errored]) {\n return false\n }\n this[_errored] = true\n }\n return super.emit(ev, ...args)\n }\n\n get fd() {\n return this[_fd]\n }\n\n get path() {\n return this[_path]\n }\n\n [_onerror](er: NodeJS.ErrnoException) {\n this[_close]()\n this[_writing] = true\n this.emit('error', er)\n }\n\n [_open]() {\n fs.open(this[_path], this[_flags], this[_mode], (er, fd) =>\n this[_onopen](er, fd),\n )\n }\n\n [_onopen](er?: null | NodeJS.ErrnoException, fd?: number) {\n if (\n this[_defaultFlag] &&\n this[_flags] === 'r+' &&\n er &&\n er.code === 'ENOENT'\n ) {\n this[_flags] = 'w'\n this[_open]()\n } else if (er) {\n this[_onerror](er)\n } else {\n this[_fd] = fd\n this.emit('open', fd)\n if (!this[_writing]) {\n this[_flush]()\n }\n }\n }\n\n end(buf: string, enc?: BufferEncoding): this\n end(buf?: Buffer, enc?: undefined): this\n end(buf?: Buffer | string, enc?: BufferEncoding): this {\n if (buf) {\n //@ts-ignore\n this.write(buf, enc)\n }\n\n this[_ended] = true\n\n // synthetic after-write logic, where drain/finish live\n if (\n !this[_writing] &&\n !this[_queue].length &&\n typeof this[_fd] === 'number'\n ) {\n this[_onwrite](null, 0)\n }\n return this\n }\n\n write(buf: string, enc?: BufferEncoding): boolean\n write(buf: Buffer, enc?: undefined): boolean\n write(buf: Buffer | string, enc?: BufferEncoding): boolean {\n if (typeof buf === 'string') {\n buf = Buffer.from(buf, enc)\n }\n\n if (this[_ended]) {\n this.emit('error', new Error('write() after end()'))\n return false\n }\n\n if (this[_fd] === undefined || this[_writing] || this[_queue].length) {\n this[_queue].push(buf)\n this[_needDrain] = true\n return false\n }\n\n this[_writing] = true\n this[_write](buf)\n return true\n }\n\n [_write](buf: Buffer) {\n fs.write(\n this[_fd] as number,\n buf,\n 0,\n buf.length,\n this[_pos],\n (er, bw) => this[_onwrite](er, bw),\n )\n }\n\n [_onwrite](er?: null | NodeJS.ErrnoException, bw?: number) {\n if (er) {\n this[_onerror](er)\n } else {\n if (this[_pos] !== undefined && typeof bw === 'number') {\n this[_pos] += bw\n }\n if (this[_queue].length) {\n this[_flush]()\n } else {\n this[_writing] = false\n\n if (this[_ended] && !this[_finished]) {\n this[_finished] = true\n this[_close]()\n this.emit('finish')\n } else if (this[_needDrain]) {\n this[_needDrain] = false\n this.emit('drain')\n }\n }\n }\n }\n\n [_flush]() {\n if (this[_queue].length === 0) {\n if (this[_ended]) {\n this[_onwrite](null, 0)\n }\n } else if (this[_queue].length === 1) {\n this[_write](this[_queue].pop() as Buffer)\n } else {\n const iovec = this[_queue]\n this[_queue] = []\n writev(this[_fd] as number, iovec, this[_pos] as number, (er, bw) =>\n this[_onwrite](er, bw),\n )\n }\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.close(fd, er =>\n er ? this.emit('error', er) : this.emit('close'),\n )\n }\n }\n}\n\nexport class WriteStreamSync extends WriteStream {\n [_open](): void {\n let fd\n // only wrap in a try{} block if we know we'll retry, to avoid\n // the rethrow obscuring the error's source frame in most cases.\n if (this[_defaultFlag] && this[_flags] === 'r+') {\n try {\n fd = fs.openSync(this[_path], this[_flags], this[_mode])\n } catch (er) {\n if ((er as NodeJS.ErrnoException)?.code === 'ENOENT') {\n this[_flags] = 'w'\n return this[_open]()\n } else {\n throw er\n }\n }\n } else {\n fd = fs.openSync(this[_path], this[_flags], this[_mode])\n }\n\n this[_onopen](null, fd)\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.closeSync(fd)\n this.emit('close')\n }\n }\n\n [_write](buf: Buffer) {\n // throw the original, but try to close if it fails\n let threw = true\n try {\n this[_onwrite](\n null,\n fs.writeSync(this[_fd] as number, buf, 0, buf.length, this[_pos]),\n )\n threw = false\n } finally {\n if (threw) {\n try {\n this[_close]()\n } catch {\n // ok error\n }\n }\n }\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json b/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json
deleted file mode 100644
index 5bbefff..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "type": "commonjs"
-}
diff --git a/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts b/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts
deleted file mode 100644
index 54aebe1..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts
+++ /dev/null
@@ -1,118 +0,0 @@
-///
-///
-///
-import EE from 'events';
-import { Minipass } from 'minipass';
-declare const _autoClose: unique symbol;
-declare const _close: unique symbol;
-declare const _ended: unique symbol;
-declare const _fd: unique symbol;
-declare const _finished: unique symbol;
-declare const _flags: unique symbol;
-declare const _flush: unique symbol;
-declare const _handleChunk: unique symbol;
-declare const _makeBuf: unique symbol;
-declare const _mode: unique symbol;
-declare const _needDrain: unique symbol;
-declare const _onerror: unique symbol;
-declare const _onopen: unique symbol;
-declare const _onread: unique symbol;
-declare const _onwrite: unique symbol;
-declare const _open: unique symbol;
-declare const _path: unique symbol;
-declare const _pos: unique symbol;
-declare const _queue: unique symbol;
-declare const _read: unique symbol;
-declare const _readSize: unique symbol;
-declare const _reading: unique symbol;
-declare const _remain: unique symbol;
-declare const _size: unique symbol;
-declare const _write: unique symbol;
-declare const _writing: unique symbol;
-declare const _defaultFlag: unique symbol;
-declare const _errored: unique symbol;
-export type ReadStreamOptions = Minipass.Options & {
- fd?: number;
- readSize?: number;
- size?: number;
- autoClose?: boolean;
-};
-export type ReadStreamEvents = Minipass.Events & {
- open: [fd: number];
-};
-export declare class ReadStream extends Minipass {
- [_errored]: boolean;
- [_fd]?: number;
- [_path]: string;
- [_readSize]: number;
- [_reading]: boolean;
- [_size]: number;
- [_remain]: number;
- [_autoClose]: boolean;
- constructor(path: string, opt: ReadStreamOptions);
- get fd(): number | undefined;
- get path(): string;
- write(): void;
- end(): void;
- [_open](): void;
- [_onopen](er?: NodeJS.ErrnoException | null, fd?: number): void;
- [_makeBuf](): Buffer;
- [_read](): void;
- [_onread](er?: NodeJS.ErrnoException | null, br?: number, buf?: Buffer): void;
- [_close](): void;
- [_onerror](er: NodeJS.ErrnoException): void;
- [_handleChunk](br: number, buf: Buffer): boolean;
- emit(ev: Event, ...args: ReadStreamEvents[Event]): boolean;
-}
-export declare class ReadStreamSync extends ReadStream {
- [_open](): void;
- [_read](): void;
- [_close](): void;
-}
-export type WriteStreamOptions = {
- fd?: number;
- autoClose?: boolean;
- mode?: number;
- captureRejections?: boolean;
- start?: number;
- flags?: string;
-};
-export declare class WriteStream extends EE {
- readable: false;
- writable: boolean;
- [_errored]: boolean;
- [_writing]: boolean;
- [_ended]: boolean;
- [_queue]: Buffer[];
- [_needDrain]: boolean;
- [_path]: string;
- [_mode]: number;
- [_autoClose]: boolean;
- [_fd]?: number;
- [_defaultFlag]: boolean;
- [_flags]: string;
- [_finished]: boolean;
- [_pos]?: number;
- constructor(path: string, opt: WriteStreamOptions);
- emit(ev: string, ...args: any[]): boolean;
- get fd(): number | undefined;
- get path(): string;
- [_onerror](er: NodeJS.ErrnoException): void;
- [_open](): void;
- [_onopen](er?: null | NodeJS.ErrnoException, fd?: number): void;
- end(buf: string, enc?: BufferEncoding): this;
- end(buf?: Buffer, enc?: undefined): this;
- write(buf: string, enc?: BufferEncoding): boolean;
- write(buf: Buffer, enc?: undefined): boolean;
- [_write](buf: Buffer): void;
- [_onwrite](er?: null | NodeJS.ErrnoException, bw?: number): void;
- [_flush](): void;
- [_close](): void;
-}
-export declare class WriteStreamSync extends WriteStream {
- [_open](): void;
- [_close](): void;
- [_write](buf: Buffer): void;
-}
-export {};
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts.map b/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts.map
deleted file mode 100644
index 3e2c703..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/esm/index.js b/node_modules/@isaacs/fs-minipass/dist/esm/index.js
deleted file mode 100644
index 287a0f6..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/esm/index.js
+++ /dev/null
@@ -1,420 +0,0 @@
-import EE from 'events';
-import fs from 'fs';
-import { Minipass } from 'minipass';
-const writev = fs.writev;
-const _autoClose = Symbol('_autoClose');
-const _close = Symbol('_close');
-const _ended = Symbol('_ended');
-const _fd = Symbol('_fd');
-const _finished = Symbol('_finished');
-const _flags = Symbol('_flags');
-const _flush = Symbol('_flush');
-const _handleChunk = Symbol('_handleChunk');
-const _makeBuf = Symbol('_makeBuf');
-const _mode = Symbol('_mode');
-const _needDrain = Symbol('_needDrain');
-const _onerror = Symbol('_onerror');
-const _onopen = Symbol('_onopen');
-const _onread = Symbol('_onread');
-const _onwrite = Symbol('_onwrite');
-const _open = Symbol('_open');
-const _path = Symbol('_path');
-const _pos = Symbol('_pos');
-const _queue = Symbol('_queue');
-const _read = Symbol('_read');
-const _readSize = Symbol('_readSize');
-const _reading = Symbol('_reading');
-const _remain = Symbol('_remain');
-const _size = Symbol('_size');
-const _write = Symbol('_write');
-const _writing = Symbol('_writing');
-const _defaultFlag = Symbol('_defaultFlag');
-const _errored = Symbol('_errored');
-export class ReadStream extends Minipass {
- [_errored] = false;
- [_fd];
- [_path];
- [_readSize];
- [_reading] = false;
- [_size];
- [_remain];
- [_autoClose];
- constructor(path, opt) {
- opt = opt || {};
- super(opt);
- this.readable = true;
- this.writable = false;
- if (typeof path !== 'string') {
- throw new TypeError('path must be a string');
- }
- this[_errored] = false;
- this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined;
- this[_path] = path;
- this[_readSize] = opt.readSize || 16 * 1024 * 1024;
- this[_reading] = false;
- this[_size] = typeof opt.size === 'number' ? opt.size : Infinity;
- this[_remain] = this[_size];
- this[_autoClose] =
- typeof opt.autoClose === 'boolean' ? opt.autoClose : true;
- if (typeof this[_fd] === 'number') {
- this[_read]();
- }
- else {
- this[_open]();
- }
- }
- get fd() {
- return this[_fd];
- }
- get path() {
- return this[_path];
- }
- //@ts-ignore
- write() {
- throw new TypeError('this is a readable stream');
- }
- //@ts-ignore
- end() {
- throw new TypeError('this is a readable stream');
- }
- [_open]() {
- fs.open(this[_path], 'r', (er, fd) => this[_onopen](er, fd));
- }
- [_onopen](er, fd) {
- if (er) {
- this[_onerror](er);
- }
- else {
- this[_fd] = fd;
- this.emit('open', fd);
- this[_read]();
- }
- }
- [_makeBuf]() {
- return Buffer.allocUnsafe(Math.min(this[_readSize], this[_remain]));
- }
- [_read]() {
- if (!this[_reading]) {
- this[_reading] = true;
- const buf = this[_makeBuf]();
- /* c8 ignore start */
- if (buf.length === 0) {
- return process.nextTick(() => this[_onread](null, 0, buf));
- }
- /* c8 ignore stop */
- fs.read(this[_fd], buf, 0, buf.length, null, (er, br, b) => this[_onread](er, br, b));
- }
- }
- [_onread](er, br, buf) {
- this[_reading] = false;
- if (er) {
- this[_onerror](er);
- }
- else if (this[_handleChunk](br, buf)) {
- this[_read]();
- }
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs.close(fd, er => er ? this.emit('error', er) : this.emit('close'));
- }
- }
- [_onerror](er) {
- this[_reading] = true;
- this[_close]();
- this.emit('error', er);
- }
- [_handleChunk](br, buf) {
- let ret = false;
- // no effect if infinite
- this[_remain] -= br;
- if (br > 0) {
- ret = super.write(br < buf.length ? buf.subarray(0, br) : buf);
- }
- if (br === 0 || this[_remain] <= 0) {
- ret = false;
- this[_close]();
- super.end();
- }
- return ret;
- }
- emit(ev, ...args) {
- switch (ev) {
- case 'prefinish':
- case 'finish':
- return false;
- case 'drain':
- if (typeof this[_fd] === 'number') {
- this[_read]();
- }
- return false;
- case 'error':
- if (this[_errored]) {
- return false;
- }
- this[_errored] = true;
- return super.emit(ev, ...args);
- default:
- return super.emit(ev, ...args);
- }
- }
-}
-export class ReadStreamSync extends ReadStream {
- [_open]() {
- let threw = true;
- try {
- this[_onopen](null, fs.openSync(this[_path], 'r'));
- threw = false;
- }
- finally {
- if (threw) {
- this[_close]();
- }
- }
- }
- [_read]() {
- let threw = true;
- try {
- if (!this[_reading]) {
- this[_reading] = true;
- do {
- const buf = this[_makeBuf]();
- /* c8 ignore start */
- const br = buf.length === 0
- ? 0
- : fs.readSync(this[_fd], buf, 0, buf.length, null);
- /* c8 ignore stop */
- if (!this[_handleChunk](br, buf)) {
- break;
- }
- } while (true);
- this[_reading] = false;
- }
- threw = false;
- }
- finally {
- if (threw) {
- this[_close]();
- }
- }
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs.closeSync(fd);
- this.emit('close');
- }
- }
-}
-export class WriteStream extends EE {
- readable = false;
- writable = true;
- [_errored] = false;
- [_writing] = false;
- [_ended] = false;
- [_queue] = [];
- [_needDrain] = false;
- [_path];
- [_mode];
- [_autoClose];
- [_fd];
- [_defaultFlag];
- [_flags];
- [_finished] = false;
- [_pos];
- constructor(path, opt) {
- opt = opt || {};
- super(opt);
- this[_path] = path;
- this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined;
- this[_mode] = opt.mode === undefined ? 0o666 : opt.mode;
- this[_pos] = typeof opt.start === 'number' ? opt.start : undefined;
- this[_autoClose] =
- typeof opt.autoClose === 'boolean' ? opt.autoClose : true;
- // truncating makes no sense when writing into the middle
- const defaultFlag = this[_pos] !== undefined ? 'r+' : 'w';
- this[_defaultFlag] = opt.flags === undefined;
- this[_flags] = opt.flags === undefined ? defaultFlag : opt.flags;
- if (this[_fd] === undefined) {
- this[_open]();
- }
- }
- emit(ev, ...args) {
- if (ev === 'error') {
- if (this[_errored]) {
- return false;
- }
- this[_errored] = true;
- }
- return super.emit(ev, ...args);
- }
- get fd() {
- return this[_fd];
- }
- get path() {
- return this[_path];
- }
- [_onerror](er) {
- this[_close]();
- this[_writing] = true;
- this.emit('error', er);
- }
- [_open]() {
- fs.open(this[_path], this[_flags], this[_mode], (er, fd) => this[_onopen](er, fd));
- }
- [_onopen](er, fd) {
- if (this[_defaultFlag] &&
- this[_flags] === 'r+' &&
- er &&
- er.code === 'ENOENT') {
- this[_flags] = 'w';
- this[_open]();
- }
- else if (er) {
- this[_onerror](er);
- }
- else {
- this[_fd] = fd;
- this.emit('open', fd);
- if (!this[_writing]) {
- this[_flush]();
- }
- }
- }
- end(buf, enc) {
- if (buf) {
- //@ts-ignore
- this.write(buf, enc);
- }
- this[_ended] = true;
- // synthetic after-write logic, where drain/finish live
- if (!this[_writing] &&
- !this[_queue].length &&
- typeof this[_fd] === 'number') {
- this[_onwrite](null, 0);
- }
- return this;
- }
- write(buf, enc) {
- if (typeof buf === 'string') {
- buf = Buffer.from(buf, enc);
- }
- if (this[_ended]) {
- this.emit('error', new Error('write() after end()'));
- return false;
- }
- if (this[_fd] === undefined || this[_writing] || this[_queue].length) {
- this[_queue].push(buf);
- this[_needDrain] = true;
- return false;
- }
- this[_writing] = true;
- this[_write](buf);
- return true;
- }
- [_write](buf) {
- fs.write(this[_fd], buf, 0, buf.length, this[_pos], (er, bw) => this[_onwrite](er, bw));
- }
- [_onwrite](er, bw) {
- if (er) {
- this[_onerror](er);
- }
- else {
- if (this[_pos] !== undefined && typeof bw === 'number') {
- this[_pos] += bw;
- }
- if (this[_queue].length) {
- this[_flush]();
- }
- else {
- this[_writing] = false;
- if (this[_ended] && !this[_finished]) {
- this[_finished] = true;
- this[_close]();
- this.emit('finish');
- }
- else if (this[_needDrain]) {
- this[_needDrain] = false;
- this.emit('drain');
- }
- }
- }
- }
- [_flush]() {
- if (this[_queue].length === 0) {
- if (this[_ended]) {
- this[_onwrite](null, 0);
- }
- }
- else if (this[_queue].length === 1) {
- this[_write](this[_queue].pop());
- }
- else {
- const iovec = this[_queue];
- this[_queue] = [];
- writev(this[_fd], iovec, this[_pos], (er, bw) => this[_onwrite](er, bw));
- }
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs.close(fd, er => er ? this.emit('error', er) : this.emit('close'));
- }
- }
-}
-export class WriteStreamSync extends WriteStream {
- [_open]() {
- let fd;
- // only wrap in a try{} block if we know we'll retry, to avoid
- // the rethrow obscuring the error's source frame in most cases.
- if (this[_defaultFlag] && this[_flags] === 'r+') {
- try {
- fd = fs.openSync(this[_path], this[_flags], this[_mode]);
- }
- catch (er) {
- if (er?.code === 'ENOENT') {
- this[_flags] = 'w';
- return this[_open]();
- }
- else {
- throw er;
- }
- }
- }
- else {
- fd = fs.openSync(this[_path], this[_flags], this[_mode]);
- }
- this[_onopen](null, fd);
- }
- [_close]() {
- if (this[_autoClose] && typeof this[_fd] === 'number') {
- const fd = this[_fd];
- this[_fd] = undefined;
- fs.closeSync(fd);
- this.emit('close');
- }
- }
- [_write](buf) {
- // throw the original, but try to close if it fails
- let threw = true;
- try {
- this[_onwrite](null, fs.writeSync(this[_fd], buf, 0, buf.length, this[_pos]));
- threw = false;
- }
- finally {
- if (threw) {
- try {
- this[_close]();
- }
- catch {
- // ok error
- }
- }
- }
- }
-}
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/esm/index.js.map b/node_modules/@isaacs/fs-minipass/dist/esm/index.js.map
deleted file mode 100644
index 2ef8b14..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/esm/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import EE from 'events'\nimport fs from 'fs'\nimport { Minipass } from 'minipass'\n\nconst writev = fs.writev\n\nconst _autoClose = Symbol('_autoClose')\nconst _close = Symbol('_close')\nconst _ended = Symbol('_ended')\nconst _fd = Symbol('_fd')\nconst _finished = Symbol('_finished')\nconst _flags = Symbol('_flags')\nconst _flush = Symbol('_flush')\nconst _handleChunk = Symbol('_handleChunk')\nconst _makeBuf = Symbol('_makeBuf')\nconst _mode = Symbol('_mode')\nconst _needDrain = Symbol('_needDrain')\nconst _onerror = Symbol('_onerror')\nconst _onopen = Symbol('_onopen')\nconst _onread = Symbol('_onread')\nconst _onwrite = Symbol('_onwrite')\nconst _open = Symbol('_open')\nconst _path = Symbol('_path')\nconst _pos = Symbol('_pos')\nconst _queue = Symbol('_queue')\nconst _read = Symbol('_read')\nconst _readSize = Symbol('_readSize')\nconst _reading = Symbol('_reading')\nconst _remain = Symbol('_remain')\nconst _size = Symbol('_size')\nconst _write = Symbol('_write')\nconst _writing = Symbol('_writing')\nconst _defaultFlag = Symbol('_defaultFlag')\nconst _errored = Symbol('_errored')\n\nexport type ReadStreamOptions =\n Minipass.Options & {\n fd?: number\n readSize?: number\n size?: number\n autoClose?: boolean\n }\n\nexport type ReadStreamEvents = Minipass.Events & {\n open: [fd: number]\n}\n\nexport class ReadStream extends Minipass<\n Minipass.ContiguousData,\n Buffer,\n ReadStreamEvents\n> {\n [_errored]: boolean = false;\n [_fd]?: number;\n [_path]: string;\n [_readSize]: number;\n [_reading]: boolean = false;\n [_size]: number;\n [_remain]: number;\n [_autoClose]: boolean\n\n constructor(path: string, opt: ReadStreamOptions) {\n opt = opt || {}\n super(opt)\n\n this.readable = true\n this.writable = false\n\n if (typeof path !== 'string') {\n throw new TypeError('path must be a string')\n }\n\n this[_errored] = false\n this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined\n this[_path] = path\n this[_readSize] = opt.readSize || 16 * 1024 * 1024\n this[_reading] = false\n this[_size] = typeof opt.size === 'number' ? opt.size : Infinity\n this[_remain] = this[_size]\n this[_autoClose] =\n typeof opt.autoClose === 'boolean' ? opt.autoClose : true\n\n if (typeof this[_fd] === 'number') {\n this[_read]()\n } else {\n this[_open]()\n }\n }\n\n get fd() {\n return this[_fd]\n }\n\n get path() {\n return this[_path]\n }\n\n //@ts-ignore\n write() {\n throw new TypeError('this is a readable stream')\n }\n\n //@ts-ignore\n end() {\n throw new TypeError('this is a readable stream')\n }\n\n [_open]() {\n fs.open(this[_path], 'r', (er, fd) => this[_onopen](er, fd))\n }\n\n [_onopen](er?: NodeJS.ErrnoException | null, fd?: number) {\n if (er) {\n this[_onerror](er)\n } else {\n this[_fd] = fd\n this.emit('open', fd as number)\n this[_read]()\n }\n }\n\n [_makeBuf]() {\n return Buffer.allocUnsafe(Math.min(this[_readSize], this[_remain]))\n }\n\n [_read]() {\n if (!this[_reading]) {\n this[_reading] = true\n const buf = this[_makeBuf]()\n /* c8 ignore start */\n if (buf.length === 0) {\n return process.nextTick(() => this[_onread](null, 0, buf))\n }\n /* c8 ignore stop */\n fs.read(this[_fd] as number, buf, 0, buf.length, null, (er, br, b) =>\n this[_onread](er, br, b),\n )\n }\n }\n\n [_onread](er?: NodeJS.ErrnoException | null, br?: number, buf?: Buffer) {\n this[_reading] = false\n if (er) {\n this[_onerror](er)\n } else if (this[_handleChunk](br as number, buf as Buffer)) {\n this[_read]()\n }\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.close(fd, er =>\n er ? this.emit('error', er) : this.emit('close'),\n )\n }\n }\n\n [_onerror](er: NodeJS.ErrnoException) {\n this[_reading] = true\n this[_close]()\n this.emit('error', er)\n }\n\n [_handleChunk](br: number, buf: Buffer) {\n let ret = false\n // no effect if infinite\n this[_remain] -= br\n if (br > 0) {\n ret = super.write(br < buf.length ? buf.subarray(0, br) : buf)\n }\n\n if (br === 0 || this[_remain] <= 0) {\n ret = false\n this[_close]()\n super.end()\n }\n\n return ret\n }\n\n emit(\n ev: Event,\n ...args: ReadStreamEvents[Event]\n ): boolean {\n switch (ev) {\n case 'prefinish':\n case 'finish':\n return false\n\n case 'drain':\n if (typeof this[_fd] === 'number') {\n this[_read]()\n }\n return false\n\n case 'error':\n if (this[_errored]) {\n return false\n }\n this[_errored] = true\n return super.emit(ev, ...args)\n\n default:\n return super.emit(ev, ...args)\n }\n }\n}\n\nexport class ReadStreamSync extends ReadStream {\n [_open]() {\n let threw = true\n try {\n this[_onopen](null, fs.openSync(this[_path], 'r'))\n threw = false\n } finally {\n if (threw) {\n this[_close]()\n }\n }\n }\n\n [_read]() {\n let threw = true\n try {\n if (!this[_reading]) {\n this[_reading] = true\n do {\n const buf = this[_makeBuf]()\n /* c8 ignore start */\n const br =\n buf.length === 0\n ? 0\n : fs.readSync(this[_fd] as number, buf, 0, buf.length, null)\n /* c8 ignore stop */\n if (!this[_handleChunk](br, buf)) {\n break\n }\n } while (true)\n this[_reading] = false\n }\n threw = false\n } finally {\n if (threw) {\n this[_close]()\n }\n }\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.closeSync(fd)\n this.emit('close')\n }\n }\n}\n\nexport type WriteStreamOptions = {\n fd?: number\n autoClose?: boolean\n mode?: number\n captureRejections?: boolean\n start?: number\n flags?: string\n}\n\nexport class WriteStream extends EE {\n readable: false = false\n writable: boolean = true;\n [_errored]: boolean = false;\n [_writing]: boolean = false;\n [_ended]: boolean = false;\n [_queue]: Buffer[] = [];\n [_needDrain]: boolean = false;\n [_path]: string;\n [_mode]: number;\n [_autoClose]: boolean;\n [_fd]?: number;\n [_defaultFlag]: boolean;\n [_flags]: string;\n [_finished]: boolean = false;\n [_pos]?: number\n\n constructor(path: string, opt: WriteStreamOptions) {\n opt = opt || {}\n super(opt)\n this[_path] = path\n this[_fd] = typeof opt.fd === 'number' ? opt.fd : undefined\n this[_mode] = opt.mode === undefined ? 0o666 : opt.mode\n this[_pos] = typeof opt.start === 'number' ? opt.start : undefined\n this[_autoClose] =\n typeof opt.autoClose === 'boolean' ? opt.autoClose : true\n\n // truncating makes no sense when writing into the middle\n const defaultFlag = this[_pos] !== undefined ? 'r+' : 'w'\n this[_defaultFlag] = opt.flags === undefined\n this[_flags] = opt.flags === undefined ? defaultFlag : opt.flags\n\n if (this[_fd] === undefined) {\n this[_open]()\n }\n }\n\n emit(ev: string, ...args: any[]) {\n if (ev === 'error') {\n if (this[_errored]) {\n return false\n }\n this[_errored] = true\n }\n return super.emit(ev, ...args)\n }\n\n get fd() {\n return this[_fd]\n }\n\n get path() {\n return this[_path]\n }\n\n [_onerror](er: NodeJS.ErrnoException) {\n this[_close]()\n this[_writing] = true\n this.emit('error', er)\n }\n\n [_open]() {\n fs.open(this[_path], this[_flags], this[_mode], (er, fd) =>\n this[_onopen](er, fd),\n )\n }\n\n [_onopen](er?: null | NodeJS.ErrnoException, fd?: number) {\n if (\n this[_defaultFlag] &&\n this[_flags] === 'r+' &&\n er &&\n er.code === 'ENOENT'\n ) {\n this[_flags] = 'w'\n this[_open]()\n } else if (er) {\n this[_onerror](er)\n } else {\n this[_fd] = fd\n this.emit('open', fd)\n if (!this[_writing]) {\n this[_flush]()\n }\n }\n }\n\n end(buf: string, enc?: BufferEncoding): this\n end(buf?: Buffer, enc?: undefined): this\n end(buf?: Buffer | string, enc?: BufferEncoding): this {\n if (buf) {\n //@ts-ignore\n this.write(buf, enc)\n }\n\n this[_ended] = true\n\n // synthetic after-write logic, where drain/finish live\n if (\n !this[_writing] &&\n !this[_queue].length &&\n typeof this[_fd] === 'number'\n ) {\n this[_onwrite](null, 0)\n }\n return this\n }\n\n write(buf: string, enc?: BufferEncoding): boolean\n write(buf: Buffer, enc?: undefined): boolean\n write(buf: Buffer | string, enc?: BufferEncoding): boolean {\n if (typeof buf === 'string') {\n buf = Buffer.from(buf, enc)\n }\n\n if (this[_ended]) {\n this.emit('error', new Error('write() after end()'))\n return false\n }\n\n if (this[_fd] === undefined || this[_writing] || this[_queue].length) {\n this[_queue].push(buf)\n this[_needDrain] = true\n return false\n }\n\n this[_writing] = true\n this[_write](buf)\n return true\n }\n\n [_write](buf: Buffer) {\n fs.write(\n this[_fd] as number,\n buf,\n 0,\n buf.length,\n this[_pos],\n (er, bw) => this[_onwrite](er, bw),\n )\n }\n\n [_onwrite](er?: null | NodeJS.ErrnoException, bw?: number) {\n if (er) {\n this[_onerror](er)\n } else {\n if (this[_pos] !== undefined && typeof bw === 'number') {\n this[_pos] += bw\n }\n if (this[_queue].length) {\n this[_flush]()\n } else {\n this[_writing] = false\n\n if (this[_ended] && !this[_finished]) {\n this[_finished] = true\n this[_close]()\n this.emit('finish')\n } else if (this[_needDrain]) {\n this[_needDrain] = false\n this.emit('drain')\n }\n }\n }\n }\n\n [_flush]() {\n if (this[_queue].length === 0) {\n if (this[_ended]) {\n this[_onwrite](null, 0)\n }\n } else if (this[_queue].length === 1) {\n this[_write](this[_queue].pop() as Buffer)\n } else {\n const iovec = this[_queue]\n this[_queue] = []\n writev(this[_fd] as number, iovec, this[_pos] as number, (er, bw) =>\n this[_onwrite](er, bw),\n )\n }\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.close(fd, er =>\n er ? this.emit('error', er) : this.emit('close'),\n )\n }\n }\n}\n\nexport class WriteStreamSync extends WriteStream {\n [_open](): void {\n let fd\n // only wrap in a try{} block if we know we'll retry, to avoid\n // the rethrow obscuring the error's source frame in most cases.\n if (this[_defaultFlag] && this[_flags] === 'r+') {\n try {\n fd = fs.openSync(this[_path], this[_flags], this[_mode])\n } catch (er) {\n if ((er as NodeJS.ErrnoException)?.code === 'ENOENT') {\n this[_flags] = 'w'\n return this[_open]()\n } else {\n throw er\n }\n }\n } else {\n fd = fs.openSync(this[_path], this[_flags], this[_mode])\n }\n\n this[_onopen](null, fd)\n }\n\n [_close]() {\n if (this[_autoClose] && typeof this[_fd] === 'number') {\n const fd = this[_fd]\n this[_fd] = undefined\n fs.closeSync(fd)\n this.emit('close')\n }\n }\n\n [_write](buf: Buffer) {\n // throw the original, but try to close if it fails\n let threw = true\n try {\n this[_onwrite](\n null,\n fs.writeSync(this[_fd] as number, buf, 0, buf.length, this[_pos]),\n )\n threw = false\n } finally {\n if (threw) {\n try {\n this[_close]()\n } catch {\n // ok error\n }\n }\n }\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/@isaacs/fs-minipass/dist/esm/package.json b/node_modules/@isaacs/fs-minipass/dist/esm/package.json
deleted file mode 100644
index 3dbc1ca..0000000
--- a/node_modules/@isaacs/fs-minipass/dist/esm/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "type": "module"
-}
diff --git a/node_modules/@isaacs/fs-minipass/package.json b/node_modules/@isaacs/fs-minipass/package.json
deleted file mode 100644
index cc4576c..0000000
--- a/node_modules/@isaacs/fs-minipass/package.json
+++ /dev/null
@@ -1,72 +0,0 @@
-{
- "name": "@isaacs/fs-minipass",
- "version": "4.0.1",
- "main": "./dist/commonjs/index.js",
- "scripts": {
- "prepare": "tshy",
- "pretest": "npm run prepare",
- "test": "tap",
- "preversion": "npm test",
- "postversion": "npm publish",
- "prepublishOnly": "git push origin --follow-tags",
- "format": "prettier --write . --loglevel warn",
- "typedoc": "typedoc --tsconfig .tshy/esm.json ./src/*.ts"
- },
- "keywords": [],
- "author": "Isaac Z. Schlueter",
- "license": "ISC",
- "repository": {
- "type": "git",
- "url": "https://github.com/npm/fs-minipass.git"
- },
- "description": "fs read and write streams based on minipass",
- "dependencies": {
- "minipass": "^7.0.4"
- },
- "devDependencies": {
- "@types/node": "^20.11.30",
- "mutate-fs": "^2.1.1",
- "prettier": "^3.2.5",
- "tap": "^18.7.1",
- "tshy": "^1.12.0",
- "typedoc": "^0.25.12"
- },
- "files": [
- "dist"
- ],
- "engines": {
- "node": ">=18.0.0"
- },
- "tshy": {
- "exports": {
- "./package.json": "./package.json",
- ".": "./src/index.ts"
- }
- },
- "exports": {
- "./package.json": "./package.json",
- ".": {
- "import": {
- "types": "./dist/esm/index.d.ts",
- "default": "./dist/esm/index.js"
- },
- "require": {
- "types": "./dist/commonjs/index.d.ts",
- "default": "./dist/commonjs/index.js"
- }
- }
- },
- "types": "./dist/commonjs/index.d.ts",
- "type": "module",
- "prettier": {
- "semi": false,
- "printWidth": 75,
- "tabWidth": 2,
- "useTabs": false,
- "singleQuote": true,
- "jsxSingleQuote": false,
- "bracketSameLine": true,
- "arrowParens": "avoid",
- "endOfLine": "lf"
- }
-}
diff --git a/node_modules/agent-base/LICENSE b/node_modules/agent-base/LICENSE
deleted file mode 100644
index 008728c..0000000
--- a/node_modules/agent-base/LICENSE
+++ /dev/null
@@ -1,22 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2013 Nathan Rajlich
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/node_modules/agent-base/README.md b/node_modules/agent-base/README.md
deleted file mode 100644
index b8a86b9..0000000
--- a/node_modules/agent-base/README.md
+++ /dev/null
@@ -1,69 +0,0 @@
-agent-base
-==========
-### Turn a function into an [`http.Agent`][http.Agent] instance
-
-This module is a thin wrapper around the base `http.Agent` class.
-
-It provides an abstract class that must define a `connect()` function,
-which is responsible for creating the underlying socket that the HTTP
-client requests will use.
-
-The `connect()` function may return an arbitrary `Duplex` stream, or
-another `http.Agent` instance to delegate the request to, and may be
-asynchronous (by defining an `async` function).
-
-Instances of this agent can be used with the `http` and `https`
-modules. To differentiate, the options parameter in the `connect()`
-function includes a `secureEndpoint` property, which can be checked
-to determine what type of socket should be returned.
-
-#### Some subclasses:
-
-Here are some more interesting uses of `agent-base`.
-Send a pull request to list yours!
-
- * [`http-proxy-agent`][http-proxy-agent]: An HTTP(s) proxy `http.Agent` implementation for HTTP endpoints
- * [`https-proxy-agent`][https-proxy-agent]: An HTTP(s) proxy `http.Agent` implementation for HTTPS endpoints
- * [`pac-proxy-agent`][pac-proxy-agent]: A PAC file proxy `http.Agent` implementation for HTTP and HTTPS
- * [`socks-proxy-agent`][socks-proxy-agent]: A SOCKS proxy `http.Agent` implementation for HTTP and HTTPS
-
-Example
--------
-
-Here's a minimal example that creates a new `net.Socket` or `tls.Socket`
-based on the `secureEndpoint` property. This agent can be used with both
-the `http` and `https` modules.
-
-```ts
-import * as net from 'net';
-import * as tls from 'tls';
-import * as http from 'http';
-import { Agent } from 'agent-base';
-
-class MyAgent extends Agent {
- connect(req, opts) {
- // `secureEndpoint` is true when using the "https" module
- if (opts.secureEndpoint) {
- return tls.connect(opts);
- } else {
- return net.connect(opts);
- }
- }
-});
-
-// Keep alive enabled means that `connect()` will only be
-// invoked when a new connection needs to be created
-const agent = new MyAgent({ keepAlive: true });
-
-// Pass the `agent` option when creating the HTTP request
-http.get('http://nodejs.org/api/', { agent }, (res) => {
- console.log('"response" event!', res.headers);
- res.pipe(process.stdout);
-});
-```
-
-[http-proxy-agent]: ../http-proxy-agent
-[https-proxy-agent]: ../https-proxy-agent
-[pac-proxy-agent]: ../pac-proxy-agent
-[socks-proxy-agent]: ../socks-proxy-agent
-[http.Agent]: https://nodejs.org/api/http.html#http_class_http_agent
diff --git a/node_modules/agent-base/dist/helpers.d.ts b/node_modules/agent-base/dist/helpers.d.ts
deleted file mode 100644
index b468f23..0000000
--- a/node_modules/agent-base/dist/helpers.d.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-///
-///
-///
-///
-///
-import * as http from 'http';
-import * as https from 'https';
-import type { Readable } from 'stream';
-export type ThenableRequest = http.ClientRequest & {
- then: Promise['then'];
-};
-export declare function toBuffer(stream: Readable): Promise;
-export declare function json(stream: Readable): Promise;
-export declare function req(url: string | URL, opts?: https.RequestOptions): ThenableRequest;
-//# sourceMappingURL=helpers.d.ts.map
\ No newline at end of file
diff --git a/node_modules/agent-base/dist/helpers.d.ts.map b/node_modules/agent-base/dist/helpers.d.ts.map
deleted file mode 100644
index 9479c9a..0000000
--- a/node_modules/agent-base/dist/helpers.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEvC,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,GAAG;IAClD,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;CAC5C,CAAC;AAEF,wBAAsB,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAQhE;AAGD,wBAAsB,IAAI,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAUzD;AAED,wBAAgB,GAAG,CAClB,GAAG,EAAE,MAAM,GAAG,GAAG,EACjB,IAAI,GAAE,KAAK,CAAC,cAAmB,GAC7B,eAAe,CAcjB"}
\ No newline at end of file
diff --git a/node_modules/agent-base/dist/helpers.js b/node_modules/agent-base/dist/helpers.js
deleted file mode 100644
index ef3f920..0000000
--- a/node_modules/agent-base/dist/helpers.js
+++ /dev/null
@@ -1,66 +0,0 @@
-"use strict";
-var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- var desc = Object.getOwnPropertyDescriptor(m, k);
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
- desc = { enumerable: true, get: function() { return m[k]; } };
- }
- Object.defineProperty(o, k2, desc);
-}) : (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- o[k2] = m[k];
-}));
-var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
- Object.defineProperty(o, "default", { enumerable: true, value: v });
-}) : function(o, v) {
- o["default"] = v;
-});
-var __importStar = (this && this.__importStar) || function (mod) {
- if (mod && mod.__esModule) return mod;
- var result = {};
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
- __setModuleDefault(result, mod);
- return result;
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.req = exports.json = exports.toBuffer = void 0;
-const http = __importStar(require("http"));
-const https = __importStar(require("https"));
-async function toBuffer(stream) {
- let length = 0;
- const chunks = [];
- for await (const chunk of stream) {
- length += chunk.length;
- chunks.push(chunk);
- }
- return Buffer.concat(chunks, length);
-}
-exports.toBuffer = toBuffer;
-// eslint-disable-next-line @typescript-eslint/no-explicit-any
-async function json(stream) {
- const buf = await toBuffer(stream);
- const str = buf.toString('utf8');
- try {
- return JSON.parse(str);
- }
- catch (_err) {
- const err = _err;
- err.message += ` (input: ${str})`;
- throw err;
- }
-}
-exports.json = json;
-function req(url, opts = {}) {
- const href = typeof url === 'string' ? url : url.href;
- const req = (href.startsWith('https:') ? https : http).request(url, opts);
- const promise = new Promise((resolve, reject) => {
- req
- .once('response', resolve)
- .once('error', reject)
- .end();
- });
- req.then = promise.then.bind(promise);
- return req;
-}
-exports.req = req;
-//# sourceMappingURL=helpers.js.map
\ No newline at end of file
diff --git a/node_modules/agent-base/dist/helpers.js.map b/node_modules/agent-base/dist/helpers.js.map
deleted file mode 100644
index 19df537..0000000
--- a/node_modules/agent-base/dist/helpers.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,6CAA+B;AAOxB,KAAK,UAAU,QAAQ,CAAC,MAAgB;IAC9C,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE;QACjC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACnB;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACtC,CAAC;AARD,4BAQC;AAED,8DAA8D;AACvD,KAAK,UAAU,IAAI,CAAC,MAAgB;IAC1C,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KACvB;IAAC,OAAO,IAAa,EAAE;QACvB,MAAM,GAAG,GAAG,IAAa,CAAC;QAC1B,GAAG,CAAC,OAAO,IAAI,YAAY,GAAG,GAAG,CAAC;QAClC,MAAM,GAAG,CAAC;KACV;AACF,CAAC;AAVD,oBAUC;AAED,SAAgB,GAAG,CAClB,GAAiB,EACjB,OAA6B,EAAE;IAE/B,MAAM,IAAI,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IACtD,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAC7D,GAAG,EACH,IAAI,CACe,CAAC;IACrB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrE,GAAG;aACD,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;aACzB,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC;aACrB,GAAG,EAAqB,CAAC;IAC5B,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,GAAG,CAAC;AACZ,CAAC;AAjBD,kBAiBC"}
\ No newline at end of file
diff --git a/node_modules/agent-base/dist/index.d.ts b/node_modules/agent-base/dist/index.d.ts
deleted file mode 100644
index c849c34..0000000
--- a/node_modules/agent-base/dist/index.d.ts
+++ /dev/null
@@ -1,41 +0,0 @@
-///
-///
-///
-///
-import * as net from 'net';
-import * as tls from 'tls';
-import * as http from 'http';
-import type { Duplex } from 'stream';
-export * from './helpers';
-interface HttpConnectOpts extends net.TcpNetConnectOpts {
- secureEndpoint: false;
- protocol?: string;
-}
-interface HttpsConnectOpts extends tls.ConnectionOptions {
- secureEndpoint: true;
- protocol?: string;
- port: number;
-}
-export type AgentConnectOpts = HttpConnectOpts | HttpsConnectOpts;
-declare const INTERNAL: unique symbol;
-export declare abstract class Agent extends http.Agent {
- private [INTERNAL];
- options: Partial;
- keepAlive: boolean;
- constructor(opts?: http.AgentOptions);
- abstract connect(req: http.ClientRequest, options: AgentConnectOpts): Promise | Duplex | http.Agent;
- /**
- * Determine whether this is an `http` or `https` request.
- */
- isSecureEndpoint(options?: AgentConnectOpts): boolean;
- private incrementSockets;
- private decrementSockets;
- getName(options: AgentConnectOpts): string;
- createSocket(req: http.ClientRequest, options: AgentConnectOpts, cb: (err: Error | null, s?: Duplex) => void): void;
- createConnection(): Duplex;
- get defaultPort(): number;
- set defaultPort(v: number);
- get protocol(): string;
- set protocol(v: string);
-}
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/agent-base/dist/index.d.ts.map b/node_modules/agent-base/dist/index.d.ts.map
deleted file mode 100644
index 25cdb5d..0000000
--- a/node_modules/agent-base/dist/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,cAAc,WAAW,CAAC;AAE1B,UAAU,eAAgB,SAAQ,GAAG,CAAC,iBAAiB;IACtD,cAAc,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,gBAAiB,SAAQ,GAAG,CAAC,iBAAiB;IACvD,cAAc,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAElE,QAAA,MAAM,QAAQ,eAAmC,CAAC;AAQlD,8BAAsB,KAAM,SAAQ,IAAI,CAAC,KAAK;IAC7C,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAgB;IAGlC,OAAO,EAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACjE,SAAS,EAAG,OAAO,CAAC;gBAER,IAAI,CAAC,EAAE,IAAI,CAAC,YAAY;IAKpC,QAAQ,CAAC,OAAO,CACf,GAAG,EAAE,IAAI,CAAC,aAAa,EACvB,OAAO,EAAE,gBAAgB,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK;IAErD;;OAEG;IACH,gBAAgB,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO;IAqCrD,OAAO,CAAC,gBAAgB;IAqBxB,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAa1C,YAAY,CACX,GAAG,EAAE,IAAI,CAAC,aAAa,EACvB,OAAO,EAAE,gBAAgB,EACzB,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI;IAgC5C,gBAAgB,IAAI,MAAM;IAW1B,IAAI,WAAW,IAAI,MAAM,CAKxB;IAED,IAAI,WAAW,CAAC,CAAC,EAAE,MAAM,EAIxB;IAED,IAAI,QAAQ,IAAI,MAAM,CAKrB;IAED,IAAI,QAAQ,CAAC,CAAC,EAAE,MAAM,EAIrB;CACD"}
\ No newline at end of file
diff --git a/node_modules/agent-base/dist/index.js b/node_modules/agent-base/dist/index.js
deleted file mode 100644
index c3c4099..0000000
--- a/node_modules/agent-base/dist/index.js
+++ /dev/null
@@ -1,180 +0,0 @@
-"use strict";
-var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- var desc = Object.getOwnPropertyDescriptor(m, k);
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
- desc = { enumerable: true, get: function() { return m[k]; } };
- }
- Object.defineProperty(o, k2, desc);
-}) : (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- o[k2] = m[k];
-}));
-var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
- Object.defineProperty(o, "default", { enumerable: true, value: v });
-}) : function(o, v) {
- o["default"] = v;
-});
-var __importStar = (this && this.__importStar) || function (mod) {
- if (mod && mod.__esModule) return mod;
- var result = {};
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
- __setModuleDefault(result, mod);
- return result;
-};
-var __exportStar = (this && this.__exportStar) || function(m, exports) {
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.Agent = void 0;
-const net = __importStar(require("net"));
-const http = __importStar(require("http"));
-const https_1 = require("https");
-__exportStar(require("./helpers"), exports);
-const INTERNAL = Symbol('AgentBaseInternalState');
-class Agent extends http.Agent {
- constructor(opts) {
- super(opts);
- this[INTERNAL] = {};
- }
- /**
- * Determine whether this is an `http` or `https` request.
- */
- isSecureEndpoint(options) {
- if (options) {
- // First check the `secureEndpoint` property explicitly, since this
- // means that a parent `Agent` is "passing through" to this instance.
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
- if (typeof options.secureEndpoint === 'boolean') {
- return options.secureEndpoint;
- }
- // If no explicit `secure` endpoint, check if `protocol` property is
- // set. This will usually be the case since using a full string URL
- // or `URL` instance should be the most common usage.
- if (typeof options.protocol === 'string') {
- return options.protocol === 'https:';
- }
- }
- // Finally, if no `protocol` property was set, then fall back to
- // checking the stack trace of the current call stack, and try to
- // detect the "https" module.
- const { stack } = new Error();
- if (typeof stack !== 'string')
- return false;
- return stack
- .split('\n')
- .some((l) => l.indexOf('(https.js:') !== -1 ||
- l.indexOf('node:https:') !== -1);
- }
- // In order to support async signatures in `connect()` and Node's native
- // connection pooling in `http.Agent`, the array of sockets for each origin
- // has to be updated synchronously. This is so the length of the array is
- // accurate when `addRequest()` is next called. We achieve this by creating a
- // fake socket and adding it to `sockets[origin]` and incrementing
- // `totalSocketCount`.
- incrementSockets(name) {
- // If `maxSockets` and `maxTotalSockets` are both Infinity then there is no
- // need to create a fake socket because Node.js native connection pooling
- // will never be invoked.
- if (this.maxSockets === Infinity && this.maxTotalSockets === Infinity) {
- return null;
- }
- // All instances of `sockets` are expected TypeScript errors. The
- // alternative is to add it as a private property of this class but that
- // will break TypeScript subclassing.
- if (!this.sockets[name]) {
- // @ts-expect-error `sockets` is readonly in `@types/node`
- this.sockets[name] = [];
- }
- const fakeSocket = new net.Socket({ writable: false });
- this.sockets[name].push(fakeSocket);
- // @ts-expect-error `totalSocketCount` isn't defined in `@types/node`
- this.totalSocketCount++;
- return fakeSocket;
- }
- decrementSockets(name, socket) {
- if (!this.sockets[name] || socket === null) {
- return;
- }
- const sockets = this.sockets[name];
- const index = sockets.indexOf(socket);
- if (index !== -1) {
- sockets.splice(index, 1);
- // @ts-expect-error `totalSocketCount` isn't defined in `@types/node`
- this.totalSocketCount--;
- if (sockets.length === 0) {
- // @ts-expect-error `sockets` is readonly in `@types/node`
- delete this.sockets[name];
- }
- }
- }
- // In order to properly update the socket pool, we need to call `getName()` on
- // the core `https.Agent` if it is a secureEndpoint.
- getName(options) {
- const secureEndpoint = typeof options.secureEndpoint === 'boolean'
- ? options.secureEndpoint
- : this.isSecureEndpoint(options);
- if (secureEndpoint) {
- // @ts-expect-error `getName()` isn't defined in `@types/node`
- return https_1.Agent.prototype.getName.call(this, options);
- }
- // @ts-expect-error `getName()` isn't defined in `@types/node`
- return super.getName(options);
- }
- createSocket(req, options, cb) {
- const connectOpts = {
- ...options,
- secureEndpoint: this.isSecureEndpoint(options),
- };
- const name = this.getName(connectOpts);
- const fakeSocket = this.incrementSockets(name);
- Promise.resolve()
- .then(() => this.connect(req, connectOpts))
- .then((socket) => {
- this.decrementSockets(name, fakeSocket);
- if (socket instanceof http.Agent) {
- try {
- // @ts-expect-error `addRequest()` isn't defined in `@types/node`
- return socket.addRequest(req, connectOpts);
- }
- catch (err) {
- return cb(err);
- }
- }
- this[INTERNAL].currentSocket = socket;
- // @ts-expect-error `createSocket()` isn't defined in `@types/node`
- super.createSocket(req, options, cb);
- }, (err) => {
- this.decrementSockets(name, fakeSocket);
- cb(err);
- });
- }
- createConnection() {
- const socket = this[INTERNAL].currentSocket;
- this[INTERNAL].currentSocket = undefined;
- if (!socket) {
- throw new Error('No socket was returned in the `connect()` function');
- }
- return socket;
- }
- get defaultPort() {
- return (this[INTERNAL].defaultPort ??
- (this.protocol === 'https:' ? 443 : 80));
- }
- set defaultPort(v) {
- if (this[INTERNAL]) {
- this[INTERNAL].defaultPort = v;
- }
- }
- get protocol() {
- return (this[INTERNAL].protocol ??
- (this.isSecureEndpoint() ? 'https:' : 'http:'));
- }
- set protocol(v) {
- if (this[INTERNAL]) {
- this[INTERNAL].protocol = v;
- }
- }
-}
-exports.Agent = Agent;
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/agent-base/dist/index.js.map b/node_modules/agent-base/dist/index.js.map
deleted file mode 100644
index d6e768c..0000000
--- a/node_modules/agent-base/dist/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/agent-base/package.json b/node_modules/agent-base/package.json
deleted file mode 100644
index 175ee71..0000000
--- a/node_modules/agent-base/package.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "name": "agent-base",
- "version": "7.1.3",
- "description": "Turn a function into an `http.Agent` instance",
- "main": "./dist/index.js",
- "types": "./dist/index.d.ts",
- "files": [
- "dist"
- ],
- "repository": {
- "type": "git",
- "url": "https://github.com/TooTallNate/proxy-agents.git",
- "directory": "packages/agent-base"
- },
- "keywords": [
- "http",
- "agent",
- "base",
- "barebones",
- "https"
- ],
- "author": "Nathan Rajlich (http://n8.io/)",
- "license": "MIT",
- "devDependencies": {
- "@types/debug": "^4.1.7",
- "@types/jest": "^29.5.1",
- "@types/node": "^14.18.45",
- "@types/semver": "^7.3.13",
- "@types/ws": "^6.0.4",
- "async-listen": "^3.0.0",
- "jest": "^29.5.0",
- "ts-jest": "^29.1.0",
- "typescript": "^5.0.4",
- "ws": "^5.2.4",
- "tsconfig": "0.0.0"
- },
- "engines": {
- "node": ">= 14"
- },
- "scripts": {
- "build": "tsc",
- "test": "jest --env node --verbose --bail",
- "lint": "eslint . --ext .ts",
- "pack": "node ../../scripts/pack.mjs"
- }
-}
\ No newline at end of file
diff --git a/node_modules/bin-links/LICENSE b/node_modules/bin-links/LICENSE
deleted file mode 100644
index 19cec97..0000000
--- a/node_modules/bin-links/LICENSE
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) npm, Inc.
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/node_modules/bin-links/README.md b/node_modules/bin-links/README.md
deleted file mode 100644
index 19ff191..0000000
--- a/node_modules/bin-links/README.md
+++ /dev/null
@@ -1,90 +0,0 @@
-# bin-links [](https://npm.im/bin-links) [](https://npm.im/bin-links) [](https://travis-ci.org/npm/bin-links) [](https://ci.appveyor.com/project/npm/bin-links) [](https://coveralls.io/github/npm/bin-links?branch=latest)
-
-[`bin-links`](https://github.com/npm/bin-links) is a standalone library that links
-binaries and man pages for JavaScript packages
-
-## Install
-
-`$ npm install bin-links`
-
-## Table of Contents
-
-* [Example](#example)
-* [Features](#features)
-* [Contributing](#contributing)
-* [API](#api)
- * [`binLinks`](#binLinks)
- * [`binLinks.getPaths()`](#getPaths)
- * [`binLinks.checkBins()`](#checkBins)
-
-### Example
-
-```javascript
-const binLinks = require('bin-links')
-const readPackageJson = require('read-package-json-fast')
-binLinks({
- path: '/path/to/node_modules/some-package',
- pkg: readPackageJson('/path/to/node_modules/some-package/package.json'),
-
- // true if it's a global install, false for local. default: false
- global: true,
-
- // true if it's the top level package being installed, false otherwise
- top: true,
-
- // true if you'd like to recklessly overwrite files.
- force: true,
-})
-```
-
-### Features
-
-* Links bin files listed under the `bin` property of pkg to the
- `node_modules/.bin` directory of the installing environment. (Or
- `${prefix}/bin` for top level global packages on unix, and `${prefix}`
- for top level global packages on Windows.)
-* Links man files listed under the `man` property of pkg to the share/man
- directory. (This is only done for top-level global packages on Unix
- systems.)
-
-### Contributing
-
-The npm team enthusiastically welcomes contributions and project participation!
-There's a bunch of things you can do if you want to contribute! The [Contributor
-Guide](CONTRIBUTING.md) has all the information you need for everything from
-reporting bugs to contributing entire new features. Please don't hesitate to
-jump in if you'd like to, or even ask us questions if something isn't clear.
-
-### API
-
-#### `> binLinks({path, pkg, force, global, top})`
-
-Returns a Promise that resolves when the requisite things have been linked.
-
-#### `> binLinks.getPaths({path, pkg, global, top })`
-
-Returns an array of all the paths of links and shims that _might_ be
-created (assuming that they exist!) for the package at the specified path.
-
-Does not touch the filesystem.
-
-#### `> binLinks.checkBins({path, pkg, global, top, force })`
-
-Checks if there are any conflicting bins which will prevent the linking of
-bins for the given package. Returns a Promise that resolves with no value
-if the way is clear, and rejects if there's something in the way.
-
-Always returns successfully if `global` or `top` are false, or if `force`
-is true, or if the `pkg` object does not contain any bins to link.
-
-Note that changes to the file system _may_ still cause the `binLinks`
-method to fail even if this method succeeds. Does not check for
-conflicting `man` links.
-
-Reads from the filesystem but does not make any changes.
-
-##### Example
-
-```javascript
-binLinks({path, pkg, force, global, top}).then(() => console.log('bins linked!'))
-```
diff --git a/node_modules/bin-links/lib/bin-target.js b/node_modules/bin-links/lib/bin-target.js
deleted file mode 100644
index 0629285..0000000
--- a/node_modules/bin-links/lib/bin-target.js
+++ /dev/null
@@ -1,9 +0,0 @@
-const isWindows = require('./is-windows.js')
-const getPrefix = require('./get-prefix.js')
-const getNodeModules = require('./get-node-modules.js')
-const { dirname } = require('path')
-
-module.exports = ({ top, path }) =>
- !top ? getNodeModules(path) + '/.bin'
- : isWindows ? getPrefix(path)
- : dirname(getPrefix(path)) + '/bin'
diff --git a/node_modules/bin-links/lib/check-bin.js b/node_modules/bin-links/lib/check-bin.js
deleted file mode 100644
index c5b997b..0000000
--- a/node_modules/bin-links/lib/check-bin.js
+++ /dev/null
@@ -1,74 +0,0 @@
-// check to see if a bin is allowed to be overwritten
-// either rejects or resolves to nothing. return value not relevant.
-const isWindows = require('./is-windows.js')
-const binTarget = require('./bin-target.js')
-const { resolve, dirname } = require('path')
-const readCmdShim = require('read-cmd-shim')
-const { readlink } = require('fs/promises')
-
-const checkBin = async ({ bin, path, top, global, force }) => {
- // always ok to clobber when forced
- // always ok to clobber local bins, or when forced
- if (force || !global || !top) {
- return
- }
-
- // ok, need to make sure, then
- const target = resolve(binTarget({ path, top }), bin)
- path = resolve(path)
- return isWindows ? checkShim({ target, path }) : checkLink({ target, path })
-}
-
-// only enoent is allowed. anything else is a problem.
-const handleReadLinkError = async ({ er, target }) =>
- er.code === 'ENOENT' ? null
- : failEEXIST({ target })
-
-const checkLink = async ({ target, path }) => {
- const current = await readlink(target)
- .catch(er => handleReadLinkError({ er, target }))
-
- if (!current) {
- return
- }
-
- const resolved = resolve(dirname(target), current)
-
- if (resolved.toLowerCase().indexOf(path.toLowerCase()) !== 0) {
- return failEEXIST({ target })
- }
-}
-
-const handleReadCmdShimError = ({ er, target }) =>
- er.code === 'ENOENT' ? null
- : failEEXIST({ target })
-
-const failEEXIST = ({ target }) =>
- Promise.reject(Object.assign(new Error('EEXIST: file already exists'), {
- path: target,
- code: 'EEXIST',
- }))
-
-const checkShim = async ({ target, path }) => {
- const shims = [
- target,
- target + '.cmd',
- target + '.ps1',
- ]
- await Promise.all(shims.map(async shim => {
- const current = await readCmdShim(shim)
- .catch(er => handleReadCmdShimError({ er, target: shim }))
-
- if (!current) {
- return
- }
-
- const resolved = resolve(dirname(shim), current.replace(/\\/g, '/'))
-
- if (resolved.toLowerCase().indexOf(path.toLowerCase()) !== 0) {
- return failEEXIST({ target: shim })
- }
- }))
-}
-
-module.exports = checkBin
diff --git a/node_modules/bin-links/lib/check-bins.js b/node_modules/bin-links/lib/check-bins.js
deleted file mode 100644
index 76a683c..0000000
--- a/node_modules/bin-links/lib/check-bins.js
+++ /dev/null
@@ -1,18 +0,0 @@
-const checkBin = require('./check-bin.js')
-const normalize = require('npm-normalize-package-bin')
-const checkBins = async ({ pkg, path, top, global, force }) => {
- // always ok to clobber when forced
- // always ok to clobber local bins, or when forced
- if (force || !global || !top) {
- return
- }
-
- pkg = normalize(pkg)
- if (!pkg.bin) {
- return
- }
-
- await Promise.all(Object.keys(pkg.bin)
- .map(bin => checkBin({ bin, path, top, global, force })))
-}
-module.exports = checkBins
diff --git a/node_modules/bin-links/lib/fix-bin.js b/node_modules/bin-links/lib/fix-bin.js
deleted file mode 100644
index 453bd4f..0000000
--- a/node_modules/bin-links/lib/fix-bin.js
+++ /dev/null
@@ -1,42 +0,0 @@
-// make sure that bins are executable, and that they don't have
-// windows line-endings on the hashbang line.
-const {
- chmod,
- open,
- readFile,
-} = require('fs/promises')
-
-const execMode = 0o777 & (~process.umask())
-
-const writeFileAtomic = require('write-file-atomic')
-
-const isWindowsHashBang = buf =>
- buf[0] === '#'.charCodeAt(0) &&
- buf[1] === '!'.charCodeAt(0) &&
- /^#![^\n]+\r\n/.test(buf.toString())
-
-const isWindowsHashbangFile = file => {
- const FALSE = () => false
- return open(file, 'r').then(fh => {
- const buf = Buffer.alloc(2048)
- return fh.read(buf, 0, 2048, 0)
- .then(
- () => {
- const isWHB = isWindowsHashBang(buf)
- return fh.close().then(() => isWHB, () => isWHB)
- },
- // don't leak FD if read() fails
- () => fh.close().then(FALSE, FALSE)
- )
- }, FALSE)
-}
-
-const dos2Unix = file =>
- readFile(file, 'utf8').then(content =>
- writeFileAtomic(file, content.replace(/^(#![^\n]+)\r\n/, '$1\n')))
-
-const fixBin = (file, mode = execMode) => chmod(file, mode)
- .then(() => isWindowsHashbangFile(file))
- .then(isWHB => isWHB ? dos2Unix(file) : null)
-
-module.exports = fixBin
diff --git a/node_modules/bin-links/lib/get-node-modules.js b/node_modules/bin-links/lib/get-node-modules.js
deleted file mode 100644
index 5c16b3b..0000000
--- a/node_modules/bin-links/lib/get-node-modules.js
+++ /dev/null
@@ -1,19 +0,0 @@
-// we know it's global and/or not top, so the path has to be
-// {prefix}/node_modules/{name}. Can't rely on pkg.name, because
-// it might be installed as an alias.
-
-const { dirname, basename } = require('path')
-// this gets called a lot and can't change, so memoize it
-const memo = new Map()
-module.exports = path => {
- if (memo.has(path)) {
- return memo.get(path)
- }
-
- const scopeOrNm = dirname(path)
- const nm = basename(scopeOrNm) === 'node_modules' ? scopeOrNm
- : dirname(scopeOrNm)
-
- memo.set(path, nm)
- return nm
-}
diff --git a/node_modules/bin-links/lib/get-paths.js b/node_modules/bin-links/lib/get-paths.js
deleted file mode 100644
index b93e698..0000000
--- a/node_modules/bin-links/lib/get-paths.js
+++ /dev/null
@@ -1,42 +0,0 @@
-// get all the paths that are (or might be) installed for a given pkg
-// There's no guarantee that all of these will be installed, but if they
-// are present, then we can assume that they're associated.
-const binTarget = require('./bin-target.js')
-const manTarget = require('./man-target.js')
-const { resolve, basename, extname } = require('path')
-const isWindows = require('./is-windows.js')
-module.exports = ({ path, pkg, global, top }) => {
- if (top && !global) {
- return []
- }
-
- const binSet = []
- const binTarg = binTarget({ path, top })
- if (pkg.bin) {
- for (const bin of Object.keys(pkg.bin)) {
- const b = resolve(binTarg, bin)
- binSet.push(b)
- if (isWindows) {
- binSet.push(b + '.cmd')
- binSet.push(b + '.ps1')
- }
- }
- }
-
- const manTarg = manTarget({ path, top })
- const manSet = []
- if (manTarg && pkg.man && Array.isArray(pkg.man) && pkg.man.length) {
- for (const man of pkg.man) {
- if (!/.\.[0-9]+(\.gz)?$/.test(man)) {
- return binSet
- }
-
- const section = extname(basename(man, '.gz')).slice(1)
- const base = basename(man)
-
- manSet.push(resolve(manTarg, 'man' + section, base))
- }
- }
-
- return manSet.length ? [...binSet, ...manSet] : binSet
-}
diff --git a/node_modules/bin-links/lib/get-prefix.js b/node_modules/bin-links/lib/get-prefix.js
deleted file mode 100644
index d5cf9c9..0000000
--- a/node_modules/bin-links/lib/get-prefix.js
+++ /dev/null
@@ -1,3 +0,0 @@
-const { dirname } = require('path')
-const getNodeModules = require('./get-node-modules.js')
-module.exports = path => dirname(getNodeModules(path))
diff --git a/node_modules/bin-links/lib/index.js b/node_modules/bin-links/lib/index.js
deleted file mode 100644
index ab3bd13..0000000
--- a/node_modules/bin-links/lib/index.js
+++ /dev/null
@@ -1,44 +0,0 @@
-const linkBins = require('./link-bins.js')
-const linkMans = require('./link-mans.js')
-
-const binLinks = opts => {
- const { path, pkg, force, global, top } = opts
- // global top pkgs on windows get bins installed in {prefix}, and no mans
- //
- // unix global top pkgs get their bins installed in {prefix}/bin,
- // and mans in {prefix}/share/man
- //
- // non-top pkgs get their bins installed in {prefix}/node_modules/.bin,
- // and do not install mans
- //
- // non-global top pkgs don't have any bins or mans linked. From here on
- // out, if it's top, we know that it's global, so no need to pass that
- // option further down the stack.
- if (top && !global) {
- return Promise.resolve()
- }
-
- return Promise.all([
- // allow clobbering within the local node_modules/.bin folder.
- // only global bins are protected in this way, or else it is
- // yet another vector for excessive dependency conflicts.
- linkBins({ path, pkg, top, force: force || !top }),
- linkMans({ path, pkg, top, force }),
- ])
-}
-
-const shimBin = require('./shim-bin.js')
-const linkGently = require('./link-gently.js')
-const resetSeen = () => {
- shimBin.resetSeen()
- linkGently.resetSeen()
-}
-
-const checkBins = require('./check-bins.js')
-const getPaths = require('./get-paths.js')
-
-module.exports = Object.assign(binLinks, {
- checkBins,
- resetSeen,
- getPaths,
-})
diff --git a/node_modules/bin-links/lib/is-windows.js b/node_modules/bin-links/lib/is-windows.js
deleted file mode 100644
index da3b2fb..0000000
--- a/node_modules/bin-links/lib/is-windows.js
+++ /dev/null
@@ -1,2 +0,0 @@
-const platform = process.env.__TESTING_BIN_LINKS_PLATFORM__ || process.platform
-module.exports = platform === 'win32'
diff --git a/node_modules/bin-links/lib/link-bin.js b/node_modules/bin-links/lib/link-bin.js
deleted file mode 100644
index fb57935..0000000
--- a/node_modules/bin-links/lib/link-bin.js
+++ /dev/null
@@ -1,9 +0,0 @@
-const linkGently = require('./link-gently.js')
-const fixBin = require('./fix-bin.js')
-
-// linking bins is simple. just symlink, and if we linked it, fix the bin up
-const linkBin = ({ path, to, from, absFrom, force }) =>
- linkGently({ path, to, from, absFrom, force })
- .then(linked => linked && fixBin(absFrom))
-
-module.exports = linkBin
diff --git a/node_modules/bin-links/lib/link-bins.js b/node_modules/bin-links/lib/link-bins.js
deleted file mode 100644
index 9bf7d72..0000000
--- a/node_modules/bin-links/lib/link-bins.js
+++ /dev/null
@@ -1,23 +0,0 @@
-const isWindows = require('./is-windows.js')
-const binTarget = require('./bin-target.js')
-const { dirname, resolve, relative } = require('path')
-const linkBin = isWindows ? require('./shim-bin.js') : require('./link-bin.js')
-const normalize = require('npm-normalize-package-bin')
-
-const linkBins = ({ path, pkg, top, force }) => {
- pkg = normalize(pkg)
- if (!pkg.bin) {
- return Promise.resolve([])
- }
- const promises = []
- const target = binTarget({ path, top })
- for (const [key, val] of Object.entries(pkg.bin)) {
- const to = resolve(target, key)
- const absFrom = resolve(path, val)
- const from = relative(dirname(to), absFrom)
- promises.push(linkBin({ path, from, to, absFrom, force }))
- }
- return Promise.all(promises)
-}
-
-module.exports = linkBins
diff --git a/node_modules/bin-links/lib/link-gently.js b/node_modules/bin-links/lib/link-gently.js
deleted file mode 100644
index a39d3bc..0000000
--- a/node_modules/bin-links/lib/link-gently.js
+++ /dev/null
@@ -1,96 +0,0 @@
-// if the thing isn't there, skip it
-// if there's a non-symlink there already, eexist
-// if there's a symlink already, pointing somewhere else, eexist
-// if there's a symlink already, pointing into our pkg, remove it first
-// then create the symlink
-
-const { resolve, dirname } = require('path')
-const { lstat, mkdir, readlink, rm, symlink } = require('fs/promises')
-const { log } = require('proc-log')
-const throwSignificant = er => {
- if (er.code === 'ENOENT') {
- return
- }
- if (er.code === 'EACCES') {
- log.warn('error adding file', er.message)
- return
- }
- throw er
-}
-
-const rmOpts = {
- recursive: true,
- force: true,
-}
-
-// even in --force mode, we never create a link over a link we've
-// already created. you can have multiple packages in a tree trying
-// to contend for the same bin, or the same manpage listed multiple times,
-// which creates a race condition and nondeterminism.
-const seen = new Set()
-
-const SKIP = Symbol('skip - missing or already installed')
-const CLOBBER = Symbol('clobber - ours or in forceful mode')
-
-const linkGently = async ({ path, to, from, absFrom, force }) => {
- if (seen.has(to)) {
- return false
- }
- seen.add(to)
-
- // if the script or manpage isn't there, just ignore it.
- // this arguably *should* be an install error of some sort,
- // or at least a warning, but npm has always behaved this
- // way in the past, so it'd be a breaking change
- return Promise.all([
- lstat(absFrom).catch(throwSignificant),
- lstat(to).catch(throwSignificant),
- ]).then(([stFrom, stTo]) => {
- // not present in package, skip it
- if (!stFrom) {
- return SKIP
- }
-
- // exists! maybe clobber if we can
- if (stTo) {
- if (!stTo.isSymbolicLink()) {
- return force && rm(to, rmOpts).then(() => CLOBBER)
- }
-
- return readlink(to).then(target => {
- if (target === from) {
- return SKIP
- } // skip it, already set up like we want it.
-
- target = resolve(dirname(to), target)
- if (target.indexOf(path) === 0 || force) {
- return rm(to, rmOpts).then(() => CLOBBER)
- }
- // neither skip nor clobber
- return false
- })
- } else {
- // doesn't exist, dir might not either
- return mkdir(dirname(to), { recursive: true })
- }
- })
- .then(skipOrClobber => {
- if (skipOrClobber === SKIP) {
- return false
- }
- return symlink(from, to, 'file').catch(er => {
- if (skipOrClobber === CLOBBER || force) {
- return rm(to, rmOpts).then(() => symlink(from, to, 'file'))
- }
- throw er
- }).then(() => true)
- })
-}
-
-const resetSeen = () => {
- for (const p of seen) {
- seen.delete(p)
- }
-}
-
-module.exports = Object.assign(linkGently, { resetSeen })
diff --git a/node_modules/bin-links/lib/link-mans.js b/node_modules/bin-links/lib/link-mans.js
deleted file mode 100644
index b6dd214..0000000
--- a/node_modules/bin-links/lib/link-mans.js
+++ /dev/null
@@ -1,53 +0,0 @@
-const { dirname, relative, join, resolve, basename } = require('path')
-const linkGently = require('./link-gently.js')
-const manTarget = require('./man-target.js')
-
-const linkMans = async ({ path, pkg, top, force }) => {
- const target = manTarget({ path, top })
- if (!target || !Array.isArray(pkg?.man) || !pkg.man.length) {
- return []
- }
-
- const links = []
- // `new Set` to filter out duplicates
- for (let man of new Set(pkg.man)) {
- if (!man || typeof man !== 'string') {
- continue
- }
- // break any links to c:\\blah or /foo/blah or ../blah
- man = join('/', man).replace(/\\|:/g, '/').slice(1)
- const parseMan = man.match(/\.([0-9]+)(\.gz)?$/)
- if (!parseMan) {
- throw Object.assign(new Error('invalid man entry name\n' +
- 'Man files must end with a number, ' +
- 'and optionally a .gz suffix if they are compressed.'
- ), {
- code: 'EBADMAN',
- path,
- pkgid: pkg._id,
- man,
- })
- }
-
- const section = parseMan[1]
- const base = basename(man)
- const absFrom = resolve(path, man)
- /* istanbul ignore if - that unpossible */
- if (absFrom.indexOf(path) !== 0) {
- throw Object.assign(new Error('invalid man entry'), {
- code: 'EBADMAN',
- path,
- pkgid: pkg._id,
- man,
- })
- }
-
- const to = resolve(target, 'man' + section, base)
- const from = relative(dirname(to), absFrom)
-
- links.push(linkGently({ from, to, path, absFrom, force }))
- }
- return Promise.all(links)
-}
-
-module.exports = linkMans
diff --git a/node_modules/bin-links/lib/man-target.js b/node_modules/bin-links/lib/man-target.js
deleted file mode 100644
index efe66f3..0000000
--- a/node_modules/bin-links/lib/man-target.js
+++ /dev/null
@@ -1,6 +0,0 @@
-const isWindows = require('./is-windows.js')
-const getPrefix = require('./get-prefix.js')
-const { dirname } = require('path')
-
-module.exports = ({ top, path }) => !top || isWindows ? null
- : dirname(getPrefix(path)) + '/share/man'
diff --git a/node_modules/bin-links/lib/shim-bin.js b/node_modules/bin-links/lib/shim-bin.js
deleted file mode 100644
index 67e2702..0000000
--- a/node_modules/bin-links/lib/shim-bin.js
+++ /dev/null
@@ -1,86 +0,0 @@
-const { resolve, dirname } = require('path')
-const { lstat } = require('fs/promises')
-const throwNonEnoent = er => {
- if (er.code !== 'ENOENT') {
- throw er
- }
-}
-
-const cmdShim = require('cmd-shim')
-const readCmdShim = require('read-cmd-shim')
-
-const fixBin = require('./fix-bin.js')
-
-// even in --force mode, we never create a shim over a shim we've
-// already created. you can have multiple packages in a tree trying
-// to contend for the same bin, which creates a race condition and
-// nondeterminism.
-const seen = new Set()
-
-const failEEXIST = ({ to, from }) =>
- Promise.reject(Object.assign(new Error('EEXIST: file already exists'), {
- path: to,
- dest: from,
- code: 'EEXIST',
- }))
-
-const handleReadCmdShimError = ({ er, from, to }) =>
- er.code === 'ENOENT' ? null
- : er.code === 'ENOTASHIM' ? failEEXIST({ from, to })
- : Promise.reject(er)
-
-const SKIP = Symbol('skip - missing or already installed')
-const shimBin = ({ path, to, from, absFrom, force }) => {
- const shims = [
- to,
- to + '.cmd',
- to + '.ps1',
- ]
-
- for (const shim of shims) {
- if (seen.has(shim)) {
- return true
- }
- seen.add(shim)
- }
-
- return Promise.all([
- ...shims,
- absFrom,
- ].map(f => lstat(f).catch(throwNonEnoent))).then((stats) => {
- const [, , , stFrom] = stats
- if (!stFrom) {
- return SKIP
- }
-
- if (force) {
- return false
- }
-
- return Promise.all(shims.map((s, i) => [s, stats[i]]).map(([s, st]) => {
- if (!st) {
- return false
- }
- return readCmdShim(s)
- .then(target => {
- target = resolve(dirname(to), target)
- if (target.indexOf(resolve(path)) !== 0) {
- return failEEXIST({ from, to, path })
- }
- return false
- }, er => handleReadCmdShimError({ er, from, to }))
- }))
- })
- .then(skip => skip !== SKIP && doShim(absFrom, to))
-}
-
-const doShim = (absFrom, to) =>
- cmdShim(absFrom, to).then(() => fixBin(absFrom))
-
-const resetSeen = () => {
- for (const p of seen) {
- seen.delete(p)
- }
-}
-
-module.exports = Object.assign(shimBin, { resetSeen })
diff --git a/node_modules/bin-links/package.json b/node_modules/bin-links/package.json
deleted file mode 100644
index 22858d6..0000000
--- a/node_modules/bin-links/package.json
+++ /dev/null
@@ -1,61 +0,0 @@
-{
- "name": "bin-links",
- "version": "5.0.0",
- "description": "JavaScript package binary linker",
- "main": "./lib/index.js",
- "scripts": {
- "snap": "tap",
- "test": "tap",
- "lint": "npm run eslint",
- "postlint": "template-oss-check",
- "lintfix": "npm run eslint -- --fix",
- "posttest": "npm run lint",
- "template-oss-apply": "template-oss-apply --force",
- "eslint": "eslint \"**/*.{js,cjs,ts,mjs,jsx,tsx}\""
- },
- "repository": {
- "type": "git",
- "url": "git+https://github.com/npm/bin-links.git"
- },
- "keywords": [
- "npm",
- "link",
- "bins"
- ],
- "license": "ISC",
- "dependencies": {
- "cmd-shim": "^7.0.0",
- "npm-normalize-package-bin": "^4.0.0",
- "proc-log": "^5.0.0",
- "read-cmd-shim": "^5.0.0",
- "write-file-atomic": "^6.0.0"
- },
- "devDependencies": {
- "@npmcli/eslint-config": "^5.0.0",
- "@npmcli/template-oss": "4.23.3",
- "require-inject": "^1.4.4",
- "tap": "^16.0.1"
- },
- "tap": {
- "check-coverage": true,
- "coverage-map": "map.js",
- "nyc-arg": [
- "--exclude",
- "tap-snapshots/**"
- ]
- },
- "files": [
- "bin/",
- "lib/"
- ],
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- },
- "author": "GitHub Inc.",
- "templateOSS": {
- "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "windowsCI": false,
- "version": "4.23.3",
- "publish": true
- }
-}
diff --git a/node_modules/chownr/LICENSE.md b/node_modules/chownr/LICENSE.md
deleted file mode 100644
index 881248b..0000000
--- a/node_modules/chownr/LICENSE.md
+++ /dev/null
@@ -1,63 +0,0 @@
-All packages under `src/` are licensed according to the terms in
-their respective `LICENSE` or `LICENSE.md` files.
-
-The remainder of this project is licensed under the Blue Oak
-Model License, as follows:
-
------
-
-# Blue Oak Model License
-
-Version 1.0.0
-
-## Purpose
-
-This license gives everyone as much permission to work with
-this software as possible, while protecting contributors
-from liability.
-
-## Acceptance
-
-In order to receive this license, you must agree to its
-rules. The rules of this license are both obligations
-under that agreement and conditions to your license.
-You must not do anything with this software that triggers
-a rule that you cannot or will not follow.
-
-## Copyright
-
-Each contributor licenses you to do everything with this
-software that would otherwise infringe that contributor's
-copyright in it.
-
-## Notices
-
-You must ensure that everyone who gets a copy of
-any part of this software from you, with or without
-changes, also gets the text of this license or a link to
-.
-
-## Excuse
-
-If anyone notifies you in writing that you have not
-complied with [Notices](#notices), you can keep your
-license by taking all practical steps to comply within 30
-days after the notice. If you do not do so, your license
-ends immediately.
-
-## Patent
-
-Each contributor licenses you to do everything with this
-software that would otherwise infringe any patent claims
-they can license or become able to license.
-
-## Reliability
-
-No contributor can revoke this license.
-
-## No Liability
-
-***As far as the law allows, this software comes as is,
-without any warranty or condition, and no contributor
-will be liable to anyone for any damages related to this
-software or this license, under any kind of legal claim.***
diff --git a/node_modules/chownr/README.md b/node_modules/chownr/README.md
deleted file mode 100644
index 70e9a54..0000000
--- a/node_modules/chownr/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-Like `chown -R`.
-
-Takes the same arguments as `fs.chown()`
diff --git a/node_modules/chownr/dist/commonjs/index.d.ts b/node_modules/chownr/dist/commonjs/index.d.ts
deleted file mode 100644
index 5ab081f..0000000
--- a/node_modules/chownr/dist/commonjs/index.d.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-export declare const chownr: (p: string, uid: number, gid: number, cb: (er?: unknown) => any) => void;
-export declare const chownrSync: (p: string, uid: number, gid: number) => void;
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/chownr/dist/commonjs/index.d.ts.map b/node_modules/chownr/dist/commonjs/index.d.ts.map
deleted file mode 100644
index bda37a0..0000000
--- a/node_modules/chownr/dist/commonjs/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AA0CA,eAAO,MAAM,MAAM,MACd,MAAM,OACJ,MAAM,OACN,MAAM,YACD,OAAO,KAAK,GAAG,SA0B1B,CAAA;AAcD,eAAO,MAAM,UAAU,MAAO,MAAM,OAAO,MAAM,OAAO,MAAM,SAiB7D,CAAA"}
\ No newline at end of file
diff --git a/node_modules/chownr/dist/commonjs/index.js b/node_modules/chownr/dist/commonjs/index.js
deleted file mode 100644
index 6a7b68d..0000000
--- a/node_modules/chownr/dist/commonjs/index.js
+++ /dev/null
@@ -1,93 +0,0 @@
-"use strict";
-var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.chownrSync = exports.chownr = void 0;
-const node_fs_1 = __importDefault(require("node:fs"));
-const node_path_1 = __importDefault(require("node:path"));
-const lchownSync = (path, uid, gid) => {
- try {
- return node_fs_1.default.lchownSync(path, uid, gid);
- }
- catch (er) {
- if (er?.code !== 'ENOENT')
- throw er;
- }
-};
-const chown = (cpath, uid, gid, cb) => {
- node_fs_1.default.lchown(cpath, uid, gid, er => {
- // Skip ENOENT error
- cb(er && er?.code !== 'ENOENT' ? er : null);
- });
-};
-const chownrKid = (p, child, uid, gid, cb) => {
- if (child.isDirectory()) {
- (0, exports.chownr)(node_path_1.default.resolve(p, child.name), uid, gid, (er) => {
- if (er)
- return cb(er);
- const cpath = node_path_1.default.resolve(p, child.name);
- chown(cpath, uid, gid, cb);
- });
- }
- else {
- const cpath = node_path_1.default.resolve(p, child.name);
- chown(cpath, uid, gid, cb);
- }
-};
-const chownr = (p, uid, gid, cb) => {
- node_fs_1.default.readdir(p, { withFileTypes: true }, (er, children) => {
- // any error other than ENOTDIR or ENOTSUP means it's not readable,
- // or doesn't exist. give up.
- if (er) {
- if (er.code === 'ENOENT')
- return cb();
- else if (er.code !== 'ENOTDIR' && er.code !== 'ENOTSUP')
- return cb(er);
- }
- if (er || !children.length)
- return chown(p, uid, gid, cb);
- let len = children.length;
- let errState = null;
- const then = (er) => {
- /* c8 ignore start */
- if (errState)
- return;
- /* c8 ignore stop */
- if (er)
- return cb((errState = er));
- if (--len === 0)
- return chown(p, uid, gid, cb);
- };
- for (const child of children) {
- chownrKid(p, child, uid, gid, then);
- }
- });
-};
-exports.chownr = chownr;
-const chownrKidSync = (p, child, uid, gid) => {
- if (child.isDirectory())
- (0, exports.chownrSync)(node_path_1.default.resolve(p, child.name), uid, gid);
- lchownSync(node_path_1.default.resolve(p, child.name), uid, gid);
-};
-const chownrSync = (p, uid, gid) => {
- let children;
- try {
- children = node_fs_1.default.readdirSync(p, { withFileTypes: true });
- }
- catch (er) {
- const e = er;
- if (e?.code === 'ENOENT')
- return;
- else if (e?.code === 'ENOTDIR' || e?.code === 'ENOTSUP')
- return lchownSync(p, uid, gid);
- else
- throw e;
- }
- for (const child of children) {
- chownrKidSync(p, child, uid, gid);
- }
- return lchownSync(p, uid, gid);
-};
-exports.chownrSync = chownrSync;
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/chownr/dist/commonjs/index.js.map b/node_modules/chownr/dist/commonjs/index.js.map
deleted file mode 100644
index 954921f..0000000
--- a/node_modules/chownr/dist/commonjs/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import fs, { type Dirent } from 'node:fs'\nimport path from 'node:path'\n\nconst lchownSync = (path: string, uid: number, gid: number) => {\n try {\n return fs.lchownSync(path, uid, gid)\n } catch (er) {\n if ((er as NodeJS.ErrnoException)?.code !== 'ENOENT') throw er\n }\n}\n\nconst chown = (\n cpath: string,\n uid: number,\n gid: number,\n cb: (er?: unknown) => any,\n) => {\n fs.lchown(cpath, uid, gid, er => {\n // Skip ENOENT error\n cb(er && (er as NodeJS.ErrnoException)?.code !== 'ENOENT' ? er : null)\n })\n}\n\nconst chownrKid = (\n p: string,\n child: Dirent,\n uid: number,\n gid: number,\n cb: (er?: unknown) => any,\n) => {\n if (child.isDirectory()) {\n chownr(path.resolve(p, child.name), uid, gid, (er: unknown) => {\n if (er) return cb(er)\n const cpath = path.resolve(p, child.name)\n chown(cpath, uid, gid, cb)\n })\n } else {\n const cpath = path.resolve(p, child.name)\n chown(cpath, uid, gid, cb)\n }\n}\n\nexport const chownr = (\n p: string,\n uid: number,\n gid: number,\n cb: (er?: unknown) => any,\n) => {\n fs.readdir(p, { withFileTypes: true }, (er, children) => {\n // any error other than ENOTDIR or ENOTSUP means it's not readable,\n // or doesn't exist. give up.\n if (er) {\n if (er.code === 'ENOENT') return cb()\n else if (er.code !== 'ENOTDIR' && er.code !== 'ENOTSUP')\n return cb(er)\n }\n if (er || !children.length) return chown(p, uid, gid, cb)\n\n let len = children.length\n let errState: null | NodeJS.ErrnoException = null\n const then = (er?: unknown) => {\n /* c8 ignore start */\n if (errState) return\n /* c8 ignore stop */\n if (er) return cb((errState = er as NodeJS.ErrnoException))\n if (--len === 0) return chown(p, uid, gid, cb)\n }\n\n for (const child of children) {\n chownrKid(p, child, uid, gid, then)\n }\n })\n}\n\nconst chownrKidSync = (\n p: string,\n child: Dirent,\n uid: number,\n gid: number,\n) => {\n if (child.isDirectory())\n chownrSync(path.resolve(p, child.name), uid, gid)\n\n lchownSync(path.resolve(p, child.name), uid, gid)\n}\n\nexport const chownrSync = (p: string, uid: number, gid: number) => {\n let children: Dirent[]\n try {\n children = fs.readdirSync(p, { withFileTypes: true })\n } catch (er) {\n const e = er as NodeJS.ErrnoException\n if (e?.code === 'ENOENT') return\n else if (e?.code === 'ENOTDIR' || e?.code === 'ENOTSUP')\n return lchownSync(p, uid, gid)\n else throw e\n }\n\n for (const child of children) {\n chownrKidSync(p, child, uid, gid)\n }\n\n return lchownSync(p, uid, gid)\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/chownr/dist/commonjs/package.json b/node_modules/chownr/dist/commonjs/package.json
deleted file mode 100644
index 5bbefff..0000000
--- a/node_modules/chownr/dist/commonjs/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "type": "commonjs"
-}
diff --git a/node_modules/chownr/dist/esm/index.d.ts b/node_modules/chownr/dist/esm/index.d.ts
deleted file mode 100644
index 5ab081f..0000000
--- a/node_modules/chownr/dist/esm/index.d.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-export declare const chownr: (p: string, uid: number, gid: number, cb: (er?: unknown) => any) => void;
-export declare const chownrSync: (p: string, uid: number, gid: number) => void;
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/chownr/dist/esm/index.d.ts.map b/node_modules/chownr/dist/esm/index.d.ts.map
deleted file mode 100644
index bda37a0..0000000
--- a/node_modules/chownr/dist/esm/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AA0CA,eAAO,MAAM,MAAM,MACd,MAAM,OACJ,MAAM,OACN,MAAM,YACD,OAAO,KAAK,GAAG,SA0B1B,CAAA;AAcD,eAAO,MAAM,UAAU,MAAO,MAAM,OAAO,MAAM,OAAO,MAAM,SAiB7D,CAAA"}
\ No newline at end of file
diff --git a/node_modules/chownr/dist/esm/index.js b/node_modules/chownr/dist/esm/index.js
deleted file mode 100644
index 5c28152..0000000
--- a/node_modules/chownr/dist/esm/index.js
+++ /dev/null
@@ -1,85 +0,0 @@
-import fs from 'node:fs';
-import path from 'node:path';
-const lchownSync = (path, uid, gid) => {
- try {
- return fs.lchownSync(path, uid, gid);
- }
- catch (er) {
- if (er?.code !== 'ENOENT')
- throw er;
- }
-};
-const chown = (cpath, uid, gid, cb) => {
- fs.lchown(cpath, uid, gid, er => {
- // Skip ENOENT error
- cb(er && er?.code !== 'ENOENT' ? er : null);
- });
-};
-const chownrKid = (p, child, uid, gid, cb) => {
- if (child.isDirectory()) {
- chownr(path.resolve(p, child.name), uid, gid, (er) => {
- if (er)
- return cb(er);
- const cpath = path.resolve(p, child.name);
- chown(cpath, uid, gid, cb);
- });
- }
- else {
- const cpath = path.resolve(p, child.name);
- chown(cpath, uid, gid, cb);
- }
-};
-export const chownr = (p, uid, gid, cb) => {
- fs.readdir(p, { withFileTypes: true }, (er, children) => {
- // any error other than ENOTDIR or ENOTSUP means it's not readable,
- // or doesn't exist. give up.
- if (er) {
- if (er.code === 'ENOENT')
- return cb();
- else if (er.code !== 'ENOTDIR' && er.code !== 'ENOTSUP')
- return cb(er);
- }
- if (er || !children.length)
- return chown(p, uid, gid, cb);
- let len = children.length;
- let errState = null;
- const then = (er) => {
- /* c8 ignore start */
- if (errState)
- return;
- /* c8 ignore stop */
- if (er)
- return cb((errState = er));
- if (--len === 0)
- return chown(p, uid, gid, cb);
- };
- for (const child of children) {
- chownrKid(p, child, uid, gid, then);
- }
- });
-};
-const chownrKidSync = (p, child, uid, gid) => {
- if (child.isDirectory())
- chownrSync(path.resolve(p, child.name), uid, gid);
- lchownSync(path.resolve(p, child.name), uid, gid);
-};
-export const chownrSync = (p, uid, gid) => {
- let children;
- try {
- children = fs.readdirSync(p, { withFileTypes: true });
- }
- catch (er) {
- const e = er;
- if (e?.code === 'ENOENT')
- return;
- else if (e?.code === 'ENOTDIR' || e?.code === 'ENOTSUP')
- return lchownSync(p, uid, gid);
- else
- throw e;
- }
- for (const child of children) {
- chownrKidSync(p, child, uid, gid);
- }
- return lchownSync(p, uid, gid);
-};
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/chownr/dist/esm/index.js.map b/node_modules/chownr/dist/esm/index.js.map
deleted file mode 100644
index 0e35028..0000000
--- a/node_modules/chownr/dist/esm/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import fs, { type Dirent } from 'node:fs'\nimport path from 'node:path'\n\nconst lchownSync = (path: string, uid: number, gid: number) => {\n try {\n return fs.lchownSync(path, uid, gid)\n } catch (er) {\n if ((er as NodeJS.ErrnoException)?.code !== 'ENOENT') throw er\n }\n}\n\nconst chown = (\n cpath: string,\n uid: number,\n gid: number,\n cb: (er?: unknown) => any,\n) => {\n fs.lchown(cpath, uid, gid, er => {\n // Skip ENOENT error\n cb(er && (er as NodeJS.ErrnoException)?.code !== 'ENOENT' ? er : null)\n })\n}\n\nconst chownrKid = (\n p: string,\n child: Dirent,\n uid: number,\n gid: number,\n cb: (er?: unknown) => any,\n) => {\n if (child.isDirectory()) {\n chownr(path.resolve(p, child.name), uid, gid, (er: unknown) => {\n if (er) return cb(er)\n const cpath = path.resolve(p, child.name)\n chown(cpath, uid, gid, cb)\n })\n } else {\n const cpath = path.resolve(p, child.name)\n chown(cpath, uid, gid, cb)\n }\n}\n\nexport const chownr = (\n p: string,\n uid: number,\n gid: number,\n cb: (er?: unknown) => any,\n) => {\n fs.readdir(p, { withFileTypes: true }, (er, children) => {\n // any error other than ENOTDIR or ENOTSUP means it's not readable,\n // or doesn't exist. give up.\n if (er) {\n if (er.code === 'ENOENT') return cb()\n else if (er.code !== 'ENOTDIR' && er.code !== 'ENOTSUP')\n return cb(er)\n }\n if (er || !children.length) return chown(p, uid, gid, cb)\n\n let len = children.length\n let errState: null | NodeJS.ErrnoException = null\n const then = (er?: unknown) => {\n /* c8 ignore start */\n if (errState) return\n /* c8 ignore stop */\n if (er) return cb((errState = er as NodeJS.ErrnoException))\n if (--len === 0) return chown(p, uid, gid, cb)\n }\n\n for (const child of children) {\n chownrKid(p, child, uid, gid, then)\n }\n })\n}\n\nconst chownrKidSync = (\n p: string,\n child: Dirent,\n uid: number,\n gid: number,\n) => {\n if (child.isDirectory())\n chownrSync(path.resolve(p, child.name), uid, gid)\n\n lchownSync(path.resolve(p, child.name), uid, gid)\n}\n\nexport const chownrSync = (p: string, uid: number, gid: number) => {\n let children: Dirent[]\n try {\n children = fs.readdirSync(p, { withFileTypes: true })\n } catch (er) {\n const e = er as NodeJS.ErrnoException\n if (e?.code === 'ENOENT') return\n else if (e?.code === 'ENOTDIR' || e?.code === 'ENOTSUP')\n return lchownSync(p, uid, gid)\n else throw e\n }\n\n for (const child of children) {\n chownrKidSync(p, child, uid, gid)\n }\n\n return lchownSync(p, uid, gid)\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/chownr/dist/esm/package.json b/node_modules/chownr/dist/esm/package.json
deleted file mode 100644
index 3dbc1ca..0000000
--- a/node_modules/chownr/dist/esm/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "type": "module"
-}
diff --git a/node_modules/chownr/package.json b/node_modules/chownr/package.json
deleted file mode 100644
index 09aa6b2..0000000
--- a/node_modules/chownr/package.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "author": "Isaac Z. Schlueter (http://blog.izs.me/)",
- "name": "chownr",
- "description": "like `chown -R`",
- "version": "3.0.0",
- "repository": {
- "type": "git",
- "url": "git://github.com/isaacs/chownr.git"
- },
- "files": [
- "dist"
- ],
- "devDependencies": {
- "@types/node": "^20.12.5",
- "mkdirp": "^3.0.1",
- "prettier": "^3.2.5",
- "rimraf": "^5.0.5",
- "tap": "^18.7.2",
- "tshy": "^1.13.1",
- "typedoc": "^0.25.12"
- },
- "scripts": {
- "prepare": "tshy",
- "pretest": "npm run prepare",
- "test": "tap",
- "preversion": "npm test",
- "postversion": "npm publish",
- "prepublishOnly": "git push origin --follow-tags",
- "format": "prettier --write . --loglevel warn",
- "typedoc": "typedoc --tsconfig .tshy/esm.json ./src/*.ts"
- },
- "license": "BlueOak-1.0.0",
- "engines": {
- "node": ">=18"
- },
- "tshy": {
- "exports": {
- "./package.json": "./package.json",
- ".": "./src/index.ts"
- }
- },
- "exports": {
- "./package.json": "./package.json",
- ".": {
- "import": {
- "types": "./dist/esm/index.d.ts",
- "default": "./dist/esm/index.js"
- },
- "require": {
- "types": "./dist/commonjs/index.d.ts",
- "default": "./dist/commonjs/index.js"
- }
- }
- },
- "main": "./dist/commonjs/index.js",
- "types": "./dist/commonjs/index.d.ts",
- "type": "module",
- "prettier": {
- "semi": false,
- "printWidth": 75,
- "tabWidth": 2,
- "useTabs": false,
- "singleQuote": true,
- "jsxSingleQuote": false,
- "bracketSameLine": true,
- "arrowParens": "avoid",
- "endOfLine": "lf"
- }
-}
diff --git a/node_modules/cmd-shim/LICENSE b/node_modules/cmd-shim/LICENSE
deleted file mode 100644
index 20a4762..0000000
--- a/node_modules/cmd-shim/LICENSE
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) npm, Inc. and Contributors
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/node_modules/cmd-shim/README.md b/node_modules/cmd-shim/README.md
deleted file mode 100644
index 3fb282f..0000000
--- a/node_modules/cmd-shim/README.md
+++ /dev/null
@@ -1,34 +0,0 @@
-# cmd-shim
-
-The cmd-shim used in npm to create executable scripts on Windows,
-since symlinks are not suitable for this purpose there.
-
-On Unix systems, you should use a symbolic link instead.
-
-[](https://github.com/npm/cmd-shim)
-[](https://libraries.io/npm/cmd-shim)
-[](https://www.npmjs.com/package/cmd-shim)
-
-## Installation
-
-```
-npm install cmd-shim
-```
-
-## API
-
-### cmdShim(from, to) -> Promise
-
-Create a cmd shim at `to` for the command line program at `from`.
-e.g.
-
-```javascript
-var cmdShim = require('cmd-shim');
-cmdShim(__dirname + '/cli.js', '/usr/bin/command-name').then(() => {
- // shims are created!
-})
-```
-
-### cmdShim.ifExists(from, to) -> Promise
-
-The same as above, but will just continue if the file does not exist.
diff --git a/node_modules/cmd-shim/lib/index.js b/node_modules/cmd-shim/lib/index.js
deleted file mode 100644
index c13890a..0000000
--- a/node_modules/cmd-shim/lib/index.js
+++ /dev/null
@@ -1,247 +0,0 @@
-// On windows, create a .cmd file.
-// Read the #! in the file to see what it uses. The vast majority
-// of the time, this will be either:
-// "#!/usr/bin/env "
-// or:
-// "#! "
-//
-// Write a binroot/pkg.bin + ".cmd" file that has this line in it:
-// @ %dp0% %*
-
-const {
- chmod,
- mkdir,
- readFile,
- stat,
- unlink,
- writeFile,
-} = require('fs/promises')
-
-const { dirname, relative } = require('path')
-const toBatchSyntax = require('./to-batch-syntax')
-// linting disabled because this regex is really long
-// eslint-disable-next-line max-len
-const shebangExpr = /^#!\s*(?:\/usr\/bin\/env\s+(?:-S\s+)?((?:[^ \t=]+=[^ \t=]+\s+)*))?([^ \t]+)(.*)$/
-
-const cmdShimIfExists = (from, to) =>
- stat(from).then(() => cmdShim(from, to), () => {})
-
-// Try to unlink, but ignore errors.
-// Any problems will surface later.
-const rm = path => unlink(path).catch(() => {})
-
-const cmdShim = (from, to) =>
- stat(from).then(() => cmdShim_(from, to))
-
-const cmdShim_ = (from, to) => Promise.all([
- rm(to),
- rm(to + '.cmd'),
- rm(to + '.ps1'),
-]).then(() => writeShim(from, to))
-
-const writeShim = (from, to) =>
- // make a cmd file and a sh script
- // First, check if the bin is a #! of some sort.
- // If not, then assume it's something that'll be compiled, or some other
- // sort of script, and just call it directly.
- mkdir(dirname(to), { recursive: true })
- .then(() => readFile(from, 'utf8'))
- .then(data => {
- const firstLine = data.trim().split(/\r*\n/)[0]
- const shebang = firstLine.match(shebangExpr)
- if (!shebang) {
- return writeShim_(from, to)
- }
- const vars = shebang[1] || ''
- const prog = shebang[2]
- const args = shebang[3] || ''
- return writeShim_(from, to, prog, args, vars)
- }, () => writeShim_(from, to))
-
-const writeShim_ = (from, to, prog, args, variables) => {
- let shTarget = relative(dirname(to), from)
- let target = shTarget.split('/').join('\\')
- let longProg
- let shProg = prog && prog.split('\\').join('/')
- let shLongProg
- let pwshProg = shProg && `"${shProg}$exe"`
- let pwshLongProg
- shTarget = shTarget.split('\\').join('/')
- args = args || ''
- variables = variables || ''
- if (!prog) {
- prog = `"%dp0%\\${target}"`
- shProg = `"$basedir/${shTarget}"`
- pwshProg = shProg
- args = ''
- target = ''
- shTarget = ''
- } else {
- longProg = `"%dp0%\\${prog}.exe"`
- shLongProg = `"$basedir/${prog}"`
- pwshLongProg = `"$basedir/${prog}$exe"`
- target = `"%dp0%\\${target}"`
- shTarget = `"$basedir/${shTarget}"`
- }
-
- // Subroutine trick to fix https://github.com/npm/cmd-shim/issues/10
- // and https://github.com/npm/cli/issues/969
- const head = '@ECHO off\r\n' +
- 'GOTO start\r\n' +
- ':find_dp0\r\n' +
- 'SET dp0=%~dp0\r\n' +
- 'EXIT /b\r\n' +
- ':start\r\n' +
- 'SETLOCAL\r\n' +
- 'CALL :find_dp0\r\n'
-
- let cmd
- if (longProg) {
- shLongProg = shLongProg.trim()
- args = args.trim()
- const variablesBatch = toBatchSyntax.convertToSetCommands(variables)
- cmd = head
- + variablesBatch
- + '\r\n'
- + `IF EXIST ${longProg} (\r\n`
- + ` SET "_prog=${longProg.replace(/(^")|("$)/g, '')}"\r\n`
- + ') ELSE (\r\n'
- + ` SET "_prog=${prog.replace(/(^")|("$)/g, '')}"\r\n`
- + ' SET PATHEXT=%PATHEXT:;.JS;=;%\r\n'
- + ')\r\n'
- + '\r\n'
- // prevent "Terminate Batch Job? (Y/n)" message
- // https://github.com/npm/cli/issues/969#issuecomment-737496588
- + 'endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & '
- + `"%_prog%" ${args} ${target} %*\r\n`
- } else {
- cmd = `${head}${prog} ${args} ${target} %*\r\n`
- }
-
- // #!/bin/sh
- // basedir=`dirname "$0"`
- //
- // case `uname` in
- // *CYGWIN*|*MINGW*|*MSYS*)
- // if command -v cygpath > /dev/null 2>&1; then
- // basedir=`cygpath -w "$basedir"`
- // fi
- // ;;
- // esac
- //
- // if [ -x "$basedir/node.exe" ]; then
- // exec "$basedir/node.exe" "$basedir/node_modules/npm/bin/npm-cli.js" "$@"
- // else
- // exec node "$basedir/node_modules/npm/bin/npm-cli.js" "$@"
- // fi
-
- let sh = '#!/bin/sh\n'
-
- sh = sh
- + `basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')")\n`
- + '\n'
- + 'case `uname` in\n'
- + ' *CYGWIN*|*MINGW*|*MSYS*)\n'
- + ' if command -v cygpath > /dev/null 2>&1; then\n'
- + ' basedir=`cygpath -w "$basedir"`\n'
- + ' fi\n'
- + ' ;;\n'
- + 'esac\n'
- + '\n'
-
- if (shLongProg) {
- sh = sh
- + `if [ -x ${shLongProg} ]; then\n`
- + ` exec ${variables}${shLongProg} ${args} ${shTarget} "$@"\n`
- + 'else \n'
- + ` exec ${variables}${shProg} ${args} ${shTarget} "$@"\n`
- + 'fi\n'
- } else {
- sh = sh
- + `exec ${shProg} ${args} ${shTarget} "$@"\n`
- }
-
- // #!/usr/bin/env pwsh
- // $basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
- //
- // $ret=0
- // $exe = ""
- // if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
- // # Fix case when both the Windows and Linux builds of Node
- // # are installed in the same directory
- // $exe = ".exe"
- // }
- // if (Test-Path "$basedir/node") {
- // # Suport pipeline input
- // if ($MyInvocation.ExpectingInput) {
- // input | & "$basedir/node$exe" "$basedir/node_modules/npm/bin/npm-cli.js" $args
- // } else {
- // & "$basedir/node$exe" "$basedir/node_modules/npm/bin/npm-cli.js" $args
- // }
- // $ret=$LASTEXITCODE
- // } else {
- // # Support pipeline input
- // if ($MyInvocation.ExpectingInput) {
- // $input | & "node$exe" "$basedir/node_modules/npm/bin/npm-cli.js" $args
- // } else {
- // & "node$exe" "$basedir/node_modules/npm/bin/npm-cli.js" $args
- // }
- // $ret=$LASTEXITCODE
- // }
- // exit $ret
- let pwsh = '#!/usr/bin/env pwsh\n'
- + '$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent\n'
- + '\n'
- + '$exe=""\n'
- + 'if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {\n'
- + ' # Fix case when both the Windows and Linux builds of Node\n'
- + ' # are installed in the same directory\n'
- + ' $exe=".exe"\n'
- + '}\n'
- if (shLongProg) {
- pwsh = pwsh
- + '$ret=0\n'
- + `if (Test-Path ${pwshLongProg}) {\n`
- + ' # Support pipeline input\n'
- + ' if ($MyInvocation.ExpectingInput) {\n'
- + ` $input | & ${pwshLongProg} ${args} ${shTarget} $args\n`
- + ' } else {\n'
- + ` & ${pwshLongProg} ${args} ${shTarget} $args\n`
- + ' }\n'
- + ' $ret=$LASTEXITCODE\n'
- + '} else {\n'
- + ' # Support pipeline input\n'
- + ' if ($MyInvocation.ExpectingInput) {\n'
- + ` $input | & ${pwshProg} ${args} ${shTarget} $args\n`
- + ' } else {\n'
- + ` & ${pwshProg} ${args} ${shTarget} $args\n`
- + ' }\n'
- + ' $ret=$LASTEXITCODE\n'
- + '}\n'
- + 'exit $ret\n'
- } else {
- pwsh = pwsh
- + '# Support pipeline input\n'
- + 'if ($MyInvocation.ExpectingInput) {\n'
- + ` $input | & ${pwshProg} ${args} ${shTarget} $args\n`
- + '} else {\n'
- + ` & ${pwshProg} ${args} ${shTarget} $args\n`
- + '}\n'
- + 'exit $LASTEXITCODE\n'
- }
-
- return Promise.all([
- writeFile(to + '.ps1', pwsh, 'utf8'),
- writeFile(to + '.cmd', cmd, 'utf8'),
- writeFile(to, sh, 'utf8'),
- ]).then(() => chmodShim(to))
-}
-
-const chmodShim = to => Promise.all([
- chmod(to, 0o755),
- chmod(to + '.cmd', 0o755),
- chmod(to + '.ps1', 0o755),
-])
-
-module.exports = cmdShim
-cmdShim.ifExists = cmdShimIfExists
diff --git a/node_modules/cmd-shim/lib/to-batch-syntax.js b/node_modules/cmd-shim/lib/to-batch-syntax.js
deleted file mode 100644
index 86a3f01..0000000
--- a/node_modules/cmd-shim/lib/to-batch-syntax.js
+++ /dev/null
@@ -1,49 +0,0 @@
-exports.replaceDollarWithPercentPair = replaceDollarWithPercentPair
-exports.convertToSetCommand = convertToSetCommand
-exports.convertToSetCommands = convertToSetCommands
-
-function convertToSetCommand (key, value) {
- var line = ''
- key = key || ''
- key = key.trim()
- value = value || ''
- value = value.trim()
- if (key && value && value.length > 0) {
- line = '@SET ' + key + '=' + replaceDollarWithPercentPair(value) + '\r\n'
- }
- return line
-}
-
-function extractVariableValuePairs (declarations) {
- var pairs = {}
- declarations.map(function (declaration) {
- var split = declaration.split('=')
- pairs[split[0]] = split[1]
- })
- return pairs
-}
-
-function convertToSetCommands (variableString) {
- var variableValuePairs = extractVariableValuePairs(variableString.split(' '))
- var variableDeclarationsAsBatch = ''
- Object.keys(variableValuePairs).forEach(function (key) {
- variableDeclarationsAsBatch += convertToSetCommand(key, variableValuePairs[key])
- })
- return variableDeclarationsAsBatch
-}
-
-function replaceDollarWithPercentPair (value) {
- var dollarExpressions = /\$\{?([^$@#?\- \t{}:]+)\}?/g
- var result = ''
- var startIndex = 0
- do {
- var match = dollarExpressions.exec(value)
- if (match) {
- var betweenMatches = value.substring(startIndex, match.index) || ''
- result += betweenMatches + '%' + match[1] + '%'
- startIndex = dollarExpressions.lastIndex
- }
- } while (dollarExpressions.lastIndex > 0)
- result += value.slice(startIndex)
- return result
-}
diff --git a/node_modules/cmd-shim/package.json b/node_modules/cmd-shim/package.json
deleted file mode 100644
index 5f2e85d..0000000
--- a/node_modules/cmd-shim/package.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "name": "cmd-shim",
- "version": "7.0.0",
- "description": "Used in npm for command line application support",
- "scripts": {
- "test": "tap",
- "snap": "tap",
- "lint": "npm run eslint",
- "postlint": "template-oss-check",
- "template-oss-apply": "template-oss-apply --force",
- "lintfix": "npm run eslint -- --fix",
- "posttest": "npm run lint",
- "eslint": "eslint \"**/*.{js,cjs,ts,mjs,jsx,tsx}\""
- },
- "repository": {
- "type": "git",
- "url": "git+https://github.com/npm/cmd-shim.git"
- },
- "license": "ISC",
- "devDependencies": {
- "@npmcli/eslint-config": "^5.0.0",
- "@npmcli/template-oss": "4.23.1",
- "tap": "^16.0.1"
- },
- "files": [
- "bin/",
- "lib/"
- ],
- "main": "lib/index.js",
- "tap": {
- "before": "test/00-setup.js",
- "after": "test/zz-cleanup.js",
- "check-coverage": true,
- "nyc-arg": [
- "--exclude",
- "tap-snapshots/**"
- ]
- },
- "engines": {
- "node": "^18.17.0 || >=20.5.0"
- },
- "author": "GitHub Inc.",
- "templateOSS": {
- "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "4.23.1",
- "publish": true
- }
-}
diff --git a/node_modules/data-uri-to-buffer/README.md b/node_modules/data-uri-to-buffer/README.md
deleted file mode 100644
index d0f2e05..0000000
--- a/node_modules/data-uri-to-buffer/README.md
+++ /dev/null
@@ -1,88 +0,0 @@
-data-uri-to-buffer
-==================
-### Generate a Buffer instance from a [Data URI][rfc] string
-[](https://travis-ci.org/TooTallNate/node-data-uri-to-buffer)
-
-This module accepts a ["data" URI][rfc] String of data, and returns a
-node.js `Buffer` instance with the decoded data.
-
-
-Installation
-------------
-
-Install with `npm`:
-
-``` bash
-$ npm install data-uri-to-buffer
-```
-
-
-Example
--------
-
-``` js
-import dataUriToBuffer from 'data-uri-to-buffer';
-
-// plain-text data is supported
-let uri = 'data:,Hello%2C%20World!';
-let decoded = dataUriToBuffer(uri);
-console.log(decoded.toString());
-// 'Hello, World!'
-
-// base64-encoded data is supported
-uri = 'data:text/plain;base64,SGVsbG8sIFdvcmxkIQ%3D%3D';
-decoded = dataUriToBuffer(uri);
-console.log(decoded.toString());
-// 'Hello, World!'
-```
-
-
-API
----
-
-### dataUriToBuffer(String uri) → Buffer
-
-The `type` property on the Buffer instance gets set to the main type portion of
-the "mediatype" portion of the "data" URI, or defaults to `"text/plain"` if not
-specified.
-
-The `typeFull` property on the Buffer instance gets set to the entire
-"mediatype" portion of the "data" URI (including all parameters), or defaults
-to `"text/plain;charset=US-ASCII"` if not specified.
-
-The `charset` property on the Buffer instance gets set to the Charset portion of
-the "mediatype" portion of the "data" URI, or defaults to `"US-ASCII"` if the
-entire type is not specified, or defaults to `""` otherwise.
-
-*Note*: If the only the main type is specified but not the charset, e.g.
-`"data:text/plain,abc"`, the charset is set to the empty string. The spec only
-defaults to US-ASCII as charset if the entire type is not specified.
-
-
-License
--------
-
-(The MIT License)
-
-Copyright (c) 2014 Nathan Rajlich <nathan@tootallnate.net>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-[rfc]: http://tools.ietf.org/html/rfc2397
diff --git a/node_modules/data-uri-to-buffer/dist/index.d.ts b/node_modules/data-uri-to-buffer/dist/index.d.ts
deleted file mode 100644
index 2a3d91e..0000000
--- a/node_modules/data-uri-to-buffer/dist/index.d.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-///
-export interface MimeBuffer extends Buffer {
- type: string;
- typeFull: string;
- charset: string;
-}
-/**
- * Returns a `Buffer` instance from the given data URI `uri`.
- *
- * @param {String} uri Data URI to turn into a Buffer instance
- * @returns {Buffer} Buffer instance from Data URI
- * @api public
- */
-export declare function dataUriToBuffer(uri: string): MimeBuffer;
-export default dataUriToBuffer;
diff --git a/node_modules/data-uri-to-buffer/dist/index.js b/node_modules/data-uri-to-buffer/dist/index.js
deleted file mode 100644
index 4ddd079..0000000
--- a/node_modules/data-uri-to-buffer/dist/index.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/**
- * Returns a `Buffer` instance from the given data URI `uri`.
- *
- * @param {String} uri Data URI to turn into a Buffer instance
- * @returns {Buffer} Buffer instance from Data URI
- * @api public
- */
-export function dataUriToBuffer(uri) {
- if (!/^data:/i.test(uri)) {
- throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');
- }
- // strip newlines
- uri = uri.replace(/\r?\n/g, '');
- // split the URI up into the "metadata" and the "data" portions
- const firstComma = uri.indexOf(',');
- if (firstComma === -1 || firstComma <= 4) {
- throw new TypeError('malformed data: URI');
- }
- // remove the "data:" scheme and parse the metadata
- const meta = uri.substring(5, firstComma).split(';');
- let charset = '';
- let base64 = false;
- const type = meta[0] || 'text/plain';
- let typeFull = type;
- for (let i = 1; i < meta.length; i++) {
- if (meta[i] === 'base64') {
- base64 = true;
- }
- else if (meta[i]) {
- typeFull += `;${meta[i]}`;
- if (meta[i].indexOf('charset=') === 0) {
- charset = meta[i].substring(8);
- }
- }
- }
- // defaults to US-ASCII only if type is not provided
- if (!meta[0] && !charset.length) {
- typeFull += ';charset=US-ASCII';
- charset = 'US-ASCII';
- }
- // get the encoded data portion and decode URI-encoded chars
- const encoding = base64 ? 'base64' : 'ascii';
- const data = unescape(uri.substring(firstComma + 1));
- const buffer = Buffer.from(data, encoding);
- // set `.type` and `.typeFull` properties to MIME type
- buffer.type = type;
- buffer.typeFull = typeFull;
- // set the `.charset` property
- buffer.charset = charset;
- return buffer;
-}
-export default dataUriToBuffer;
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/data-uri-to-buffer/dist/index.js.map b/node_modules/data-uri-to-buffer/dist/index.js.map
deleted file mode 100644
index 696504a..0000000
--- a/node_modules/data-uri-to-buffer/dist/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IAC1C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QACzB,MAAM,IAAI,SAAS,CAClB,kEAAkE,CAClE,CAAC;KACF;IAED,iBAAiB;IACjB,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAEhC,+DAA+D;IAC/D,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE;QACzC,MAAM,IAAI,SAAS,CAAC,qBAAqB,CAAC,CAAC;KAC3C;IAED,mDAAmD;IACnD,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAErD,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC;IACrC,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YACzB,MAAM,GAAG,IAAI,CAAC;SACd;aAAM,IAAG,IAAI,CAAC,CAAC,CAAC,EAAE;YAClB,QAAQ,IAAI,IAAM,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;gBACtC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aAC/B;SACD;KACD;IACD,oDAAoD;IACpD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;QAChC,QAAQ,IAAI,mBAAmB,CAAC;QAChC,OAAO,GAAG,UAAU,CAAC;KACrB;IAED,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;IAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAe,CAAC;IAEzD,sDAAsD;IACtD,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAE3B,8BAA8B;IAC9B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAEzB,OAAO,MAAM,CAAC;AACf,CAAC;AAED,eAAe,eAAe,CAAC"}
\ No newline at end of file
diff --git a/node_modules/data-uri-to-buffer/package.json b/node_modules/data-uri-to-buffer/package.json
deleted file mode 100644
index 9e42713..0000000
--- a/node_modules/data-uri-to-buffer/package.json
+++ /dev/null
@@ -1,62 +0,0 @@
-{
- "name": "data-uri-to-buffer",
- "version": "4.0.1",
- "description": "Generate a Buffer instance from a Data URI string",
- "type": "module",
- "exports": "./dist/index.js",
- "main": "./dist/index.js",
- "types": "./dist/index.d.ts",
- "files": [
- "dist",
- "src"
- ],
- "scripts": {
- "build": "tsc",
- "test": "jest",
- "prepublishOnly": "npm run build"
- },
- "repository": {
- "type": "git",
- "url": "git://github.com/TooTallNate/node-data-uri-to-buffer.git"
- },
- "engines": {
- "node": ">= 12"
- },
- "keywords": [
- "data",
- "uri",
- "datauri",
- "data-uri",
- "buffer",
- "convert",
- "rfc2397",
- "2397"
- ],
- "author": "Nathan Rajlich (http://n8.io/)",
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/TooTallNate/node-data-uri-to-buffer/issues"
- },
- "homepage": "https://github.com/TooTallNate/node-data-uri-to-buffer",
- "devDependencies": {
- "@types/jest": "^27.0.2",
- "@types/node": "^12.20.36",
- "jest": "^27.3.1",
- "ts-jest": "^27.0.7",
- "typescript": "^4.4.4"
- },
- "jest": {
- "preset": "ts-jest",
- "globals": {
- "ts-jest": {
- "diagnostics": false,
- "isolatedModules": true
- }
- },
- "verbose": false,
- "testEnvironment": "node",
- "testMatch": [
- "/test/**/*.test.ts"
- ]
- }
-}
diff --git a/node_modules/data-uri-to-buffer/src/index.ts b/node_modules/data-uri-to-buffer/src/index.ts
deleted file mode 100644
index 9e5749f..0000000
--- a/node_modules/data-uri-to-buffer/src/index.ts
+++ /dev/null
@@ -1,68 +0,0 @@
-export interface MimeBuffer extends Buffer {
- type: string;
- typeFull: string;
- charset: string;
-}
-
-/**
- * Returns a `Buffer` instance from the given data URI `uri`.
- *
- * @param {String} uri Data URI to turn into a Buffer instance
- * @returns {Buffer} Buffer instance from Data URI
- * @api public
- */
-export function dataUriToBuffer(uri: string): MimeBuffer {
- if (!/^data:/i.test(uri)) {
- throw new TypeError(
- '`uri` does not appear to be a Data URI (must begin with "data:")'
- );
- }
-
- // strip newlines
- uri = uri.replace(/\r?\n/g, '');
-
- // split the URI up into the "metadata" and the "data" portions
- const firstComma = uri.indexOf(',');
- if (firstComma === -1 || firstComma <= 4) {
- throw new TypeError('malformed data: URI');
- }
-
- // remove the "data:" scheme and parse the metadata
- const meta = uri.substring(5, firstComma).split(';');
-
- let charset = '';
- let base64 = false;
- const type = meta[0] || 'text/plain';
- let typeFull = type;
- for (let i = 1; i < meta.length; i++) {
- if (meta[i] === 'base64') {
- base64 = true;
- } else if(meta[i]) {
- typeFull += `;${ meta[i]}`;
- if (meta[i].indexOf('charset=') === 0) {
- charset = meta[i].substring(8);
- }
- }
- }
- // defaults to US-ASCII only if type is not provided
- if (!meta[0] && !charset.length) {
- typeFull += ';charset=US-ASCII';
- charset = 'US-ASCII';
- }
-
- // get the encoded data portion and decode URI-encoded chars
- const encoding = base64 ? 'base64' : 'ascii';
- const data = unescape(uri.substring(firstComma + 1));
- const buffer = Buffer.from(data, encoding) as MimeBuffer;
-
- // set `.type` and `.typeFull` properties to MIME type
- buffer.type = type;
- buffer.typeFull = typeFull;
-
- // set the `.charset` property
- buffer.charset = charset;
-
- return buffer;
-}
-
-export default dataUriToBuffer;
diff --git a/node_modules/debug/LICENSE b/node_modules/debug/LICENSE
deleted file mode 100644
index 1a9820e..0000000
--- a/node_modules/debug/LICENSE
+++ /dev/null
@@ -1,20 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2014-2017 TJ Holowaychuk
-Copyright (c) 2018-2021 Josh Junon
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the 'Software'), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
-LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
diff --git a/node_modules/debug/README.md b/node_modules/debug/README.md
deleted file mode 100644
index 9ebdfbf..0000000
--- a/node_modules/debug/README.md
+++ /dev/null
@@ -1,481 +0,0 @@
-# debug
-[](#backers)
-[](#sponsors)
-
-
-
-A tiny JavaScript debugging utility modelled after Node.js core's debugging
-technique. Works in Node.js and web browsers.
-
-## Installation
-
-```bash
-$ npm install debug
-```
-
-## Usage
-
-`debug` exposes a function; simply pass this function the name of your module, and it will return a decorated version of `console.error` for you to pass debug statements to. This will allow you to toggle the debug output for different parts of your module as well as the module as a whole.
-
-Example [_app.js_](./examples/node/app.js):
-
-```js
-var debug = require('debug')('http')
- , http = require('http')
- , name = 'My App';
-
-// fake app
-
-debug('booting %o', name);
-
-http.createServer(function(req, res){
- debug(req.method + ' ' + req.url);
- res.end('hello\n');
-}).listen(3000, function(){
- debug('listening');
-});
-
-// fake worker of some kind
-
-require('./worker');
-```
-
-Example [_worker.js_](./examples/node/worker.js):
-
-```js
-var a = require('debug')('worker:a')
- , b = require('debug')('worker:b');
-
-function work() {
- a('doing lots of uninteresting work');
- setTimeout(work, Math.random() * 1000);
-}
-
-work();
-
-function workb() {
- b('doing some work');
- setTimeout(workb, Math.random() * 2000);
-}
-
-workb();
-```
-
-The `DEBUG` environment variable is then used to enable these based on space or
-comma-delimited names.
-
-Here are some examples:
-
-
-
-
-
-#### Windows command prompt notes
-
-##### CMD
-
-On Windows the environment variable is set using the `set` command.
-
-```cmd
-set DEBUG=*,-not_this
-```
-
-Example:
-
-```cmd
-set DEBUG=* & node app.js
-```
-
-##### PowerShell (VS Code default)
-
-PowerShell uses different syntax to set environment variables.
-
-```cmd
-$env:DEBUG = "*,-not_this"
-```
-
-Example:
-
-```cmd
-$env:DEBUG='app';node app.js
-```
-
-Then, run the program to be debugged as usual.
-
-npm script example:
-```js
- "windowsDebug": "@powershell -Command $env:DEBUG='*';node app.js",
-```
-
-## Namespace Colors
-
-Every debug instance has a color generated for it based on its namespace name.
-This helps when visually parsing the debug output to identify which debug instance
-a debug line belongs to.
-
-#### Node.js
-
-In Node.js, colors are enabled when stderr is a TTY. You also _should_ install
-the [`supports-color`](https://npmjs.org/supports-color) module alongside debug,
-otherwise debug will only use a small handful of basic colors.
-
-
-
-#### Web Browser
-
-Colors are also enabled on "Web Inspectors" that understand the `%c` formatting
-option. These are WebKit web inspectors, Firefox ([since version
-31](https://hacks.mozilla.org/2014/05/editable-box-model-multiple-selection-sublime-text-keys-much-more-firefox-developer-tools-episode-31/))
-and the Firebug plugin for Firefox (any version).
-
-
-
-
-## Millisecond diff
-
-When actively developing an application it can be useful to see when the time spent between one `debug()` call and the next. Suppose for example you invoke `debug()` before requesting a resource, and after as well, the "+NNNms" will show you how much time was spent between calls.
-
-
-
-When stdout is not a TTY, `Date#toISOString()` is used, making it more useful for logging the debug information as shown below:
-
-
-
-
-## Conventions
-
-If you're using this in one or more of your libraries, you _should_ use the name of your library so that developers may toggle debugging as desired without guessing names. If you have more than one debuggers you _should_ prefix them with your library name and use ":" to separate features. For example "bodyParser" from Connect would then be "connect:bodyParser". If you append a "*" to the end of your name, it will always be enabled regardless of the setting of the DEBUG environment variable. You can then use it for normal output as well as debug output.
-
-## Wildcards
-
-The `*` character may be used as a wildcard. Suppose for example your library has
-debuggers named "connect:bodyParser", "connect:compress", "connect:session",
-instead of listing all three with
-`DEBUG=connect:bodyParser,connect:compress,connect:session`, you may simply do
-`DEBUG=connect:*`, or to run everything using this module simply use `DEBUG=*`.
-
-You can also exclude specific debuggers by prefixing them with a "-" character.
-For example, `DEBUG=*,-connect:*` would include all debuggers except those
-starting with "connect:".
-
-## Environment Variables
-
-When running through Node.js, you can set a few environment variables that will
-change the behavior of the debug logging:
-
-| Name | Purpose |
-|-----------|-------------------------------------------------|
-| `DEBUG` | Enables/disables specific debugging namespaces. |
-| `DEBUG_HIDE_DATE` | Hide date from debug output (non-TTY). |
-| `DEBUG_COLORS`| Whether or not to use colors in the debug output. |
-| `DEBUG_DEPTH` | Object inspection depth. |
-| `DEBUG_SHOW_HIDDEN` | Shows hidden properties on inspected objects. |
-
-
-__Note:__ The environment variables beginning with `DEBUG_` end up being
-converted into an Options object that gets used with `%o`/`%O` formatters.
-See the Node.js documentation for
-[`util.inspect()`](https://nodejs.org/api/util.html#util_util_inspect_object_options)
-for the complete list.
-
-## Formatters
-
-Debug uses [printf-style](https://wikipedia.org/wiki/Printf_format_string) formatting.
-Below are the officially supported formatters:
-
-| Formatter | Representation |
-|-----------|----------------|
-| `%O` | Pretty-print an Object on multiple lines. |
-| `%o` | Pretty-print an Object all on a single line. |
-| `%s` | String. |
-| `%d` | Number (both integer and float). |
-| `%j` | JSON. Replaced with the string '[Circular]' if the argument contains circular references. |
-| `%%` | Single percent sign ('%'). This does not consume an argument. |
-
-
-### Custom formatters
-
-You can add custom formatters by extending the `debug.formatters` object.
-For example, if you wanted to add support for rendering a Buffer as hex with
-`%h`, you could do something like:
-
-```js
-const createDebug = require('debug')
-createDebug.formatters.h = (v) => {
- return v.toString('hex')
-}
-
-// …elsewhere
-const debug = createDebug('foo')
-debug('this is hex: %h', new Buffer('hello world'))
-// foo this is hex: 68656c6c6f20776f726c6421 +0ms
-```
-
-
-## Browser Support
-
-You can build a browser-ready script using [browserify](https://github.com/substack/node-browserify),
-or just use the [browserify-as-a-service](https://wzrd.in/) [build](https://wzrd.in/standalone/debug@latest),
-if you don't want to build it yourself.
-
-Debug's enable state is currently persisted by `localStorage`.
-Consider the situation shown below where you have `worker:a` and `worker:b`,
-and wish to debug both. You can enable this using `localStorage.debug`:
-
-```js
-localStorage.debug = 'worker:*'
-```
-
-And then refresh the page.
-
-```js
-a = debug('worker:a');
-b = debug('worker:b');
-
-setInterval(function(){
- a('doing some work');
-}, 1000);
-
-setInterval(function(){
- b('doing some work');
-}, 1200);
-```
-
-In Chromium-based web browsers (e.g. Brave, Chrome, and Electron), the JavaScript console will—by default—only show messages logged by `debug` if the "Verbose" log level is _enabled_.
-
-
-
-## Output streams
-
- By default `debug` will log to stderr, however this can be configured per-namespace by overriding the `log` method:
-
-Example [_stdout.js_](./examples/node/stdout.js):
-
-```js
-var debug = require('debug');
-var error = debug('app:error');
-
-// by default stderr is used
-error('goes to stderr!');
-
-var log = debug('app:log');
-// set this namespace to log via console.log
-log.log = console.log.bind(console); // don't forget to bind to console!
-log('goes to stdout');
-error('still goes to stderr!');
-
-// set all output to go via console.info
-// overrides all per-namespace log settings
-debug.log = console.info.bind(console);
-error('now goes to stdout via console.info');
-log('still goes to stdout, but via console.info now');
-```
-
-## Extend
-You can simply extend debugger
-```js
-const log = require('debug')('auth');
-
-//creates new debug instance with extended namespace
-const logSign = log.extend('sign');
-const logLogin = log.extend('login');
-
-log('hello'); // auth hello
-logSign('hello'); //auth:sign hello
-logLogin('hello'); //auth:login hello
-```
-
-## Set dynamically
-
-You can also enable debug dynamically by calling the `enable()` method :
-
-```js
-let debug = require('debug');
-
-console.log(1, debug.enabled('test'));
-
-debug.enable('test');
-console.log(2, debug.enabled('test'));
-
-debug.disable();
-console.log(3, debug.enabled('test'));
-
-```
-
-print :
-```
-1 false
-2 true
-3 false
-```
-
-Usage :
-`enable(namespaces)`
-`namespaces` can include modes separated by a colon and wildcards.
-
-Note that calling `enable()` completely overrides previously set DEBUG variable :
-
-```
-$ DEBUG=foo node -e 'var dbg = require("debug"); dbg.enable("bar"); console.log(dbg.enabled("foo"))'
-=> false
-```
-
-`disable()`
-
-Will disable all namespaces. The functions returns the namespaces currently
-enabled (and skipped). This can be useful if you want to disable debugging
-temporarily without knowing what was enabled to begin with.
-
-For example:
-
-```js
-let debug = require('debug');
-debug.enable('foo:*,-foo:bar');
-let namespaces = debug.disable();
-debug.enable(namespaces);
-```
-
-Note: There is no guarantee that the string will be identical to the initial
-enable string, but semantically they will be identical.
-
-## Checking whether a debug target is enabled
-
-After you've created a debug instance, you can determine whether or not it is
-enabled by checking the `enabled` property:
-
-```javascript
-const debug = require('debug')('http');
-
-if (debug.enabled) {
- // do stuff...
-}
-```
-
-You can also manually toggle this property to force the debug instance to be
-enabled or disabled.
-
-## Usage in child processes
-
-Due to the way `debug` detects if the output is a TTY or not, colors are not shown in child processes when `stderr` is piped. A solution is to pass the `DEBUG_COLORS=1` environment variable to the child process.
-For example:
-
-```javascript
-worker = fork(WORKER_WRAP_PATH, [workerPath], {
- stdio: [
- /* stdin: */ 0,
- /* stdout: */ 'pipe',
- /* stderr: */ 'pipe',
- 'ipc',
- ],
- env: Object.assign({}, process.env, {
- DEBUG_COLORS: 1 // without this settings, colors won't be shown
- }),
-});
-
-worker.stderr.pipe(process.stderr, { end: false });
-```
-
-
-## Authors
-
- - TJ Holowaychuk
- - Nathan Rajlich
- - Andrew Rhyne
- - Josh Junon
-
-## Backers
-
-Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/debug#backer)]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-## Sponsors
-
-Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/debug#sponsor)]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-## License
-
-(The MIT License)
-
-Copyright (c) 2014-2017 TJ Holowaychuk <tj@vision-media.ca>
-Copyright (c) 2018-2021 Josh Junon
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/debug/package.json b/node_modules/debug/package.json
deleted file mode 100644
index 60dfcf5..0000000
--- a/node_modules/debug/package.json
+++ /dev/null
@@ -1,65 +0,0 @@
-{
- "name": "debug",
- "version": "4.4.0",
- "repository": {
- "type": "git",
- "url": "git://github.com/debug-js/debug.git"
- },
- "description": "Lightweight debugging utility for Node.js and the browser",
- "keywords": [
- "debug",
- "log",
- "debugger"
- ],
- "files": [
- "src",
- "LICENSE",
- "README.md"
- ],
- "author": "Josh Junon (https://github.com/qix-)",
- "contributors": [
- "TJ Holowaychuk ",
- "Nathan Rajlich (http://n8.io)",
- "Andrew Rhyne "
- ],
- "license": "MIT",
- "scripts": {
- "lint": "xo",
- "test": "npm run test:node && npm run test:browser && npm run lint",
- "test:node": "istanbul cover _mocha -- test.js test.node.js",
- "test:browser": "karma start --single-run",
- "test:coverage": "cat ./coverage/lcov.info | coveralls"
- },
- "dependencies": {
- "ms": "^2.1.3"
- },
- "devDependencies": {
- "brfs": "^2.0.1",
- "browserify": "^16.2.3",
- "coveralls": "^3.0.2",
- "istanbul": "^0.4.5",
- "karma": "^3.1.4",
- "karma-browserify": "^6.0.0",
- "karma-chrome-launcher": "^2.2.0",
- "karma-mocha": "^1.3.0",
- "mocha": "^5.2.0",
- "mocha-lcov-reporter": "^1.2.0",
- "sinon": "^14.0.0",
- "xo": "^0.23.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- },
- "main": "./src/index.js",
- "browser": "./src/browser.js",
- "engines": {
- "node": ">=6.0"
- },
- "xo": {
- "rules": {
- "import/extensions": "off"
- }
- }
-}
diff --git a/node_modules/debug/src/browser.js b/node_modules/debug/src/browser.js
deleted file mode 100644
index df8e179..0000000
--- a/node_modules/debug/src/browser.js
+++ /dev/null
@@ -1,272 +0,0 @@
-/* eslint-env browser */
-
-/**
- * This is the web browser implementation of `debug()`.
- */
-
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-exports.storage = localstorage();
-exports.destroy = (() => {
- let warned = false;
-
- return () => {
- if (!warned) {
- warned = true;
- console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');
- }
- };
-})();
-
-/**
- * Colors.
- */
-
-exports.colors = [
- '#0000CC',
- '#0000FF',
- '#0033CC',
- '#0033FF',
- '#0066CC',
- '#0066FF',
- '#0099CC',
- '#0099FF',
- '#00CC00',
- '#00CC33',
- '#00CC66',
- '#00CC99',
- '#00CCCC',
- '#00CCFF',
- '#3300CC',
- '#3300FF',
- '#3333CC',
- '#3333FF',
- '#3366CC',
- '#3366FF',
- '#3399CC',
- '#3399FF',
- '#33CC00',
- '#33CC33',
- '#33CC66',
- '#33CC99',
- '#33CCCC',
- '#33CCFF',
- '#6600CC',
- '#6600FF',
- '#6633CC',
- '#6633FF',
- '#66CC00',
- '#66CC33',
- '#9900CC',
- '#9900FF',
- '#9933CC',
- '#9933FF',
- '#99CC00',
- '#99CC33',
- '#CC0000',
- '#CC0033',
- '#CC0066',
- '#CC0099',
- '#CC00CC',
- '#CC00FF',
- '#CC3300',
- '#CC3333',
- '#CC3366',
- '#CC3399',
- '#CC33CC',
- '#CC33FF',
- '#CC6600',
- '#CC6633',
- '#CC9900',
- '#CC9933',
- '#CCCC00',
- '#CCCC33',
- '#FF0000',
- '#FF0033',
- '#FF0066',
- '#FF0099',
- '#FF00CC',
- '#FF00FF',
- '#FF3300',
- '#FF3333',
- '#FF3366',
- '#FF3399',
- '#FF33CC',
- '#FF33FF',
- '#FF6600',
- '#FF6633',
- '#FF9900',
- '#FF9933',
- '#FFCC00',
- '#FFCC33'
-];
-
-/**
- * Currently only WebKit-based Web Inspectors, Firefox >= v31,
- * and the Firebug extension (any Firefox version) are known
- * to support "%c" CSS customizations.
- *
- * TODO: add a `localStorage` variable to explicitly enable/disable colors
- */
-
-// eslint-disable-next-line complexity
-function useColors() {
- // NB: In an Electron preload script, document will be defined but not fully
- // initialized. Since we know we're in Chrome, we'll just detect this case
- // explicitly
- if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {
- return true;
- }
-
- // Internet Explorer and Edge do not support colors.
- if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
- return false;
- }
-
- let m;
-
- // Is webkit? http://stackoverflow.com/a/16459606/376773
- // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
- // eslint-disable-next-line no-return-assign
- return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
- // Is firebug? http://stackoverflow.com/a/398120/376773
- (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
- // Is firefox >= v31?
- // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
- (typeof navigator !== 'undefined' && navigator.userAgent && (m = navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)) && parseInt(m[1], 10) >= 31) ||
- // Double check webkit in userAgent just in case we are in a worker
- (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/));
-}
-
-/**
- * Colorize log arguments if enabled.
- *
- * @api public
- */
-
-function formatArgs(args) {
- args[0] = (this.useColors ? '%c' : '') +
- this.namespace +
- (this.useColors ? ' %c' : ' ') +
- args[0] +
- (this.useColors ? '%c ' : ' ') +
- '+' + module.exports.humanize(this.diff);
-
- if (!this.useColors) {
- return;
- }
-
- const c = 'color: ' + this.color;
- args.splice(1, 0, c, 'color: inherit');
-
- // The final "%c" is somewhat tricky, because there could be other
- // arguments passed either before or after the %c, so we need to
- // figure out the correct index to insert the CSS into
- let index = 0;
- let lastC = 0;
- args[0].replace(/%[a-zA-Z%]/g, match => {
- if (match === '%%') {
- return;
- }
- index++;
- if (match === '%c') {
- // We only are interested in the *last* %c
- // (the user may have provided their own)
- lastC = index;
- }
- });
-
- args.splice(lastC, 0, c);
-}
-
-/**
- * Invokes `console.debug()` when available.
- * No-op when `console.debug` is not a "function".
- * If `console.debug` is not available, falls back
- * to `console.log`.
- *
- * @api public
- */
-exports.log = console.debug || console.log || (() => {});
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-function save(namespaces) {
- try {
- if (namespaces) {
- exports.storage.setItem('debug', namespaces);
- } else {
- exports.storage.removeItem('debug');
- }
- } catch (error) {
- // Swallow
- // XXX (@Qix-) should we be logging these?
- }
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-function load() {
- let r;
- try {
- r = exports.storage.getItem('debug');
- } catch (error) {
- // Swallow
- // XXX (@Qix-) should we be logging these?
- }
-
- // If debug isn't set in LS, and we're in Electron, try to load $DEBUG
- if (!r && typeof process !== 'undefined' && 'env' in process) {
- r = process.env.DEBUG;
- }
-
- return r;
-}
-
-/**
- * Localstorage attempts to return the localstorage.
- *
- * This is necessary because safari throws
- * when a user disables cookies/localstorage
- * and you attempt to access it.
- *
- * @return {LocalStorage}
- * @api private
- */
-
-function localstorage() {
- try {
- // TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context
- // The Browser also has localStorage in the global context.
- return localStorage;
- } catch (error) {
- // Swallow
- // XXX (@Qix-) should we be logging these?
- }
-}
-
-module.exports = require('./common')(exports);
-
-const {formatters} = module.exports;
-
-/**
- * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
- */
-
-formatters.j = function (v) {
- try {
- return JSON.stringify(v);
- } catch (error) {
- return '[UnexpectedJSONParseError]: ' + error.message;
- }
-};
diff --git a/node_modules/debug/src/common.js b/node_modules/debug/src/common.js
deleted file mode 100644
index 528c7ec..0000000
--- a/node_modules/debug/src/common.js
+++ /dev/null
@@ -1,292 +0,0 @@
-
-/**
- * This is the common logic for both the Node.js and web browser
- * implementations of `debug()`.
- */
-
-function setup(env) {
- createDebug.debug = createDebug;
- createDebug.default = createDebug;
- createDebug.coerce = coerce;
- createDebug.disable = disable;
- createDebug.enable = enable;
- createDebug.enabled = enabled;
- createDebug.humanize = require('ms');
- createDebug.destroy = destroy;
-
- Object.keys(env).forEach(key => {
- createDebug[key] = env[key];
- });
-
- /**
- * The currently active debug mode names, and names to skip.
- */
-
- createDebug.names = [];
- createDebug.skips = [];
-
- /**
- * Map of special "%n" handling functions, for the debug "format" argument.
- *
- * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
- */
- createDebug.formatters = {};
-
- /**
- * Selects a color for a debug namespace
- * @param {String} namespace The namespace string for the debug instance to be colored
- * @return {Number|String} An ANSI color code for the given namespace
- * @api private
- */
- function selectColor(namespace) {
- let hash = 0;
-
- for (let i = 0; i < namespace.length; i++) {
- hash = ((hash << 5) - hash) + namespace.charCodeAt(i);
- hash |= 0; // Convert to 32bit integer
- }
-
- return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
- }
- createDebug.selectColor = selectColor;
-
- /**
- * Create a debugger with the given `namespace`.
- *
- * @param {String} namespace
- * @return {Function}
- * @api public
- */
- function createDebug(namespace) {
- let prevTime;
- let enableOverride = null;
- let namespacesCache;
- let enabledCache;
-
- function debug(...args) {
- // Disabled?
- if (!debug.enabled) {
- return;
- }
-
- const self = debug;
-
- // Set `diff` timestamp
- const curr = Number(new Date());
- const ms = curr - (prevTime || curr);
- self.diff = ms;
- self.prev = prevTime;
- self.curr = curr;
- prevTime = curr;
-
- args[0] = createDebug.coerce(args[0]);
-
- if (typeof args[0] !== 'string') {
- // Anything else let's inspect with %O
- args.unshift('%O');
- }
-
- // Apply any `formatters` transformations
- let index = 0;
- args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {
- // If we encounter an escaped % then don't increase the array index
- if (match === '%%') {
- return '%';
- }
- index++;
- const formatter = createDebug.formatters[format];
- if (typeof formatter === 'function') {
- const val = args[index];
- match = formatter.call(self, val);
-
- // Now we need to remove `args[index]` since it's inlined in the `format`
- args.splice(index, 1);
- index--;
- }
- return match;
- });
-
- // Apply env-specific formatting (colors, etc.)
- createDebug.formatArgs.call(self, args);
-
- const logFn = self.log || createDebug.log;
- logFn.apply(self, args);
- }
-
- debug.namespace = namespace;
- debug.useColors = createDebug.useColors();
- debug.color = createDebug.selectColor(namespace);
- debug.extend = extend;
- debug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.
-
- Object.defineProperty(debug, 'enabled', {
- enumerable: true,
- configurable: false,
- get: () => {
- if (enableOverride !== null) {
- return enableOverride;
- }
- if (namespacesCache !== createDebug.namespaces) {
- namespacesCache = createDebug.namespaces;
- enabledCache = createDebug.enabled(namespace);
- }
-
- return enabledCache;
- },
- set: v => {
- enableOverride = v;
- }
- });
-
- // Env-specific initialization logic for debug instances
- if (typeof createDebug.init === 'function') {
- createDebug.init(debug);
- }
-
- return debug;
- }
-
- function extend(namespace, delimiter) {
- const newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);
- newDebug.log = this.log;
- return newDebug;
- }
-
- /**
- * Enables a debug mode by namespaces. This can include modes
- * separated by a colon and wildcards.
- *
- * @param {String} namespaces
- * @api public
- */
- function enable(namespaces) {
- createDebug.save(namespaces);
- createDebug.namespaces = namespaces;
-
- createDebug.names = [];
- createDebug.skips = [];
-
- const split = (typeof namespaces === 'string' ? namespaces : '')
- .trim()
- .replace(' ', ',')
- .split(',')
- .filter(Boolean);
-
- for (const ns of split) {
- if (ns[0] === '-') {
- createDebug.skips.push(ns.slice(1));
- } else {
- createDebug.names.push(ns);
- }
- }
- }
-
- /**
- * Checks if the given string matches a namespace template, honoring
- * asterisks as wildcards.
- *
- * @param {String} search
- * @param {String} template
- * @return {Boolean}
- */
- function matchesTemplate(search, template) {
- let searchIndex = 0;
- let templateIndex = 0;
- let starIndex = -1;
- let matchIndex = 0;
-
- while (searchIndex < search.length) {
- if (templateIndex < template.length && (template[templateIndex] === search[searchIndex] || template[templateIndex] === '*')) {
- // Match character or proceed with wildcard
- if (template[templateIndex] === '*') {
- starIndex = templateIndex;
- matchIndex = searchIndex;
- templateIndex++; // Skip the '*'
- } else {
- searchIndex++;
- templateIndex++;
- }
- } else if (starIndex !== -1) { // eslint-disable-line no-negated-condition
- // Backtrack to the last '*' and try to match more characters
- templateIndex = starIndex + 1;
- matchIndex++;
- searchIndex = matchIndex;
- } else {
- return false; // No match
- }
- }
-
- // Handle trailing '*' in template
- while (templateIndex < template.length && template[templateIndex] === '*') {
- templateIndex++;
- }
-
- return templateIndex === template.length;
- }
-
- /**
- * Disable debug output.
- *
- * @return {String} namespaces
- * @api public
- */
- function disable() {
- const namespaces = [
- ...createDebug.names,
- ...createDebug.skips.map(namespace => '-' + namespace)
- ].join(',');
- createDebug.enable('');
- return namespaces;
- }
-
- /**
- * Returns true if the given mode name is enabled, false otherwise.
- *
- * @param {String} name
- * @return {Boolean}
- * @api public
- */
- function enabled(name) {
- for (const skip of createDebug.skips) {
- if (matchesTemplate(name, skip)) {
- return false;
- }
- }
-
- for (const ns of createDebug.names) {
- if (matchesTemplate(name, ns)) {
- return true;
- }
- }
-
- return false;
- }
-
- /**
- * Coerce `val`.
- *
- * @param {Mixed} val
- * @return {Mixed}
- * @api private
- */
- function coerce(val) {
- if (val instanceof Error) {
- return val.stack || val.message;
- }
- return val;
- }
-
- /**
- * XXX DO NOT USE. This is a temporary stub function.
- * XXX It WILL be removed in the next major release.
- */
- function destroy() {
- console.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');
- }
-
- createDebug.enable(createDebug.load());
-
- return createDebug;
-}
-
-module.exports = setup;
diff --git a/node_modules/debug/src/index.js b/node_modules/debug/src/index.js
deleted file mode 100644
index bf4c57f..0000000
--- a/node_modules/debug/src/index.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
- * Detect Electron renderer / nwjs process, which is node, but we should
- * treat as a browser.
- */
-
-if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
- module.exports = require('./browser.js');
-} else {
- module.exports = require('./node.js');
-}
diff --git a/node_modules/debug/src/node.js b/node_modules/debug/src/node.js
deleted file mode 100644
index 715560a..0000000
--- a/node_modules/debug/src/node.js
+++ /dev/null
@@ -1,263 +0,0 @@
-/**
- * Module dependencies.
- */
-
-const tty = require('tty');
-const util = require('util');
-
-/**
- * This is the Node.js implementation of `debug()`.
- */
-
-exports.init = init;
-exports.log = log;
-exports.formatArgs = formatArgs;
-exports.save = save;
-exports.load = load;
-exports.useColors = useColors;
-exports.destroy = util.deprecate(
- () => {},
- 'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'
-);
-
-/**
- * Colors.
- */
-
-exports.colors = [6, 2, 3, 4, 5, 1];
-
-try {
- // Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)
- // eslint-disable-next-line import/no-extraneous-dependencies
- const supportsColor = require('supports-color');
-
- if (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {
- exports.colors = [
- 20,
- 21,
- 26,
- 27,
- 32,
- 33,
- 38,
- 39,
- 40,
- 41,
- 42,
- 43,
- 44,
- 45,
- 56,
- 57,
- 62,
- 63,
- 68,
- 69,
- 74,
- 75,
- 76,
- 77,
- 78,
- 79,
- 80,
- 81,
- 92,
- 93,
- 98,
- 99,
- 112,
- 113,
- 128,
- 129,
- 134,
- 135,
- 148,
- 149,
- 160,
- 161,
- 162,
- 163,
- 164,
- 165,
- 166,
- 167,
- 168,
- 169,
- 170,
- 171,
- 172,
- 173,
- 178,
- 179,
- 184,
- 185,
- 196,
- 197,
- 198,
- 199,
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 209,
- 214,
- 215,
- 220,
- 221
- ];
- }
-} catch (error) {
- // Swallow - we only care if `supports-color` is available; it doesn't have to be.
-}
-
-/**
- * Build up the default `inspectOpts` object from the environment variables.
- *
- * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js
- */
-
-exports.inspectOpts = Object.keys(process.env).filter(key => {
- return /^debug_/i.test(key);
-}).reduce((obj, key) => {
- // Camel-case
- const prop = key
- .substring(6)
- .toLowerCase()
- .replace(/_([a-z])/g, (_, k) => {
- return k.toUpperCase();
- });
-
- // Coerce string value into JS value
- let val = process.env[key];
- if (/^(yes|on|true|enabled)$/i.test(val)) {
- val = true;
- } else if (/^(no|off|false|disabled)$/i.test(val)) {
- val = false;
- } else if (val === 'null') {
- val = null;
- } else {
- val = Number(val);
- }
-
- obj[prop] = val;
- return obj;
-}, {});
-
-/**
- * Is stdout a TTY? Colored output is enabled when `true`.
- */
-
-function useColors() {
- return 'colors' in exports.inspectOpts ?
- Boolean(exports.inspectOpts.colors) :
- tty.isatty(process.stderr.fd);
-}
-
-/**
- * Adds ANSI color escape codes if enabled.
- *
- * @api public
- */
-
-function formatArgs(args) {
- const {namespace: name, useColors} = this;
-
- if (useColors) {
- const c = this.color;
- const colorCode = '\u001B[3' + (c < 8 ? c : '8;5;' + c);
- const prefix = ` ${colorCode};1m${name} \u001B[0m`;
-
- args[0] = prefix + args[0].split('\n').join('\n' + prefix);
- args.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\u001B[0m');
- } else {
- args[0] = getDate() + name + ' ' + args[0];
- }
-}
-
-function getDate() {
- if (exports.inspectOpts.hideDate) {
- return '';
- }
- return new Date().toISOString() + ' ';
-}
-
-/**
- * Invokes `util.formatWithOptions()` with the specified arguments and writes to stderr.
- */
-
-function log(...args) {
- return process.stderr.write(util.formatWithOptions(exports.inspectOpts, ...args) + '\n');
-}
-
-/**
- * Save `namespaces`.
- *
- * @param {String} namespaces
- * @api private
- */
-function save(namespaces) {
- if (namespaces) {
- process.env.DEBUG = namespaces;
- } else {
- // If you set a process.env field to null or undefined, it gets cast to the
- // string 'null' or 'undefined'. Just delete instead.
- delete process.env.DEBUG;
- }
-}
-
-/**
- * Load `namespaces`.
- *
- * @return {String} returns the previously persisted debug modes
- * @api private
- */
-
-function load() {
- return process.env.DEBUG;
-}
-
-/**
- * Init logic for `debug` instances.
- *
- * Create a new `inspectOpts` object in case `useColors` is set
- * differently for a particular `debug` instance.
- */
-
-function init(debug) {
- debug.inspectOpts = {};
-
- const keys = Object.keys(exports.inspectOpts);
- for (let i = 0; i < keys.length; i++) {
- debug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];
- }
-}
-
-module.exports = require('./common')(exports);
-
-const {formatters} = module.exports;
-
-/**
- * Map %o to `util.inspect()`, all on a single line.
- */
-
-formatters.o = function (v) {
- this.inspectOpts.colors = this.useColors;
- return util.inspect(v, this.inspectOpts)
- .split('\n')
- .map(str => str.trim())
- .join(' ');
-};
-
-/**
- * Map %O to `util.inspect()`, allowing multiple lines if needed.
- */
-
-formatters.O = function (v) {
- this.inspectOpts.colors = this.useColors;
- return util.inspect(v, this.inspectOpts);
-};
diff --git a/node_modules/fetch-blob/LICENSE b/node_modules/fetch-blob/LICENSE
deleted file mode 100644
index 0d31723..0000000
--- a/node_modules/fetch-blob/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2019 David Frank
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/node_modules/fetch-blob/README.md b/node_modules/fetch-blob/README.md
deleted file mode 100644
index fb3e198..0000000
--- a/node_modules/fetch-blob/README.md
+++ /dev/null
@@ -1,106 +0,0 @@
-# fetch-blob
-
-[![npm version][npm-image]][npm-url]
-[![build status][ci-image]][ci-url]
-[![coverage status][codecov-image]][codecov-url]
-[![install size][install-size-image]][install-size-url]
-
-A Blob implementation in Node.js, originally from [node-fetch](https://github.com/node-fetch/node-fetch).
-
-## Installation
-
-```sh
-npm install fetch-blob
-```
-
-
- Upgrading from 2x to 3x
-
- Updating from 2 to 3 should be a breeze since there is not many changes to the blob specification.
- The major cause of a major release is coding standards.
- - internal WeakMaps was replaced with private fields
- - internal Buffer.from was replaced with TextEncoder/Decoder
- - internal buffers was replaced with Uint8Arrays
- - CommonJS was replaced with ESM
- - The node stream returned by calling `blob.stream()` was replaced with whatwg streams
- - (Read "Differences from other blobs" for more info.)
-
-
-
-
- Differences from other Blobs
-
- - Unlike NodeJS `buffer.Blob` (Added in: v15.7.0) and browser native Blob this polyfilled version can't be sent via PostMessage
- - This blob version is more arbitrary, it can be constructed with blob parts that isn't a instance of itself
- it has to look and behave as a blob to be accepted as a blob part.
- - The benefit of this is that you can create other types of blobs that don't contain any internal data that has to be read in other ways, such as the `BlobDataItem` created in `from.js` that wraps a file path into a blob-like item and read lazily (nodejs plans to [implement this][fs-blobs] as well)
- - The `blob.stream()` is the most noticeable differences. It returns a WHATWG stream now. to keep it as a node stream you would have to do:
-
- ```js
- import {Readable} from 'stream'
- const stream = Readable.from(blob.stream())
- ```
-
-
-## Usage
-
-```js
-// Ways to import
-// (PS it's dependency free ESM package so regular http-import from CDN works too)
-import Blob from 'fetch-blob'
-import File from 'fetch-blob/file.js'
-
-import {Blob} from 'fetch-blob'
-import {File} from 'fetch-blob/file.js'
-
-const {Blob} = await import('fetch-blob')
-
-
-// Ways to read the blob:
-const blob = new Blob(['hello, world'])
-
-await blob.text()
-await blob.arrayBuffer()
-for await (let chunk of blob.stream()) { ... }
-blob.stream().getReader().read()
-blob.stream().getReader({mode: 'byob'}).read(view)
-```
-
-### Blob part backed up by filesystem
-
-`fetch-blob/from.js` comes packed with tools to convert any filepath into either a Blob or a File
-It will not read the content into memory. It will only stat the file for last modified date and file size.
-
-```js
-// The default export is sync and use fs.stat to retrieve size & last modified as a blob
-import blobFromSync from 'fetch-blob/from.js'
-import {File, Blob, blobFrom, blobFromSync, fileFrom, fileFromSync} from 'fetch-blob/from.js'
-
-const fsFile = fileFromSync('./2-GiB-file.bin', 'application/octet-stream')
-const fsBlob = await blobFrom('./2-GiB-file.mp4')
-
-// Not a 4 GiB memory snapshot, just holds references
-// points to where data is located on the disk
-const blob = new Blob([fsFile, fsBlob, 'memory', new Uint8Array(10)])
-console.log(blob.size) // ~4 GiB
-```
-
-`blobFrom|blobFromSync|fileFrom|fileFromSync(path, [mimetype])`
-
-### Creating Blobs backed up by other async sources
-Our Blob & File class are more generic then any other polyfills in the way that it can accept any blob look-a-like item
-An example of this is that our blob implementation can be constructed with parts coming from [BlobDataItem](https://github.com/node-fetch/fetch-blob/blob/8ef89adad40d255a3bbd55cf38b88597c1cd5480/from.js#L32) (aka a filepath) or from [buffer.Blob](https://nodejs.org/api/buffer.html#buffer_new_buffer_blob_sources_options), It dose not have to implement all the methods - just enough that it can be read/understood by our Blob implementation. The minium requirements is that it has `Symbol.toStringTag`, `size`, `slice()` and either a `stream()` or a `arrayBuffer()` method. If you then wrap it in our Blob or File `new Blob([blobDataItem])` then you get all of the other methods that should be implemented in a blob or file
-
-An example of this could be to create a file or blob like item coming from a remote HTTP request. Or from a DataBase
-
-See the [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/API/Blob) and [tests](https://github.com/node-fetch/fetch-blob/blob/master/test.js) for more details of how to use the Blob.
-
-[npm-image]: https://flat.badgen.net/npm/v/fetch-blob
-[npm-url]: https://www.npmjs.com/package/fetch-blob
-[ci-image]: https://github.com/node-fetch/fetch-blob/workflows/CI/badge.svg
-[ci-url]: https://github.com/node-fetch/fetch-blob/actions
-[codecov-image]: https://flat.badgen.net/codecov/c/github/node-fetch/fetch-blob/master
-[codecov-url]: https://codecov.io/gh/node-fetch/fetch-blob
-[install-size-image]: https://flat.badgen.net/packagephobia/install/fetch-blob
-[install-size-url]: https://packagephobia.now.sh/result?p=fetch-blob
-[fs-blobs]: https://github.com/nodejs/node/issues/37340
diff --git a/node_modules/fetch-blob/file.d.ts b/node_modules/fetch-blob/file.d.ts
deleted file mode 100644
index d4b89bc..0000000
--- a/node_modules/fetch-blob/file.d.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-/** @type {typeof globalThis.File} */ export const File: typeof globalThis.File;
-export default File;
diff --git a/node_modules/fetch-blob/file.js b/node_modules/fetch-blob/file.js
deleted file mode 100644
index 7b26538..0000000
--- a/node_modules/fetch-blob/file.js
+++ /dev/null
@@ -1,49 +0,0 @@
-import Blob from './index.js'
-
-const _File = class File extends Blob {
- #lastModified = 0
- #name = ''
-
- /**
- * @param {*[]} fileBits
- * @param {string} fileName
- * @param {{lastModified?: number, type?: string}} options
- */// @ts-ignore
- constructor (fileBits, fileName, options = {}) {
- if (arguments.length < 2) {
- throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`)
- }
- super(fileBits, options)
-
- if (options === null) options = {}
-
- // Simulate WebIDL type casting for NaN value in lastModified option.
- const lastModified = options.lastModified === undefined ? Date.now() : Number(options.lastModified)
- if (!Number.isNaN(lastModified)) {
- this.#lastModified = lastModified
- }
-
- this.#name = String(fileName)
- }
-
- get name () {
- return this.#name
- }
-
- get lastModified () {
- return this.#lastModified
- }
-
- get [Symbol.toStringTag] () {
- return 'File'
- }
-
- static [Symbol.hasInstance] (object) {
- return !!object && object instanceof Blob &&
- /^(File)$/.test(object[Symbol.toStringTag])
- }
-}
-
-/** @type {typeof globalThis.File} */// @ts-ignore
-export const File = _File
-export default File
diff --git a/node_modules/fetch-blob/from.d.ts b/node_modules/fetch-blob/from.d.ts
deleted file mode 100644
index 530b99b..0000000
--- a/node_modules/fetch-blob/from.d.ts
+++ /dev/null
@@ -1,26 +0,0 @@
-export default blobFromSync;
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- */
-export function blobFromSync(path: string, type?: string): Blob;
-import File from "./file.js";
-import Blob from "./index.js";
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- * @returns {Promise}
- */
-export function blobFrom(path: string, type?: string): Promise;
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- * @returns {Promise}
- */
-export function fileFrom(path: string, type?: string): Promise;
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- */
-export function fileFromSync(path: string, type?: string): File;
-export { File, Blob };
diff --git a/node_modules/fetch-blob/from.js b/node_modules/fetch-blob/from.js
deleted file mode 100644
index 9eaf8bf..0000000
--- a/node_modules/fetch-blob/from.js
+++ /dev/null
@@ -1,100 +0,0 @@
-import { statSync, createReadStream, promises as fs } from 'node:fs'
-import { basename } from 'node:path'
-import DOMException from 'node-domexception'
-
-import File from './file.js'
-import Blob from './index.js'
-
-const { stat } = fs
-
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- */
-const blobFromSync = (path, type) => fromBlob(statSync(path), path, type)
-
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- * @returns {Promise}
- */
-const blobFrom = (path, type) => stat(path).then(stat => fromBlob(stat, path, type))
-
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- * @returns {Promise}
- */
-const fileFrom = (path, type) => stat(path).then(stat => fromFile(stat, path, type))
-
-/**
- * @param {string} path filepath on the disk
- * @param {string} [type] mimetype to use
- */
-const fileFromSync = (path, type) => fromFile(statSync(path), path, type)
-
-// @ts-ignore
-const fromBlob = (stat, path, type = '') => new Blob([new BlobDataItem({
- path,
- size: stat.size,
- lastModified: stat.mtimeMs,
- start: 0
-})], { type })
-
-// @ts-ignore
-const fromFile = (stat, path, type = '') => new File([new BlobDataItem({
- path,
- size: stat.size,
- lastModified: stat.mtimeMs,
- start: 0
-})], basename(path), { type, lastModified: stat.mtimeMs })
-
-/**
- * This is a blob backed up by a file on the disk
- * with minium requirement. Its wrapped around a Blob as a blobPart
- * so you have no direct access to this.
- *
- * @private
- */
-class BlobDataItem {
- #path
- #start
-
- constructor (options) {
- this.#path = options.path
- this.#start = options.start
- this.size = options.size
- this.lastModified = options.lastModified
- }
-
- /**
- * Slicing arguments is first validated and formatted
- * to not be out of range by Blob.prototype.slice
- */
- slice (start, end) {
- return new BlobDataItem({
- path: this.#path,
- lastModified: this.lastModified,
- size: end - start,
- start: this.#start + start
- })
- }
-
- async * stream () {
- const { mtimeMs } = await stat(this.#path)
- if (mtimeMs > this.lastModified) {
- throw new DOMException('The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.', 'NotReadableError')
- }
- yield * createReadStream(this.#path, {
- start: this.#start,
- end: this.#start + this.size - 1
- })
- }
-
- get [Symbol.toStringTag] () {
- return 'Blob'
- }
-}
-
-export default blobFromSync
-export { File, Blob, blobFrom, blobFromSync, fileFrom, fileFromSync }
diff --git a/node_modules/fetch-blob/index.d.ts b/node_modules/fetch-blob/index.d.ts
deleted file mode 100644
index 7a68957..0000000
--- a/node_modules/fetch-blob/index.d.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-/** @type {typeof globalThis.Blob} */
-export const Blob: typeof globalThis.Blob;
-export default Blob;
diff --git a/node_modules/fetch-blob/index.js b/node_modules/fetch-blob/index.js
deleted file mode 100644
index 2542ac2..0000000
--- a/node_modules/fetch-blob/index.js
+++ /dev/null
@@ -1,250 +0,0 @@
-/*! fetch-blob. MIT License. Jimmy Wärting */
-
-// TODO (jimmywarting): in the feature use conditional loading with top level await (requires 14.x)
-// Node has recently added whatwg stream into core
-
-import './streams.cjs'
-
-// 64 KiB (same size chrome slice theirs blob into Uint8array's)
-const POOL_SIZE = 65536
-
-/** @param {(Blob | Uint8Array)[]} parts */
-async function * toIterator (parts, clone = true) {
- for (const part of parts) {
- if ('stream' in part) {
- yield * (/** @type {AsyncIterableIterator} */ (part.stream()))
- } else if (ArrayBuffer.isView(part)) {
- if (clone) {
- let position = part.byteOffset
- const end = part.byteOffset + part.byteLength
- while (position !== end) {
- const size = Math.min(end - position, POOL_SIZE)
- const chunk = part.buffer.slice(position, position + size)
- position += chunk.byteLength
- yield new Uint8Array(chunk)
- }
- } else {
- yield part
- }
- /* c8 ignore next 10 */
- } else {
- // For blobs that have arrayBuffer but no stream method (nodes buffer.Blob)
- let position = 0, b = (/** @type {Blob} */ (part))
- while (position !== b.size) {
- const chunk = b.slice(position, Math.min(b.size, position + POOL_SIZE))
- const buffer = await chunk.arrayBuffer()
- position += buffer.byteLength
- yield new Uint8Array(buffer)
- }
- }
- }
-}
-
-const _Blob = class Blob {
- /** @type {Array.<(Blob|Uint8Array)>} */
- #parts = []
- #type = ''
- #size = 0
- #endings = 'transparent'
-
- /**
- * The Blob() constructor returns a new Blob object. The content
- * of the blob consists of the concatenation of the values given
- * in the parameter array.
- *
- * @param {*} blobParts
- * @param {{ type?: string, endings?: string }} [options]
- */
- constructor (blobParts = [], options = {}) {
- if (typeof blobParts !== 'object' || blobParts === null) {
- throw new TypeError('Failed to construct \'Blob\': The provided value cannot be converted to a sequence.')
- }
-
- if (typeof blobParts[Symbol.iterator] !== 'function') {
- throw new TypeError('Failed to construct \'Blob\': The object must have a callable @@iterator property.')
- }
-
- if (typeof options !== 'object' && typeof options !== 'function') {
- throw new TypeError('Failed to construct \'Blob\': parameter 2 cannot convert to dictionary.')
- }
-
- if (options === null) options = {}
-
- const encoder = new TextEncoder()
- for (const element of blobParts) {
- let part
- if (ArrayBuffer.isView(element)) {
- part = new Uint8Array(element.buffer.slice(element.byteOffset, element.byteOffset + element.byteLength))
- } else if (element instanceof ArrayBuffer) {
- part = new Uint8Array(element.slice(0))
- } else if (element instanceof Blob) {
- part = element
- } else {
- part = encoder.encode(`${element}`)
- }
-
- this.#size += ArrayBuffer.isView(part) ? part.byteLength : part.size
- this.#parts.push(part)
- }
-
- this.#endings = `${options.endings === undefined ? 'transparent' : options.endings}`
- const type = options.type === undefined ? '' : String(options.type)
- this.#type = /^[\x20-\x7E]*$/.test(type) ? type : ''
- }
-
- /**
- * The Blob interface's size property returns the
- * size of the Blob in bytes.
- */
- get size () {
- return this.#size
- }
-
- /**
- * The type property of a Blob object returns the MIME type of the file.
- */
- get type () {
- return this.#type
- }
-
- /**
- * The text() method in the Blob interface returns a Promise
- * that resolves with a string containing the contents of
- * the blob, interpreted as UTF-8.
- *
- * @return {Promise}
- */
- async text () {
- // More optimized than using this.arrayBuffer()
- // that requires twice as much ram
- const decoder = new TextDecoder()
- let str = ''
- for await (const part of toIterator(this.#parts, false)) {
- str += decoder.decode(part, { stream: true })
- }
- // Remaining
- str += decoder.decode()
- return str
- }
-
- /**
- * The arrayBuffer() method in the Blob interface returns a
- * Promise that resolves with the contents of the blob as
- * binary data contained in an ArrayBuffer.
- *
- * @return {Promise}
- */
- async arrayBuffer () {
- // Easier way... Just a unnecessary overhead
- // const view = new Uint8Array(this.size);
- // await this.stream().getReader({mode: 'byob'}).read(view);
- // return view.buffer;
-
- const data = new Uint8Array(this.size)
- let offset = 0
- for await (const chunk of toIterator(this.#parts, false)) {
- data.set(chunk, offset)
- offset += chunk.length
- }
-
- return data.buffer
- }
-
- stream () {
- const it = toIterator(this.#parts, true)
-
- return new globalThis.ReadableStream({
- // @ts-ignore
- type: 'bytes',
- async pull (ctrl) {
- const chunk = await it.next()
- chunk.done ? ctrl.close() : ctrl.enqueue(chunk.value)
- },
-
- async cancel () {
- await it.return()
- }
- })
- }
-
- /**
- * The Blob interface's slice() method creates and returns a
- * new Blob object which contains data from a subset of the
- * blob on which it's called.
- *
- * @param {number} [start]
- * @param {number} [end]
- * @param {string} [type]
- */
- slice (start = 0, end = this.size, type = '') {
- const { size } = this
-
- let relativeStart = start < 0 ? Math.max(size + start, 0) : Math.min(start, size)
- let relativeEnd = end < 0 ? Math.max(size + end, 0) : Math.min(end, size)
-
- const span = Math.max(relativeEnd - relativeStart, 0)
- const parts = this.#parts
- const blobParts = []
- let added = 0
-
- for (const part of parts) {
- // don't add the overflow to new blobParts
- if (added >= span) {
- break
- }
-
- const size = ArrayBuffer.isView(part) ? part.byteLength : part.size
- if (relativeStart && size <= relativeStart) {
- // Skip the beginning and change the relative
- // start & end position as we skip the unwanted parts
- relativeStart -= size
- relativeEnd -= size
- } else {
- let chunk
- if (ArrayBuffer.isView(part)) {
- chunk = part.subarray(relativeStart, Math.min(size, relativeEnd))
- added += chunk.byteLength
- } else {
- chunk = part.slice(relativeStart, Math.min(size, relativeEnd))
- added += chunk.size
- }
- relativeEnd -= size
- blobParts.push(chunk)
- relativeStart = 0 // All next sequential parts should start at 0
- }
- }
-
- const blob = new Blob([], { type: String(type).toLowerCase() })
- blob.#size = span
- blob.#parts = blobParts
-
- return blob
- }
-
- get [Symbol.toStringTag] () {
- return 'Blob'
- }
-
- static [Symbol.hasInstance] (object) {
- return (
- object &&
- typeof object === 'object' &&
- typeof object.constructor === 'function' &&
- (
- typeof object.stream === 'function' ||
- typeof object.arrayBuffer === 'function'
- ) &&
- /^(Blob|File)$/.test(object[Symbol.toStringTag])
- )
- }
-}
-
-Object.defineProperties(_Blob.prototype, {
- size: { enumerable: true },
- type: { enumerable: true },
- slice: { enumerable: true }
-})
-
-/** @type {typeof globalThis.Blob} */
-export const Blob = _Blob
-export default Blob
diff --git a/node_modules/fetch-blob/package.json b/node_modules/fetch-blob/package.json
deleted file mode 100644
index 9d07f39..0000000
--- a/node_modules/fetch-blob/package.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "name": "fetch-blob",
- "version": "3.2.0",
- "description": "Blob & File implementation in Node.js, originally from node-fetch.",
- "main": "index.js",
- "type": "module",
- "files": [
- "from.js",
- "file.js",
- "file.d.ts",
- "index.js",
- "index.d.ts",
- "from.d.ts",
- "streams.cjs"
- ],
- "scripts": {
- "test": "node --experimental-loader ./test/http-loader.js ./test/test-wpt-in-node.js",
- "report": "c8 --reporter json --reporter text npm run test",
- "coverage": "npm run report && codecov -f coverage/coverage-final.json",
- "prepublishOnly": "tsc --declaration --emitDeclarationOnly --allowJs index.js from.js"
- },
- "repository": "https://github.com/node-fetch/fetch-blob.git",
- "keywords": [
- "blob",
- "file",
- "node-fetch"
- ],
- "engines": {
- "node": "^12.20 || >= 14.13"
- },
- "author": "Jimmy Wärting (https://jimmy.warting.se)",
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/node-fetch/fetch-blob/issues"
- },
- "homepage": "https://github.com/node-fetch/fetch-blob#readme",
- "devDependencies": {
- "@types/node": "^17.0.9",
- "c8": "^7.11.0",
- "typescript": "^4.5.4"
- },
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/jimmywarting"
- },
- {
- "type": "paypal",
- "url": "https://paypal.me/jimmywarting"
- }
- ],
- "dependencies": {
- "node-domexception": "^1.0.0",
- "web-streams-polyfill": "^3.0.3"
- }
-}
diff --git a/node_modules/fetch-blob/streams.cjs b/node_modules/fetch-blob/streams.cjs
deleted file mode 100644
index f760959..0000000
--- a/node_modules/fetch-blob/streams.cjs
+++ /dev/null
@@ -1,51 +0,0 @@
-/* c8 ignore start */
-// 64 KiB (same size chrome slice theirs blob into Uint8array's)
-const POOL_SIZE = 65536
-
-if (!globalThis.ReadableStream) {
- // `node:stream/web` got introduced in v16.5.0 as experimental
- // and it's preferred over the polyfilled version. So we also
- // suppress the warning that gets emitted by NodeJS for using it.
- try {
- const process = require('node:process')
- const { emitWarning } = process
- try {
- process.emitWarning = () => {}
- Object.assign(globalThis, require('node:stream/web'))
- process.emitWarning = emitWarning
- } catch (error) {
- process.emitWarning = emitWarning
- throw error
- }
- } catch (error) {
- // fallback to polyfill implementation
- Object.assign(globalThis, require('web-streams-polyfill/dist/ponyfill.es2018.js'))
- }
-}
-
-try {
- // Don't use node: prefix for this, require+node: is not supported until node v14.14
- // Only `import()` can use prefix in 12.20 and later
- const { Blob } = require('buffer')
- if (Blob && !Blob.prototype.stream) {
- Blob.prototype.stream = function name (params) {
- let position = 0
- const blob = this
-
- return new ReadableStream({
- type: 'bytes',
- async pull (ctrl) {
- const chunk = blob.slice(position, Math.min(blob.size, position + POOL_SIZE))
- const buffer = await chunk.arrayBuffer()
- position += buffer.byteLength
- ctrl.enqueue(new Uint8Array(buffer))
-
- if (position === blob.size) {
- ctrl.close()
- }
- }
- })
- }
- }
-} catch (error) {}
-/* c8 ignore end */
diff --git a/node_modules/formdata-polyfill/FormData.js b/node_modules/formdata-polyfill/FormData.js
deleted file mode 100644
index 8e73660..0000000
--- a/node_modules/formdata-polyfill/FormData.js
+++ /dev/null
@@ -1,441 +0,0 @@
-/* formdata-polyfill. MIT License. Jimmy Wärting */
-
-/* global FormData self Blob File */
-/* eslint-disable no-inner-declarations */
-
-if (typeof Blob !== 'undefined' && (typeof FormData === 'undefined' || !FormData.prototype.keys)) {
- const global = typeof globalThis === 'object'
- ? globalThis
- : typeof window === 'object'
- ? window
- : typeof self === 'object' ? self : this
-
- // keep a reference to native implementation
- const _FormData = global.FormData
-
- // To be monkey patched
- const _send = global.XMLHttpRequest && global.XMLHttpRequest.prototype.send
- const _fetch = global.Request && global.fetch
- const _sendBeacon = global.navigator && global.navigator.sendBeacon
- // Might be a worker thread...
- const _match = global.Element && global.Element.prototype
-
- // Unable to patch Request/Response constructor correctly #109
- // only way is to use ES6 class extend
- // https://github.com/babel/babel/issues/1966
-
- const stringTag = global.Symbol && Symbol.toStringTag
-
- // Add missing stringTags to blob and files
- if (stringTag) {
- if (!Blob.prototype[stringTag]) {
- Blob.prototype[stringTag] = 'Blob'
- }
-
- if ('File' in global && !File.prototype[stringTag]) {
- File.prototype[stringTag] = 'File'
- }
- }
-
- // Fix so you can construct your own File
- try {
- new File([], '') // eslint-disable-line
- } catch (a) {
- global.File = function File (b, d, c) {
- const blob = new Blob(b, c || {})
- const t = c && void 0 !== c.lastModified ? new Date(c.lastModified) : new Date()
-
- Object.defineProperties(blob, {
- name: {
- value: d
- },
- lastModified: {
- value: +t
- },
- toString: {
- value () {
- return '[object File]'
- }
- }
- })
-
- if (stringTag) {
- Object.defineProperty(blob, stringTag, {
- value: 'File'
- })
- }
-
- return blob
- }
- }
-
- function ensureArgs (args, expected) {
- if (args.length < expected) {
- throw new TypeError(`${expected} argument required, but only ${args.length} present.`)
- }
- }
-
- /**
- * @param {string} name
- * @param {string | undefined} filename
- * @returns {[string, File|string]}
- */
- function normalizeArgs (name, value, filename) {
- if (value instanceof Blob) {
- filename = filename !== undefined
- ? String(filename + '')
- : typeof value.name === 'string'
- ? value.name
- : 'blob'
-
- if (value.name !== filename || Object.prototype.toString.call(value) === '[object Blob]') {
- value = new File([value], filename)
- }
- return [String(name), value]
- }
- return [String(name), String(value)]
- }
-
- // normalize line feeds for textarea
- // https://html.spec.whatwg.org/multipage/form-elements.html#textarea-line-break-normalisation-transformation
- function normalizeLinefeeds (value) {
- return value.replace(/\r?\n|\r/g, '\r\n')
- }
-
- /**
- * @template T
- * @param {ArrayLike} arr
- * @param {{ (elm: T): void; }} cb
- */
- function each (arr, cb) {
- for (let i = 0; i < arr.length; i++) {
- cb(arr[i])
- }
- }
-
- const escape = str => str.replace(/\n/g, '%0A').replace(/\r/g, '%0D').replace(/"/g, '%22')
-
- /**
- * @implements {Iterable}
- */
- class FormDataPolyfill {
- /**
- * FormData class
- *
- * @param {HTMLFormElement=} form
- */
- constructor (form) {
- /** @type {[string, string|File][]} */
- this._data = []
-
- const self = this
- form && each(form.elements, (/** @type {HTMLInputElement} */ elm) => {
- if (
- !elm.name ||
- elm.disabled ||
- elm.type === 'submit' ||
- elm.type === 'button' ||
- elm.matches('form fieldset[disabled] *')
- ) return
-
- if (elm.type === 'file') {
- const files = elm.files && elm.files.length
- ? elm.files
- : [new File([], '', { type: 'application/octet-stream' })] // #78
-
- each(files, file => {
- self.append(elm.name, file)
- })
- } else if (elm.type === 'select-multiple' || elm.type === 'select-one') {
- each(elm.options, opt => {
- !opt.disabled && opt.selected && self.append(elm.name, opt.value)
- })
- } else if (elm.type === 'checkbox' || elm.type === 'radio') {
- if (elm.checked) self.append(elm.name, elm.value)
- } else {
- const value = elm.type === 'textarea' ? normalizeLinefeeds(elm.value) : elm.value
- self.append(elm.name, value)
- }
- })
- }
-
- /**
- * Append a field
- *
- * @param {string} name field name
- * @param {string|Blob|File} value string / blob / file
- * @param {string=} filename filename to use with blob
- * @return {undefined}
- */
- append (name, value, filename) {
- ensureArgs(arguments, 2)
- this._data.push(normalizeArgs(name, value, filename))
- }
-
- /**
- * Delete all fields values given name
- *
- * @param {string} name Field name
- * @return {undefined}
- */
- delete (name) {
- ensureArgs(arguments, 1)
- const result = []
- name = String(name)
-
- each(this._data, entry => {
- entry[0] !== name && result.push(entry)
- })
-
- this._data = result
- }
-
- /**
- * Iterate over all fields as [name, value]
- *
- * @return {Iterator}
- */
- * entries () {
- for (var i = 0; i < this._data.length; i++) {
- yield this._data[i]
- }
- }
-
- /**
- * Iterate over all fields
- *
- * @param {Function} callback Executed for each item with parameters (value, name, thisArg)
- * @param {Object=} thisArg `this` context for callback function
- */
- forEach (callback, thisArg) {
- ensureArgs(arguments, 1)
- for (const [name, value] of this) {
- callback.call(thisArg, value, name, this)
- }
- }
-
- /**
- * Return first field value given name
- * or null if non existent
- *
- * @param {string} name Field name
- * @return {string|File|null} value Fields value
- */
- get (name) {
- ensureArgs(arguments, 1)
- const entries = this._data
- name = String(name)
- for (let i = 0; i < entries.length; i++) {
- if (entries[i][0] === name) {
- return entries[i][1]
- }
- }
- return null
- }
-
- /**
- * Return all fields values given name
- *
- * @param {string} name Fields name
- * @return {Array} [{String|File}]
- */
- getAll (name) {
- ensureArgs(arguments, 1)
- const result = []
- name = String(name)
- each(this._data, data => {
- data[0] === name && result.push(data[1])
- })
-
- return result
- }
-
- /**
- * Check for field name existence
- *
- * @param {string} name Field name
- * @return {boolean}
- */
- has (name) {
- ensureArgs(arguments, 1)
- name = String(name)
- for (let i = 0; i < this._data.length; i++) {
- if (this._data[i][0] === name) {
- return true
- }
- }
- return false
- }
-
- /**
- * Iterate over all fields name
- *
- * @return {Iterator}
- */
- * keys () {
- for (const [name] of this) {
- yield name
- }
- }
-
- /**
- * Overwrite all values given name
- *
- * @param {string} name Filed name
- * @param {string} value Field value
- * @param {string=} filename Filename (optional)
- */
- set (name, value, filename) {
- ensureArgs(arguments, 2)
- name = String(name)
- /** @type {[string, string|File][]} */
- const result = []
- const args = normalizeArgs(name, value, filename)
- let replace = true
-
- // - replace the first occurrence with same name
- // - discards the remaining with same name
- // - while keeping the same order items where added
- each(this._data, data => {
- data[0] === name
- ? replace && (replace = !result.push(args))
- : result.push(data)
- })
-
- replace && result.push(args)
-
- this._data = result
- }
-
- /**
- * Iterate over all fields
- *
- * @return {Iterator}
- */
- * values () {
- for (const [, value] of this) {
- yield value
- }
- }
-
- /**
- * Return a native (perhaps degraded) FormData with only a `append` method
- * Can throw if it's not supported
- *
- * @return {FormData}
- */
- ['_asNative'] () {
- const fd = new _FormData()
-
- for (const [name, value] of this) {
- fd.append(name, value)
- }
-
- return fd
- }
-
- /**
- * [_blob description]
- *
- * @return {Blob} [description]
- */
- ['_blob'] () {
- const boundary = '----formdata-polyfill-' + Math.random(),
- chunks = [],
- p = `--${boundary}\r\nContent-Disposition: form-data; name="`
- this.forEach((value, name) => typeof value == 'string'
- ? chunks.push(p + escape(normalizeLinefeeds(name)) + `"\r\n\r\n${normalizeLinefeeds(value)}\r\n`)
- : chunks.push(p + escape(normalizeLinefeeds(name)) + `"; filename="${escape(value.name)}"\r\nContent-Type: ${value.type||"application/octet-stream"}\r\n\r\n`, value, `\r\n`))
- chunks.push(`--${boundary}--`)
- return new Blob(chunks, {
- type: "multipart/form-data; boundary=" + boundary
- })
- }
-
- /**
- * The class itself is iterable
- * alias for formdata.entries()
- *
- * @return {Iterator}
- */
- [Symbol.iterator] () {
- return this.entries()
- }
-
- /**
- * Create the default string description.
- *
- * @return {string} [object FormData]
- */
- toString () {
- return '[object FormData]'
- }
- }
-
- if (_match && !_match.matches) {
- _match.matches =
- _match.matchesSelector ||
- _match.mozMatchesSelector ||
- _match.msMatchesSelector ||
- _match.oMatchesSelector ||
- _match.webkitMatchesSelector ||
- function (s) {
- var matches = (this.document || this.ownerDocument).querySelectorAll(s)
- var i = matches.length
- while (--i >= 0 && matches.item(i) !== this) {}
- return i > -1
- }
- }
-
- if (stringTag) {
- /**
- * Create the default string description.
- * It is accessed internally by the Object.prototype.toString().
- */
- FormDataPolyfill.prototype[stringTag] = 'FormData'
- }
-
- // Patch xhr's send method to call _blob transparently
- if (_send) {
- const setRequestHeader = global.XMLHttpRequest.prototype.setRequestHeader
-
- global.XMLHttpRequest.prototype.setRequestHeader = function (name, value) {
- setRequestHeader.call(this, name, value)
- if (name.toLowerCase() === 'content-type') this._hasContentType = true
- }
-
- global.XMLHttpRequest.prototype.send = function (data) {
- // need to patch send b/c old IE don't send blob's type (#44)
- if (data instanceof FormDataPolyfill) {
- const blob = data['_blob']()
- if (!this._hasContentType) this.setRequestHeader('Content-Type', blob.type)
- _send.call(this, blob)
- } else {
- _send.call(this, data)
- }
- }
- }
-
- // Patch fetch's function to call _blob transparently
- if (_fetch) {
- global.fetch = function (input, init) {
- if (init && init.body && init.body instanceof FormDataPolyfill) {
- init.body = init.body['_blob']()
- }
-
- return _fetch.call(this, input, init)
- }
- }
-
- // Patch navigator.sendBeacon to use native FormData
- if (_sendBeacon) {
- global.navigator.sendBeacon = function (url, data) {
- if (data instanceof FormDataPolyfill) {
- data = data['_asNative']()
- }
- return _sendBeacon.call(this, url, data)
- }
- }
-
- global['FormData'] = FormDataPolyfill
-}
diff --git a/node_modules/formdata-polyfill/LICENSE b/node_modules/formdata-polyfill/LICENSE
deleted file mode 100644
index fd0f555..0000000
--- a/node_modules/formdata-polyfill/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2016 Jimmy Karl Roland Wärting
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/node_modules/formdata-polyfill/README.md b/node_modules/formdata-polyfill/README.md
deleted file mode 100644
index 8355299..0000000
--- a/node_modules/formdata-polyfill/README.md
+++ /dev/null
@@ -1,145 +0,0 @@
-### A `FormData` polyfill for the browser ...and a module for NodeJS (`New!`)
-
-```bash
-npm install formdata-polyfill
-```
-
-The browser polyfill will likely have done its part already, and i hope you stop supporting old browsers c",)
-But NodeJS still laks a proper FormData The good old form-data package is a very old and isn't spec compatible and dose some abnormal stuff to construct and read FormData instances that other http libraries are not happy about when it comes to follow the spec.
-
-### The NodeJS / ESM version
-- The modular (~2.3 KiB minified uncompressed) version of this package is independent of any browser stuff and don't patch anything
-- It's as pure/spec compatible as it possible gets the test are run by WPT.
-- It's compatible with [node-fetch](https://github.com/node-fetch/node-fetch).
-- It have higher platform dependencies as it uses classes, symbols, ESM & private fields
-- Only dependency it has is [fetch-blob](https://github.com/node-fetch/fetch-blob)
-
-```js
-// Node example
-import fetch from 'node-fetch'
-import File from 'fetch-blob/file.js'
-import { fileFromSync } from 'fetch-blob/from.js'
-import { FormData } from 'formdata-polyfill/esm.min.js'
-
-const file = fileFromSync('./README.md')
-const fd = new FormData()
-
-fd.append('file-upload', new File(['abc'], 'hello-world.txt'))
-fd.append('file-upload', file)
-
-// it's also possible to append file/blob look-a-like items
-// if you have streams coming from other destinations
-fd.append('file-upload', {
- size: 123,
- type: '',
- name: 'cat-video.mp4',
- stream() { return stream },
- [Symbol.toStringTag]: 'File'
-})
-
-fetch('https://httpbin.org/post', { method: 'POST', body: fd })
-```
-
-----
-
-It also comes with way to convert FormData into Blobs - it's not something that every developer should have to deal with.
-It's mainly for [node-fetch](https://github.com/node-fetch/node-fetch) and other http library to ease the process of serializing a FormData into a blob and just wish to deal with Blobs instead (Both Deno and Undici adapted a version of this [formDataToBlob](https://github.com/jimmywarting/FormData/blob/5ddea9e0de2fc5e246ab1b2f9d404dee0c319c02/formdata-to-blob.js) to the core and passes all WPT tests run by the browser itself)
-```js
-import { Readable } from 'node:stream'
-import { FormData, formDataToBlob } from 'formdata-polyfill/esm.min.js'
-
-const blob = formDataToBlob(new FormData())
-fetch('https://httpbin.org/post', { method: 'POST', body: blob })
-
-// node built in http and other similar http library have to do:
-const stream = Readable.from(blob.stream())
-const req = http.request('http://httpbin.org/post', {
- method: 'post',
- headers: {
- 'Content-Length': blob.size,
- 'Content-Type': blob.type
- }
-})
-stream.pipe(req)
-```
-
-PS: blob & file that are appended to the FormData will not be read until any of the serialized blob read-methods gets called
-...so uploading very large files is no biggie
-
-### Browser polyfill
-
-usage:
-
-```js
-import 'formdata-polyfill' // that's it
-```
-
-The browser polyfill conditionally replaces the native implementation rather than fixing the missing functions,
-since otherwise there is no way to get or delete existing values in the FormData object.
-Therefore this also patches `XMLHttpRequest.prototype.send` and `fetch` to send the `FormData` as a blob,
-and `navigator.sendBeacon` to send native `FormData`.
-
-I was unable to patch the Response/Request constructor
-so if you are constructing them with FormData then you need to call `fd._blob()` manually.
-
-```js
-new Request(url, {
- method: 'post',
- body: fd._blob ? fd._blob() : fd
-})
-```
-
-Dependencies
----
-
-If you need to support IE <= 9 then I recommend you to include eligrey's [blob.js]
-(which i hope you don't - since IE is now dead)
-
-
- Updating from 2.x to 3.x
-
-Previously you had to import the polyfill and use that,
-since it didn't replace the global (existing) FormData implementation.
-But now it transparently calls `_blob()` for you when you are sending something with fetch or XHR,
-by way of monkey-patching the `XMLHttpRequest.prototype.send` and `fetch` functions.
-
-So you maybe had something like this:
-
-```javascript
-var FormData = require('formdata-polyfill')
-var fd = new FormData(form)
-xhr.send(fd._blob())
-```
-
-There is no longer anything exported from the module
-(though you of course still need to import it to install the polyfill),
-so you can now use the FormData object as normal:
-
-```javascript
-require('formdata-polyfill')
-var fd = new FormData(form)
-xhr.send(fd)
-```
-
-
-
-
-
-Native Browser compatibility (as of 2021-05-08)
----
-Based on this you can decide for yourself if you need this polyfill.
-
-[](https://developer.mozilla.org/en-US/docs/Web/API/FormData#Browser_compatibility)
-
-
-
-This normalizes support for the FormData API:
-
- - `append` with filename
- - `delete()`, `get()`, `getAll()`, `has()`, `set()`
- - `entries()`, `keys()`, `values()`, and support for `for...of`
- - Available in web workers (just include the polyfill)
-
- [npm-image]: https://img.shields.io/npm/v/formdata-polyfill.svg
- [npm-url]: https://www.npmjs.com/package/formdata-polyfill
- [blob.js]: https://github.com/eligrey/Blob.js
diff --git a/node_modules/formdata-polyfill/esm.min.d.ts b/node_modules/formdata-polyfill/esm.min.d.ts
deleted file mode 100644
index b45f42e..0000000
--- a/node_modules/formdata-polyfill/esm.min.d.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export declare const FormData: {
- new (): FormData;
- prototype: FormData;
-};
-export declare function formDataToBlob(formData: FormData): Blob;
diff --git a/node_modules/formdata-polyfill/esm.min.js b/node_modules/formdata-polyfill/esm.min.js
deleted file mode 100644
index 745ca29..0000000
--- a/node_modules/formdata-polyfill/esm.min.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*! formdata-polyfill. MIT License. Jimmy Wärting */
-
-import C from 'fetch-blob'
-import F from 'fetch-blob/file.js'
-
-var {toStringTag:t,iterator:i,hasInstance:h}=Symbol,
-r=Math.random,
-m='append,set,get,getAll,delete,keys,values,entries,forEach,constructor'.split(','),
-f=(a,b,c)=>(a+='',/^(Blob|File)$/.test(b && b[t])?[(c=c!==void 0?c+'':b[t]=='File'?b.name:'blob',a),b.name!==c||b[t]=='blob'?new F([b],c,b):b]:[a,b+'']),
-e=(c,f)=>(f?c:c.replace(/\r?\n|\r/g,'\r\n')).replace(/\n/g,'%0A').replace(/\r/g,'%0D').replace(/"/g,'%22'),
-x=(n, a, e)=>{if(a.lengthtypeof o[m]!='function')}
-append(...a){x('append',arguments,2);this.#d.push(f(...a))}
-delete(a){x('delete',arguments,1);a+='';this.#d=this.#d.filter(([b])=>b!==a)}
-get(a){x('get',arguments,1);a+='';for(var b=this.#d,l=b.length,c=0;cc[0]===a&&b.push(c[1]));return b}
-has(a){x('has',arguments,1);a+='';return this.#d.some(b=>b[0]===a)}
-forEach(a,b){x('forEach',arguments,1);for(var [c,d]of this)a.call(b,d,c,this)}
-set(...a){x('set',arguments,2);var b=[],c=!0;a=f(...a);this.#d.forEach(d=>{d[0]===a[0]?c&&(c=!b.push(a)):b.push(d)});c&&b.push(a);this.#d=b}
-*entries(){yield*this.#d}
-*keys(){for(var[a]of this)yield a}
-*values(){for(var[,a]of this)yield a}}
-
-/** @param {FormData} F */
-export function formDataToBlob (F,B=C){
-var b=`${r()}${r()}`.replace(/\./g, '').slice(-28).padStart(32, '-'),c=[],p=`--${b}\r\nContent-Disposition: form-data; name="`
-F.forEach((v,n)=>typeof v=='string'
-?c.push(p+e(n)+`"\r\n\r\n${v.replace(/\r(?!\n)|(? */
-
-const escape = (str, filename) =>
- (filename ? str : str.replace(/\r?\n|\r/g, '\r\n'))
- .replace(/\n/g, '%0A')
- .replace(/\r/g, '%0D')
- .replace(/"/g, '%22')
-
-/**
- * pure function to convert any formData instance to a Blob
- * instances synchronous without reading all of the files
- *
- * @param {FormData|*} formData an instance of a formData Class
- * @param {Blob|*} [BlobClass=Blob] the Blob class to use when constructing it
- */
-export function formDataToBlob (formData, BlobClass = Blob) {
- const boundary = ('----formdata-polyfill-' + Math.random())
- const chunks = []
- const prefix = `--${boundary}\r\nContent-Disposition: form-data; name="`
-
- for (let [name, value] of formData) {
- if (typeof value === 'string') {
- chunks.push(prefix + escape(name) + `"\r\n\r\n${value.replace(/\r(?!\n)|(? */
-;(function(){var h;function l(a){var b=0;return function(){return b>>0)+"_",e=0;return b});
-r("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c=12.20.0"
- },
- "keywords": [
- "formdata",
- "fetch",
- "node-fetch",
- "html5",
- "browser",
- "polyfill"
- ],
- "author": "Jimmy Wärting",
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/jimmywarting/FormData/issues"
- },
- "homepage": "https://github.com/jimmywarting/FormData#readme",
- "dependencies": {
- "fetch-blob": "^3.1.2"
- },
- "devDependencies": {
- "@types/google-closure-compiler": "^0.0.19",
- "@types/node": "^16.7.10",
- "google-closure-compiler": "^20210808.0.0"
- }
-}
diff --git a/node_modules/https-proxy-agent/LICENSE b/node_modules/https-proxy-agent/LICENSE
deleted file mode 100644
index 008728c..0000000
--- a/node_modules/https-proxy-agent/LICENSE
+++ /dev/null
@@ -1,22 +0,0 @@
-(The MIT License)
-
-Copyright (c) 2013 Nathan Rajlich
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-'Software'), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/README.md b/node_modules/https-proxy-agent/README.md
deleted file mode 100644
index ebc53cf..0000000
--- a/node_modules/https-proxy-agent/README.md
+++ /dev/null
@@ -1,70 +0,0 @@
-https-proxy-agent
-================
-### An HTTP(s) proxy `http.Agent` implementation for HTTPS
-
-This module provides an `http.Agent` implementation that connects to a specified
-HTTP or HTTPS proxy server, and can be used with the built-in `https` module.
-
-Specifically, this `Agent` implementation connects to an intermediary "proxy"
-server and issues the [CONNECT HTTP method][CONNECT], which tells the proxy to
-open a direct TCP connection to the destination server.
-
-Since this agent implements the CONNECT HTTP method, it also works with other
-protocols that use this method when connecting over proxies (i.e. WebSockets).
-See the "Examples" section below for more.
-
-Examples
---------
-
-#### `https` module example
-
-```ts
-import * as https from 'https';
-import { HttpsProxyAgent } from 'https-proxy-agent';
-
-const agent = new HttpsProxyAgent('http://168.63.76.32:3128');
-
-https.get('https://example.com', { agent }, (res) => {
- console.log('"response" event!', res.headers);
- res.pipe(process.stdout);
-});
-```
-
-#### `ws` WebSocket connection example
-
-```ts
-import WebSocket from 'ws';
-import { HttpsProxyAgent } from 'https-proxy-agent';
-
-const agent = new HttpsProxyAgent('http://168.63.76.32:3128');
-const socket = new WebSocket('ws://echo.websocket.org', { agent });
-
-socket.on('open', function () {
- console.log('"open" event!');
- socket.send('hello world');
-});
-
-socket.on('message', function (data, flags) {
- console.log('"message" event! %j %j', data, flags);
- socket.close();
-});
-```
-
-API
----
-
-### new HttpsProxyAgent(proxy: string | URL, options?: HttpsProxyAgentOptions)
-
-The `HttpsProxyAgent` class implements an `http.Agent` subclass that connects
-to the specified "HTTP(s) proxy server" in order to proxy HTTPS and/or WebSocket
-requests. This is achieved by using the [HTTP `CONNECT` method][CONNECT].
-
-The `proxy` argument is the URL for the proxy server.
-
-The `options` argument accepts the usual `http.Agent` constructor options, and
-some additional properties:
-
- * `headers` - Object containing additional headers to send to the proxy server
- in the `CONNECT` request.
-
-[CONNECT]: http://en.wikipedia.org/wiki/HTTP_tunnel#HTTP_CONNECT_Tunneling
diff --git a/node_modules/https-proxy-agent/dist/index.d.ts b/node_modules/https-proxy-agent/dist/index.d.ts
deleted file mode 100644
index 8cd1151..0000000
--- a/node_modules/https-proxy-agent/dist/index.d.ts
+++ /dev/null
@@ -1,47 +0,0 @@
-///
-///
-///
-///
-import * as net from 'net';
-import * as tls from 'tls';
-import * as http from 'http';
-import { Agent, AgentConnectOpts } from 'agent-base';
-import { URL } from 'url';
-import type { OutgoingHttpHeaders } from 'http';
-type Protocol = T extends `${infer Protocol}:${infer _}` ? Protocol : never;
-type ConnectOptsMap = {
- http: Omit;
- https: Omit;
-};
-type ConnectOpts = {
- [P in keyof ConnectOptsMap]: Protocol extends P ? ConnectOptsMap[P] : never;
-}[keyof ConnectOptsMap];
-export type HttpsProxyAgentOptions = ConnectOpts & http.AgentOptions & {
- headers?: OutgoingHttpHeaders | (() => OutgoingHttpHeaders);
-};
-/**
- * The `HttpsProxyAgent` implements an HTTP Agent subclass that connects to
- * the specified "HTTP(s) proxy server" in order to proxy HTTPS requests.
- *
- * Outgoing HTTP requests are first tunneled through the proxy server using the
- * `CONNECT` HTTP request method to establish a connection to the proxy server,
- * and then the proxy server connects to the destination target and issues the
- * HTTP request from the proxy server.
- *
- * `https:` requests have their socket connection upgraded to TLS once
- * the connection to the proxy server has been established.
- */
-export declare class HttpsProxyAgent extends Agent {
- static protocols: readonly ["http", "https"];
- readonly proxy: URL;
- proxyHeaders: OutgoingHttpHeaders | (() => OutgoingHttpHeaders);
- connectOpts: net.TcpNetConnectOpts & tls.ConnectionOptions;
- constructor(proxy: Uri | URL, opts?: HttpsProxyAgentOptions);
- /**
- * Called when the node-core HTTP client library is creating a
- * new HTTP request.
- */
- connect(req: http.ClientRequest, opts: AgentConnectOpts): Promise;
-}
-export {};
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/dist/index.d.ts.map b/node_modules/https-proxy-agent/dist/index.d.ts.map
deleted file mode 100644
index c23c3a0..0000000
--- a/node_modules/https-proxy-agent/dist/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAuBhD,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,MAAM,QAAQ,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE/E,KAAK,cAAc,GAAG;IACrB,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACnD,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CACpD,CAAC;AAEF,KAAK,WAAW,CAAC,CAAC,IAAI;KACpB,CAAC,IAAI,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAC/C,cAAc,CAAC,CAAC,CAAC,GACjB,KAAK;CACR,CAAC,MAAM,cAAc,CAAC,CAAC;AAExB,MAAM,MAAM,sBAAsB,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,GACrD,IAAI,CAAC,YAAY,GAAG;IACnB,OAAO,CAAC,EAAE,mBAAmB,GAAG,CAAC,MAAM,mBAAmB,CAAC,CAAC;CAC5D,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,qBAAa,eAAe,CAAC,GAAG,SAAS,MAAM,CAAE,SAAQ,KAAK;IAC7D,MAAM,CAAC,SAAS,6BAA8B;IAE9C,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;IACpB,YAAY,EAAE,mBAAmB,GAAG,CAAC,MAAM,mBAAmB,CAAC,CAAC;IAChE,WAAW,EAAE,GAAG,CAAC,iBAAiB,GAAG,GAAG,CAAC,iBAAiB,CAAC;gBAE/C,KAAK,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC;IA0BhE;;;OAGG;IACG,OAAO,CACZ,GAAG,EAAE,IAAI,CAAC,aAAa,EACvB,IAAI,EAAE,gBAAgB,GACpB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;CAwGtB"}
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/dist/index.js b/node_modules/https-proxy-agent/dist/index.js
deleted file mode 100644
index 1857f46..0000000
--- a/node_modules/https-proxy-agent/dist/index.js
+++ /dev/null
@@ -1,180 +0,0 @@
-"use strict";
-var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- var desc = Object.getOwnPropertyDescriptor(m, k);
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
- desc = { enumerable: true, get: function() { return m[k]; } };
- }
- Object.defineProperty(o, k2, desc);
-}) : (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- o[k2] = m[k];
-}));
-var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
- Object.defineProperty(o, "default", { enumerable: true, value: v });
-}) : function(o, v) {
- o["default"] = v;
-});
-var __importStar = (this && this.__importStar) || function (mod) {
- if (mod && mod.__esModule) return mod;
- var result = {};
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
- __setModuleDefault(result, mod);
- return result;
-};
-var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.HttpsProxyAgent = void 0;
-const net = __importStar(require("net"));
-const tls = __importStar(require("tls"));
-const assert_1 = __importDefault(require("assert"));
-const debug_1 = __importDefault(require("debug"));
-const agent_base_1 = require("agent-base");
-const url_1 = require("url");
-const parse_proxy_response_1 = require("./parse-proxy-response");
-const debug = (0, debug_1.default)('https-proxy-agent');
-const setServernameFromNonIpHost = (options) => {
- if (options.servername === undefined &&
- options.host &&
- !net.isIP(options.host)) {
- return {
- ...options,
- servername: options.host,
- };
- }
- return options;
-};
-/**
- * The `HttpsProxyAgent` implements an HTTP Agent subclass that connects to
- * the specified "HTTP(s) proxy server" in order to proxy HTTPS requests.
- *
- * Outgoing HTTP requests are first tunneled through the proxy server using the
- * `CONNECT` HTTP request method to establish a connection to the proxy server,
- * and then the proxy server connects to the destination target and issues the
- * HTTP request from the proxy server.
- *
- * `https:` requests have their socket connection upgraded to TLS once
- * the connection to the proxy server has been established.
- */
-class HttpsProxyAgent extends agent_base_1.Agent {
- constructor(proxy, opts) {
- super(opts);
- this.options = { path: undefined };
- this.proxy = typeof proxy === 'string' ? new url_1.URL(proxy) : proxy;
- this.proxyHeaders = opts?.headers ?? {};
- debug('Creating new HttpsProxyAgent instance: %o', this.proxy.href);
- // Trim off the brackets from IPv6 addresses
- const host = (this.proxy.hostname || this.proxy.host).replace(/^\[|\]$/g, '');
- const port = this.proxy.port
- ? parseInt(this.proxy.port, 10)
- : this.proxy.protocol === 'https:'
- ? 443
- : 80;
- this.connectOpts = {
- // Attempt to negotiate http/1.1 for proxy servers that support http/2
- ALPNProtocols: ['http/1.1'],
- ...(opts ? omit(opts, 'headers') : null),
- host,
- port,
- };
- }
- /**
- * Called when the node-core HTTP client library is creating a
- * new HTTP request.
- */
- async connect(req, opts) {
- const { proxy } = this;
- if (!opts.host) {
- throw new TypeError('No "host" provided');
- }
- // Create a socket connection to the proxy server.
- let socket;
- if (proxy.protocol === 'https:') {
- debug('Creating `tls.Socket`: %o', this.connectOpts);
- socket = tls.connect(setServernameFromNonIpHost(this.connectOpts));
- }
- else {
- debug('Creating `net.Socket`: %o', this.connectOpts);
- socket = net.connect(this.connectOpts);
- }
- const headers = typeof this.proxyHeaders === 'function'
- ? this.proxyHeaders()
- : { ...this.proxyHeaders };
- const host = net.isIPv6(opts.host) ? `[${opts.host}]` : opts.host;
- let payload = `CONNECT ${host}:${opts.port} HTTP/1.1\r\n`;
- // Inject the `Proxy-Authorization` header if necessary.
- if (proxy.username || proxy.password) {
- const auth = `${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`;
- headers['Proxy-Authorization'] = `Basic ${Buffer.from(auth).toString('base64')}`;
- }
- headers.Host = `${host}:${opts.port}`;
- if (!headers['Proxy-Connection']) {
- headers['Proxy-Connection'] = this.keepAlive
- ? 'Keep-Alive'
- : 'close';
- }
- for (const name of Object.keys(headers)) {
- payload += `${name}: ${headers[name]}\r\n`;
- }
- const proxyResponsePromise = (0, parse_proxy_response_1.parseProxyResponse)(socket);
- socket.write(`${payload}\r\n`);
- const { connect, buffered } = await proxyResponsePromise;
- req.emit('proxyConnect', connect);
- this.emit('proxyConnect', connect, req);
- if (connect.statusCode === 200) {
- req.once('socket', resume);
- if (opts.secureEndpoint) {
- // The proxy is connecting to a TLS server, so upgrade
- // this socket connection to a TLS connection.
- debug('Upgrading socket connection to TLS');
- return tls.connect({
- ...omit(setServernameFromNonIpHost(opts), 'host', 'path', 'port'),
- socket,
- });
- }
- return socket;
- }
- // Some other status code that's not 200... need to re-play the HTTP
- // header "data" events onto the socket once the HTTP machinery is
- // attached so that the node core `http` can parse and handle the
- // error status code.
- // Close the original socket, and a new "fake" socket is returned
- // instead, so that the proxy doesn't get the HTTP request
- // written to it (which may contain `Authorization` headers or other
- // sensitive data).
- //
- // See: https://hackerone.com/reports/541502
- socket.destroy();
- const fakeSocket = new net.Socket({ writable: false });
- fakeSocket.readable = true;
- // Need to wait for the "socket" event to re-play the "data" events.
- req.once('socket', (s) => {
- debug('Replaying proxy buffer for failed request');
- (0, assert_1.default)(s.listenerCount('data') > 0);
- // Replay the "buffered" Buffer onto the fake `socket`, since at
- // this point the HTTP module machinery has been hooked up for
- // the user.
- s.push(buffered);
- s.push(null);
- });
- return fakeSocket;
- }
-}
-HttpsProxyAgent.protocols = ['http', 'https'];
-exports.HttpsProxyAgent = HttpsProxyAgent;
-function resume(socket) {
- socket.resume();
-}
-function omit(obj, ...keys) {
- const ret = {};
- let key;
- for (key in obj) {
- if (!keys.includes(key)) {
- ret[key] = obj[key];
- }
- }
- return ret;
-}
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/dist/index.js.map b/node_modules/https-proxy-agent/dist/index.js.map
deleted file mode 100644
index ea7d2f3..0000000
--- a/node_modules/https-proxy-agent/dist/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA2B;AAC3B,yCAA2B;AAE3B,oDAA4B;AAC5B,kDAAgC;AAChC,2CAAqD;AACrD,6BAA0B;AAC1B,iEAA4D;AAG5D,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,mBAAmB,CAAC,CAAC;AAE/C,MAAM,0BAA0B,GAAG,CAGlC,OAAU,EACT,EAAE;IACH,IACC,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,OAAO,CAAC,IAAI;QACZ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EACtB;QACD,OAAO;YACN,GAAG,OAAO;YACV,UAAU,EAAE,OAAO,CAAC,IAAI;SACxB,CAAC;KACF;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAqBF;;;;;;;;;;;GAWG;AACH,MAAa,eAAoC,SAAQ,kBAAK;IAO7D,YAAY,KAAgB,EAAE,IAAkC;QAC/D,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,SAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAChE,IAAI,CAAC,YAAY,GAAG,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;QACxC,KAAK,CAAC,2CAA2C,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEpE,4CAA4C;QAC5C,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAC5D,UAAU,EACV,EAAE,CACF,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI;YAC3B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ;gBAClC,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,EAAE,CAAC;QACN,IAAI,CAAC,WAAW,GAAG;YAClB,sEAAsE;YACtE,aAAa,EAAE,CAAC,UAAU,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACxC,IAAI;YACJ,IAAI;SACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CACZ,GAAuB,EACvB,IAAsB;QAEtB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAEvB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACf,MAAM,IAAI,SAAS,CAAC,oBAAoB,CAAC,CAAC;SAC1C;QAED,kDAAkD;QAClD,IAAI,MAAkB,CAAC;QACvB,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;YAChC,KAAK,CAAC,2BAA2B,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;SACnE;aAAM;YACN,KAAK,CAAC,2BAA2B,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACrD,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACvC;QAED,MAAM,OAAO,GACZ,OAAO,IAAI,CAAC,YAAY,KAAK,UAAU;YACtC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE;YACrB,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAClE,IAAI,OAAO,GAAG,WAAW,IAAI,IAAI,IAAI,CAAC,IAAI,eAAe,CAAC;QAE1D,wDAAwD;QACxD,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE;YACrC,MAAM,IAAI,GAAG,GAAG,kBAAkB,CACjC,KAAK,CAAC,QAAQ,CACd,IAAI,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,OAAO,CAAC,qBAAqB,CAAC,GAAG,SAAS,MAAM,CAAC,IAAI,CACpD,IAAI,CACJ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;SACvB;QAED,OAAO,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAEtC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;YACjC,OAAO,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,SAAS;gBAC3C,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,OAAO,CAAC;SACX;QACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACxC,OAAO,IAAI,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;SAC3C;QAED,MAAM,oBAAoB,GAAG,IAAA,yCAAkB,EAAC,MAAM,CAAC,CAAC;QAExD,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,MAAM,CAAC,CAAC;QAE/B,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,oBAAoB,CAAC;QACzD,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QAExC,IAAI,OAAO,CAAC,UAAU,KAAK,GAAG,EAAE;YAC/B,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE3B,IAAI,IAAI,CAAC,cAAc,EAAE;gBACxB,sDAAsD;gBACtD,8CAA8C;gBAC9C,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBAC5C,OAAO,GAAG,CAAC,OAAO,CAAC;oBAClB,GAAG,IAAI,CACN,0BAA0B,CAAC,IAAI,CAAC,EAChC,MAAM,EACN,MAAM,EACN,MAAM,CACN;oBACD,MAAM;iBACN,CAAC,CAAC;aACH;YAED,OAAO,MAAM,CAAC;SACd;QAED,oEAAoE;QACpE,kEAAkE;QAClE,iEAAiE;QACjE,qBAAqB;QAErB,iEAAiE;QACjE,0DAA0D;QAC1D,oEAAoE;QACpE,mBAAmB;QACnB,EAAE;QACF,4CAA4C;QAC5C,MAAM,CAAC,OAAO,EAAE,CAAC;QAEjB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC;QAE3B,oEAAoE;QACpE,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAa,EAAE,EAAE;YACpC,KAAK,CAAC,2CAA2C,CAAC,CAAC;YACnD,IAAA,gBAAM,EAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAEpC,gEAAgE;YAChE,8DAA8D;YAC9D,YAAY;YACZ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACnB,CAAC;;AA9IM,yBAAS,GAAG,CAAC,MAAM,EAAE,OAAO,CAAU,CAAC;AADlC,0CAAe;AAkJ5B,SAAS,MAAM,CAAC,MAAkC;IACjD,MAAM,CAAC,MAAM,EAAE,CAAC;AACjB,CAAC;AAED,SAAS,IAAI,CACZ,GAAM,EACN,GAAG,IAAO;IAIV,MAAM,GAAG,GAAG,EAEX,CAAC;IACF,IAAI,GAAqB,CAAC;IAC1B,KAAK,GAAG,IAAI,GAAG,EAAE;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACxB,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;SACpB;KACD;IACD,OAAO,GAAG,CAAC;AACZ,CAAC"}
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts b/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts
deleted file mode 100644
index 84d5a9c..0000000
--- a/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-///
-///
-///
-import { IncomingHttpHeaders } from 'http';
-import { Readable } from 'stream';
-export interface ConnectResponse {
- statusCode: number;
- statusText: string;
- headers: IncomingHttpHeaders;
-}
-export declare function parseProxyResponse(socket: Readable): Promise<{
- connect: ConnectResponse;
- buffered: Buffer;
-}>;
-//# sourceMappingURL=parse-proxy-response.d.ts.map
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts.map b/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts.map
deleted file mode 100644
index 414df55..0000000
--- a/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"parse-proxy-response.d.ts","sourceRoot":"","sources":["../src/parse-proxy-response.ts"],"names":[],"mappings":";;;AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAIlC,MAAM,WAAW,eAAe;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,mBAAmB,CAAC;CAC7B;AAED,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,QAAQ,GACd,OAAO,CAAC;IAAE,OAAO,EAAE,eAAe,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAyGzD"}
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/dist/parse-proxy-response.js b/node_modules/https-proxy-agent/dist/parse-proxy-response.js
deleted file mode 100644
index d3f506f..0000000
--- a/node_modules/https-proxy-agent/dist/parse-proxy-response.js
+++ /dev/null
@@ -1,101 +0,0 @@
-"use strict";
-var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.parseProxyResponse = void 0;
-const debug_1 = __importDefault(require("debug"));
-const debug = (0, debug_1.default)('https-proxy-agent:parse-proxy-response');
-function parseProxyResponse(socket) {
- return new Promise((resolve, reject) => {
- // we need to buffer any HTTP traffic that happens with the proxy before we get
- // the CONNECT response, so that if the response is anything other than an "200"
- // response code, then we can re-play the "data" events on the socket once the
- // HTTP parser is hooked up...
- let buffersLength = 0;
- const buffers = [];
- function read() {
- const b = socket.read();
- if (b)
- ondata(b);
- else
- socket.once('readable', read);
- }
- function cleanup() {
- socket.removeListener('end', onend);
- socket.removeListener('error', onerror);
- socket.removeListener('readable', read);
- }
- function onend() {
- cleanup();
- debug('onend');
- reject(new Error('Proxy connection ended before receiving CONNECT response'));
- }
- function onerror(err) {
- cleanup();
- debug('onerror %o', err);
- reject(err);
- }
- function ondata(b) {
- buffers.push(b);
- buffersLength += b.length;
- const buffered = Buffer.concat(buffers, buffersLength);
- const endOfHeaders = buffered.indexOf('\r\n\r\n');
- if (endOfHeaders === -1) {
- // keep buffering
- debug('have not received end of HTTP headers yet...');
- read();
- return;
- }
- const headerParts = buffered
- .slice(0, endOfHeaders)
- .toString('ascii')
- .split('\r\n');
- const firstLine = headerParts.shift();
- if (!firstLine) {
- socket.destroy();
- return reject(new Error('No header received from proxy CONNECT response'));
- }
- const firstLineParts = firstLine.split(' ');
- const statusCode = +firstLineParts[1];
- const statusText = firstLineParts.slice(2).join(' ');
- const headers = {};
- for (const header of headerParts) {
- if (!header)
- continue;
- const firstColon = header.indexOf(':');
- if (firstColon === -1) {
- socket.destroy();
- return reject(new Error(`Invalid header from proxy CONNECT response: "${header}"`));
- }
- const key = header.slice(0, firstColon).toLowerCase();
- const value = header.slice(firstColon + 1).trimStart();
- const current = headers[key];
- if (typeof current === 'string') {
- headers[key] = [current, value];
- }
- else if (Array.isArray(current)) {
- current.push(value);
- }
- else {
- headers[key] = value;
- }
- }
- debug('got proxy server response: %o %o', firstLine, headers);
- cleanup();
- resolve({
- connect: {
- statusCode,
- statusText,
- headers,
- },
- buffered,
- });
- }
- socket.on('error', onerror);
- socket.on('end', onend);
- read();
- });
-}
-exports.parseProxyResponse = parseProxyResponse;
-//# sourceMappingURL=parse-proxy-response.js.map
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/dist/parse-proxy-response.js.map b/node_modules/https-proxy-agent/dist/parse-proxy-response.js.map
deleted file mode 100644
index 71b58bb..0000000
--- a/node_modules/https-proxy-agent/dist/parse-proxy-response.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"parse-proxy-response.js","sourceRoot":"","sources":["../src/parse-proxy-response.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/https-proxy-agent/package.json b/node_modules/https-proxy-agent/package.json
deleted file mode 100644
index 51b7e11..0000000
--- a/node_modules/https-proxy-agent/package.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "name": "https-proxy-agent",
- "version": "7.0.6",
- "description": "An HTTP(s) proxy `http.Agent` implementation for HTTPS",
- "main": "./dist/index.js",
- "types": "./dist/index.d.ts",
- "files": [
- "dist"
- ],
- "repository": {
- "type": "git",
- "url": "https://github.com/TooTallNate/proxy-agents.git",
- "directory": "packages/https-proxy-agent"
- },
- "keywords": [
- "https",
- "proxy",
- "endpoint",
- "agent"
- ],
- "author": "Nathan Rajlich (http://n8.io/)",
- "license": "MIT",
- "dependencies": {
- "agent-base": "^7.1.2",
- "debug": "4"
- },
- "devDependencies": {
- "@types/async-retry": "^1.4.5",
- "@types/debug": "4",
- "@types/jest": "^29.5.1",
- "@types/node": "^14.18.45",
- "async-listen": "^3.0.0",
- "async-retry": "^1.3.3",
- "jest": "^29.5.0",
- "ts-jest": "^29.1.0",
- "typescript": "^5.0.4",
- "proxy": "2.2.0",
- "tsconfig": "0.0.0"
- },
- "engines": {
- "node": ">= 14"
- },
- "scripts": {
- "build": "tsc",
- "test": "jest --env node --verbose --bail test/test.ts",
- "test-e2e": "jest --env node --verbose --bail test/e2e.test.ts",
- "lint": "eslint --ext .ts",
- "pack": "node ../../scripts/pack.mjs"
- }
-}
\ No newline at end of file
diff --git a/node_modules/imurmurhash/README.md b/node_modules/imurmurhash/README.md
deleted file mode 100644
index f35b20a..0000000
--- a/node_modules/imurmurhash/README.md
+++ /dev/null
@@ -1,122 +0,0 @@
-iMurmurHash.js
-==============
-
-An incremental implementation of the MurmurHash3 (32-bit) hashing algorithm for JavaScript based on [Gary Court's implementation](https://github.com/garycourt/murmurhash-js) with [kazuyukitanimura's modifications](https://github.com/kazuyukitanimura/murmurhash-js).
-
-This version works significantly faster than the non-incremental version if you need to hash many small strings into a single hash, since string concatenation (to build the single string to pass the non-incremental version) is fairly costly. In one case tested, using the incremental version was about 50% faster than concatenating 5-10 strings and then hashing.
-
-Installation
-------------
-
-To use iMurmurHash in the browser, [download the latest version](https://raw.github.com/jensyt/imurmurhash-js/master/imurmurhash.min.js) and include it as a script on your site.
-
-```html
-
-
-```
-
----
-
-To use iMurmurHash in Node.js, install the module using NPM:
-
-```bash
-npm install imurmurhash
-```
-
-Then simply include it in your scripts:
-
-```javascript
-MurmurHash3 = require('imurmurhash');
-```
-
-Quick Example
--------------
-
-```javascript
-// Create the initial hash
-var hashState = MurmurHash3('string');
-
-// Incrementally add text
-hashState.hash('more strings');
-hashState.hash('even more strings');
-
-// All calls can be chained if desired
-hashState.hash('and').hash('some').hash('more');
-
-// Get a result
-hashState.result();
-// returns 0xe4ccfe6b
-```
-
-Functions
----------
-
-### MurmurHash3 ([string], [seed])
-Get a hash state object, optionally initialized with the given _string_ and _seed_. _Seed_ must be a positive integer if provided. Calling this function without the `new` keyword will return a cached state object that has been reset. This is safe to use as long as the object is only used from a single thread and no other hashes are created while operating on this one. If this constraint cannot be met, you can use `new` to create a new state object. For example:
-
-```javascript
-// Use the cached object, calling the function again will return the same
-// object (but reset, so the current state would be lost)
-hashState = MurmurHash3();
-...
-
-// Create a new object that can be safely used however you wish. Calling the
-// function again will simply return a new state object, and no state loss
-// will occur, at the cost of creating more objects.
-hashState = new MurmurHash3();
-```
-
-Both methods can be mixed however you like if you have different use cases.
-
----
-
-### MurmurHash3.prototype.hash (string)
-Incrementally add _string_ to the hash. This can be called as many times as you want for the hash state object, including after a call to `result()`. Returns `this` so calls can be chained.
-
----
-
-### MurmurHash3.prototype.result ()
-Get the result of the hash as a 32-bit positive integer. This performs the tail and finalizer portions of the algorithm, but does not store the result in the state object. This means that it is perfectly safe to get results and then continue adding strings via `hash`.
-
-```javascript
-// Do the whole string at once
-MurmurHash3('this is a test string').result();
-// 0x70529328
-
-// Do part of the string, get a result, then the other part
-var m = MurmurHash3('this is a');
-m.result();
-// 0xbfc4f834
-m.hash(' test string').result();
-// 0x70529328 (same as above)
-```
-
----
-
-### MurmurHash3.prototype.reset ([seed])
-Reset the state object for reuse, optionally using the given _seed_ (defaults to 0 like the constructor). Returns `this` so calls can be chained.
-
----
-
-License (MIT)
--------------
-Copyright (c) 2013 Gary Court, Jens Taylor
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
-the Software, and to permit persons to whom the Software is furnished to do so,
-subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
-FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
-COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/node_modules/imurmurhash/imurmurhash.js b/node_modules/imurmurhash/imurmurhash.js
deleted file mode 100644
index e63146a..0000000
--- a/node_modules/imurmurhash/imurmurhash.js
+++ /dev/null
@@ -1,138 +0,0 @@
-/**
- * @preserve
- * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013)
- *
- * @author Jens Taylor
- * @see http://github.com/homebrewing/brauhaus-diff
- * @author Gary Court
- * @see http://github.com/garycourt/murmurhash-js
- * @author Austin Appleby
- * @see http://sites.google.com/site/murmurhash/
- */
-(function(){
- var cache;
-
- // Call this function without `new` to use the cached object (good for
- // single-threaded environments), or with `new` to create a new object.
- //
- // @param {string} key A UTF-16 or ASCII string
- // @param {number} seed An optional positive integer
- // @return {object} A MurmurHash3 object for incremental hashing
- function MurmurHash3(key, seed) {
- var m = this instanceof MurmurHash3 ? this : cache;
- m.reset(seed)
- if (typeof key === 'string' && key.length > 0) {
- m.hash(key);
- }
-
- if (m !== this) {
- return m;
- }
- };
-
- // Incrementally add a string to this hash
- //
- // @param {string} key A UTF-16 or ASCII string
- // @return {object} this
- MurmurHash3.prototype.hash = function(key) {
- var h1, k1, i, top, len;
-
- len = key.length;
- this.len += len;
-
- k1 = this.k1;
- i = 0;
- switch (this.rem) {
- case 0: k1 ^= len > i ? (key.charCodeAt(i++) & 0xffff) : 0;
- case 1: k1 ^= len > i ? (key.charCodeAt(i++) & 0xffff) << 8 : 0;
- case 2: k1 ^= len > i ? (key.charCodeAt(i++) & 0xffff) << 16 : 0;
- case 3:
- k1 ^= len > i ? (key.charCodeAt(i) & 0xff) << 24 : 0;
- k1 ^= len > i ? (key.charCodeAt(i++) & 0xff00) >> 8 : 0;
- }
-
- this.rem = (len + this.rem) & 3; // & 3 is same as % 4
- len -= this.rem;
- if (len > 0) {
- h1 = this.h1;
- while (1) {
- k1 = (k1 * 0x2d51 + (k1 & 0xffff) * 0xcc9e0000) & 0xffffffff;
- k1 = (k1 << 15) | (k1 >>> 17);
- k1 = (k1 * 0x3593 + (k1 & 0xffff) * 0x1b870000) & 0xffffffff;
-
- h1 ^= k1;
- h1 = (h1 << 13) | (h1 >>> 19);
- h1 = (h1 * 5 + 0xe6546b64) & 0xffffffff;
-
- if (i >= len) {
- break;
- }
-
- k1 = ((key.charCodeAt(i++) & 0xffff)) ^
- ((key.charCodeAt(i++) & 0xffff) << 8) ^
- ((key.charCodeAt(i++) & 0xffff) << 16);
- top = key.charCodeAt(i++);
- k1 ^= ((top & 0xff) << 24) ^
- ((top & 0xff00) >> 8);
- }
-
- k1 = 0;
- switch (this.rem) {
- case 3: k1 ^= (key.charCodeAt(i + 2) & 0xffff) << 16;
- case 2: k1 ^= (key.charCodeAt(i + 1) & 0xffff) << 8;
- case 1: k1 ^= (key.charCodeAt(i) & 0xffff);
- }
-
- this.h1 = h1;
- }
-
- this.k1 = k1;
- return this;
- };
-
- // Get the result of this hash
- //
- // @return {number} The 32-bit hash
- MurmurHash3.prototype.result = function() {
- var k1, h1;
-
- k1 = this.k1;
- h1 = this.h1;
-
- if (k1 > 0) {
- k1 = (k1 * 0x2d51 + (k1 & 0xffff) * 0xcc9e0000) & 0xffffffff;
- k1 = (k1 << 15) | (k1 >>> 17);
- k1 = (k1 * 0x3593 + (k1 & 0xffff) * 0x1b870000) & 0xffffffff;
- h1 ^= k1;
- }
-
- h1 ^= this.len;
-
- h1 ^= h1 >>> 16;
- h1 = (h1 * 0xca6b + (h1 & 0xffff) * 0x85eb0000) & 0xffffffff;
- h1 ^= h1 >>> 13;
- h1 = (h1 * 0xae35 + (h1 & 0xffff) * 0xc2b20000) & 0xffffffff;
- h1 ^= h1 >>> 16;
-
- return h1 >>> 0;
- };
-
- // Reset the hash object for reuse
- //
- // @param {number} seed An optional positive integer
- MurmurHash3.prototype.reset = function(seed) {
- this.h1 = typeof seed === 'number' ? seed : 0;
- this.rem = this.k1 = this.len = 0;
- return this;
- };
-
- // A cached object to use. This can be safely used if you're in a single-
- // threaded environment, otherwise you need to create new hashes to use.
- cache = new MurmurHash3();
-
- if (typeof(module) != 'undefined') {
- module.exports = MurmurHash3;
- } else {
- this.MurmurHash3 = MurmurHash3;
- }
-}());
diff --git a/node_modules/imurmurhash/imurmurhash.min.js b/node_modules/imurmurhash/imurmurhash.min.js
deleted file mode 100644
index dc0ee88..0000000
--- a/node_modules/imurmurhash/imurmurhash.min.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * @preserve
- * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013)
- *
- * @author Jens Taylor
- * @see http://github.com/homebrewing/brauhaus-diff
- * @author Gary Court
- * @see http://github.com/garycourt/murmurhash-js
- * @author Austin Appleby
- * @see http://sites.google.com/site/murmurhash/
- */
-!function(){function t(h,r){var s=this instanceof t?this:e;return s.reset(r),"string"==typeof h&&h.length>0&&s.hash(h),s!==this?s:void 0}var e;t.prototype.hash=function(t){var e,h,r,s,i;switch(i=t.length,this.len+=i,h=this.k1,r=0,this.rem){case 0:h^=i>r?65535&t.charCodeAt(r++):0;case 1:h^=i>r?(65535&t.charCodeAt(r++))<<8:0;case 2:h^=i>r?(65535&t.charCodeAt(r++))<<16:0;case 3:h^=i>r?(255&t.charCodeAt(r))<<24:0,h^=i>r?(65280&t.charCodeAt(r++))>>8:0}if(this.rem=3&i+this.rem,i-=this.rem,i>0){for(e=this.h1;;){if(h=4294967295&11601*h+3432906752*(65535&h),h=h<<15|h>>>17,h=4294967295&13715*h+461832192*(65535&h),e^=h,e=e<<13|e>>>19,e=4294967295&5*e+3864292196,r>=i)break;h=65535&t.charCodeAt(r++)^(65535&t.charCodeAt(r++))<<8^(65535&t.charCodeAt(r++))<<16,s=t.charCodeAt(r++),h^=(255&s)<<24^(65280&s)>>8}switch(h=0,this.rem){case 3:h^=(65535&t.charCodeAt(r+2))<<16;case 2:h^=(65535&t.charCodeAt(r+1))<<8;case 1:h^=65535&t.charCodeAt(r)}this.h1=e}return this.k1=h,this},t.prototype.result=function(){var t,e;return t=this.k1,e=this.h1,t>0&&(t=4294967295&11601*t+3432906752*(65535&t),t=t<<15|t>>>17,t=4294967295&13715*t+461832192*(65535&t),e^=t),e^=this.len,e^=e>>>16,e=4294967295&51819*e+2246770688*(65535&e),e^=e>>>13,e=4294967295&44597*e+3266445312*(65535&e),e^=e>>>16,e>>>0},t.prototype.reset=function(t){return this.h1="number"==typeof t?t:0,this.rem=this.k1=this.len=0,this},e=new t,"undefined"!=typeof module?module.exports=t:this.MurmurHash3=t}();
\ No newline at end of file
diff --git a/node_modules/imurmurhash/package.json b/node_modules/imurmurhash/package.json
deleted file mode 100644
index 8a93edb..0000000
--- a/node_modules/imurmurhash/package.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "name": "imurmurhash",
- "version": "0.1.4",
- "description": "An incremental implementation of MurmurHash3",
- "homepage": "https://github.com/jensyt/imurmurhash-js",
- "main": "imurmurhash.js",
- "files": [
- "imurmurhash.js",
- "imurmurhash.min.js",
- "package.json",
- "README.md"
- ],
- "repository": {
- "type": "git",
- "url": "https://github.com/jensyt/imurmurhash-js"
- },
- "bugs": {
- "url": "https://github.com/jensyt/imurmurhash-js/issues"
- },
- "keywords": [
- "murmur",
- "murmurhash",
- "murmurhash3",
- "hash",
- "incremental"
- ],
- "author": {
- "name": "Jens Taylor",
- "email": "jensyt@gmail.com",
- "url": "https://github.com/homebrewing"
- },
- "license": "MIT",
- "dependencies": {
- },
- "devDependencies": {
- },
- "engines": {
- "node": ">=0.8.19"
- }
-}
diff --git a/node_modules/minipass/LICENSE b/node_modules/minipass/LICENSE
deleted file mode 100644
index 97f8e32..0000000
--- a/node_modules/minipass/LICENSE
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) 2017-2023 npm, Inc., Isaac Z. Schlueter, and Contributors
-
-Permission to use, copy, modify, and/or distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/node_modules/minipass/README.md b/node_modules/minipass/README.md
deleted file mode 100644
index 1126330..0000000
--- a/node_modules/minipass/README.md
+++ /dev/null
@@ -1,825 +0,0 @@
-# minipass
-
-A _very_ minimal implementation of a [PassThrough
-stream](https://nodejs.org/api/stream.html#stream_class_stream_passthrough)
-
-[It's very
-fast](https://docs.google.com/spreadsheets/d/1K_HR5oh3r80b8WVMWCPPjfuWXUgfkmhlX7FGI6JJ8tY/edit?usp=sharing)
-for objects, strings, and buffers.
-
-Supports `pipe()`ing (including multi-`pipe()` and backpressure
-transmission), buffering data until either a `data` event handler
-or `pipe()` is added (so you don't lose the first chunk), and
-most other cases where PassThrough is a good idea.
-
-There is a `read()` method, but it's much more efficient to
-consume data from this stream via `'data'` events or by calling
-`pipe()` into some other stream. Calling `read()` requires the
-buffer to be flattened in some cases, which requires copying
-memory.
-
-If you set `objectMode: true` in the options, then whatever is
-written will be emitted. Otherwise, it'll do a minimal amount of
-Buffer copying to ensure proper Streams semantics when `read(n)`
-is called.
-
-`objectMode` can only be set at instantiation. Attempting to
-write something other than a String or Buffer without having set
-`objectMode` in the options will throw an error.
-
-This is not a `through` or `through2` stream. It doesn't
-transform the data, it just passes it right through. If you want
-to transform the data, extend the class, and override the
-`write()` method. Once you're done transforming the data however
-you want, call `super.write()` with the transform output.
-
-For some examples of streams that extend Minipass in various
-ways, check out:
-
-- [minizlib](http://npm.im/minizlib)
-- [fs-minipass](http://npm.im/fs-minipass)
-- [tar](http://npm.im/tar)
-- [minipass-collect](http://npm.im/minipass-collect)
-- [minipass-flush](http://npm.im/minipass-flush)
-- [minipass-pipeline](http://npm.im/minipass-pipeline)
-- [tap](http://npm.im/tap)
-- [tap-parser](http://npm.im/tap-parser)
-- [treport](http://npm.im/treport)
-- [minipass-fetch](http://npm.im/minipass-fetch)
-- [pacote](http://npm.im/pacote)
-- [make-fetch-happen](http://npm.im/make-fetch-happen)
-- [cacache](http://npm.im/cacache)
-- [ssri](http://npm.im/ssri)
-- [npm-registry-fetch](http://npm.im/npm-registry-fetch)
-- [minipass-json-stream](http://npm.im/minipass-json-stream)
-- [minipass-sized](http://npm.im/minipass-sized)
-
-## Usage in TypeScript
-
-The `Minipass` class takes three type template definitions:
-
-- `RType` the type being read, which defaults to `Buffer`. If
- `RType` is `string`, then the constructor _must_ get an options
- object specifying either an `encoding` or `objectMode: true`.
- If it's anything other than `string` or `Buffer`, then it
- _must_ get an options object specifying `objectMode: true`.
-- `WType` the type being written. If `RType` is `Buffer` or
- `string`, then this defaults to `ContiguousData` (Buffer,
- string, ArrayBuffer, or ArrayBufferView). Otherwise, it
- defaults to `RType`.
-- `Events` type mapping event names to the arguments emitted
- with that event, which extends `Minipass.Events`.
-
-To declare types for custom events in subclasses, extend the
-third parameter with your own event signatures. For example:
-
-```js
-import { Minipass } from 'minipass'
-
-// a NDJSON stream that emits 'jsonError' when it can't stringify
-export interface Events extends Minipass.Events {
- jsonError: [e: Error]
-}
-
-export class NDJSONStream extends Minipass {
- constructor() {
- super({ objectMode: true })
- }
-
- // data is type `any` because that's WType
- write(data, encoding, cb) {
- try {
- const json = JSON.stringify(data)
- return super.write(json + '\n', encoding, cb)
- } catch (er) {
- if (!er instanceof Error) {
- er = Object.assign(new Error('json stringify failed'), {
- cause: er,
- })
- }
- // trying to emit with something OTHER than an error will
- // fail, because we declared the event arguments type.
- this.emit('jsonError', er)
- }
- }
-}
-
-const s = new NDJSONStream()
-s.on('jsonError', e => {
- // here, TS knows that e is an Error
-})
-```
-
-Emitting/handling events that aren't declared in this way is
-fine, but the arguments will be typed as `unknown`.
-
-## Differences from Node.js Streams
-
-There are several things that make Minipass streams different
-from (and in some ways superior to) Node.js core streams.
-
-Please read these caveats if you are familiar with node-core
-streams and intend to use Minipass streams in your programs.
-
-You can avoid most of these differences entirely (for a very
-small performance penalty) by setting `{async: true}` in the
-constructor options.
-
-### Timing
-
-Minipass streams are designed to support synchronous use-cases.
-Thus, data is emitted as soon as it is available, always. It is
-buffered until read, but no longer. Another way to look at it is
-that Minipass streams are exactly as synchronous as the logic
-that writes into them.
-
-This can be surprising if your code relies on
-`PassThrough.write()` always providing data on the next tick
-rather than the current one, or being able to call `resume()` and
-not have the entire buffer disappear immediately.
-
-However, without this synchronicity guarantee, there would be no
-way for Minipass to achieve the speeds it does, or support the
-synchronous use cases that it does. Simply put, waiting takes
-time.
-
-This non-deferring approach makes Minipass streams much easier to
-reason about, especially in the context of Promises and other
-flow-control mechanisms.
-
-Example:
-
-```js
-// hybrid module, either works
-import { Minipass } from 'minipass'
-// or:
-const { Minipass } = require('minipass')
-
-const stream = new Minipass()
-stream.on('data', () => console.log('data event'))
-console.log('before write')
-stream.write('hello')
-console.log('after write')
-// output:
-// before write
-// data event
-// after write
-```
-
-### Exception: Async Opt-In
-
-If you wish to have a Minipass stream with behavior that more
-closely mimics Node.js core streams, you can set the stream in
-async mode either by setting `async: true` in the constructor
-options, or by setting `stream.async = true` later on.
-
-```js
-// hybrid module, either works
-import { Minipass } from 'minipass'
-// or:
-const { Minipass } = require('minipass')
-
-const asyncStream = new Minipass({ async: true })
-asyncStream.on('data', () => console.log('data event'))
-console.log('before write')
-asyncStream.write('hello')
-console.log('after write')
-// output:
-// before write
-// after write
-// data event <-- this is deferred until the next tick
-```
-
-Switching _out_ of async mode is unsafe, as it could cause data
-corruption, and so is not enabled. Example:
-
-```js
-import { Minipass } from 'minipass'
-const stream = new Minipass({ encoding: 'utf8' })
-stream.on('data', chunk => console.log(chunk))
-stream.async = true
-console.log('before writes')
-stream.write('hello')
-setStreamSyncAgainSomehow(stream) // <-- this doesn't actually exist!
-stream.write('world')
-console.log('after writes')
-// hypothetical output would be:
-// before writes
-// world
-// after writes
-// hello
-// NOT GOOD!
-```
-
-To avoid this problem, once set into async mode, any attempt to
-make the stream sync again will be ignored.
-
-```js
-const { Minipass } = require('minipass')
-const stream = new Minipass({ encoding: 'utf8' })
-stream.on('data', chunk => console.log(chunk))
-stream.async = true
-console.log('before writes')
-stream.write('hello')
-stream.async = false // <-- no-op, stream already async
-stream.write('world')
-console.log('after writes')
-// actual output:
-// before writes
-// after writes
-// hello
-// world
-```
-
-### No High/Low Water Marks
-
-Node.js core streams will optimistically fill up a buffer,
-returning `true` on all writes until the limit is hit, even if
-the data has nowhere to go. Then, they will not attempt to draw
-more data in until the buffer size dips below a minimum value.
-
-Minipass streams are much simpler. The `write()` method will
-return `true` if the data has somewhere to go (which is to say,
-given the timing guarantees, that the data is already there by
-the time `write()` returns).
-
-If the data has nowhere to go, then `write()` returns false, and
-the data sits in a buffer, to be drained out immediately as soon
-as anyone consumes it.
-
-Since nothing is ever buffered unnecessarily, there is much less
-copying data, and less bookkeeping about buffer capacity levels.
-
-### Hazards of Buffering (or: Why Minipass Is So Fast)
-
-Since data written to a Minipass stream is immediately written
-all the way through the pipeline, and `write()` always returns
-true/false based on whether the data was fully flushed,
-backpressure is communicated immediately to the upstream caller.
-This minimizes buffering.
-
-Consider this case:
-
-```js
-const { PassThrough } = require('stream')
-const p1 = new PassThrough({ highWaterMark: 1024 })
-const p2 = new PassThrough({ highWaterMark: 1024 })
-const p3 = new PassThrough({ highWaterMark: 1024 })
-const p4 = new PassThrough({ highWaterMark: 1024 })
-
-p1.pipe(p2).pipe(p3).pipe(p4)
-p4.on('data', () => console.log('made it through'))
-
-// this returns false and buffers, then writes to p2 on next tick (1)
-// p2 returns false and buffers, pausing p1, then writes to p3 on next tick (2)
-// p3 returns false and buffers, pausing p2, then writes to p4 on next tick (3)
-// p4 returns false and buffers, pausing p3, then emits 'data' and 'drain'
-// on next tick (4)
-// p3 sees p4's 'drain' event, and calls resume(), emitting 'resume' and
-// 'drain' on next tick (5)
-// p2 sees p3's 'drain', calls resume(), emits 'resume' and 'drain' on next tick (6)
-// p1 sees p2's 'drain', calls resume(), emits 'resume' and 'drain' on next
-// tick (7)
-
-p1.write(Buffer.alloc(2048)) // returns false
-```
-
-Along the way, the data was buffered and deferred at each stage,
-and multiple event deferrals happened, for an unblocked pipeline
-where it was perfectly safe to write all the way through!
-
-Furthermore, setting a `highWaterMark` of `1024` might lead
-someone reading the code to think an advisory maximum of 1KiB is
-being set for the pipeline. However, the actual advisory
-buffering level is the _sum_ of `highWaterMark` values, since
-each one has its own bucket.
-
-Consider the Minipass case:
-
-```js
-const m1 = new Minipass()
-const m2 = new Minipass()
-const m3 = new Minipass()
-const m4 = new Minipass()
-
-m1.pipe(m2).pipe(m3).pipe(m4)
-m4.on('data', () => console.log('made it through'))
-
-// m1 is flowing, so it writes the data to m2 immediately
-// m2 is flowing, so it writes the data to m3 immediately
-// m3 is flowing, so it writes the data to m4 immediately
-// m4 is flowing, so it fires the 'data' event immediately, returns true
-// m4's write returned true, so m3 is still flowing, returns true
-// m3's write returned true, so m2 is still flowing, returns true
-// m2's write returned true, so m1 is still flowing, returns true
-// No event deferrals or buffering along the way!
-
-m1.write(Buffer.alloc(2048)) // returns true
-```
-
-It is extremely unlikely that you _don't_ want to buffer any data
-written, or _ever_ buffer data that can be flushed all the way
-through. Neither node-core streams nor Minipass ever fail to
-buffer written data, but node-core streams do a lot of
-unnecessary buffering and pausing.
-
-As always, the faster implementation is the one that does less
-stuff and waits less time to do it.
-
-### Immediately emit `end` for empty streams (when not paused)
-
-If a stream is not paused, and `end()` is called before writing
-any data into it, then it will emit `end` immediately.
-
-If you have logic that occurs on the `end` event which you don't
-want to potentially happen immediately (for example, closing file
-descriptors, moving on to the next entry in an archive parse
-stream, etc.) then be sure to call `stream.pause()` on creation,
-and then `stream.resume()` once you are ready to respond to the
-`end` event.
-
-However, this is _usually_ not a problem because:
-
-### Emit `end` When Asked
-
-One hazard of immediately emitting `'end'` is that you may not
-yet have had a chance to add a listener. In order to avoid this
-hazard, Minipass streams safely re-emit the `'end'` event if a
-new listener is added after `'end'` has been emitted.
-
-Ie, if you do `stream.on('end', someFunction)`, and the stream
-has already emitted `end`, then it will call the handler right
-away. (You can think of this somewhat like attaching a new
-`.then(fn)` to a previously-resolved Promise.)
-
-To prevent calling handlers multiple times who would not expect
-multiple ends to occur, all listeners are removed from the
-`'end'` event whenever it is emitted.
-
-### Emit `error` When Asked
-
-The most recent error object passed to the `'error'` event is
-stored on the stream. If a new `'error'` event handler is added,
-and an error was previously emitted, then the event handler will
-be called immediately (or on `process.nextTick` in the case of
-async streams).
-
-This makes it much more difficult to end up trying to interact
-with a broken stream, if the error handler is added after an
-error was previously emitted.
-
-### Impact of "immediate flow" on Tee-streams
-
-A "tee stream" is a stream piping to multiple destinations:
-
-```js
-const tee = new Minipass()
-t.pipe(dest1)
-t.pipe(dest2)
-t.write('foo') // goes to both destinations
-```
-
-Since Minipass streams _immediately_ process any pending data
-through the pipeline when a new pipe destination is added, this
-can have surprising effects, especially when a stream comes in
-from some other function and may or may not have data in its
-buffer.
-
-```js
-// WARNING! WILL LOSE DATA!
-const src = new Minipass()
-src.write('foo')
-src.pipe(dest1) // 'foo' chunk flows to dest1 immediately, and is gone
-src.pipe(dest2) // gets nothing!
-```
-
-One solution is to create a dedicated tee-stream junction that
-pipes to both locations, and then pipe to _that_ instead.
-
-```js
-// Safe example: tee to both places
-const src = new Minipass()
-src.write('foo')
-const tee = new Minipass()
-tee.pipe(dest1)
-tee.pipe(dest2)
-src.pipe(tee) // tee gets 'foo', pipes to both locations
-```
-
-The same caveat applies to `on('data')` event listeners. The
-first one added will _immediately_ receive all of the data,
-leaving nothing for the second:
-
-```js
-// WARNING! WILL LOSE DATA!
-const src = new Minipass()
-src.write('foo')
-src.on('data', handler1) // receives 'foo' right away
-src.on('data', handler2) // nothing to see here!
-```
-
-Using a dedicated tee-stream can be used in this case as well:
-
-```js
-// Safe example: tee to both data handlers
-const src = new Minipass()
-src.write('foo')
-const tee = new Minipass()
-tee.on('data', handler1)
-tee.on('data', handler2)
-src.pipe(tee)
-```
-
-All of the hazards in this section are avoided by setting `{
-async: true }` in the Minipass constructor, or by setting
-`stream.async = true` afterwards. Note that this does add some
-overhead, so should only be done in cases where you are willing
-to lose a bit of performance in order to avoid having to refactor
-program logic.
-
-## USAGE
-
-It's a stream! Use it like a stream and it'll most likely do what
-you want.
-
-```js
-import { Minipass } from 'minipass'
-const mp = new Minipass(options) // options is optional
-mp.write('foo')
-mp.pipe(someOtherStream)
-mp.end('bar')
-```
-
-### OPTIONS
-
-- `encoding` How would you like the data coming _out_ of the
- stream to be encoded? Accepts any values that can be passed to
- `Buffer.toString()`.
-- `objectMode` Emit data exactly as it comes in. This will be
- flipped on by default if you write() something other than a
- string or Buffer at any point. Setting `objectMode: true` will
- prevent setting any encoding value.
-- `async` Defaults to `false`. Set to `true` to defer data
- emission until next tick. This reduces performance slightly,
- but makes Minipass streams use timing behavior closer to Node
- core streams. See [Timing](#timing) for more details.
-- `signal` An `AbortSignal` that will cause the stream to unhook
- itself from everything and become as inert as possible. Note
- that providing a `signal` parameter will make `'error'` events
- no longer throw if they are unhandled, but they will still be
- emitted to handlers if any are attached.
-
-### API
-
-Implements the user-facing portions of Node.js's `Readable` and
-`Writable` streams.
-
-### Methods
-
-- `write(chunk, [encoding], [callback])` - Put data in. (Note
- that, in the base Minipass class, the same data will come out.)
- Returns `false` if the stream will buffer the next write, or
- true if it's still in "flowing" mode.
-- `end([chunk, [encoding]], [callback])` - Signal that you have
- no more data to write. This will queue an `end` event to be
- fired when all the data has been consumed.
-- `pause()` - No more data for a while, please. This also
- prevents `end` from being emitted for empty streams until the
- stream is resumed.
-- `resume()` - Resume the stream. If there's data in the buffer,
- it is all discarded. Any buffered events are immediately
- emitted.
-- `pipe(dest)` - Send all output to the stream provided. When
- data is emitted, it is immediately written to any and all pipe
- destinations. (Or written on next tick in `async` mode.)
-- `unpipe(dest)` - Stop piping to the destination stream. This is
- immediate, meaning that any asynchronously queued data will
- _not_ make it to the destination when running in `async` mode.
- - `options.end` - Boolean, end the destination stream when the
- source stream ends. Default `true`.
- - `options.proxyErrors` - Boolean, proxy `error` events from
- the source stream to the destination stream. Note that errors
- are _not_ proxied after the pipeline terminates, either due
- to the source emitting `'end'` or manually unpiping with
- `src.unpipe(dest)`. Default `false`.
-- `on(ev, fn)`, `emit(ev, fn)` - Minipass streams are
- EventEmitters. Some events are given special treatment,
- however. (See below under "events".)
-- `promise()` - Returns a Promise that resolves when the stream
- emits `end`, or rejects if the stream emits `error`.
-- `collect()` - Return a Promise that resolves on `end` with an
- array containing each chunk of data that was emitted, or
- rejects if the stream emits `error`. Note that this consumes
- the stream data.
-- `concat()` - Same as `collect()`, but concatenates the data
- into a single Buffer object. Will reject the returned promise
- if the stream is in objectMode, or if it goes into objectMode
- by the end of the data.
-- `read(n)` - Consume `n` bytes of data out of the buffer. If `n`
- is not provided, then consume all of it. If `n` bytes are not
- available, then it returns null. **Note** consuming streams in
- this way is less efficient, and can lead to unnecessary Buffer
- copying.
-- `destroy([er])` - Destroy the stream. If an error is provided,
- then an `'error'` event is emitted. If the stream has a
- `close()` method, and has not emitted a `'close'` event yet,
- then `stream.close()` will be called. Any Promises returned by
- `.promise()`, `.collect()` or `.concat()` will be rejected.
- After being destroyed, writing to the stream will emit an
- error. No more data will be emitted if the stream is destroyed,
- even if it was previously buffered.
-
-### Properties
-
-- `bufferLength` Read-only. Total number of bytes buffered, or in
- the case of objectMode, the total number of objects.
-- `encoding` Read-only. The encoding that has been set.
-- `flowing` Read-only. Boolean indicating whether a chunk written
- to the stream will be immediately emitted.
-- `emittedEnd` Read-only. Boolean indicating whether the end-ish
- events (ie, `end`, `prefinish`, `finish`) have been emitted.
- Note that listening on any end-ish event will immediateyl
- re-emit it if it has already been emitted.
-- `writable` Whether the stream is writable. Default `true`. Set
- to `false` when `end()`
-- `readable` Whether the stream is readable. Default `true`.
-- `pipes` An array of Pipe objects referencing streams that this
- stream is piping into.
-- `destroyed` A getter that indicates whether the stream was
- destroyed.
-- `paused` True if the stream has been explicitly paused,
- otherwise false.
-- `objectMode` Indicates whether the stream is in `objectMode`.
-- `aborted` Readonly property set when the `AbortSignal`
- dispatches an `abort` event.
-
-### Events
-
-- `data` Emitted when there's data to read. Argument is the data
- to read. This is never emitted while not flowing. If a listener
- is attached, that will resume the stream.
-- `end` Emitted when there's no more data to read. This will be
- emitted immediately for empty streams when `end()` is called.
- If a listener is attached, and `end` was already emitted, then
- it will be emitted again. All listeners are removed when `end`
- is emitted.
-- `prefinish` An end-ish event that follows the same logic as
- `end` and is emitted in the same conditions where `end` is
- emitted. Emitted after `'end'`.
-- `finish` An end-ish event that follows the same logic as `end`
- and is emitted in the same conditions where `end` is emitted.
- Emitted after `'prefinish'`.
-- `close` An indication that an underlying resource has been
- released. Minipass does not emit this event, but will defer it
- until after `end` has been emitted, since it throws off some
- stream libraries otherwise.
-- `drain` Emitted when the internal buffer empties, and it is
- again suitable to `write()` into the stream.
-- `readable` Emitted when data is buffered and ready to be read
- by a consumer.
-- `resume` Emitted when stream changes state from buffering to
- flowing mode. (Ie, when `resume` is called, `pipe` is called,
- or a `data` event listener is added.)
-
-### Static Methods
-
-- `Minipass.isStream(stream)` Returns `true` if the argument is a
- stream, and false otherwise. To be considered a stream, the
- object must be either an instance of Minipass, or an
- EventEmitter that has either a `pipe()` method, or both
- `write()` and `end()` methods. (Pretty much any stream in
- node-land will return `true` for this.)
-
-## EXAMPLES
-
-Here are some examples of things you can do with Minipass
-streams.
-
-### simple "are you done yet" promise
-
-```js
-mp.promise().then(
- () => {
- // stream is finished
- },
- er => {
- // stream emitted an error
- }
-)
-```
-
-### collecting
-
-```js
-mp.collect().then(all => {
- // all is an array of all the data emitted
- // encoding is supported in this case, so
- // so the result will be a collection of strings if
- // an encoding is specified, or buffers/objects if not.
- //
- // In an async function, you may do
- // const data = await stream.collect()
-})
-```
-
-### collecting into a single blob
-
-This is a bit slower because it concatenates the data into one
-chunk for you, but if you're going to do it yourself anyway, it's
-convenient this way:
-
-```js
-mp.concat().then(onebigchunk => {
- // onebigchunk is a string if the stream
- // had an encoding set, or a buffer otherwise.
-})
-```
-
-### iteration
-
-You can iterate over streams synchronously or asynchronously in
-platforms that support it.
-
-Synchronous iteration will end when the currently available data
-is consumed, even if the `end` event has not been reached. In
-string and buffer mode, the data is concatenated, so unless
-multiple writes are occurring in the same tick as the `read()`,
-sync iteration loops will generally only have a single iteration.
-
-To consume chunks in this way exactly as they have been written,
-with no flattening, create the stream with the `{ objectMode:
-true }` option.
-
-```js
-const mp = new Minipass({ objectMode: true })
-mp.write('a')
-mp.write('b')
-for (let letter of mp) {
- console.log(letter) // a, b
-}
-mp.write('c')
-mp.write('d')
-for (let letter of mp) {
- console.log(letter) // c, d
-}
-mp.write('e')
-mp.end()
-for (let letter of mp) {
- console.log(letter) // e
-}
-for (let letter of mp) {
- console.log(letter) // nothing
-}
-```
-
-Asynchronous iteration will continue until the end event is reached,
-consuming all of the data.
-
-```js
-const mp = new Minipass({ encoding: 'utf8' })
-
-// some source of some data
-let i = 5
-const inter = setInterval(() => {
- if (i-- > 0) mp.write(Buffer.from('foo\n', 'utf8'))
- else {
- mp.end()
- clearInterval(inter)
- }
-}, 100)
-
-// consume the data with asynchronous iteration
-async function consume() {
- for await (let chunk of mp) {
- console.log(chunk)
- }
- return 'ok'
-}
-
-consume().then(res => console.log(res))
-// logs `foo\n` 5 times, and then `ok`
-```
-
-### subclass that `console.log()`s everything written into it
-
-```js
-class Logger extends Minipass {
- write(chunk, encoding, callback) {
- console.log('WRITE', chunk, encoding)
- return super.write(chunk, encoding, callback)
- }
- end(chunk, encoding, callback) {
- console.log('END', chunk, encoding)
- return super.end(chunk, encoding, callback)
- }
-}
-
-someSource.pipe(new Logger()).pipe(someDest)
-```
-
-### same thing, but using an inline anonymous class
-
-```js
-// js classes are fun
-someSource
- .pipe(
- new (class extends Minipass {
- emit(ev, ...data) {
- // let's also log events, because debugging some weird thing
- console.log('EMIT', ev)
- return super.emit(ev, ...data)
- }
- write(chunk, encoding, callback) {
- console.log('WRITE', chunk, encoding)
- return super.write(chunk, encoding, callback)
- }
- end(chunk, encoding, callback) {
- console.log('END', chunk, encoding)
- return super.end(chunk, encoding, callback)
- }
- })()
- )
- .pipe(someDest)
-```
-
-### subclass that defers 'end' for some reason
-
-```js
-class SlowEnd extends Minipass {
- emit(ev, ...args) {
- if (ev === 'end') {
- console.log('going to end, hold on a sec')
- setTimeout(() => {
- console.log('ok, ready to end now')
- super.emit('end', ...args)
- }, 100)
- return true
- } else {
- return super.emit(ev, ...args)
- }
- }
-}
-```
-
-### transform that creates newline-delimited JSON
-
-```js
-class NDJSONEncode extends Minipass {
- write(obj, cb) {
- try {
- // JSON.stringify can throw, emit an error on that
- return super.write(JSON.stringify(obj) + '\n', 'utf8', cb)
- } catch (er) {
- this.emit('error', er)
- }
- }
- end(obj, cb) {
- if (typeof obj === 'function') {
- cb = obj
- obj = undefined
- }
- if (obj !== undefined) {
- this.write(obj)
- }
- return super.end(cb)
- }
-}
-```
-
-### transform that parses newline-delimited JSON
-
-```js
-class NDJSONDecode extends Minipass {
- constructor(options) {
- // always be in object mode, as far as Minipass is concerned
- super({ objectMode: true })
- this._jsonBuffer = ''
- }
- write(chunk, encoding, cb) {
- if (
- typeof chunk === 'string' &&
- typeof encoding === 'string' &&
- encoding !== 'utf8'
- ) {
- chunk = Buffer.from(chunk, encoding).toString()
- } else if (Buffer.isBuffer(chunk)) {
- chunk = chunk.toString()
- }
- if (typeof encoding === 'function') {
- cb = encoding
- }
- const jsonData = (this._jsonBuffer + chunk).split('\n')
- this._jsonBuffer = jsonData.pop()
- for (let i = 0; i < jsonData.length; i++) {
- try {
- // JSON.parse can throw, emit an error on that
- super.write(JSON.parse(jsonData[i]))
- } catch (er) {
- this.emit('error', er)
- continue
- }
- }
- if (cb) cb()
- }
-}
-```
diff --git a/node_modules/minipass/dist/commonjs/index.d.ts b/node_modules/minipass/dist/commonjs/index.d.ts
deleted file mode 100644
index 031e61a..0000000
--- a/node_modules/minipass/dist/commonjs/index.d.ts
+++ /dev/null
@@ -1,549 +0,0 @@
-///
-///
-///
-///
-import { EventEmitter } from 'node:events';
-import { StringDecoder } from 'node:string_decoder';
-/**
- * Same as StringDecoder, but exposing the `lastNeed` flag on the type
- */
-type SD = StringDecoder & {
- lastNeed: boolean;
-};
-export type { SD, Pipe, PipeProxyErrors };
-/**
- * Return true if the argument is a Minipass stream, Node stream, or something
- * else that Minipass can interact with.
- */
-export declare const isStream: (s: any) => s is NodeJS.WriteStream | NodeJS.ReadStream | Minipass | (NodeJS.ReadStream & {
- fd: number;
-}) | (EventEmitter & {
- pause(): any;
- resume(): any;
- pipe(...destArgs: any[]): any;
-}) | (NodeJS.WriteStream & {
- fd: number;
-}) | (EventEmitter & {
- end(): any;
- write(chunk: any, ...args: any[]): any;
-});
-/**
- * Return true if the argument is a valid {@link Minipass.Readable}
- */
-export declare const isReadable: (s: any) => s is Minipass.Readable;
-/**
- * Return true if the argument is a valid {@link Minipass.Writable}
- */
-export declare const isWritable: (s: any) => s is Minipass.Readable;
-declare const EOF: unique symbol;
-declare const MAYBE_EMIT_END: unique symbol;
-declare const EMITTED_END: unique symbol;
-declare const EMITTING_END: unique symbol;
-declare const EMITTED_ERROR: unique symbol;
-declare const CLOSED: unique symbol;
-declare const READ: unique symbol;
-declare const FLUSH: unique symbol;
-declare const FLUSHCHUNK: unique symbol;
-declare const ENCODING: unique symbol;
-declare const DECODER: unique symbol;
-declare const FLOWING: unique symbol;
-declare const PAUSED: unique symbol;
-declare const RESUME: unique symbol;
-declare const BUFFER: unique symbol;
-declare const PIPES: unique symbol;
-declare const BUFFERLENGTH: unique symbol;
-declare const BUFFERPUSH: unique symbol;
-declare const BUFFERSHIFT: unique symbol;
-declare const OBJECTMODE: unique symbol;
-declare const DESTROYED: unique symbol;
-declare const ERROR: unique symbol;
-declare const EMITDATA: unique symbol;
-declare const EMITEND: unique symbol;
-declare const EMITEND2: unique symbol;
-declare const ASYNC: unique symbol;
-declare const ABORT: unique symbol;
-declare const ABORTED: unique symbol;
-declare const SIGNAL: unique symbol;
-declare const DATALISTENERS: unique symbol;
-declare const DISCARDED: unique symbol;
-/**
- * Options that may be passed to stream.pipe()
- */
-export interface PipeOptions {
- /**
- * end the destination stream when the source stream ends
- */
- end?: boolean;
- /**
- * proxy errors from the source stream to the destination stream
- */
- proxyErrors?: boolean;
-}
-/**
- * Internal class representing a pipe to a destination stream.
- *
- * @internal
- */
-declare class Pipe {
- src: Minipass;
- dest: Minipass;
- opts: PipeOptions;
- ondrain: () => any;
- constructor(src: Minipass, dest: Minipass.Writable, opts: PipeOptions);
- unpipe(): void;
- proxyErrors(_er: any): void;
- end(): void;
-}
-/**
- * Internal class representing a pipe to a destination stream where
- * errors are proxied.
- *
- * @internal
- */
-declare class PipeProxyErrors extends Pipe {
- unpipe(): void;
- constructor(src: Minipass, dest: Minipass.Writable, opts: PipeOptions);
-}
-export declare namespace Minipass {
- /**
- * Encoding used to create a stream that outputs strings rather than
- * Buffer objects.
- */
- export type Encoding = BufferEncoding | 'buffer' | null;
- /**
- * Any stream that Minipass can pipe into
- */
- export type Writable = Minipass | NodeJS.WriteStream | (NodeJS.WriteStream & {
- fd: number;
- }) | (EventEmitter & {
- end(): any;
- write(chunk: any, ...args: any[]): any;
- });
- /**
- * Any stream that can be read from
- */
- export type Readable = Minipass | NodeJS.ReadStream | (NodeJS.ReadStream & {
- fd: number;
- }) | (EventEmitter & {
- pause(): any;
- resume(): any;
- pipe(...destArgs: any[]): any;
- });
- /**
- * Utility type that can be iterated sync or async
- */
- export type DualIterable = Iterable & AsyncIterable;
- type EventArguments = Record;
- /**
- * The listing of events that a Minipass class can emit.
- * Extend this when extending the Minipass class, and pass as
- * the third template argument. The key is the name of the event,
- * and the value is the argument list.
- *
- * Any undeclared events will still be allowed, but the handler will get
- * arguments as `unknown[]`.
- */
- export interface Events extends EventArguments {
- readable: [];
- data: [chunk: RType];
- error: [er: unknown];
- abort: [reason: unknown];
- drain: [];
- resume: [];
- end: [];
- finish: [];
- prefinish: [];
- close: [];
- [DESTROYED]: [er?: unknown];
- [ERROR]: [er: unknown];
- }
- /**
- * String or buffer-like data that can be joined and sliced
- */
- export type ContiguousData = Buffer | ArrayBufferLike | ArrayBufferView | string;
- export type BufferOrString = Buffer | string;
- /**
- * Options passed to the Minipass constructor.
- */
- export type SharedOptions = {
- /**
- * Defer all data emission and other events until the end of the
- * current tick, similar to Node core streams
- */
- async?: boolean;
- /**
- * A signal which will abort the stream
- */
- signal?: AbortSignal;
- /**
- * Output string encoding. Set to `null` or `'buffer'` (or omit) to
- * emit Buffer objects rather than strings.
- *
- * Conflicts with `objectMode`
- */
- encoding?: BufferEncoding | null | 'buffer';
- /**
- * Output data exactly as it was written, supporting non-buffer/string
- * data (such as arbitrary objects, falsey values, etc.)
- *
- * Conflicts with `encoding`
- */
- objectMode?: boolean;
- };
- /**
- * Options for a string encoded output
- */
- export type EncodingOptions = SharedOptions & {
- encoding: BufferEncoding;
- objectMode?: false;
- };
- /**
- * Options for contiguous data buffer output
- */
- export type BufferOptions = SharedOptions & {
- encoding?: null | 'buffer';
- objectMode?: false;
- };
- /**
- * Options for objectMode arbitrary output
- */
- export type ObjectModeOptions = SharedOptions & {
- objectMode: true;
- encoding?: null;
- };
- /**
- * Utility type to determine allowed options based on read type
- */
- export type Options = ObjectModeOptions | (T extends string ? EncodingOptions : T extends Buffer ? BufferOptions : SharedOptions);
- export {};
-}
-/**
- * Main export, the Minipass class
- *
- * `RType` is the type of data emitted, defaults to Buffer
- *
- * `WType` is the type of data to be written, if RType is buffer or string,
- * then any {@link Minipass.ContiguousData} is allowed.
- *
- * `Events` is the set of event handler signatures that this object
- * will emit, see {@link Minipass.Events}
- */
-export declare class Minipass = Minipass.Events> extends EventEmitter implements Minipass.DualIterable {
- [FLOWING]: boolean;
- [PAUSED]: boolean;
- [PIPES]: Pipe[];
- [BUFFER]: RType[];
- [OBJECTMODE]: boolean;
- [ENCODING]: BufferEncoding | null;
- [ASYNC]: boolean;
- [DECODER]: SD | null;
- [EOF]: boolean;
- [EMITTED_END]: boolean;
- [EMITTING_END]: boolean;
- [CLOSED]: boolean;
- [EMITTED_ERROR]: unknown;
- [BUFFERLENGTH]: number;
- [DESTROYED]: boolean;
- [SIGNAL]?: AbortSignal;
- [ABORTED]: boolean;
- [DATALISTENERS]: number;
- [DISCARDED]: boolean;
- /**
- * true if the stream can be written
- */
- writable: boolean;
- /**
- * true if the stream can be read
- */
- readable: boolean;
- /**
- * If `RType` is Buffer, then options do not need to be provided.
- * Otherwise, an options object must be provided to specify either
- * {@link Minipass.SharedOptions.objectMode} or
- * {@link Minipass.SharedOptions.encoding}, as appropriate.
- */
- constructor(...args: [Minipass.ObjectModeOptions] | (RType extends Buffer ? [] | [Minipass.Options] : [Minipass.Options]));
- /**
- * The amount of data stored in the buffer waiting to be read.
- *
- * For Buffer strings, this will be the total byte length.
- * For string encoding streams, this will be the string character length,
- * according to JavaScript's `string.length` logic.
- * For objectMode streams, this is a count of the items waiting to be
- * emitted.
- */
- get bufferLength(): number;
- /**
- * The `BufferEncoding` currently in use, or `null`
- */
- get encoding(): BufferEncoding | null;
- /**
- * @deprecated - This is a read only property
- */
- set encoding(_enc: BufferEncoding | null);
- /**
- * @deprecated - Encoding may only be set at instantiation time
- */
- setEncoding(_enc: Minipass.Encoding): void;
- /**
- * True if this is an objectMode stream
- */
- get objectMode(): boolean;
- /**
- * @deprecated - This is a read-only property
- */
- set objectMode(_om: boolean);
- /**
- * true if this is an async stream
- */
- get ['async'](): boolean;
- /**
- * Set to true to make this stream async.
- *
- * Once set, it cannot be unset, as this would potentially cause incorrect
- * behavior. Ie, a sync stream can be made async, but an async stream
- * cannot be safely made sync.
- */
- set ['async'](a: boolean);
- [ABORT](): void;
- /**
- * True if the stream has been aborted.
- */
- get aborted(): boolean;
- /**
- * No-op setter. Stream aborted status is set via the AbortSignal provided
- * in the constructor options.
- */
- set aborted(_: boolean);
- /**
- * Write data into the stream
- *
- * If the chunk written is a string, and encoding is not specified, then
- * `utf8` will be assumed. If the stream encoding matches the encoding of
- * a written string, and the state of the string decoder allows it, then
- * the string will be passed through to either the output or the internal
- * buffer without any processing. Otherwise, it will be turned into a
- * Buffer object for processing into the desired encoding.
- *
- * If provided, `cb` function is called immediately before return for
- * sync streams, or on next tick for async streams, because for this
- * base class, a chunk is considered "processed" once it is accepted
- * and either emitted or buffered. That is, the callback does not indicate
- * that the chunk has been eventually emitted, though of course child
- * classes can override this function to do whatever processing is required
- * and call `super.write(...)` only once processing is completed.
- */
- write(chunk: WType, cb?: () => void): boolean;
- write(chunk: WType, encoding?: Minipass.Encoding, cb?: () => void): boolean;
- /**
- * Low-level explicit read method.
- *
- * In objectMode, the argument is ignored, and one item is returned if
- * available.
- *
- * `n` is the number of bytes (or in the case of encoding streams,
- * characters) to consume. If `n` is not provided, then the entire buffer
- * is returned, or `null` is returned if no data is available.
- *
- * If `n` is greater that the amount of data in the internal buffer,
- * then `null` is returned.
- */
- read(n?: number | null): RType | null;
- [READ](n: number | null, chunk: RType): RType;
- /**
- * End the stream, optionally providing a final write.
- *
- * See {@link Minipass#write} for argument descriptions
- */
- end(cb?: () => void): this;
- end(chunk: WType, cb?: () => void): this;
- end(chunk: WType, encoding?: Minipass.Encoding, cb?: () => void): this;
- [RESUME](): void;
- /**
- * Resume the stream if it is currently in a paused state
- *
- * If called when there are no pipe destinations or `data` event listeners,
- * this will place the stream in a "discarded" state, where all data will
- * be thrown away. The discarded state is removed if a pipe destination or
- * data handler is added, if pause() is called, or if any synchronous or
- * asynchronous iteration is started.
- */
- resume(): void;
- /**
- * Pause the stream
- */
- pause(): void;
- /**
- * true if the stream has been forcibly destroyed
- */
- get destroyed(): boolean;
- /**
- * true if the stream is currently in a flowing state, meaning that
- * any writes will be immediately emitted.
- */
- get flowing(): boolean;
- /**
- * true if the stream is currently in a paused state
- */
- get paused(): boolean;
- [BUFFERPUSH](chunk: RType): void;
- [BUFFERSHIFT](): RType;
- [FLUSH](noDrain?: boolean): void;
- [FLUSHCHUNK](chunk: RType): boolean;
- /**
- * Pipe all data emitted by this stream into the destination provided.
- *
- * Triggers the flow of data.
- */
- pipe(dest: W, opts?: PipeOptions): W;
- /**
- * Fully unhook a piped destination stream.
- *
- * If the destination stream was the only consumer of this stream (ie,
- * there are no other piped destinations or `'data'` event listeners)
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- unpipe(dest: W): void;
- /**
- * Alias for {@link Minipass#on}
- */
- addListener(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Mostly identical to `EventEmitter.on`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * - Adding a 'data' event handler will trigger the flow of data
- *
- * - Adding a 'readable' event handler when there is data waiting to be read
- * will cause 'readable' to be emitted immediately.
- *
- * - Adding an 'endish' event handler ('end', 'finish', etc.) which has
- * already passed will cause the event to be emitted immediately and all
- * handlers removed.
- *
- * - Adding an 'error' event handler after an error has been emitted will
- * cause the event to be re-emitted immediately with the error previously
- * raised.
- */
- on(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Alias for {@link Minipass#off}
- */
- removeListener(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Mostly identical to `EventEmitter.off`
- *
- * If a 'data' event handler is removed, and it was the last consumer
- * (ie, there are no pipe destinations or other 'data' event listeners),
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- off(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Mostly identical to `EventEmitter.removeAllListeners`
- *
- * If all 'data' event handlers are removed, and they were the last consumer
- * (ie, there are no pipe destinations), then the flow of data will stop
- * until there is another consumer or {@link Minipass#resume} is explicitly
- * called.
- */
- removeAllListeners(ev?: Event): this;
- /**
- * true if the 'end' event has been emitted
- */
- get emittedEnd(): boolean;
- [MAYBE_EMIT_END](): void;
- /**
- * Mostly identical to `EventEmitter.emit`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * If the stream has been destroyed, and the event is something other
- * than 'close' or 'error', then `false` is returned and no handlers
- * are called.
- *
- * If the event is 'end', and has already been emitted, then the event
- * is ignored. If the stream is in a paused or non-flowing state, then
- * the event will be deferred until data flow resumes. If the stream is
- * async, then handlers will be called on the next tick rather than
- * immediately.
- *
- * If the event is 'close', and 'end' has not yet been emitted, then
- * the event will be deferred until after 'end' is emitted.
- *
- * If the event is 'error', and an AbortSignal was provided for the stream,
- * and there are no listeners, then the event is ignored, matching the
- * behavior of node core streams in the presense of an AbortSignal.
- *
- * If the event is 'finish' or 'prefinish', then all listeners will be
- * removed after emitting the event, to prevent double-firing.
- */
- emit(ev: Event, ...args: Events[Event]): boolean;
- [EMITDATA](data: RType): boolean;
- [EMITEND](): boolean;
- [EMITEND2](): boolean;
- /**
- * Return a Promise that resolves to an array of all emitted data once
- * the stream ends.
- */
- collect(): Promise;
- /**
- * Return a Promise that resolves to the concatenation of all emitted data
- * once the stream ends.
- *
- * Not allowed on objectMode streams.
- */
- concat(): Promise;
- /**
- * Return a void Promise that resolves once the stream ends.
- */
- promise(): Promise;
- /**
- * Asynchronous `for await of` iteration.
- *
- * This will continue emitting all chunks until the stream terminates.
- */
- [Symbol.asyncIterator](): AsyncGenerator;
- /**
- * Synchronous `for of` iteration.
- *
- * The iteration will terminate when the internal buffer runs out, even
- * if the stream has not yet terminated.
- */
- [Symbol.iterator](): Generator;
- /**
- * Destroy a stream, preventing it from being used for any further purpose.
- *
- * If the stream has a `close()` method, then it will be called on
- * destruction.
- *
- * After destruction, any attempt to write data, read data, or emit most
- * events will be ignored.
- *
- * If an error argument is provided, then it will be emitted in an
- * 'error' event.
- */
- destroy(er?: unknown): this;
- /**
- * Alias for {@link isStream}
- *
- * Former export location, maintained for backwards compatibility.
- *
- * @deprecated
- */
- static get isStream(): (s: any) => s is NodeJS.WriteStream | NodeJS.ReadStream | Minipass | (NodeJS.ReadStream & {
- fd: number;
- }) | (EventEmitter & {
- pause(): any;
- resume(): any;
- pipe(...destArgs: any[]): any;
- }) | (NodeJS.WriteStream & {
- fd: number;
- }) | (EventEmitter & {
- end(): any;
- write(chunk: any, ...args: any[]): any;
- });
-}
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/minipass/dist/commonjs/index.d.ts.map b/node_modules/minipass/dist/commonjs/index.d.ts.map
deleted file mode 100644
index cac7e00..0000000
--- a/node_modules/minipass/dist/commonjs/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/minipass/dist/commonjs/index.js b/node_modules/minipass/dist/commonjs/index.js
deleted file mode 100644
index 068c095..0000000
--- a/node_modules/minipass/dist/commonjs/index.js
+++ /dev/null
@@ -1,1028 +0,0 @@
-"use strict";
-var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.Minipass = exports.isWritable = exports.isReadable = exports.isStream = void 0;
-const proc = typeof process === 'object' && process
- ? process
- : {
- stdout: null,
- stderr: null,
- };
-const node_events_1 = require("node:events");
-const node_stream_1 = __importDefault(require("node:stream"));
-const node_string_decoder_1 = require("node:string_decoder");
-/**
- * Return true if the argument is a Minipass stream, Node stream, or something
- * else that Minipass can interact with.
- */
-const isStream = (s) => !!s &&
- typeof s === 'object' &&
- (s instanceof Minipass ||
- s instanceof node_stream_1.default ||
- (0, exports.isReadable)(s) ||
- (0, exports.isWritable)(s));
-exports.isStream = isStream;
-/**
- * Return true if the argument is a valid {@link Minipass.Readable}
- */
-const isReadable = (s) => !!s &&
- typeof s === 'object' &&
- s instanceof node_events_1.EventEmitter &&
- typeof s.pipe === 'function' &&
- // node core Writable streams have a pipe() method, but it throws
- s.pipe !== node_stream_1.default.Writable.prototype.pipe;
-exports.isReadable = isReadable;
-/**
- * Return true if the argument is a valid {@link Minipass.Writable}
- */
-const isWritable = (s) => !!s &&
- typeof s === 'object' &&
- s instanceof node_events_1.EventEmitter &&
- typeof s.write === 'function' &&
- typeof s.end === 'function';
-exports.isWritable = isWritable;
-const EOF = Symbol('EOF');
-const MAYBE_EMIT_END = Symbol('maybeEmitEnd');
-const EMITTED_END = Symbol('emittedEnd');
-const EMITTING_END = Symbol('emittingEnd');
-const EMITTED_ERROR = Symbol('emittedError');
-const CLOSED = Symbol('closed');
-const READ = Symbol('read');
-const FLUSH = Symbol('flush');
-const FLUSHCHUNK = Symbol('flushChunk');
-const ENCODING = Symbol('encoding');
-const DECODER = Symbol('decoder');
-const FLOWING = Symbol('flowing');
-const PAUSED = Symbol('paused');
-const RESUME = Symbol('resume');
-const BUFFER = Symbol('buffer');
-const PIPES = Symbol('pipes');
-const BUFFERLENGTH = Symbol('bufferLength');
-const BUFFERPUSH = Symbol('bufferPush');
-const BUFFERSHIFT = Symbol('bufferShift');
-const OBJECTMODE = Symbol('objectMode');
-// internal event when stream is destroyed
-const DESTROYED = Symbol('destroyed');
-// internal event when stream has an error
-const ERROR = Symbol('error');
-const EMITDATA = Symbol('emitData');
-const EMITEND = Symbol('emitEnd');
-const EMITEND2 = Symbol('emitEnd2');
-const ASYNC = Symbol('async');
-const ABORT = Symbol('abort');
-const ABORTED = Symbol('aborted');
-const SIGNAL = Symbol('signal');
-const DATALISTENERS = Symbol('dataListeners');
-const DISCARDED = Symbol('discarded');
-const defer = (fn) => Promise.resolve().then(fn);
-const nodefer = (fn) => fn();
-const isEndish = (ev) => ev === 'end' || ev === 'finish' || ev === 'prefinish';
-const isArrayBufferLike = (b) => b instanceof ArrayBuffer ||
- (!!b &&
- typeof b === 'object' &&
- b.constructor &&
- b.constructor.name === 'ArrayBuffer' &&
- b.byteLength >= 0);
-const isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b);
-/**
- * Internal class representing a pipe to a destination stream.
- *
- * @internal
- */
-class Pipe {
- src;
- dest;
- opts;
- ondrain;
- constructor(src, dest, opts) {
- this.src = src;
- this.dest = dest;
- this.opts = opts;
- this.ondrain = () => src[RESUME]();
- this.dest.on('drain', this.ondrain);
- }
- unpipe() {
- this.dest.removeListener('drain', this.ondrain);
- }
- // only here for the prototype
- /* c8 ignore start */
- proxyErrors(_er) { }
- /* c8 ignore stop */
- end() {
- this.unpipe();
- if (this.opts.end)
- this.dest.end();
- }
-}
-/**
- * Internal class representing a pipe to a destination stream where
- * errors are proxied.
- *
- * @internal
- */
-class PipeProxyErrors extends Pipe {
- unpipe() {
- this.src.removeListener('error', this.proxyErrors);
- super.unpipe();
- }
- constructor(src, dest, opts) {
- super(src, dest, opts);
- this.proxyErrors = er => dest.emit('error', er);
- src.on('error', this.proxyErrors);
- }
-}
-const isObjectModeOptions = (o) => !!o.objectMode;
-const isEncodingOptions = (o) => !o.objectMode && !!o.encoding && o.encoding !== 'buffer';
-/**
- * Main export, the Minipass class
- *
- * `RType` is the type of data emitted, defaults to Buffer
- *
- * `WType` is the type of data to be written, if RType is buffer or string,
- * then any {@link Minipass.ContiguousData} is allowed.
- *
- * `Events` is the set of event handler signatures that this object
- * will emit, see {@link Minipass.Events}
- */
-class Minipass extends node_events_1.EventEmitter {
- [FLOWING] = false;
- [PAUSED] = false;
- [PIPES] = [];
- [BUFFER] = [];
- [OBJECTMODE];
- [ENCODING];
- [ASYNC];
- [DECODER];
- [EOF] = false;
- [EMITTED_END] = false;
- [EMITTING_END] = false;
- [CLOSED] = false;
- [EMITTED_ERROR] = null;
- [BUFFERLENGTH] = 0;
- [DESTROYED] = false;
- [SIGNAL];
- [ABORTED] = false;
- [DATALISTENERS] = 0;
- [DISCARDED] = false;
- /**
- * true if the stream can be written
- */
- writable = true;
- /**
- * true if the stream can be read
- */
- readable = true;
- /**
- * If `RType` is Buffer, then options do not need to be provided.
- * Otherwise, an options object must be provided to specify either
- * {@link Minipass.SharedOptions.objectMode} or
- * {@link Minipass.SharedOptions.encoding}, as appropriate.
- */
- constructor(...args) {
- const options = (args[0] ||
- {});
- super();
- if (options.objectMode && typeof options.encoding === 'string') {
- throw new TypeError('Encoding and objectMode may not be used together');
- }
- if (isObjectModeOptions(options)) {
- this[OBJECTMODE] = true;
- this[ENCODING] = null;
- }
- else if (isEncodingOptions(options)) {
- this[ENCODING] = options.encoding;
- this[OBJECTMODE] = false;
- }
- else {
- this[OBJECTMODE] = false;
- this[ENCODING] = null;
- }
- this[ASYNC] = !!options.async;
- this[DECODER] = this[ENCODING]
- ? new node_string_decoder_1.StringDecoder(this[ENCODING])
- : null;
- //@ts-ignore - private option for debugging and testing
- if (options && options.debugExposeBuffer === true) {
- Object.defineProperty(this, 'buffer', { get: () => this[BUFFER] });
- }
- //@ts-ignore - private option for debugging and testing
- if (options && options.debugExposePipes === true) {
- Object.defineProperty(this, 'pipes', { get: () => this[PIPES] });
- }
- const { signal } = options;
- if (signal) {
- this[SIGNAL] = signal;
- if (signal.aborted) {
- this[ABORT]();
- }
- else {
- signal.addEventListener('abort', () => this[ABORT]());
- }
- }
- }
- /**
- * The amount of data stored in the buffer waiting to be read.
- *
- * For Buffer strings, this will be the total byte length.
- * For string encoding streams, this will be the string character length,
- * according to JavaScript's `string.length` logic.
- * For objectMode streams, this is a count of the items waiting to be
- * emitted.
- */
- get bufferLength() {
- return this[BUFFERLENGTH];
- }
- /**
- * The `BufferEncoding` currently in use, or `null`
- */
- get encoding() {
- return this[ENCODING];
- }
- /**
- * @deprecated - This is a read only property
- */
- set encoding(_enc) {
- throw new Error('Encoding must be set at instantiation time');
- }
- /**
- * @deprecated - Encoding may only be set at instantiation time
- */
- setEncoding(_enc) {
- throw new Error('Encoding must be set at instantiation time');
- }
- /**
- * True if this is an objectMode stream
- */
- get objectMode() {
- return this[OBJECTMODE];
- }
- /**
- * @deprecated - This is a read-only property
- */
- set objectMode(_om) {
- throw new Error('objectMode must be set at instantiation time');
- }
- /**
- * true if this is an async stream
- */
- get ['async']() {
- return this[ASYNC];
- }
- /**
- * Set to true to make this stream async.
- *
- * Once set, it cannot be unset, as this would potentially cause incorrect
- * behavior. Ie, a sync stream can be made async, but an async stream
- * cannot be safely made sync.
- */
- set ['async'](a) {
- this[ASYNC] = this[ASYNC] || !!a;
- }
- // drop everything and get out of the flow completely
- [ABORT]() {
- this[ABORTED] = true;
- this.emit('abort', this[SIGNAL]?.reason);
- this.destroy(this[SIGNAL]?.reason);
- }
- /**
- * True if the stream has been aborted.
- */
- get aborted() {
- return this[ABORTED];
- }
- /**
- * No-op setter. Stream aborted status is set via the AbortSignal provided
- * in the constructor options.
- */
- set aborted(_) { }
- write(chunk, encoding, cb) {
- if (this[ABORTED])
- return false;
- if (this[EOF])
- throw new Error('write after end');
- if (this[DESTROYED]) {
- this.emit('error', Object.assign(new Error('Cannot call write after a stream was destroyed'), { code: 'ERR_STREAM_DESTROYED' }));
- return true;
- }
- if (typeof encoding === 'function') {
- cb = encoding;
- encoding = 'utf8';
- }
- if (!encoding)
- encoding = 'utf8';
- const fn = this[ASYNC] ? defer : nodefer;
- // convert array buffers and typed array views into buffers
- // at some point in the future, we may want to do the opposite!
- // leave strings and buffers as-is
- // anything is only allowed if in object mode, so throw
- if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) {
- if (isArrayBufferView(chunk)) {
- //@ts-ignore - sinful unsafe type changing
- chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength);
- }
- else if (isArrayBufferLike(chunk)) {
- //@ts-ignore - sinful unsafe type changing
- chunk = Buffer.from(chunk);
- }
- else if (typeof chunk !== 'string') {
- throw new Error('Non-contiguous data written to non-objectMode stream');
- }
- }
- // handle object mode up front, since it's simpler
- // this yields better performance, fewer checks later.
- if (this[OBJECTMODE]) {
- // maybe impossible?
- /* c8 ignore start */
- if (this[FLOWING] && this[BUFFERLENGTH] !== 0)
- this[FLUSH](true);
- /* c8 ignore stop */
- if (this[FLOWING])
- this.emit('data', chunk);
- else
- this[BUFFERPUSH](chunk);
- if (this[BUFFERLENGTH] !== 0)
- this.emit('readable');
- if (cb)
- fn(cb);
- return this[FLOWING];
- }
- // at this point the chunk is a buffer or string
- // don't buffer it up or send it to the decoder
- if (!chunk.length) {
- if (this[BUFFERLENGTH] !== 0)
- this.emit('readable');
- if (cb)
- fn(cb);
- return this[FLOWING];
- }
- // fast-path writing strings of same encoding to a stream with
- // an empty buffer, skipping the buffer/decoder dance
- if (typeof chunk === 'string' &&
- // unless it is a string already ready for us to use
- !(encoding === this[ENCODING] && !this[DECODER]?.lastNeed)) {
- //@ts-ignore - sinful unsafe type change
- chunk = Buffer.from(chunk, encoding);
- }
- if (Buffer.isBuffer(chunk) && this[ENCODING]) {
- //@ts-ignore - sinful unsafe type change
- chunk = this[DECODER].write(chunk);
- }
- // Note: flushing CAN potentially switch us into not-flowing mode
- if (this[FLOWING] && this[BUFFERLENGTH] !== 0)
- this[FLUSH](true);
- if (this[FLOWING])
- this.emit('data', chunk);
- else
- this[BUFFERPUSH](chunk);
- if (this[BUFFERLENGTH] !== 0)
- this.emit('readable');
- if (cb)
- fn(cb);
- return this[FLOWING];
- }
- /**
- * Low-level explicit read method.
- *
- * In objectMode, the argument is ignored, and one item is returned if
- * available.
- *
- * `n` is the number of bytes (or in the case of encoding streams,
- * characters) to consume. If `n` is not provided, then the entire buffer
- * is returned, or `null` is returned if no data is available.
- *
- * If `n` is greater that the amount of data in the internal buffer,
- * then `null` is returned.
- */
- read(n) {
- if (this[DESTROYED])
- return null;
- this[DISCARDED] = false;
- if (this[BUFFERLENGTH] === 0 ||
- n === 0 ||
- (n && n > this[BUFFERLENGTH])) {
- this[MAYBE_EMIT_END]();
- return null;
- }
- if (this[OBJECTMODE])
- n = null;
- if (this[BUFFER].length > 1 && !this[OBJECTMODE]) {
- // not object mode, so if we have an encoding, then RType is string
- // otherwise, must be Buffer
- this[BUFFER] = [
- (this[ENCODING]
- ? this[BUFFER].join('')
- : Buffer.concat(this[BUFFER], this[BUFFERLENGTH])),
- ];
- }
- const ret = this[READ](n || null, this[BUFFER][0]);
- this[MAYBE_EMIT_END]();
- return ret;
- }
- [READ](n, chunk) {
- if (this[OBJECTMODE])
- this[BUFFERSHIFT]();
- else {
- const c = chunk;
- if (n === c.length || n === null)
- this[BUFFERSHIFT]();
- else if (typeof c === 'string') {
- this[BUFFER][0] = c.slice(n);
- chunk = c.slice(0, n);
- this[BUFFERLENGTH] -= n;
- }
- else {
- this[BUFFER][0] = c.subarray(n);
- chunk = c.subarray(0, n);
- this[BUFFERLENGTH] -= n;
- }
- }
- this.emit('data', chunk);
- if (!this[BUFFER].length && !this[EOF])
- this.emit('drain');
- return chunk;
- }
- end(chunk, encoding, cb) {
- if (typeof chunk === 'function') {
- cb = chunk;
- chunk = undefined;
- }
- if (typeof encoding === 'function') {
- cb = encoding;
- encoding = 'utf8';
- }
- if (chunk !== undefined)
- this.write(chunk, encoding);
- if (cb)
- this.once('end', cb);
- this[EOF] = true;
- this.writable = false;
- // if we haven't written anything, then go ahead and emit,
- // even if we're not reading.
- // we'll re-emit if a new 'end' listener is added anyway.
- // This makes MP more suitable to write-only use cases.
- if (this[FLOWING] || !this[PAUSED])
- this[MAYBE_EMIT_END]();
- return this;
- }
- // don't let the internal resume be overwritten
- [RESUME]() {
- if (this[DESTROYED])
- return;
- if (!this[DATALISTENERS] && !this[PIPES].length) {
- this[DISCARDED] = true;
- }
- this[PAUSED] = false;
- this[FLOWING] = true;
- this.emit('resume');
- if (this[BUFFER].length)
- this[FLUSH]();
- else if (this[EOF])
- this[MAYBE_EMIT_END]();
- else
- this.emit('drain');
- }
- /**
- * Resume the stream if it is currently in a paused state
- *
- * If called when there are no pipe destinations or `data` event listeners,
- * this will place the stream in a "discarded" state, where all data will
- * be thrown away. The discarded state is removed if a pipe destination or
- * data handler is added, if pause() is called, or if any synchronous or
- * asynchronous iteration is started.
- */
- resume() {
- return this[RESUME]();
- }
- /**
- * Pause the stream
- */
- pause() {
- this[FLOWING] = false;
- this[PAUSED] = true;
- this[DISCARDED] = false;
- }
- /**
- * true if the stream has been forcibly destroyed
- */
- get destroyed() {
- return this[DESTROYED];
- }
- /**
- * true if the stream is currently in a flowing state, meaning that
- * any writes will be immediately emitted.
- */
- get flowing() {
- return this[FLOWING];
- }
- /**
- * true if the stream is currently in a paused state
- */
- get paused() {
- return this[PAUSED];
- }
- [BUFFERPUSH](chunk) {
- if (this[OBJECTMODE])
- this[BUFFERLENGTH] += 1;
- else
- this[BUFFERLENGTH] += chunk.length;
- this[BUFFER].push(chunk);
- }
- [BUFFERSHIFT]() {
- if (this[OBJECTMODE])
- this[BUFFERLENGTH] -= 1;
- else
- this[BUFFERLENGTH] -= this[BUFFER][0].length;
- return this[BUFFER].shift();
- }
- [FLUSH](noDrain = false) {
- do { } while (this[FLUSHCHUNK](this[BUFFERSHIFT]()) &&
- this[BUFFER].length);
- if (!noDrain && !this[BUFFER].length && !this[EOF])
- this.emit('drain');
- }
- [FLUSHCHUNK](chunk) {
- this.emit('data', chunk);
- return this[FLOWING];
- }
- /**
- * Pipe all data emitted by this stream into the destination provided.
- *
- * Triggers the flow of data.
- */
- pipe(dest, opts) {
- if (this[DESTROYED])
- return dest;
- this[DISCARDED] = false;
- const ended = this[EMITTED_END];
- opts = opts || {};
- if (dest === proc.stdout || dest === proc.stderr)
- opts.end = false;
- else
- opts.end = opts.end !== false;
- opts.proxyErrors = !!opts.proxyErrors;
- // piping an ended stream ends immediately
- if (ended) {
- if (opts.end)
- dest.end();
- }
- else {
- // "as" here just ignores the WType, which pipes don't care about,
- // since they're only consuming from us, and writing to the dest
- this[PIPES].push(!opts.proxyErrors
- ? new Pipe(this, dest, opts)
- : new PipeProxyErrors(this, dest, opts));
- if (this[ASYNC])
- defer(() => this[RESUME]());
- else
- this[RESUME]();
- }
- return dest;
- }
- /**
- * Fully unhook a piped destination stream.
- *
- * If the destination stream was the only consumer of this stream (ie,
- * there are no other piped destinations or `'data'` event listeners)
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- unpipe(dest) {
- const p = this[PIPES].find(p => p.dest === dest);
- if (p) {
- if (this[PIPES].length === 1) {
- if (this[FLOWING] && this[DATALISTENERS] === 0) {
- this[FLOWING] = false;
- }
- this[PIPES] = [];
- }
- else
- this[PIPES].splice(this[PIPES].indexOf(p), 1);
- p.unpipe();
- }
- }
- /**
- * Alias for {@link Minipass#on}
- */
- addListener(ev, handler) {
- return this.on(ev, handler);
- }
- /**
- * Mostly identical to `EventEmitter.on`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * - Adding a 'data' event handler will trigger the flow of data
- *
- * - Adding a 'readable' event handler when there is data waiting to be read
- * will cause 'readable' to be emitted immediately.
- *
- * - Adding an 'endish' event handler ('end', 'finish', etc.) which has
- * already passed will cause the event to be emitted immediately and all
- * handlers removed.
- *
- * - Adding an 'error' event handler after an error has been emitted will
- * cause the event to be re-emitted immediately with the error previously
- * raised.
- */
- on(ev, handler) {
- const ret = super.on(ev, handler);
- if (ev === 'data') {
- this[DISCARDED] = false;
- this[DATALISTENERS]++;
- if (!this[PIPES].length && !this[FLOWING]) {
- this[RESUME]();
- }
- }
- else if (ev === 'readable' && this[BUFFERLENGTH] !== 0) {
- super.emit('readable');
- }
- else if (isEndish(ev) && this[EMITTED_END]) {
- super.emit(ev);
- this.removeAllListeners(ev);
- }
- else if (ev === 'error' && this[EMITTED_ERROR]) {
- const h = handler;
- if (this[ASYNC])
- defer(() => h.call(this, this[EMITTED_ERROR]));
- else
- h.call(this, this[EMITTED_ERROR]);
- }
- return ret;
- }
- /**
- * Alias for {@link Minipass#off}
- */
- removeListener(ev, handler) {
- return this.off(ev, handler);
- }
- /**
- * Mostly identical to `EventEmitter.off`
- *
- * If a 'data' event handler is removed, and it was the last consumer
- * (ie, there are no pipe destinations or other 'data' event listeners),
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- off(ev, handler) {
- const ret = super.off(ev, handler);
- // if we previously had listeners, and now we don't, and we don't
- // have any pipes, then stop the flow, unless it's been explicitly
- // put in a discarded flowing state via stream.resume().
- if (ev === 'data') {
- this[DATALISTENERS] = this.listeners('data').length;
- if (this[DATALISTENERS] === 0 &&
- !this[DISCARDED] &&
- !this[PIPES].length) {
- this[FLOWING] = false;
- }
- }
- return ret;
- }
- /**
- * Mostly identical to `EventEmitter.removeAllListeners`
- *
- * If all 'data' event handlers are removed, and they were the last consumer
- * (ie, there are no pipe destinations), then the flow of data will stop
- * until there is another consumer or {@link Minipass#resume} is explicitly
- * called.
- */
- removeAllListeners(ev) {
- const ret = super.removeAllListeners(ev);
- if (ev === 'data' || ev === undefined) {
- this[DATALISTENERS] = 0;
- if (!this[DISCARDED] && !this[PIPES].length) {
- this[FLOWING] = false;
- }
- }
- return ret;
- }
- /**
- * true if the 'end' event has been emitted
- */
- get emittedEnd() {
- return this[EMITTED_END];
- }
- [MAYBE_EMIT_END]() {
- if (!this[EMITTING_END] &&
- !this[EMITTED_END] &&
- !this[DESTROYED] &&
- this[BUFFER].length === 0 &&
- this[EOF]) {
- this[EMITTING_END] = true;
- this.emit('end');
- this.emit('prefinish');
- this.emit('finish');
- if (this[CLOSED])
- this.emit('close');
- this[EMITTING_END] = false;
- }
- }
- /**
- * Mostly identical to `EventEmitter.emit`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * If the stream has been destroyed, and the event is something other
- * than 'close' or 'error', then `false` is returned and no handlers
- * are called.
- *
- * If the event is 'end', and has already been emitted, then the event
- * is ignored. If the stream is in a paused or non-flowing state, then
- * the event will be deferred until data flow resumes. If the stream is
- * async, then handlers will be called on the next tick rather than
- * immediately.
- *
- * If the event is 'close', and 'end' has not yet been emitted, then
- * the event will be deferred until after 'end' is emitted.
- *
- * If the event is 'error', and an AbortSignal was provided for the stream,
- * and there are no listeners, then the event is ignored, matching the
- * behavior of node core streams in the presense of an AbortSignal.
- *
- * If the event is 'finish' or 'prefinish', then all listeners will be
- * removed after emitting the event, to prevent double-firing.
- */
- emit(ev, ...args) {
- const data = args[0];
- // error and close are only events allowed after calling destroy()
- if (ev !== 'error' &&
- ev !== 'close' &&
- ev !== DESTROYED &&
- this[DESTROYED]) {
- return false;
- }
- else if (ev === 'data') {
- return !this[OBJECTMODE] && !data
- ? false
- : this[ASYNC]
- ? (defer(() => this[EMITDATA](data)), true)
- : this[EMITDATA](data);
- }
- else if (ev === 'end') {
- return this[EMITEND]();
- }
- else if (ev === 'close') {
- this[CLOSED] = true;
- // don't emit close before 'end' and 'finish'
- if (!this[EMITTED_END] && !this[DESTROYED])
- return false;
- const ret = super.emit('close');
- this.removeAllListeners('close');
- return ret;
- }
- else if (ev === 'error') {
- this[EMITTED_ERROR] = data;
- super.emit(ERROR, data);
- const ret = !this[SIGNAL] || this.listeners('error').length
- ? super.emit('error', data)
- : false;
- this[MAYBE_EMIT_END]();
- return ret;
- }
- else if (ev === 'resume') {
- const ret = super.emit('resume');
- this[MAYBE_EMIT_END]();
- return ret;
- }
- else if (ev === 'finish' || ev === 'prefinish') {
- const ret = super.emit(ev);
- this.removeAllListeners(ev);
- return ret;
- }
- // Some other unknown event
- const ret = super.emit(ev, ...args);
- this[MAYBE_EMIT_END]();
- return ret;
- }
- [EMITDATA](data) {
- for (const p of this[PIPES]) {
- if (p.dest.write(data) === false)
- this.pause();
- }
- const ret = this[DISCARDED] ? false : super.emit('data', data);
- this[MAYBE_EMIT_END]();
- return ret;
- }
- [EMITEND]() {
- if (this[EMITTED_END])
- return false;
- this[EMITTED_END] = true;
- this.readable = false;
- return this[ASYNC]
- ? (defer(() => this[EMITEND2]()), true)
- : this[EMITEND2]();
- }
- [EMITEND2]() {
- if (this[DECODER]) {
- const data = this[DECODER].end();
- if (data) {
- for (const p of this[PIPES]) {
- p.dest.write(data);
- }
- if (!this[DISCARDED])
- super.emit('data', data);
- }
- }
- for (const p of this[PIPES]) {
- p.end();
- }
- const ret = super.emit('end');
- this.removeAllListeners('end');
- return ret;
- }
- /**
- * Return a Promise that resolves to an array of all emitted data once
- * the stream ends.
- */
- async collect() {
- const buf = Object.assign([], {
- dataLength: 0,
- });
- if (!this[OBJECTMODE])
- buf.dataLength = 0;
- // set the promise first, in case an error is raised
- // by triggering the flow here.
- const p = this.promise();
- this.on('data', c => {
- buf.push(c);
- if (!this[OBJECTMODE])
- buf.dataLength += c.length;
- });
- await p;
- return buf;
- }
- /**
- * Return a Promise that resolves to the concatenation of all emitted data
- * once the stream ends.
- *
- * Not allowed on objectMode streams.
- */
- async concat() {
- if (this[OBJECTMODE]) {
- throw new Error('cannot concat in objectMode');
- }
- const buf = await this.collect();
- return (this[ENCODING]
- ? buf.join('')
- : Buffer.concat(buf, buf.dataLength));
- }
- /**
- * Return a void Promise that resolves once the stream ends.
- */
- async promise() {
- return new Promise((resolve, reject) => {
- this.on(DESTROYED, () => reject(new Error('stream destroyed')));
- this.on('error', er => reject(er));
- this.on('end', () => resolve());
- });
- }
- /**
- * Asynchronous `for await of` iteration.
- *
- * This will continue emitting all chunks until the stream terminates.
- */
- [Symbol.asyncIterator]() {
- // set this up front, in case the consumer doesn't call next()
- // right away.
- this[DISCARDED] = false;
- let stopped = false;
- const stop = async () => {
- this.pause();
- stopped = true;
- return { value: undefined, done: true };
- };
- const next = () => {
- if (stopped)
- return stop();
- const res = this.read();
- if (res !== null)
- return Promise.resolve({ done: false, value: res });
- if (this[EOF])
- return stop();
- let resolve;
- let reject;
- const onerr = (er) => {
- this.off('data', ondata);
- this.off('end', onend);
- this.off(DESTROYED, ondestroy);
- stop();
- reject(er);
- };
- const ondata = (value) => {
- this.off('error', onerr);
- this.off('end', onend);
- this.off(DESTROYED, ondestroy);
- this.pause();
- resolve({ value, done: !!this[EOF] });
- };
- const onend = () => {
- this.off('error', onerr);
- this.off('data', ondata);
- this.off(DESTROYED, ondestroy);
- stop();
- resolve({ done: true, value: undefined });
- };
- const ondestroy = () => onerr(new Error('stream destroyed'));
- return new Promise((res, rej) => {
- reject = rej;
- resolve = res;
- this.once(DESTROYED, ondestroy);
- this.once('error', onerr);
- this.once('end', onend);
- this.once('data', ondata);
- });
- };
- return {
- next,
- throw: stop,
- return: stop,
- [Symbol.asyncIterator]() {
- return this;
- },
- };
- }
- /**
- * Synchronous `for of` iteration.
- *
- * The iteration will terminate when the internal buffer runs out, even
- * if the stream has not yet terminated.
- */
- [Symbol.iterator]() {
- // set this up front, in case the consumer doesn't call next()
- // right away.
- this[DISCARDED] = false;
- let stopped = false;
- const stop = () => {
- this.pause();
- this.off(ERROR, stop);
- this.off(DESTROYED, stop);
- this.off('end', stop);
- stopped = true;
- return { done: true, value: undefined };
- };
- const next = () => {
- if (stopped)
- return stop();
- const value = this.read();
- return value === null ? stop() : { done: false, value };
- };
- this.once('end', stop);
- this.once(ERROR, stop);
- this.once(DESTROYED, stop);
- return {
- next,
- throw: stop,
- return: stop,
- [Symbol.iterator]() {
- return this;
- },
- };
- }
- /**
- * Destroy a stream, preventing it from being used for any further purpose.
- *
- * If the stream has a `close()` method, then it will be called on
- * destruction.
- *
- * After destruction, any attempt to write data, read data, or emit most
- * events will be ignored.
- *
- * If an error argument is provided, then it will be emitted in an
- * 'error' event.
- */
- destroy(er) {
- if (this[DESTROYED]) {
- if (er)
- this.emit('error', er);
- else
- this.emit(DESTROYED);
- return this;
- }
- this[DESTROYED] = true;
- this[DISCARDED] = true;
- // throw away all buffered data, it's never coming out
- this[BUFFER].length = 0;
- this[BUFFERLENGTH] = 0;
- const wc = this;
- if (typeof wc.close === 'function' && !this[CLOSED])
- wc.close();
- if (er)
- this.emit('error', er);
- // if no error to emit, still reject pending promises
- else
- this.emit(DESTROYED);
- return this;
- }
- /**
- * Alias for {@link isStream}
- *
- * Former export location, maintained for backwards compatibility.
- *
- * @deprecated
- */
- static get isStream() {
- return exports.isStream;
- }
-}
-exports.Minipass = Minipass;
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/minipass/dist/commonjs/index.js.map b/node_modules/minipass/dist/commonjs/index.js.map
deleted file mode 100644
index 9f3ef4b..0000000
--- a/node_modules/minipass/dist/commonjs/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["const proc =\n typeof process === 'object' && process\n ? process\n : {\n stdout: null,\n stderr: null,\n }\nimport { EventEmitter } from 'node:events'\nimport Stream from 'node:stream'\nimport { StringDecoder } from 'node:string_decoder'\n\n/**\n * Same as StringDecoder, but exposing the `lastNeed` flag on the type\n */\ntype SD = StringDecoder & { lastNeed: boolean }\n\nexport type { SD, Pipe, PipeProxyErrors }\n\n/**\n * Return true if the argument is a Minipass stream, Node stream, or something\n * else that Minipass can interact with.\n */\nexport const isStream = (\n s: any\n): s is Minipass.Readable | Minipass.Writable =>\n !!s &&\n typeof s === 'object' &&\n (s instanceof Minipass ||\n s instanceof Stream ||\n isReadable(s) ||\n isWritable(s))\n\n/**\n * Return true if the argument is a valid {@link Minipass.Readable}\n */\nexport const isReadable = (s: any): s is Minipass.Readable =>\n !!s &&\n typeof s === 'object' &&\n s instanceof EventEmitter &&\n typeof (s as Minipass.Readable).pipe === 'function' &&\n // node core Writable streams have a pipe() method, but it throws\n (s as Minipass.Readable).pipe !== Stream.Writable.prototype.pipe\n\n/**\n * Return true if the argument is a valid {@link Minipass.Writable}\n */\nexport const isWritable = (s: any): s is Minipass.Readable =>\n !!s &&\n typeof s === 'object' &&\n s instanceof EventEmitter &&\n typeof (s as Minipass.Writable).write === 'function' &&\n typeof (s as Minipass.Writable).end === 'function'\n\nconst EOF = Symbol('EOF')\nconst MAYBE_EMIT_END = Symbol('maybeEmitEnd')\nconst EMITTED_END = Symbol('emittedEnd')\nconst EMITTING_END = Symbol('emittingEnd')\nconst EMITTED_ERROR = Symbol('emittedError')\nconst CLOSED = Symbol('closed')\nconst READ = Symbol('read')\nconst FLUSH = Symbol('flush')\nconst FLUSHCHUNK = Symbol('flushChunk')\nconst ENCODING = Symbol('encoding')\nconst DECODER = Symbol('decoder')\nconst FLOWING = Symbol('flowing')\nconst PAUSED = Symbol('paused')\nconst RESUME = Symbol('resume')\nconst BUFFER = Symbol('buffer')\nconst PIPES = Symbol('pipes')\nconst BUFFERLENGTH = Symbol('bufferLength')\nconst BUFFERPUSH = Symbol('bufferPush')\nconst BUFFERSHIFT = Symbol('bufferShift')\nconst OBJECTMODE = Symbol('objectMode')\n// internal event when stream is destroyed\nconst DESTROYED = Symbol('destroyed')\n// internal event when stream has an error\nconst ERROR = Symbol('error')\nconst EMITDATA = Symbol('emitData')\nconst EMITEND = Symbol('emitEnd')\nconst EMITEND2 = Symbol('emitEnd2')\nconst ASYNC = Symbol('async')\nconst ABORT = Symbol('abort')\nconst ABORTED = Symbol('aborted')\nconst SIGNAL = Symbol('signal')\nconst DATALISTENERS = Symbol('dataListeners')\nconst DISCARDED = Symbol('discarded')\n\nconst defer = (fn: (...a: any[]) => any) => Promise.resolve().then(fn)\nconst nodefer = (fn: (...a: any[]) => any) => fn()\n\n// events that mean 'the stream is over'\n// these are treated specially, and re-emitted\n// if they are listened for after emitting.\ntype EndishEvent = 'end' | 'finish' | 'prefinish'\nconst isEndish = (ev: any): ev is EndishEvent =>\n ev === 'end' || ev === 'finish' || ev === 'prefinish'\n\nconst isArrayBufferLike = (b: any): b is ArrayBufferLike =>\n b instanceof ArrayBuffer ||\n (!!b &&\n typeof b === 'object' &&\n b.constructor &&\n b.constructor.name === 'ArrayBuffer' &&\n b.byteLength >= 0)\n\nconst isArrayBufferView = (b: any): b is ArrayBufferView =>\n !Buffer.isBuffer(b) && ArrayBuffer.isView(b)\n\n/**\n * Options that may be passed to stream.pipe()\n */\nexport interface PipeOptions {\n /**\n * end the destination stream when the source stream ends\n */\n end?: boolean\n /**\n * proxy errors from the source stream to the destination stream\n */\n proxyErrors?: boolean\n}\n\n/**\n * Internal class representing a pipe to a destination stream.\n *\n * @internal\n */\nclass Pipe {\n src: Minipass\n dest: Minipass\n opts: PipeOptions\n ondrain: () => any\n constructor(\n src: Minipass,\n dest: Minipass.Writable,\n opts: PipeOptions\n ) {\n this.src = src\n this.dest = dest as Minipass\n this.opts = opts\n this.ondrain = () => src[RESUME]()\n this.dest.on('drain', this.ondrain)\n }\n unpipe() {\n this.dest.removeListener('drain', this.ondrain)\n }\n // only here for the prototype\n /* c8 ignore start */\n proxyErrors(_er: any) {}\n /* c8 ignore stop */\n end() {\n this.unpipe()\n if (this.opts.end) this.dest.end()\n }\n}\n\n/**\n * Internal class representing a pipe to a destination stream where\n * errors are proxied.\n *\n * @internal\n */\nclass PipeProxyErrors extends Pipe {\n unpipe() {\n this.src.removeListener('error', this.proxyErrors)\n super.unpipe()\n }\n constructor(\n src: Minipass,\n dest: Minipass.Writable,\n opts: PipeOptions\n ) {\n super(src, dest, opts)\n this.proxyErrors = er => dest.emit('error', er)\n src.on('error', this.proxyErrors)\n }\n}\n\nexport namespace Minipass {\n /**\n * Encoding used to create a stream that outputs strings rather than\n * Buffer objects.\n */\n export type Encoding = BufferEncoding | 'buffer' | null\n\n /**\n * Any stream that Minipass can pipe into\n */\n export type Writable =\n | Minipass\n | NodeJS.WriteStream\n | (NodeJS.WriteStream & { fd: number })\n | (EventEmitter & {\n end(): any\n write(chunk: any, ...args: any[]): any\n })\n\n /**\n * Any stream that can be read from\n */\n export type Readable =\n | Minipass\n | NodeJS.ReadStream\n | (NodeJS.ReadStream & { fd: number })\n | (EventEmitter & {\n pause(): any\n resume(): any\n pipe(...destArgs: any[]): any\n })\n\n /**\n * Utility type that can be iterated sync or async\n */\n export type DualIterable = Iterable & AsyncIterable\n\n type EventArguments = Record\n\n /**\n * The listing of events that a Minipass class can emit.\n * Extend this when extending the Minipass class, and pass as\n * the third template argument. The key is the name of the event,\n * and the value is the argument list.\n *\n * Any undeclared events will still be allowed, but the handler will get\n * arguments as `unknown[]`.\n */\n export interface Events\n extends EventArguments {\n readable: []\n data: [chunk: RType]\n error: [er: unknown]\n abort: [reason: unknown]\n drain: []\n resume: []\n end: []\n finish: []\n prefinish: []\n close: []\n [DESTROYED]: [er?: unknown]\n [ERROR]: [er: unknown]\n }\n\n /**\n * String or buffer-like data that can be joined and sliced\n */\n export type ContiguousData =\n | Buffer\n | ArrayBufferLike\n | ArrayBufferView\n | string\n export type BufferOrString = Buffer | string\n\n /**\n * Options passed to the Minipass constructor.\n */\n export type SharedOptions = {\n /**\n * Defer all data emission and other events until the end of the\n * current tick, similar to Node core streams\n */\n async?: boolean\n /**\n * A signal which will abort the stream\n */\n signal?: AbortSignal\n /**\n * Output string encoding. Set to `null` or `'buffer'` (or omit) to\n * emit Buffer objects rather than strings.\n *\n * Conflicts with `objectMode`\n */\n encoding?: BufferEncoding | null | 'buffer'\n /**\n * Output data exactly as it was written, supporting non-buffer/string\n * data (such as arbitrary objects, falsey values, etc.)\n *\n * Conflicts with `encoding`\n */\n objectMode?: boolean\n }\n\n /**\n * Options for a string encoded output\n */\n export type EncodingOptions = SharedOptions & {\n encoding: BufferEncoding\n objectMode?: false\n }\n\n /**\n * Options for contiguous data buffer output\n */\n export type BufferOptions = SharedOptions & {\n encoding?: null | 'buffer'\n objectMode?: false\n }\n\n /**\n * Options for objectMode arbitrary output\n */\n export type ObjectModeOptions = SharedOptions & {\n objectMode: true\n encoding?: null\n }\n\n /**\n * Utility type to determine allowed options based on read type\n */\n export type Options =\n | ObjectModeOptions\n | (T extends string\n ? EncodingOptions\n : T extends Buffer\n ? BufferOptions\n : SharedOptions)\n}\n\nconst isObjectModeOptions = (\n o: Minipass.SharedOptions\n): o is Minipass.ObjectModeOptions => !!o.objectMode\n\nconst isEncodingOptions = (\n o: Minipass.SharedOptions\n): o is Minipass.EncodingOptions =>\n !o.objectMode && !!o.encoding && o.encoding !== 'buffer'\n\n/**\n * Main export, the Minipass class\n *\n * `RType` is the type of data emitted, defaults to Buffer\n *\n * `WType` is the type of data to be written, if RType is buffer or string,\n * then any {@link Minipass.ContiguousData} is allowed.\n *\n * `Events` is the set of event handler signatures that this object\n * will emit, see {@link Minipass.Events}\n */\nexport class Minipass<\n RType extends unknown = Buffer,\n WType extends unknown = RType extends Minipass.BufferOrString\n ? Minipass.ContiguousData\n : RType,\n Events extends Minipass.Events = Minipass.Events\n >\n extends EventEmitter\n implements Minipass.DualIterable\n{\n [FLOWING]: boolean = false;\n [PAUSED]: boolean = false;\n [PIPES]: Pipe[] = [];\n [BUFFER]: RType[] = [];\n [OBJECTMODE]: boolean;\n [ENCODING]: BufferEncoding | null;\n [ASYNC]: boolean;\n [DECODER]: SD | null;\n [EOF]: boolean = false;\n [EMITTED_END]: boolean = false;\n [EMITTING_END]: boolean = false;\n [CLOSED]: boolean = false;\n [EMITTED_ERROR]: unknown = null;\n [BUFFERLENGTH]: number = 0;\n [DESTROYED]: boolean = false;\n [SIGNAL]?: AbortSignal;\n [ABORTED]: boolean = false;\n [DATALISTENERS]: number = 0;\n [DISCARDED]: boolean = false\n\n /**\n * true if the stream can be written\n */\n writable: boolean = true\n /**\n * true if the stream can be read\n */\n readable: boolean = true\n\n /**\n * If `RType` is Buffer, then options do not need to be provided.\n * Otherwise, an options object must be provided to specify either\n * {@link Minipass.SharedOptions.objectMode} or\n * {@link Minipass.SharedOptions.encoding}, as appropriate.\n */\n constructor(\n ...args:\n | [Minipass.ObjectModeOptions]\n | (RType extends Buffer\n ? [] | [Minipass.Options]\n : [Minipass.Options])\n ) {\n const options: Minipass.Options = (args[0] ||\n {}) as Minipass.Options\n super()\n if (options.objectMode && typeof options.encoding === 'string') {\n throw new TypeError(\n 'Encoding and objectMode may not be used together'\n )\n }\n if (isObjectModeOptions(options)) {\n this[OBJECTMODE] = true\n this[ENCODING] = null\n } else if (isEncodingOptions(options)) {\n this[ENCODING] = options.encoding\n this[OBJECTMODE] = false\n } else {\n this[OBJECTMODE] = false\n this[ENCODING] = null\n }\n this[ASYNC] = !!options.async\n this[DECODER] = this[ENCODING]\n ? (new StringDecoder(this[ENCODING]) as SD)\n : null\n\n //@ts-ignore - private option for debugging and testing\n if (options && options.debugExposeBuffer === true) {\n Object.defineProperty(this, 'buffer', { get: () => this[BUFFER] })\n }\n //@ts-ignore - private option for debugging and testing\n if (options && options.debugExposePipes === true) {\n Object.defineProperty(this, 'pipes', { get: () => this[PIPES] })\n }\n\n const { signal } = options\n if (signal) {\n this[SIGNAL] = signal\n if (signal.aborted) {\n this[ABORT]()\n } else {\n signal.addEventListener('abort', () => this[ABORT]())\n }\n }\n }\n\n /**\n * The amount of data stored in the buffer waiting to be read.\n *\n * For Buffer strings, this will be the total byte length.\n * For string encoding streams, this will be the string character length,\n * according to JavaScript's `string.length` logic.\n * For objectMode streams, this is a count of the items waiting to be\n * emitted.\n */\n get bufferLength() {\n return this[BUFFERLENGTH]\n }\n\n /**\n * The `BufferEncoding` currently in use, or `null`\n */\n get encoding() {\n return this[ENCODING]\n }\n\n /**\n * @deprecated - This is a read only property\n */\n set encoding(_enc) {\n throw new Error('Encoding must be set at instantiation time')\n }\n\n /**\n * @deprecated - Encoding may only be set at instantiation time\n */\n setEncoding(_enc: Minipass.Encoding) {\n throw new Error('Encoding must be set at instantiation time')\n }\n\n /**\n * True if this is an objectMode stream\n */\n get objectMode() {\n return this[OBJECTMODE]\n }\n\n /**\n * @deprecated - This is a read-only property\n */\n set objectMode(_om) {\n throw new Error('objectMode must be set at instantiation time')\n }\n\n /**\n * true if this is an async stream\n */\n get ['async'](): boolean {\n return this[ASYNC]\n }\n /**\n * Set to true to make this stream async.\n *\n * Once set, it cannot be unset, as this would potentially cause incorrect\n * behavior. Ie, a sync stream can be made async, but an async stream\n * cannot be safely made sync.\n */\n set ['async'](a: boolean) {\n this[ASYNC] = this[ASYNC] || !!a\n }\n\n // drop everything and get out of the flow completely\n [ABORT]() {\n this[ABORTED] = true\n this.emit('abort', this[SIGNAL]?.reason)\n this.destroy(this[SIGNAL]?.reason)\n }\n\n /**\n * True if the stream has been aborted.\n */\n get aborted() {\n return this[ABORTED]\n }\n /**\n * No-op setter. Stream aborted status is set via the AbortSignal provided\n * in the constructor options.\n */\n set aborted(_) {}\n\n /**\n * Write data into the stream\n *\n * If the chunk written is a string, and encoding is not specified, then\n * `utf8` will be assumed. If the stream encoding matches the encoding of\n * a written string, and the state of the string decoder allows it, then\n * the string will be passed through to either the output or the internal\n * buffer without any processing. Otherwise, it will be turned into a\n * Buffer object for processing into the desired encoding.\n *\n * If provided, `cb` function is called immediately before return for\n * sync streams, or on next tick for async streams, because for this\n * base class, a chunk is considered \"processed\" once it is accepted\n * and either emitted or buffered. That is, the callback does not indicate\n * that the chunk has been eventually emitted, though of course child\n * classes can override this function to do whatever processing is required\n * and call `super.write(...)` only once processing is completed.\n */\n write(chunk: WType, cb?: () => void): boolean\n write(\n chunk: WType,\n encoding?: Minipass.Encoding,\n cb?: () => void\n ): boolean\n write(\n chunk: WType,\n encoding?: Minipass.Encoding | (() => void),\n cb?: () => void\n ): boolean {\n if (this[ABORTED]) return false\n if (this[EOF]) throw new Error('write after end')\n\n if (this[DESTROYED]) {\n this.emit(\n 'error',\n Object.assign(\n new Error('Cannot call write after a stream was destroyed'),\n { code: 'ERR_STREAM_DESTROYED' }\n )\n )\n return true\n }\n\n if (typeof encoding === 'function') {\n cb = encoding\n encoding = 'utf8'\n }\n\n if (!encoding) encoding = 'utf8'\n\n const fn = this[ASYNC] ? defer : nodefer\n\n // convert array buffers and typed array views into buffers\n // at some point in the future, we may want to do the opposite!\n // leave strings and buffers as-is\n // anything is only allowed if in object mode, so throw\n if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) {\n if (isArrayBufferView(chunk)) {\n //@ts-ignore - sinful unsafe type changing\n chunk = Buffer.from(\n chunk.buffer,\n chunk.byteOffset,\n chunk.byteLength\n )\n } else if (isArrayBufferLike(chunk)) {\n //@ts-ignore - sinful unsafe type changing\n chunk = Buffer.from(chunk)\n } else if (typeof chunk !== 'string') {\n throw new Error(\n 'Non-contiguous data written to non-objectMode stream'\n )\n }\n }\n\n // handle object mode up front, since it's simpler\n // this yields better performance, fewer checks later.\n if (this[OBJECTMODE]) {\n // maybe impossible?\n /* c8 ignore start */\n if (this[FLOWING] && this[BUFFERLENGTH] !== 0) this[FLUSH](true)\n /* c8 ignore stop */\n\n if (this[FLOWING]) this.emit('data', chunk as unknown as RType)\n else this[BUFFERPUSH](chunk as unknown as RType)\n\n if (this[BUFFERLENGTH] !== 0) this.emit('readable')\n\n if (cb) fn(cb)\n\n return this[FLOWING]\n }\n\n // at this point the chunk is a buffer or string\n // don't buffer it up or send it to the decoder\n if (!(chunk as Minipass.BufferOrString).length) {\n if (this[BUFFERLENGTH] !== 0) this.emit('readable')\n if (cb) fn(cb)\n return this[FLOWING]\n }\n\n // fast-path writing strings of same encoding to a stream with\n // an empty buffer, skipping the buffer/decoder dance\n if (\n typeof chunk === 'string' &&\n // unless it is a string already ready for us to use\n !(encoding === this[ENCODING] && !this[DECODER]?.lastNeed)\n ) {\n //@ts-ignore - sinful unsafe type change\n chunk = Buffer.from(chunk, encoding)\n }\n\n if (Buffer.isBuffer(chunk) && this[ENCODING]) {\n //@ts-ignore - sinful unsafe type change\n chunk = this[DECODER].write(chunk)\n }\n\n // Note: flushing CAN potentially switch us into not-flowing mode\n if (this[FLOWING] && this[BUFFERLENGTH] !== 0) this[FLUSH](true)\n\n if (this[FLOWING]) this.emit('data', chunk as unknown as RType)\n else this[BUFFERPUSH](chunk as unknown as RType)\n\n if (this[BUFFERLENGTH] !== 0) this.emit('readable')\n\n if (cb) fn(cb)\n\n return this[FLOWING]\n }\n\n /**\n * Low-level explicit read method.\n *\n * In objectMode, the argument is ignored, and one item is returned if\n * available.\n *\n * `n` is the number of bytes (or in the case of encoding streams,\n * characters) to consume. If `n` is not provided, then the entire buffer\n * is returned, or `null` is returned if no data is available.\n *\n * If `n` is greater that the amount of data in the internal buffer,\n * then `null` is returned.\n */\n read(n?: number | null): RType | null {\n if (this[DESTROYED]) return null\n this[DISCARDED] = false\n\n if (\n this[BUFFERLENGTH] === 0 ||\n n === 0 ||\n (n && n > this[BUFFERLENGTH])\n ) {\n this[MAYBE_EMIT_END]()\n return null\n }\n\n if (this[OBJECTMODE]) n = null\n\n if (this[BUFFER].length > 1 && !this[OBJECTMODE]) {\n // not object mode, so if we have an encoding, then RType is string\n // otherwise, must be Buffer\n this[BUFFER] = [\n (this[ENCODING]\n ? this[BUFFER].join('')\n : Buffer.concat(\n this[BUFFER] as Buffer[],\n this[BUFFERLENGTH]\n )) as RType,\n ]\n }\n\n const ret = this[READ](n || null, this[BUFFER][0] as RType)\n this[MAYBE_EMIT_END]()\n return ret\n }\n\n [READ](n: number | null, chunk: RType) {\n if (this[OBJECTMODE]) this[BUFFERSHIFT]()\n else {\n const c = chunk as Minipass.BufferOrString\n if (n === c.length || n === null) this[BUFFERSHIFT]()\n else if (typeof c === 'string') {\n this[BUFFER][0] = c.slice(n) as RType\n chunk = c.slice(0, n) as RType\n this[BUFFERLENGTH] -= n\n } else {\n this[BUFFER][0] = c.subarray(n) as RType\n chunk = c.subarray(0, n) as RType\n this[BUFFERLENGTH] -= n\n }\n }\n\n this.emit('data', chunk)\n\n if (!this[BUFFER].length && !this[EOF]) this.emit('drain')\n\n return chunk\n }\n\n /**\n * End the stream, optionally providing a final write.\n *\n * See {@link Minipass#write} for argument descriptions\n */\n end(cb?: () => void): this\n end(chunk: WType, cb?: () => void): this\n end(chunk: WType, encoding?: Minipass.Encoding, cb?: () => void): this\n end(\n chunk?: WType | (() => void),\n encoding?: Minipass.Encoding | (() => void),\n cb?: () => void\n ): this {\n if (typeof chunk === 'function') {\n cb = chunk as () => void\n chunk = undefined\n }\n if (typeof encoding === 'function') {\n cb = encoding\n encoding = 'utf8'\n }\n if (chunk !== undefined) this.write(chunk, encoding)\n if (cb) this.once('end', cb)\n this[EOF] = true\n this.writable = false\n\n // if we haven't written anything, then go ahead and emit,\n // even if we're not reading.\n // we'll re-emit if a new 'end' listener is added anyway.\n // This makes MP more suitable to write-only use cases.\n if (this[FLOWING] || !this[PAUSED]) this[MAYBE_EMIT_END]()\n return this\n }\n\n // don't let the internal resume be overwritten\n [RESUME]() {\n if (this[DESTROYED]) return\n\n if (!this[DATALISTENERS] && !this[PIPES].length) {\n this[DISCARDED] = true\n }\n this[PAUSED] = false\n this[FLOWING] = true\n this.emit('resume')\n if (this[BUFFER].length) this[FLUSH]()\n else if (this[EOF]) this[MAYBE_EMIT_END]()\n else this.emit('drain')\n }\n\n /**\n * Resume the stream if it is currently in a paused state\n *\n * If called when there are no pipe destinations or `data` event listeners,\n * this will place the stream in a \"discarded\" state, where all data will\n * be thrown away. The discarded state is removed if a pipe destination or\n * data handler is added, if pause() is called, or if any synchronous or\n * asynchronous iteration is started.\n */\n resume() {\n return this[RESUME]()\n }\n\n /**\n * Pause the stream\n */\n pause() {\n this[FLOWING] = false\n this[PAUSED] = true\n this[DISCARDED] = false\n }\n\n /**\n * true if the stream has been forcibly destroyed\n */\n get destroyed() {\n return this[DESTROYED]\n }\n\n /**\n * true if the stream is currently in a flowing state, meaning that\n * any writes will be immediately emitted.\n */\n get flowing() {\n return this[FLOWING]\n }\n\n /**\n * true if the stream is currently in a paused state\n */\n get paused() {\n return this[PAUSED]\n }\n\n [BUFFERPUSH](chunk: RType) {\n if (this[OBJECTMODE]) this[BUFFERLENGTH] += 1\n else this[BUFFERLENGTH] += (chunk as Minipass.BufferOrString).length\n this[BUFFER].push(chunk)\n }\n\n [BUFFERSHIFT](): RType {\n if (this[OBJECTMODE]) this[BUFFERLENGTH] -= 1\n else\n this[BUFFERLENGTH] -= (\n this[BUFFER][0] as Minipass.BufferOrString\n ).length\n return this[BUFFER].shift() as RType\n }\n\n [FLUSH](noDrain: boolean = false) {\n do {} while (\n this[FLUSHCHUNK](this[BUFFERSHIFT]()) &&\n this[BUFFER].length\n )\n\n if (!noDrain && !this[BUFFER].length && !this[EOF]) this.emit('drain')\n }\n\n [FLUSHCHUNK](chunk: RType) {\n this.emit('data', chunk)\n return this[FLOWING]\n }\n\n /**\n * Pipe all data emitted by this stream into the destination provided.\n *\n * Triggers the flow of data.\n */\n pipe(dest: W, opts?: PipeOptions): W {\n if (this[DESTROYED]) return dest\n this[DISCARDED] = false\n\n const ended = this[EMITTED_END]\n opts = opts || {}\n if (dest === proc.stdout || dest === proc.stderr) opts.end = false\n else opts.end = opts.end !== false\n opts.proxyErrors = !!opts.proxyErrors\n\n // piping an ended stream ends immediately\n if (ended) {\n if (opts.end) dest.end()\n } else {\n // \"as\" here just ignores the WType, which pipes don't care about,\n // since they're only consuming from us, and writing to the dest\n this[PIPES].push(\n !opts.proxyErrors\n ? new Pipe(this as Minipass, dest, opts)\n : new PipeProxyErrors(this as Minipass, dest, opts)\n )\n if (this[ASYNC]) defer(() => this[RESUME]())\n else this[RESUME]()\n }\n\n return dest\n }\n\n /**\n * Fully unhook a piped destination stream.\n *\n * If the destination stream was the only consumer of this stream (ie,\n * there are no other piped destinations or `'data'` event listeners)\n * then the flow of data will stop until there is another consumer or\n * {@link Minipass#resume} is explicitly called.\n */\n unpipe(dest: W) {\n const p = this[PIPES].find(p => p.dest === dest)\n if (p) {\n if (this[PIPES].length === 1) {\n if (this[FLOWING] && this[DATALISTENERS] === 0) {\n this[FLOWING] = false\n }\n this[PIPES] = []\n } else this[PIPES].splice(this[PIPES].indexOf(p), 1)\n p.unpipe()\n }\n }\n\n /**\n * Alias for {@link Minipass#on}\n */\n addListener(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ): this {\n return this.on(ev, handler)\n }\n\n /**\n * Mostly identical to `EventEmitter.on`, with the following\n * behavior differences to prevent data loss and unnecessary hangs:\n *\n * - Adding a 'data' event handler will trigger the flow of data\n *\n * - Adding a 'readable' event handler when there is data waiting to be read\n * will cause 'readable' to be emitted immediately.\n *\n * - Adding an 'endish' event handler ('end', 'finish', etc.) which has\n * already passed will cause the event to be emitted immediately and all\n * handlers removed.\n *\n * - Adding an 'error' event handler after an error has been emitted will\n * cause the event to be re-emitted immediately with the error previously\n * raised.\n */\n on(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ): this {\n const ret = super.on(\n ev as string | symbol,\n handler as (...a: any[]) => any\n )\n if (ev === 'data') {\n this[DISCARDED] = false\n this[DATALISTENERS]++\n if (!this[PIPES].length && !this[FLOWING]) {\n this[RESUME]()\n }\n } else if (ev === 'readable' && this[BUFFERLENGTH] !== 0) {\n super.emit('readable')\n } else if (isEndish(ev) && this[EMITTED_END]) {\n super.emit(ev)\n this.removeAllListeners(ev)\n } else if (ev === 'error' && this[EMITTED_ERROR]) {\n const h = handler as (...a: Events['error']) => any\n if (this[ASYNC]) defer(() => h.call(this, this[EMITTED_ERROR]))\n else h.call(this, this[EMITTED_ERROR])\n }\n return ret\n }\n\n /**\n * Alias for {@link Minipass#off}\n */\n removeListener(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ) {\n return this.off(ev, handler)\n }\n\n /**\n * Mostly identical to `EventEmitter.off`\n *\n * If a 'data' event handler is removed, and it was the last consumer\n * (ie, there are no pipe destinations or other 'data' event listeners),\n * then the flow of data will stop until there is another consumer or\n * {@link Minipass#resume} is explicitly called.\n */\n off(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ) {\n const ret = super.off(\n ev as string | symbol,\n handler as (...a: any[]) => any\n )\n // if we previously had listeners, and now we don't, and we don't\n // have any pipes, then stop the flow, unless it's been explicitly\n // put in a discarded flowing state via stream.resume().\n if (ev === 'data') {\n this[DATALISTENERS] = this.listeners('data').length\n if (\n this[DATALISTENERS] === 0 &&\n !this[DISCARDED] &&\n !this[PIPES].length\n ) {\n this[FLOWING] = false\n }\n }\n return ret\n }\n\n /**\n * Mostly identical to `EventEmitter.removeAllListeners`\n *\n * If all 'data' event handlers are removed, and they were the last consumer\n * (ie, there are no pipe destinations), then the flow of data will stop\n * until there is another consumer or {@link Minipass#resume} is explicitly\n * called.\n */\n removeAllListeners(ev?: Event) {\n const ret = super.removeAllListeners(ev as string | symbol | undefined)\n if (ev === 'data' || ev === undefined) {\n this[DATALISTENERS] = 0\n if (!this[DISCARDED] && !this[PIPES].length) {\n this[FLOWING] = false\n }\n }\n return ret\n }\n\n /**\n * true if the 'end' event has been emitted\n */\n get emittedEnd() {\n return this[EMITTED_END]\n }\n\n [MAYBE_EMIT_END]() {\n if (\n !this[EMITTING_END] &&\n !this[EMITTED_END] &&\n !this[DESTROYED] &&\n this[BUFFER].length === 0 &&\n this[EOF]\n ) {\n this[EMITTING_END] = true\n this.emit('end')\n this.emit('prefinish')\n this.emit('finish')\n if (this[CLOSED]) this.emit('close')\n this[EMITTING_END] = false\n }\n }\n\n /**\n * Mostly identical to `EventEmitter.emit`, with the following\n * behavior differences to prevent data loss and unnecessary hangs:\n *\n * If the stream has been destroyed, and the event is something other\n * than 'close' or 'error', then `false` is returned and no handlers\n * are called.\n *\n * If the event is 'end', and has already been emitted, then the event\n * is ignored. If the stream is in a paused or non-flowing state, then\n * the event will be deferred until data flow resumes. If the stream is\n * async, then handlers will be called on the next tick rather than\n * immediately.\n *\n * If the event is 'close', and 'end' has not yet been emitted, then\n * the event will be deferred until after 'end' is emitted.\n *\n * If the event is 'error', and an AbortSignal was provided for the stream,\n * and there are no listeners, then the event is ignored, matching the\n * behavior of node core streams in the presense of an AbortSignal.\n *\n * If the event is 'finish' or 'prefinish', then all listeners will be\n * removed after emitting the event, to prevent double-firing.\n */\n emit(\n ev: Event,\n ...args: Events[Event]\n ): boolean {\n const data = args[0]\n // error and close are only events allowed after calling destroy()\n if (\n ev !== 'error' &&\n ev !== 'close' &&\n ev !== DESTROYED &&\n this[DESTROYED]\n ) {\n return false\n } else if (ev === 'data') {\n return !this[OBJECTMODE] && !data\n ? false\n : this[ASYNC]\n ? (defer(() => this[EMITDATA](data as RType)), true)\n : this[EMITDATA](data as RType)\n } else if (ev === 'end') {\n return this[EMITEND]()\n } else if (ev === 'close') {\n this[CLOSED] = true\n // don't emit close before 'end' and 'finish'\n if (!this[EMITTED_END] && !this[DESTROYED]) return false\n const ret = super.emit('close')\n this.removeAllListeners('close')\n return ret\n } else if (ev === 'error') {\n this[EMITTED_ERROR] = data\n super.emit(ERROR, data)\n const ret =\n !this[SIGNAL] || this.listeners('error').length\n ? super.emit('error', data)\n : false\n this[MAYBE_EMIT_END]()\n return ret\n } else if (ev === 'resume') {\n const ret = super.emit('resume')\n this[MAYBE_EMIT_END]()\n return ret\n } else if (ev === 'finish' || ev === 'prefinish') {\n const ret = super.emit(ev)\n this.removeAllListeners(ev)\n return ret\n }\n\n // Some other unknown event\n const ret = super.emit(ev as string, ...args)\n this[MAYBE_EMIT_END]()\n return ret\n }\n\n [EMITDATA](data: RType) {\n for (const p of this[PIPES]) {\n if (p.dest.write(data as RType) === false) this.pause()\n }\n const ret = this[DISCARDED] ? false : super.emit('data', data)\n this[MAYBE_EMIT_END]()\n return ret\n }\n\n [EMITEND]() {\n if (this[EMITTED_END]) return false\n\n this[EMITTED_END] = true\n this.readable = false\n return this[ASYNC]\n ? (defer(() => this[EMITEND2]()), true)\n : this[EMITEND2]()\n }\n\n [EMITEND2]() {\n if (this[DECODER]) {\n const data = this[DECODER].end()\n if (data) {\n for (const p of this[PIPES]) {\n p.dest.write(data as RType)\n }\n if (!this[DISCARDED]) super.emit('data', data)\n }\n }\n\n for (const p of this[PIPES]) {\n p.end()\n }\n const ret = super.emit('end')\n this.removeAllListeners('end')\n return ret\n }\n\n /**\n * Return a Promise that resolves to an array of all emitted data once\n * the stream ends.\n */\n async collect(): Promise {\n const buf: RType[] & { dataLength: number } = Object.assign([], {\n dataLength: 0,\n })\n if (!this[OBJECTMODE]) buf.dataLength = 0\n // set the promise first, in case an error is raised\n // by triggering the flow here.\n const p = this.promise()\n this.on('data', c => {\n buf.push(c)\n if (!this[OBJECTMODE])\n buf.dataLength += (c as Minipass.BufferOrString).length\n })\n await p\n return buf\n }\n\n /**\n * Return a Promise that resolves to the concatenation of all emitted data\n * once the stream ends.\n *\n * Not allowed on objectMode streams.\n */\n async concat(): Promise {\n if (this[OBJECTMODE]) {\n throw new Error('cannot concat in objectMode')\n }\n const buf = await this.collect()\n return (\n this[ENCODING]\n ? buf.join('')\n : Buffer.concat(buf as Buffer[], buf.dataLength)\n ) as RType\n }\n\n /**\n * Return a void Promise that resolves once the stream ends.\n */\n async promise(): Promise {\n return new Promise((resolve, reject) => {\n this.on(DESTROYED, () => reject(new Error('stream destroyed')))\n this.on('error', er => reject(er))\n this.on('end', () => resolve())\n })\n }\n\n /**\n * Asynchronous `for await of` iteration.\n *\n * This will continue emitting all chunks until the stream terminates.\n */\n [Symbol.asyncIterator](): AsyncGenerator {\n // set this up front, in case the consumer doesn't call next()\n // right away.\n this[DISCARDED] = false\n let stopped = false\n const stop = async (): Promise> => {\n this.pause()\n stopped = true\n return { value: undefined, done: true }\n }\n const next = (): Promise> => {\n if (stopped) return stop()\n const res = this.read()\n if (res !== null) return Promise.resolve({ done: false, value: res })\n\n if (this[EOF]) return stop()\n\n let resolve!: (res: IteratorResult) => void\n let reject!: (er: unknown) => void\n const onerr = (er: unknown) => {\n this.off('data', ondata)\n this.off('end', onend)\n this.off(DESTROYED, ondestroy)\n stop()\n reject(er)\n }\n const ondata = (value: RType) => {\n this.off('error', onerr)\n this.off('end', onend)\n this.off(DESTROYED, ondestroy)\n this.pause()\n resolve({ value, done: !!this[EOF] })\n }\n const onend = () => {\n this.off('error', onerr)\n this.off('data', ondata)\n this.off(DESTROYED, ondestroy)\n stop()\n resolve({ done: true, value: undefined })\n }\n const ondestroy = () => onerr(new Error('stream destroyed'))\n return new Promise>((res, rej) => {\n reject = rej\n resolve = res\n this.once(DESTROYED, ondestroy)\n this.once('error', onerr)\n this.once('end', onend)\n this.once('data', ondata)\n })\n }\n\n return {\n next,\n throw: stop,\n return: stop,\n [Symbol.asyncIterator]() {\n return this\n },\n }\n }\n\n /**\n * Synchronous `for of` iteration.\n *\n * The iteration will terminate when the internal buffer runs out, even\n * if the stream has not yet terminated.\n */\n [Symbol.iterator](): Generator {\n // set this up front, in case the consumer doesn't call next()\n // right away.\n this[DISCARDED] = false\n let stopped = false\n const stop = (): IteratorReturnResult => {\n this.pause()\n this.off(ERROR, stop)\n this.off(DESTROYED, stop)\n this.off('end', stop)\n stopped = true\n return { done: true, value: undefined }\n }\n\n const next = (): IteratorResult => {\n if (stopped) return stop()\n const value = this.read()\n return value === null ? stop() : { done: false, value }\n }\n\n this.once('end', stop)\n this.once(ERROR, stop)\n this.once(DESTROYED, stop)\n\n return {\n next,\n throw: stop,\n return: stop,\n [Symbol.iterator]() {\n return this\n },\n }\n }\n\n /**\n * Destroy a stream, preventing it from being used for any further purpose.\n *\n * If the stream has a `close()` method, then it will be called on\n * destruction.\n *\n * After destruction, any attempt to write data, read data, or emit most\n * events will be ignored.\n *\n * If an error argument is provided, then it will be emitted in an\n * 'error' event.\n */\n destroy(er?: unknown) {\n if (this[DESTROYED]) {\n if (er) this.emit('error', er)\n else this.emit(DESTROYED)\n return this\n }\n\n this[DESTROYED] = true\n this[DISCARDED] = true\n\n // throw away all buffered data, it's never coming out\n this[BUFFER].length = 0\n this[BUFFERLENGTH] = 0\n\n const wc = this as Minipass & {\n close?: () => void\n }\n if (typeof wc.close === 'function' && !this[CLOSED]) wc.close()\n\n if (er) this.emit('error', er)\n // if no error to emit, still reject pending promises\n else this.emit(DESTROYED)\n\n return this\n }\n\n /**\n * Alias for {@link isStream}\n *\n * Former export location, maintained for backwards compatibility.\n *\n * @deprecated\n */\n static get isStream() {\n return isStream\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/minipass/dist/commonjs/package.json b/node_modules/minipass/dist/commonjs/package.json
deleted file mode 100644
index 5bbefff..0000000
--- a/node_modules/minipass/dist/commonjs/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "type": "commonjs"
-}
diff --git a/node_modules/minipass/dist/esm/index.d.ts b/node_modules/minipass/dist/esm/index.d.ts
deleted file mode 100644
index 6dbfbcf..0000000
--- a/node_modules/minipass/dist/esm/index.d.ts
+++ /dev/null
@@ -1,549 +0,0 @@
-///
-///
-///
-///
-import { EventEmitter } from 'node:events';
-import { StringDecoder } from 'node:string_decoder';
-/**
- * Same as StringDecoder, but exposing the `lastNeed` flag on the type
- */
-type SD = StringDecoder & {
- lastNeed: boolean;
-};
-export type { SD, Pipe, PipeProxyErrors };
-/**
- * Return true if the argument is a Minipass stream, Node stream, or something
- * else that Minipass can interact with.
- */
-export declare const isStream: (s: any) => s is NodeJS.WriteStream | NodeJS.ReadStream | Minipass | (NodeJS.ReadStream & {
- fd: number;
-}) | (EventEmitter & {
- pause(): any;
- resume(): any;
- pipe(...destArgs: any[]): any;
-}) | (NodeJS.WriteStream & {
- fd: number;
-}) | (EventEmitter & {
- end(): any;
- write(chunk: any, ...args: any[]): any;
-});
-/**
- * Return true if the argument is a valid {@link Minipass.Readable}
- */
-export declare const isReadable: (s: any) => s is Minipass.Readable;
-/**
- * Return true if the argument is a valid {@link Minipass.Writable}
- */
-export declare const isWritable: (s: any) => s is Minipass.Readable;
-declare const EOF: unique symbol;
-declare const MAYBE_EMIT_END: unique symbol;
-declare const EMITTED_END: unique symbol;
-declare const EMITTING_END: unique symbol;
-declare const EMITTED_ERROR: unique symbol;
-declare const CLOSED: unique symbol;
-declare const READ: unique symbol;
-declare const FLUSH: unique symbol;
-declare const FLUSHCHUNK: unique symbol;
-declare const ENCODING: unique symbol;
-declare const DECODER: unique symbol;
-declare const FLOWING: unique symbol;
-declare const PAUSED: unique symbol;
-declare const RESUME: unique symbol;
-declare const BUFFER: unique symbol;
-declare const PIPES: unique symbol;
-declare const BUFFERLENGTH: unique symbol;
-declare const BUFFERPUSH: unique symbol;
-declare const BUFFERSHIFT: unique symbol;
-declare const OBJECTMODE: unique symbol;
-declare const DESTROYED: unique symbol;
-declare const ERROR: unique symbol;
-declare const EMITDATA: unique symbol;
-declare const EMITEND: unique symbol;
-declare const EMITEND2: unique symbol;
-declare const ASYNC: unique symbol;
-declare const ABORT: unique symbol;
-declare const ABORTED: unique symbol;
-declare const SIGNAL: unique symbol;
-declare const DATALISTENERS: unique symbol;
-declare const DISCARDED: unique symbol;
-/**
- * Options that may be passed to stream.pipe()
- */
-export interface PipeOptions {
- /**
- * end the destination stream when the source stream ends
- */
- end?: boolean;
- /**
- * proxy errors from the source stream to the destination stream
- */
- proxyErrors?: boolean;
-}
-/**
- * Internal class representing a pipe to a destination stream.
- *
- * @internal
- */
-declare class Pipe {
- src: Minipass;
- dest: Minipass;
- opts: PipeOptions;
- ondrain: () => any;
- constructor(src: Minipass, dest: Minipass.Writable, opts: PipeOptions);
- unpipe(): void;
- proxyErrors(_er: any): void;
- end(): void;
-}
-/**
- * Internal class representing a pipe to a destination stream where
- * errors are proxied.
- *
- * @internal
- */
-declare class PipeProxyErrors extends Pipe {
- unpipe(): void;
- constructor(src: Minipass, dest: Minipass.Writable, opts: PipeOptions);
-}
-export declare namespace Minipass {
- /**
- * Encoding used to create a stream that outputs strings rather than
- * Buffer objects.
- */
- export type Encoding = BufferEncoding | 'buffer' | null;
- /**
- * Any stream that Minipass can pipe into
- */
- export type Writable = Minipass | NodeJS.WriteStream | (NodeJS.WriteStream & {
- fd: number;
- }) | (EventEmitter & {
- end(): any;
- write(chunk: any, ...args: any[]): any;
- });
- /**
- * Any stream that can be read from
- */
- export type Readable = Minipass | NodeJS.ReadStream | (NodeJS.ReadStream & {
- fd: number;
- }) | (EventEmitter & {
- pause(): any;
- resume(): any;
- pipe(...destArgs: any[]): any;
- });
- /**
- * Utility type that can be iterated sync or async
- */
- export type DualIterable = Iterable & AsyncIterable;
- type EventArguments = Record;
- /**
- * The listing of events that a Minipass class can emit.
- * Extend this when extending the Minipass class, and pass as
- * the third template argument. The key is the name of the event,
- * and the value is the argument list.
- *
- * Any undeclared events will still be allowed, but the handler will get
- * arguments as `unknown[]`.
- */
- export interface Events extends EventArguments {
- readable: [];
- data: [chunk: RType];
- error: [er: unknown];
- abort: [reason: unknown];
- drain: [];
- resume: [];
- end: [];
- finish: [];
- prefinish: [];
- close: [];
- [DESTROYED]: [er?: unknown];
- [ERROR]: [er: unknown];
- }
- /**
- * String or buffer-like data that can be joined and sliced
- */
- export type ContiguousData = Buffer | ArrayBufferLike | ArrayBufferView | string;
- export type BufferOrString = Buffer | string;
- /**
- * Options passed to the Minipass constructor.
- */
- export type SharedOptions = {
- /**
- * Defer all data emission and other events until the end of the
- * current tick, similar to Node core streams
- */
- async?: boolean;
- /**
- * A signal which will abort the stream
- */
- signal?: AbortSignal;
- /**
- * Output string encoding. Set to `null` or `'buffer'` (or omit) to
- * emit Buffer objects rather than strings.
- *
- * Conflicts with `objectMode`
- */
- encoding?: BufferEncoding | null | 'buffer';
- /**
- * Output data exactly as it was written, supporting non-buffer/string
- * data (such as arbitrary objects, falsey values, etc.)
- *
- * Conflicts with `encoding`
- */
- objectMode?: boolean;
- };
- /**
- * Options for a string encoded output
- */
- export type EncodingOptions = SharedOptions & {
- encoding: BufferEncoding;
- objectMode?: false;
- };
- /**
- * Options for contiguous data buffer output
- */
- export type BufferOptions = SharedOptions & {
- encoding?: null | 'buffer';
- objectMode?: false;
- };
- /**
- * Options for objectMode arbitrary output
- */
- export type ObjectModeOptions = SharedOptions & {
- objectMode: true;
- encoding?: null;
- };
- /**
- * Utility type to determine allowed options based on read type
- */
- export type Options = ObjectModeOptions | (T extends string ? EncodingOptions : T extends Buffer ? BufferOptions : SharedOptions);
- export {};
-}
-/**
- * Main export, the Minipass class
- *
- * `RType` is the type of data emitted, defaults to Buffer
- *
- * `WType` is the type of data to be written, if RType is buffer or string,
- * then any {@link Minipass.ContiguousData} is allowed.
- *
- * `Events` is the set of event handler signatures that this object
- * will emit, see {@link Minipass.Events}
- */
-export declare class Minipass = Minipass.Events> extends EventEmitter implements Minipass.DualIterable {
- [FLOWING]: boolean;
- [PAUSED]: boolean;
- [PIPES]: Pipe[];
- [BUFFER]: RType[];
- [OBJECTMODE]: boolean;
- [ENCODING]: BufferEncoding | null;
- [ASYNC]: boolean;
- [DECODER]: SD | null;
- [EOF]: boolean;
- [EMITTED_END]: boolean;
- [EMITTING_END]: boolean;
- [CLOSED]: boolean;
- [EMITTED_ERROR]: unknown;
- [BUFFERLENGTH]: number;
- [DESTROYED]: boolean;
- [SIGNAL]?: AbortSignal;
- [ABORTED]: boolean;
- [DATALISTENERS]: number;
- [DISCARDED]: boolean;
- /**
- * true if the stream can be written
- */
- writable: boolean;
- /**
- * true if the stream can be read
- */
- readable: boolean;
- /**
- * If `RType` is Buffer, then options do not need to be provided.
- * Otherwise, an options object must be provided to specify either
- * {@link Minipass.SharedOptions.objectMode} or
- * {@link Minipass.SharedOptions.encoding}, as appropriate.
- */
- constructor(...args: [Minipass.ObjectModeOptions] | (RType extends Buffer ? [] | [Minipass.Options] : [Minipass.Options]));
- /**
- * The amount of data stored in the buffer waiting to be read.
- *
- * For Buffer strings, this will be the total byte length.
- * For string encoding streams, this will be the string character length,
- * according to JavaScript's `string.length` logic.
- * For objectMode streams, this is a count of the items waiting to be
- * emitted.
- */
- get bufferLength(): number;
- /**
- * The `BufferEncoding` currently in use, or `null`
- */
- get encoding(): BufferEncoding | null;
- /**
- * @deprecated - This is a read only property
- */
- set encoding(_enc: BufferEncoding | null);
- /**
- * @deprecated - Encoding may only be set at instantiation time
- */
- setEncoding(_enc: Minipass.Encoding): void;
- /**
- * True if this is an objectMode stream
- */
- get objectMode(): boolean;
- /**
- * @deprecated - This is a read-only property
- */
- set objectMode(_om: boolean);
- /**
- * true if this is an async stream
- */
- get ['async'](): boolean;
- /**
- * Set to true to make this stream async.
- *
- * Once set, it cannot be unset, as this would potentially cause incorrect
- * behavior. Ie, a sync stream can be made async, but an async stream
- * cannot be safely made sync.
- */
- set ['async'](a: boolean);
- [ABORT](): void;
- /**
- * True if the stream has been aborted.
- */
- get aborted(): boolean;
- /**
- * No-op setter. Stream aborted status is set via the AbortSignal provided
- * in the constructor options.
- */
- set aborted(_: boolean);
- /**
- * Write data into the stream
- *
- * If the chunk written is a string, and encoding is not specified, then
- * `utf8` will be assumed. If the stream encoding matches the encoding of
- * a written string, and the state of the string decoder allows it, then
- * the string will be passed through to either the output or the internal
- * buffer without any processing. Otherwise, it will be turned into a
- * Buffer object for processing into the desired encoding.
- *
- * If provided, `cb` function is called immediately before return for
- * sync streams, or on next tick for async streams, because for this
- * base class, a chunk is considered "processed" once it is accepted
- * and either emitted or buffered. That is, the callback does not indicate
- * that the chunk has been eventually emitted, though of course child
- * classes can override this function to do whatever processing is required
- * and call `super.write(...)` only once processing is completed.
- */
- write(chunk: WType, cb?: () => void): boolean;
- write(chunk: WType, encoding?: Minipass.Encoding, cb?: () => void): boolean;
- /**
- * Low-level explicit read method.
- *
- * In objectMode, the argument is ignored, and one item is returned if
- * available.
- *
- * `n` is the number of bytes (or in the case of encoding streams,
- * characters) to consume. If `n` is not provided, then the entire buffer
- * is returned, or `null` is returned if no data is available.
- *
- * If `n` is greater that the amount of data in the internal buffer,
- * then `null` is returned.
- */
- read(n?: number | null): RType | null;
- [READ](n: number | null, chunk: RType): RType;
- /**
- * End the stream, optionally providing a final write.
- *
- * See {@link Minipass#write} for argument descriptions
- */
- end(cb?: () => void): this;
- end(chunk: WType, cb?: () => void): this;
- end(chunk: WType, encoding?: Minipass.Encoding, cb?: () => void): this;
- [RESUME](): void;
- /**
- * Resume the stream if it is currently in a paused state
- *
- * If called when there are no pipe destinations or `data` event listeners,
- * this will place the stream in a "discarded" state, where all data will
- * be thrown away. The discarded state is removed if a pipe destination or
- * data handler is added, if pause() is called, or if any synchronous or
- * asynchronous iteration is started.
- */
- resume(): void;
- /**
- * Pause the stream
- */
- pause(): void;
- /**
- * true if the stream has been forcibly destroyed
- */
- get destroyed(): boolean;
- /**
- * true if the stream is currently in a flowing state, meaning that
- * any writes will be immediately emitted.
- */
- get flowing(): boolean;
- /**
- * true if the stream is currently in a paused state
- */
- get paused(): boolean;
- [BUFFERPUSH](chunk: RType): void;
- [BUFFERSHIFT](): RType;
- [FLUSH](noDrain?: boolean): void;
- [FLUSHCHUNK](chunk: RType): boolean;
- /**
- * Pipe all data emitted by this stream into the destination provided.
- *
- * Triggers the flow of data.
- */
- pipe(dest: W, opts?: PipeOptions): W;
- /**
- * Fully unhook a piped destination stream.
- *
- * If the destination stream was the only consumer of this stream (ie,
- * there are no other piped destinations or `'data'` event listeners)
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- unpipe(dest: W): void;
- /**
- * Alias for {@link Minipass#on}
- */
- addListener(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Mostly identical to `EventEmitter.on`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * - Adding a 'data' event handler will trigger the flow of data
- *
- * - Adding a 'readable' event handler when there is data waiting to be read
- * will cause 'readable' to be emitted immediately.
- *
- * - Adding an 'endish' event handler ('end', 'finish', etc.) which has
- * already passed will cause the event to be emitted immediately and all
- * handlers removed.
- *
- * - Adding an 'error' event handler after an error has been emitted will
- * cause the event to be re-emitted immediately with the error previously
- * raised.
- */
- on(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Alias for {@link Minipass#off}
- */
- removeListener(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Mostly identical to `EventEmitter.off`
- *
- * If a 'data' event handler is removed, and it was the last consumer
- * (ie, there are no pipe destinations or other 'data' event listeners),
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- off(ev: Event, handler: (...args: Events[Event]) => any): this;
- /**
- * Mostly identical to `EventEmitter.removeAllListeners`
- *
- * If all 'data' event handlers are removed, and they were the last consumer
- * (ie, there are no pipe destinations), then the flow of data will stop
- * until there is another consumer or {@link Minipass#resume} is explicitly
- * called.
- */
- removeAllListeners(ev?: Event): this;
- /**
- * true if the 'end' event has been emitted
- */
- get emittedEnd(): boolean;
- [MAYBE_EMIT_END](): void;
- /**
- * Mostly identical to `EventEmitter.emit`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * If the stream has been destroyed, and the event is something other
- * than 'close' or 'error', then `false` is returned and no handlers
- * are called.
- *
- * If the event is 'end', and has already been emitted, then the event
- * is ignored. If the stream is in a paused or non-flowing state, then
- * the event will be deferred until data flow resumes. If the stream is
- * async, then handlers will be called on the next tick rather than
- * immediately.
- *
- * If the event is 'close', and 'end' has not yet been emitted, then
- * the event will be deferred until after 'end' is emitted.
- *
- * If the event is 'error', and an AbortSignal was provided for the stream,
- * and there are no listeners, then the event is ignored, matching the
- * behavior of node core streams in the presense of an AbortSignal.
- *
- * If the event is 'finish' or 'prefinish', then all listeners will be
- * removed after emitting the event, to prevent double-firing.
- */
- emit(ev: Event, ...args: Events[Event]): boolean;
- [EMITDATA](data: RType): boolean;
- [EMITEND](): boolean;
- [EMITEND2](): boolean;
- /**
- * Return a Promise that resolves to an array of all emitted data once
- * the stream ends.
- */
- collect(): Promise;
- /**
- * Return a Promise that resolves to the concatenation of all emitted data
- * once the stream ends.
- *
- * Not allowed on objectMode streams.
- */
- concat(): Promise;
- /**
- * Return a void Promise that resolves once the stream ends.
- */
- promise(): Promise;
- /**
- * Asynchronous `for await of` iteration.
- *
- * This will continue emitting all chunks until the stream terminates.
- */
- [Symbol.asyncIterator](): AsyncGenerator;
- /**
- * Synchronous `for of` iteration.
- *
- * The iteration will terminate when the internal buffer runs out, even
- * if the stream has not yet terminated.
- */
- [Symbol.iterator](): Generator;
- /**
- * Destroy a stream, preventing it from being used for any further purpose.
- *
- * If the stream has a `close()` method, then it will be called on
- * destruction.
- *
- * After destruction, any attempt to write data, read data, or emit most
- * events will be ignored.
- *
- * If an error argument is provided, then it will be emitted in an
- * 'error' event.
- */
- destroy(er?: unknown): this;
- /**
- * Alias for {@link isStream}
- *
- * Former export location, maintained for backwards compatibility.
- *
- * @deprecated
- */
- static get isStream(): (s: any) => s is NodeJS.WriteStream | NodeJS.ReadStream | Minipass | (NodeJS.ReadStream & {
- fd: number;
- }) | (EventEmitter & {
- pause(): any;
- resume(): any;
- pipe(...destArgs: any[]): any;
- }) | (NodeJS.WriteStream & {
- fd: number;
- }) | (EventEmitter & {
- end(): any;
- write(chunk: any, ...args: any[]): any;
- });
-}
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/minipass/dist/esm/index.d.ts.map b/node_modules/minipass/dist/esm/index.d.ts.map
deleted file mode 100644
index cac7e00..0000000
--- a/node_modules/minipass/dist/esm/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/minipass/dist/esm/index.js b/node_modules/minipass/dist/esm/index.js
deleted file mode 100644
index b5fa451..0000000
--- a/node_modules/minipass/dist/esm/index.js
+++ /dev/null
@@ -1,1018 +0,0 @@
-const proc = typeof process === 'object' && process
- ? process
- : {
- stdout: null,
- stderr: null,
- };
-import { EventEmitter } from 'node:events';
-import Stream from 'node:stream';
-import { StringDecoder } from 'node:string_decoder';
-/**
- * Return true if the argument is a Minipass stream, Node stream, or something
- * else that Minipass can interact with.
- */
-export const isStream = (s) => !!s &&
- typeof s === 'object' &&
- (s instanceof Minipass ||
- s instanceof Stream ||
- isReadable(s) ||
- isWritable(s));
-/**
- * Return true if the argument is a valid {@link Minipass.Readable}
- */
-export const isReadable = (s) => !!s &&
- typeof s === 'object' &&
- s instanceof EventEmitter &&
- typeof s.pipe === 'function' &&
- // node core Writable streams have a pipe() method, but it throws
- s.pipe !== Stream.Writable.prototype.pipe;
-/**
- * Return true if the argument is a valid {@link Minipass.Writable}
- */
-export const isWritable = (s) => !!s &&
- typeof s === 'object' &&
- s instanceof EventEmitter &&
- typeof s.write === 'function' &&
- typeof s.end === 'function';
-const EOF = Symbol('EOF');
-const MAYBE_EMIT_END = Symbol('maybeEmitEnd');
-const EMITTED_END = Symbol('emittedEnd');
-const EMITTING_END = Symbol('emittingEnd');
-const EMITTED_ERROR = Symbol('emittedError');
-const CLOSED = Symbol('closed');
-const READ = Symbol('read');
-const FLUSH = Symbol('flush');
-const FLUSHCHUNK = Symbol('flushChunk');
-const ENCODING = Symbol('encoding');
-const DECODER = Symbol('decoder');
-const FLOWING = Symbol('flowing');
-const PAUSED = Symbol('paused');
-const RESUME = Symbol('resume');
-const BUFFER = Symbol('buffer');
-const PIPES = Symbol('pipes');
-const BUFFERLENGTH = Symbol('bufferLength');
-const BUFFERPUSH = Symbol('bufferPush');
-const BUFFERSHIFT = Symbol('bufferShift');
-const OBJECTMODE = Symbol('objectMode');
-// internal event when stream is destroyed
-const DESTROYED = Symbol('destroyed');
-// internal event when stream has an error
-const ERROR = Symbol('error');
-const EMITDATA = Symbol('emitData');
-const EMITEND = Symbol('emitEnd');
-const EMITEND2 = Symbol('emitEnd2');
-const ASYNC = Symbol('async');
-const ABORT = Symbol('abort');
-const ABORTED = Symbol('aborted');
-const SIGNAL = Symbol('signal');
-const DATALISTENERS = Symbol('dataListeners');
-const DISCARDED = Symbol('discarded');
-const defer = (fn) => Promise.resolve().then(fn);
-const nodefer = (fn) => fn();
-const isEndish = (ev) => ev === 'end' || ev === 'finish' || ev === 'prefinish';
-const isArrayBufferLike = (b) => b instanceof ArrayBuffer ||
- (!!b &&
- typeof b === 'object' &&
- b.constructor &&
- b.constructor.name === 'ArrayBuffer' &&
- b.byteLength >= 0);
-const isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b);
-/**
- * Internal class representing a pipe to a destination stream.
- *
- * @internal
- */
-class Pipe {
- src;
- dest;
- opts;
- ondrain;
- constructor(src, dest, opts) {
- this.src = src;
- this.dest = dest;
- this.opts = opts;
- this.ondrain = () => src[RESUME]();
- this.dest.on('drain', this.ondrain);
- }
- unpipe() {
- this.dest.removeListener('drain', this.ondrain);
- }
- // only here for the prototype
- /* c8 ignore start */
- proxyErrors(_er) { }
- /* c8 ignore stop */
- end() {
- this.unpipe();
- if (this.opts.end)
- this.dest.end();
- }
-}
-/**
- * Internal class representing a pipe to a destination stream where
- * errors are proxied.
- *
- * @internal
- */
-class PipeProxyErrors extends Pipe {
- unpipe() {
- this.src.removeListener('error', this.proxyErrors);
- super.unpipe();
- }
- constructor(src, dest, opts) {
- super(src, dest, opts);
- this.proxyErrors = er => dest.emit('error', er);
- src.on('error', this.proxyErrors);
- }
-}
-const isObjectModeOptions = (o) => !!o.objectMode;
-const isEncodingOptions = (o) => !o.objectMode && !!o.encoding && o.encoding !== 'buffer';
-/**
- * Main export, the Minipass class
- *
- * `RType` is the type of data emitted, defaults to Buffer
- *
- * `WType` is the type of data to be written, if RType is buffer or string,
- * then any {@link Minipass.ContiguousData} is allowed.
- *
- * `Events` is the set of event handler signatures that this object
- * will emit, see {@link Minipass.Events}
- */
-export class Minipass extends EventEmitter {
- [FLOWING] = false;
- [PAUSED] = false;
- [PIPES] = [];
- [BUFFER] = [];
- [OBJECTMODE];
- [ENCODING];
- [ASYNC];
- [DECODER];
- [EOF] = false;
- [EMITTED_END] = false;
- [EMITTING_END] = false;
- [CLOSED] = false;
- [EMITTED_ERROR] = null;
- [BUFFERLENGTH] = 0;
- [DESTROYED] = false;
- [SIGNAL];
- [ABORTED] = false;
- [DATALISTENERS] = 0;
- [DISCARDED] = false;
- /**
- * true if the stream can be written
- */
- writable = true;
- /**
- * true if the stream can be read
- */
- readable = true;
- /**
- * If `RType` is Buffer, then options do not need to be provided.
- * Otherwise, an options object must be provided to specify either
- * {@link Minipass.SharedOptions.objectMode} or
- * {@link Minipass.SharedOptions.encoding}, as appropriate.
- */
- constructor(...args) {
- const options = (args[0] ||
- {});
- super();
- if (options.objectMode && typeof options.encoding === 'string') {
- throw new TypeError('Encoding and objectMode may not be used together');
- }
- if (isObjectModeOptions(options)) {
- this[OBJECTMODE] = true;
- this[ENCODING] = null;
- }
- else if (isEncodingOptions(options)) {
- this[ENCODING] = options.encoding;
- this[OBJECTMODE] = false;
- }
- else {
- this[OBJECTMODE] = false;
- this[ENCODING] = null;
- }
- this[ASYNC] = !!options.async;
- this[DECODER] = this[ENCODING]
- ? new StringDecoder(this[ENCODING])
- : null;
- //@ts-ignore - private option for debugging and testing
- if (options && options.debugExposeBuffer === true) {
- Object.defineProperty(this, 'buffer', { get: () => this[BUFFER] });
- }
- //@ts-ignore - private option for debugging and testing
- if (options && options.debugExposePipes === true) {
- Object.defineProperty(this, 'pipes', { get: () => this[PIPES] });
- }
- const { signal } = options;
- if (signal) {
- this[SIGNAL] = signal;
- if (signal.aborted) {
- this[ABORT]();
- }
- else {
- signal.addEventListener('abort', () => this[ABORT]());
- }
- }
- }
- /**
- * The amount of data stored in the buffer waiting to be read.
- *
- * For Buffer strings, this will be the total byte length.
- * For string encoding streams, this will be the string character length,
- * according to JavaScript's `string.length` logic.
- * For objectMode streams, this is a count of the items waiting to be
- * emitted.
- */
- get bufferLength() {
- return this[BUFFERLENGTH];
- }
- /**
- * The `BufferEncoding` currently in use, or `null`
- */
- get encoding() {
- return this[ENCODING];
- }
- /**
- * @deprecated - This is a read only property
- */
- set encoding(_enc) {
- throw new Error('Encoding must be set at instantiation time');
- }
- /**
- * @deprecated - Encoding may only be set at instantiation time
- */
- setEncoding(_enc) {
- throw new Error('Encoding must be set at instantiation time');
- }
- /**
- * True if this is an objectMode stream
- */
- get objectMode() {
- return this[OBJECTMODE];
- }
- /**
- * @deprecated - This is a read-only property
- */
- set objectMode(_om) {
- throw new Error('objectMode must be set at instantiation time');
- }
- /**
- * true if this is an async stream
- */
- get ['async']() {
- return this[ASYNC];
- }
- /**
- * Set to true to make this stream async.
- *
- * Once set, it cannot be unset, as this would potentially cause incorrect
- * behavior. Ie, a sync stream can be made async, but an async stream
- * cannot be safely made sync.
- */
- set ['async'](a) {
- this[ASYNC] = this[ASYNC] || !!a;
- }
- // drop everything and get out of the flow completely
- [ABORT]() {
- this[ABORTED] = true;
- this.emit('abort', this[SIGNAL]?.reason);
- this.destroy(this[SIGNAL]?.reason);
- }
- /**
- * True if the stream has been aborted.
- */
- get aborted() {
- return this[ABORTED];
- }
- /**
- * No-op setter. Stream aborted status is set via the AbortSignal provided
- * in the constructor options.
- */
- set aborted(_) { }
- write(chunk, encoding, cb) {
- if (this[ABORTED])
- return false;
- if (this[EOF])
- throw new Error('write after end');
- if (this[DESTROYED]) {
- this.emit('error', Object.assign(new Error('Cannot call write after a stream was destroyed'), { code: 'ERR_STREAM_DESTROYED' }));
- return true;
- }
- if (typeof encoding === 'function') {
- cb = encoding;
- encoding = 'utf8';
- }
- if (!encoding)
- encoding = 'utf8';
- const fn = this[ASYNC] ? defer : nodefer;
- // convert array buffers and typed array views into buffers
- // at some point in the future, we may want to do the opposite!
- // leave strings and buffers as-is
- // anything is only allowed if in object mode, so throw
- if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) {
- if (isArrayBufferView(chunk)) {
- //@ts-ignore - sinful unsafe type changing
- chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength);
- }
- else if (isArrayBufferLike(chunk)) {
- //@ts-ignore - sinful unsafe type changing
- chunk = Buffer.from(chunk);
- }
- else if (typeof chunk !== 'string') {
- throw new Error('Non-contiguous data written to non-objectMode stream');
- }
- }
- // handle object mode up front, since it's simpler
- // this yields better performance, fewer checks later.
- if (this[OBJECTMODE]) {
- // maybe impossible?
- /* c8 ignore start */
- if (this[FLOWING] && this[BUFFERLENGTH] !== 0)
- this[FLUSH](true);
- /* c8 ignore stop */
- if (this[FLOWING])
- this.emit('data', chunk);
- else
- this[BUFFERPUSH](chunk);
- if (this[BUFFERLENGTH] !== 0)
- this.emit('readable');
- if (cb)
- fn(cb);
- return this[FLOWING];
- }
- // at this point the chunk is a buffer or string
- // don't buffer it up or send it to the decoder
- if (!chunk.length) {
- if (this[BUFFERLENGTH] !== 0)
- this.emit('readable');
- if (cb)
- fn(cb);
- return this[FLOWING];
- }
- // fast-path writing strings of same encoding to a stream with
- // an empty buffer, skipping the buffer/decoder dance
- if (typeof chunk === 'string' &&
- // unless it is a string already ready for us to use
- !(encoding === this[ENCODING] && !this[DECODER]?.lastNeed)) {
- //@ts-ignore - sinful unsafe type change
- chunk = Buffer.from(chunk, encoding);
- }
- if (Buffer.isBuffer(chunk) && this[ENCODING]) {
- //@ts-ignore - sinful unsafe type change
- chunk = this[DECODER].write(chunk);
- }
- // Note: flushing CAN potentially switch us into not-flowing mode
- if (this[FLOWING] && this[BUFFERLENGTH] !== 0)
- this[FLUSH](true);
- if (this[FLOWING])
- this.emit('data', chunk);
- else
- this[BUFFERPUSH](chunk);
- if (this[BUFFERLENGTH] !== 0)
- this.emit('readable');
- if (cb)
- fn(cb);
- return this[FLOWING];
- }
- /**
- * Low-level explicit read method.
- *
- * In objectMode, the argument is ignored, and one item is returned if
- * available.
- *
- * `n` is the number of bytes (or in the case of encoding streams,
- * characters) to consume. If `n` is not provided, then the entire buffer
- * is returned, or `null` is returned if no data is available.
- *
- * If `n` is greater that the amount of data in the internal buffer,
- * then `null` is returned.
- */
- read(n) {
- if (this[DESTROYED])
- return null;
- this[DISCARDED] = false;
- if (this[BUFFERLENGTH] === 0 ||
- n === 0 ||
- (n && n > this[BUFFERLENGTH])) {
- this[MAYBE_EMIT_END]();
- return null;
- }
- if (this[OBJECTMODE])
- n = null;
- if (this[BUFFER].length > 1 && !this[OBJECTMODE]) {
- // not object mode, so if we have an encoding, then RType is string
- // otherwise, must be Buffer
- this[BUFFER] = [
- (this[ENCODING]
- ? this[BUFFER].join('')
- : Buffer.concat(this[BUFFER], this[BUFFERLENGTH])),
- ];
- }
- const ret = this[READ](n || null, this[BUFFER][0]);
- this[MAYBE_EMIT_END]();
- return ret;
- }
- [READ](n, chunk) {
- if (this[OBJECTMODE])
- this[BUFFERSHIFT]();
- else {
- const c = chunk;
- if (n === c.length || n === null)
- this[BUFFERSHIFT]();
- else if (typeof c === 'string') {
- this[BUFFER][0] = c.slice(n);
- chunk = c.slice(0, n);
- this[BUFFERLENGTH] -= n;
- }
- else {
- this[BUFFER][0] = c.subarray(n);
- chunk = c.subarray(0, n);
- this[BUFFERLENGTH] -= n;
- }
- }
- this.emit('data', chunk);
- if (!this[BUFFER].length && !this[EOF])
- this.emit('drain');
- return chunk;
- }
- end(chunk, encoding, cb) {
- if (typeof chunk === 'function') {
- cb = chunk;
- chunk = undefined;
- }
- if (typeof encoding === 'function') {
- cb = encoding;
- encoding = 'utf8';
- }
- if (chunk !== undefined)
- this.write(chunk, encoding);
- if (cb)
- this.once('end', cb);
- this[EOF] = true;
- this.writable = false;
- // if we haven't written anything, then go ahead and emit,
- // even if we're not reading.
- // we'll re-emit if a new 'end' listener is added anyway.
- // This makes MP more suitable to write-only use cases.
- if (this[FLOWING] || !this[PAUSED])
- this[MAYBE_EMIT_END]();
- return this;
- }
- // don't let the internal resume be overwritten
- [RESUME]() {
- if (this[DESTROYED])
- return;
- if (!this[DATALISTENERS] && !this[PIPES].length) {
- this[DISCARDED] = true;
- }
- this[PAUSED] = false;
- this[FLOWING] = true;
- this.emit('resume');
- if (this[BUFFER].length)
- this[FLUSH]();
- else if (this[EOF])
- this[MAYBE_EMIT_END]();
- else
- this.emit('drain');
- }
- /**
- * Resume the stream if it is currently in a paused state
- *
- * If called when there are no pipe destinations or `data` event listeners,
- * this will place the stream in a "discarded" state, where all data will
- * be thrown away. The discarded state is removed if a pipe destination or
- * data handler is added, if pause() is called, or if any synchronous or
- * asynchronous iteration is started.
- */
- resume() {
- return this[RESUME]();
- }
- /**
- * Pause the stream
- */
- pause() {
- this[FLOWING] = false;
- this[PAUSED] = true;
- this[DISCARDED] = false;
- }
- /**
- * true if the stream has been forcibly destroyed
- */
- get destroyed() {
- return this[DESTROYED];
- }
- /**
- * true if the stream is currently in a flowing state, meaning that
- * any writes will be immediately emitted.
- */
- get flowing() {
- return this[FLOWING];
- }
- /**
- * true if the stream is currently in a paused state
- */
- get paused() {
- return this[PAUSED];
- }
- [BUFFERPUSH](chunk) {
- if (this[OBJECTMODE])
- this[BUFFERLENGTH] += 1;
- else
- this[BUFFERLENGTH] += chunk.length;
- this[BUFFER].push(chunk);
- }
- [BUFFERSHIFT]() {
- if (this[OBJECTMODE])
- this[BUFFERLENGTH] -= 1;
- else
- this[BUFFERLENGTH] -= this[BUFFER][0].length;
- return this[BUFFER].shift();
- }
- [FLUSH](noDrain = false) {
- do { } while (this[FLUSHCHUNK](this[BUFFERSHIFT]()) &&
- this[BUFFER].length);
- if (!noDrain && !this[BUFFER].length && !this[EOF])
- this.emit('drain');
- }
- [FLUSHCHUNK](chunk) {
- this.emit('data', chunk);
- return this[FLOWING];
- }
- /**
- * Pipe all data emitted by this stream into the destination provided.
- *
- * Triggers the flow of data.
- */
- pipe(dest, opts) {
- if (this[DESTROYED])
- return dest;
- this[DISCARDED] = false;
- const ended = this[EMITTED_END];
- opts = opts || {};
- if (dest === proc.stdout || dest === proc.stderr)
- opts.end = false;
- else
- opts.end = opts.end !== false;
- opts.proxyErrors = !!opts.proxyErrors;
- // piping an ended stream ends immediately
- if (ended) {
- if (opts.end)
- dest.end();
- }
- else {
- // "as" here just ignores the WType, which pipes don't care about,
- // since they're only consuming from us, and writing to the dest
- this[PIPES].push(!opts.proxyErrors
- ? new Pipe(this, dest, opts)
- : new PipeProxyErrors(this, dest, opts));
- if (this[ASYNC])
- defer(() => this[RESUME]());
- else
- this[RESUME]();
- }
- return dest;
- }
- /**
- * Fully unhook a piped destination stream.
- *
- * If the destination stream was the only consumer of this stream (ie,
- * there are no other piped destinations or `'data'` event listeners)
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- unpipe(dest) {
- const p = this[PIPES].find(p => p.dest === dest);
- if (p) {
- if (this[PIPES].length === 1) {
- if (this[FLOWING] && this[DATALISTENERS] === 0) {
- this[FLOWING] = false;
- }
- this[PIPES] = [];
- }
- else
- this[PIPES].splice(this[PIPES].indexOf(p), 1);
- p.unpipe();
- }
- }
- /**
- * Alias for {@link Minipass#on}
- */
- addListener(ev, handler) {
- return this.on(ev, handler);
- }
- /**
- * Mostly identical to `EventEmitter.on`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * - Adding a 'data' event handler will trigger the flow of data
- *
- * - Adding a 'readable' event handler when there is data waiting to be read
- * will cause 'readable' to be emitted immediately.
- *
- * - Adding an 'endish' event handler ('end', 'finish', etc.) which has
- * already passed will cause the event to be emitted immediately and all
- * handlers removed.
- *
- * - Adding an 'error' event handler after an error has been emitted will
- * cause the event to be re-emitted immediately with the error previously
- * raised.
- */
- on(ev, handler) {
- const ret = super.on(ev, handler);
- if (ev === 'data') {
- this[DISCARDED] = false;
- this[DATALISTENERS]++;
- if (!this[PIPES].length && !this[FLOWING]) {
- this[RESUME]();
- }
- }
- else if (ev === 'readable' && this[BUFFERLENGTH] !== 0) {
- super.emit('readable');
- }
- else if (isEndish(ev) && this[EMITTED_END]) {
- super.emit(ev);
- this.removeAllListeners(ev);
- }
- else if (ev === 'error' && this[EMITTED_ERROR]) {
- const h = handler;
- if (this[ASYNC])
- defer(() => h.call(this, this[EMITTED_ERROR]));
- else
- h.call(this, this[EMITTED_ERROR]);
- }
- return ret;
- }
- /**
- * Alias for {@link Minipass#off}
- */
- removeListener(ev, handler) {
- return this.off(ev, handler);
- }
- /**
- * Mostly identical to `EventEmitter.off`
- *
- * If a 'data' event handler is removed, and it was the last consumer
- * (ie, there are no pipe destinations or other 'data' event listeners),
- * then the flow of data will stop until there is another consumer or
- * {@link Minipass#resume} is explicitly called.
- */
- off(ev, handler) {
- const ret = super.off(ev, handler);
- // if we previously had listeners, and now we don't, and we don't
- // have any pipes, then stop the flow, unless it's been explicitly
- // put in a discarded flowing state via stream.resume().
- if (ev === 'data') {
- this[DATALISTENERS] = this.listeners('data').length;
- if (this[DATALISTENERS] === 0 &&
- !this[DISCARDED] &&
- !this[PIPES].length) {
- this[FLOWING] = false;
- }
- }
- return ret;
- }
- /**
- * Mostly identical to `EventEmitter.removeAllListeners`
- *
- * If all 'data' event handlers are removed, and they were the last consumer
- * (ie, there are no pipe destinations), then the flow of data will stop
- * until there is another consumer or {@link Minipass#resume} is explicitly
- * called.
- */
- removeAllListeners(ev) {
- const ret = super.removeAllListeners(ev);
- if (ev === 'data' || ev === undefined) {
- this[DATALISTENERS] = 0;
- if (!this[DISCARDED] && !this[PIPES].length) {
- this[FLOWING] = false;
- }
- }
- return ret;
- }
- /**
- * true if the 'end' event has been emitted
- */
- get emittedEnd() {
- return this[EMITTED_END];
- }
- [MAYBE_EMIT_END]() {
- if (!this[EMITTING_END] &&
- !this[EMITTED_END] &&
- !this[DESTROYED] &&
- this[BUFFER].length === 0 &&
- this[EOF]) {
- this[EMITTING_END] = true;
- this.emit('end');
- this.emit('prefinish');
- this.emit('finish');
- if (this[CLOSED])
- this.emit('close');
- this[EMITTING_END] = false;
- }
- }
- /**
- * Mostly identical to `EventEmitter.emit`, with the following
- * behavior differences to prevent data loss and unnecessary hangs:
- *
- * If the stream has been destroyed, and the event is something other
- * than 'close' or 'error', then `false` is returned and no handlers
- * are called.
- *
- * If the event is 'end', and has already been emitted, then the event
- * is ignored. If the stream is in a paused or non-flowing state, then
- * the event will be deferred until data flow resumes. If the stream is
- * async, then handlers will be called on the next tick rather than
- * immediately.
- *
- * If the event is 'close', and 'end' has not yet been emitted, then
- * the event will be deferred until after 'end' is emitted.
- *
- * If the event is 'error', and an AbortSignal was provided for the stream,
- * and there are no listeners, then the event is ignored, matching the
- * behavior of node core streams in the presense of an AbortSignal.
- *
- * If the event is 'finish' or 'prefinish', then all listeners will be
- * removed after emitting the event, to prevent double-firing.
- */
- emit(ev, ...args) {
- const data = args[0];
- // error and close are only events allowed after calling destroy()
- if (ev !== 'error' &&
- ev !== 'close' &&
- ev !== DESTROYED &&
- this[DESTROYED]) {
- return false;
- }
- else if (ev === 'data') {
- return !this[OBJECTMODE] && !data
- ? false
- : this[ASYNC]
- ? (defer(() => this[EMITDATA](data)), true)
- : this[EMITDATA](data);
- }
- else if (ev === 'end') {
- return this[EMITEND]();
- }
- else if (ev === 'close') {
- this[CLOSED] = true;
- // don't emit close before 'end' and 'finish'
- if (!this[EMITTED_END] && !this[DESTROYED])
- return false;
- const ret = super.emit('close');
- this.removeAllListeners('close');
- return ret;
- }
- else if (ev === 'error') {
- this[EMITTED_ERROR] = data;
- super.emit(ERROR, data);
- const ret = !this[SIGNAL] || this.listeners('error').length
- ? super.emit('error', data)
- : false;
- this[MAYBE_EMIT_END]();
- return ret;
- }
- else if (ev === 'resume') {
- const ret = super.emit('resume');
- this[MAYBE_EMIT_END]();
- return ret;
- }
- else if (ev === 'finish' || ev === 'prefinish') {
- const ret = super.emit(ev);
- this.removeAllListeners(ev);
- return ret;
- }
- // Some other unknown event
- const ret = super.emit(ev, ...args);
- this[MAYBE_EMIT_END]();
- return ret;
- }
- [EMITDATA](data) {
- for (const p of this[PIPES]) {
- if (p.dest.write(data) === false)
- this.pause();
- }
- const ret = this[DISCARDED] ? false : super.emit('data', data);
- this[MAYBE_EMIT_END]();
- return ret;
- }
- [EMITEND]() {
- if (this[EMITTED_END])
- return false;
- this[EMITTED_END] = true;
- this.readable = false;
- return this[ASYNC]
- ? (defer(() => this[EMITEND2]()), true)
- : this[EMITEND2]();
- }
- [EMITEND2]() {
- if (this[DECODER]) {
- const data = this[DECODER].end();
- if (data) {
- for (const p of this[PIPES]) {
- p.dest.write(data);
- }
- if (!this[DISCARDED])
- super.emit('data', data);
- }
- }
- for (const p of this[PIPES]) {
- p.end();
- }
- const ret = super.emit('end');
- this.removeAllListeners('end');
- return ret;
- }
- /**
- * Return a Promise that resolves to an array of all emitted data once
- * the stream ends.
- */
- async collect() {
- const buf = Object.assign([], {
- dataLength: 0,
- });
- if (!this[OBJECTMODE])
- buf.dataLength = 0;
- // set the promise first, in case an error is raised
- // by triggering the flow here.
- const p = this.promise();
- this.on('data', c => {
- buf.push(c);
- if (!this[OBJECTMODE])
- buf.dataLength += c.length;
- });
- await p;
- return buf;
- }
- /**
- * Return a Promise that resolves to the concatenation of all emitted data
- * once the stream ends.
- *
- * Not allowed on objectMode streams.
- */
- async concat() {
- if (this[OBJECTMODE]) {
- throw new Error('cannot concat in objectMode');
- }
- const buf = await this.collect();
- return (this[ENCODING]
- ? buf.join('')
- : Buffer.concat(buf, buf.dataLength));
- }
- /**
- * Return a void Promise that resolves once the stream ends.
- */
- async promise() {
- return new Promise((resolve, reject) => {
- this.on(DESTROYED, () => reject(new Error('stream destroyed')));
- this.on('error', er => reject(er));
- this.on('end', () => resolve());
- });
- }
- /**
- * Asynchronous `for await of` iteration.
- *
- * This will continue emitting all chunks until the stream terminates.
- */
- [Symbol.asyncIterator]() {
- // set this up front, in case the consumer doesn't call next()
- // right away.
- this[DISCARDED] = false;
- let stopped = false;
- const stop = async () => {
- this.pause();
- stopped = true;
- return { value: undefined, done: true };
- };
- const next = () => {
- if (stopped)
- return stop();
- const res = this.read();
- if (res !== null)
- return Promise.resolve({ done: false, value: res });
- if (this[EOF])
- return stop();
- let resolve;
- let reject;
- const onerr = (er) => {
- this.off('data', ondata);
- this.off('end', onend);
- this.off(DESTROYED, ondestroy);
- stop();
- reject(er);
- };
- const ondata = (value) => {
- this.off('error', onerr);
- this.off('end', onend);
- this.off(DESTROYED, ondestroy);
- this.pause();
- resolve({ value, done: !!this[EOF] });
- };
- const onend = () => {
- this.off('error', onerr);
- this.off('data', ondata);
- this.off(DESTROYED, ondestroy);
- stop();
- resolve({ done: true, value: undefined });
- };
- const ondestroy = () => onerr(new Error('stream destroyed'));
- return new Promise((res, rej) => {
- reject = rej;
- resolve = res;
- this.once(DESTROYED, ondestroy);
- this.once('error', onerr);
- this.once('end', onend);
- this.once('data', ondata);
- });
- };
- return {
- next,
- throw: stop,
- return: stop,
- [Symbol.asyncIterator]() {
- return this;
- },
- };
- }
- /**
- * Synchronous `for of` iteration.
- *
- * The iteration will terminate when the internal buffer runs out, even
- * if the stream has not yet terminated.
- */
- [Symbol.iterator]() {
- // set this up front, in case the consumer doesn't call next()
- // right away.
- this[DISCARDED] = false;
- let stopped = false;
- const stop = () => {
- this.pause();
- this.off(ERROR, stop);
- this.off(DESTROYED, stop);
- this.off('end', stop);
- stopped = true;
- return { done: true, value: undefined };
- };
- const next = () => {
- if (stopped)
- return stop();
- const value = this.read();
- return value === null ? stop() : { done: false, value };
- };
- this.once('end', stop);
- this.once(ERROR, stop);
- this.once(DESTROYED, stop);
- return {
- next,
- throw: stop,
- return: stop,
- [Symbol.iterator]() {
- return this;
- },
- };
- }
- /**
- * Destroy a stream, preventing it from being used for any further purpose.
- *
- * If the stream has a `close()` method, then it will be called on
- * destruction.
- *
- * After destruction, any attempt to write data, read data, or emit most
- * events will be ignored.
- *
- * If an error argument is provided, then it will be emitted in an
- * 'error' event.
- */
- destroy(er) {
- if (this[DESTROYED]) {
- if (er)
- this.emit('error', er);
- else
- this.emit(DESTROYED);
- return this;
- }
- this[DESTROYED] = true;
- this[DISCARDED] = true;
- // throw away all buffered data, it's never coming out
- this[BUFFER].length = 0;
- this[BUFFERLENGTH] = 0;
- const wc = this;
- if (typeof wc.close === 'function' && !this[CLOSED])
- wc.close();
- if (er)
- this.emit('error', er);
- // if no error to emit, still reject pending promises
- else
- this.emit(DESTROYED);
- return this;
- }
- /**
- * Alias for {@link isStream}
- *
- * Former export location, maintained for backwards compatibility.
- *
- * @deprecated
- */
- static get isStream() {
- return isStream;
- }
-}
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/minipass/dist/esm/index.js.map b/node_modules/minipass/dist/esm/index.js.map
deleted file mode 100644
index 741425a..0000000
--- a/node_modules/minipass/dist/esm/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["const proc =\n typeof process === 'object' && process\n ? process\n : {\n stdout: null,\n stderr: null,\n }\nimport { EventEmitter } from 'node:events'\nimport Stream from 'node:stream'\nimport { StringDecoder } from 'node:string_decoder'\n\n/**\n * Same as StringDecoder, but exposing the `lastNeed` flag on the type\n */\ntype SD = StringDecoder & { lastNeed: boolean }\n\nexport type { SD, Pipe, PipeProxyErrors }\n\n/**\n * Return true if the argument is a Minipass stream, Node stream, or something\n * else that Minipass can interact with.\n */\nexport const isStream = (\n s: any\n): s is Minipass.Readable | Minipass.Writable =>\n !!s &&\n typeof s === 'object' &&\n (s instanceof Minipass ||\n s instanceof Stream ||\n isReadable(s) ||\n isWritable(s))\n\n/**\n * Return true if the argument is a valid {@link Minipass.Readable}\n */\nexport const isReadable = (s: any): s is Minipass.Readable =>\n !!s &&\n typeof s === 'object' &&\n s instanceof EventEmitter &&\n typeof (s as Minipass.Readable).pipe === 'function' &&\n // node core Writable streams have a pipe() method, but it throws\n (s as Minipass.Readable).pipe !== Stream.Writable.prototype.pipe\n\n/**\n * Return true if the argument is a valid {@link Minipass.Writable}\n */\nexport const isWritable = (s: any): s is Minipass.Readable =>\n !!s &&\n typeof s === 'object' &&\n s instanceof EventEmitter &&\n typeof (s as Minipass.Writable).write === 'function' &&\n typeof (s as Minipass.Writable).end === 'function'\n\nconst EOF = Symbol('EOF')\nconst MAYBE_EMIT_END = Symbol('maybeEmitEnd')\nconst EMITTED_END = Symbol('emittedEnd')\nconst EMITTING_END = Symbol('emittingEnd')\nconst EMITTED_ERROR = Symbol('emittedError')\nconst CLOSED = Symbol('closed')\nconst READ = Symbol('read')\nconst FLUSH = Symbol('flush')\nconst FLUSHCHUNK = Symbol('flushChunk')\nconst ENCODING = Symbol('encoding')\nconst DECODER = Symbol('decoder')\nconst FLOWING = Symbol('flowing')\nconst PAUSED = Symbol('paused')\nconst RESUME = Symbol('resume')\nconst BUFFER = Symbol('buffer')\nconst PIPES = Symbol('pipes')\nconst BUFFERLENGTH = Symbol('bufferLength')\nconst BUFFERPUSH = Symbol('bufferPush')\nconst BUFFERSHIFT = Symbol('bufferShift')\nconst OBJECTMODE = Symbol('objectMode')\n// internal event when stream is destroyed\nconst DESTROYED = Symbol('destroyed')\n// internal event when stream has an error\nconst ERROR = Symbol('error')\nconst EMITDATA = Symbol('emitData')\nconst EMITEND = Symbol('emitEnd')\nconst EMITEND2 = Symbol('emitEnd2')\nconst ASYNC = Symbol('async')\nconst ABORT = Symbol('abort')\nconst ABORTED = Symbol('aborted')\nconst SIGNAL = Symbol('signal')\nconst DATALISTENERS = Symbol('dataListeners')\nconst DISCARDED = Symbol('discarded')\n\nconst defer = (fn: (...a: any[]) => any) => Promise.resolve().then(fn)\nconst nodefer = (fn: (...a: any[]) => any) => fn()\n\n// events that mean 'the stream is over'\n// these are treated specially, and re-emitted\n// if they are listened for after emitting.\ntype EndishEvent = 'end' | 'finish' | 'prefinish'\nconst isEndish = (ev: any): ev is EndishEvent =>\n ev === 'end' || ev === 'finish' || ev === 'prefinish'\n\nconst isArrayBufferLike = (b: any): b is ArrayBufferLike =>\n b instanceof ArrayBuffer ||\n (!!b &&\n typeof b === 'object' &&\n b.constructor &&\n b.constructor.name === 'ArrayBuffer' &&\n b.byteLength >= 0)\n\nconst isArrayBufferView = (b: any): b is ArrayBufferView =>\n !Buffer.isBuffer(b) && ArrayBuffer.isView(b)\n\n/**\n * Options that may be passed to stream.pipe()\n */\nexport interface PipeOptions {\n /**\n * end the destination stream when the source stream ends\n */\n end?: boolean\n /**\n * proxy errors from the source stream to the destination stream\n */\n proxyErrors?: boolean\n}\n\n/**\n * Internal class representing a pipe to a destination stream.\n *\n * @internal\n */\nclass Pipe {\n src: Minipass\n dest: Minipass\n opts: PipeOptions\n ondrain: () => any\n constructor(\n src: Minipass,\n dest: Minipass.Writable,\n opts: PipeOptions\n ) {\n this.src = src\n this.dest = dest as Minipass\n this.opts = opts\n this.ondrain = () => src[RESUME]()\n this.dest.on('drain', this.ondrain)\n }\n unpipe() {\n this.dest.removeListener('drain', this.ondrain)\n }\n // only here for the prototype\n /* c8 ignore start */\n proxyErrors(_er: any) {}\n /* c8 ignore stop */\n end() {\n this.unpipe()\n if (this.opts.end) this.dest.end()\n }\n}\n\n/**\n * Internal class representing a pipe to a destination stream where\n * errors are proxied.\n *\n * @internal\n */\nclass PipeProxyErrors extends Pipe {\n unpipe() {\n this.src.removeListener('error', this.proxyErrors)\n super.unpipe()\n }\n constructor(\n src: Minipass,\n dest: Minipass.Writable,\n opts: PipeOptions\n ) {\n super(src, dest, opts)\n this.proxyErrors = er => dest.emit('error', er)\n src.on('error', this.proxyErrors)\n }\n}\n\nexport namespace Minipass {\n /**\n * Encoding used to create a stream that outputs strings rather than\n * Buffer objects.\n */\n export type Encoding = BufferEncoding | 'buffer' | null\n\n /**\n * Any stream that Minipass can pipe into\n */\n export type Writable =\n | Minipass\n | NodeJS.WriteStream\n | (NodeJS.WriteStream & { fd: number })\n | (EventEmitter & {\n end(): any\n write(chunk: any, ...args: any[]): any\n })\n\n /**\n * Any stream that can be read from\n */\n export type Readable =\n | Minipass\n | NodeJS.ReadStream\n | (NodeJS.ReadStream & { fd: number })\n | (EventEmitter & {\n pause(): any\n resume(): any\n pipe(...destArgs: any[]): any\n })\n\n /**\n * Utility type that can be iterated sync or async\n */\n export type DualIterable = Iterable & AsyncIterable\n\n type EventArguments = Record\n\n /**\n * The listing of events that a Minipass class can emit.\n * Extend this when extending the Minipass class, and pass as\n * the third template argument. The key is the name of the event,\n * and the value is the argument list.\n *\n * Any undeclared events will still be allowed, but the handler will get\n * arguments as `unknown[]`.\n */\n export interface Events\n extends EventArguments {\n readable: []\n data: [chunk: RType]\n error: [er: unknown]\n abort: [reason: unknown]\n drain: []\n resume: []\n end: []\n finish: []\n prefinish: []\n close: []\n [DESTROYED]: [er?: unknown]\n [ERROR]: [er: unknown]\n }\n\n /**\n * String or buffer-like data that can be joined and sliced\n */\n export type ContiguousData =\n | Buffer\n | ArrayBufferLike\n | ArrayBufferView\n | string\n export type BufferOrString = Buffer | string\n\n /**\n * Options passed to the Minipass constructor.\n */\n export type SharedOptions = {\n /**\n * Defer all data emission and other events until the end of the\n * current tick, similar to Node core streams\n */\n async?: boolean\n /**\n * A signal which will abort the stream\n */\n signal?: AbortSignal\n /**\n * Output string encoding. Set to `null` or `'buffer'` (or omit) to\n * emit Buffer objects rather than strings.\n *\n * Conflicts with `objectMode`\n */\n encoding?: BufferEncoding | null | 'buffer'\n /**\n * Output data exactly as it was written, supporting non-buffer/string\n * data (such as arbitrary objects, falsey values, etc.)\n *\n * Conflicts with `encoding`\n */\n objectMode?: boolean\n }\n\n /**\n * Options for a string encoded output\n */\n export type EncodingOptions = SharedOptions & {\n encoding: BufferEncoding\n objectMode?: false\n }\n\n /**\n * Options for contiguous data buffer output\n */\n export type BufferOptions = SharedOptions & {\n encoding?: null | 'buffer'\n objectMode?: false\n }\n\n /**\n * Options for objectMode arbitrary output\n */\n export type ObjectModeOptions = SharedOptions & {\n objectMode: true\n encoding?: null\n }\n\n /**\n * Utility type to determine allowed options based on read type\n */\n export type Options =\n | ObjectModeOptions\n | (T extends string\n ? EncodingOptions\n : T extends Buffer\n ? BufferOptions\n : SharedOptions)\n}\n\nconst isObjectModeOptions = (\n o: Minipass.SharedOptions\n): o is Minipass.ObjectModeOptions => !!o.objectMode\n\nconst isEncodingOptions = (\n o: Minipass.SharedOptions\n): o is Minipass.EncodingOptions =>\n !o.objectMode && !!o.encoding && o.encoding !== 'buffer'\n\n/**\n * Main export, the Minipass class\n *\n * `RType` is the type of data emitted, defaults to Buffer\n *\n * `WType` is the type of data to be written, if RType is buffer or string,\n * then any {@link Minipass.ContiguousData} is allowed.\n *\n * `Events` is the set of event handler signatures that this object\n * will emit, see {@link Minipass.Events}\n */\nexport class Minipass<\n RType extends unknown = Buffer,\n WType extends unknown = RType extends Minipass.BufferOrString\n ? Minipass.ContiguousData\n : RType,\n Events extends Minipass.Events = Minipass.Events\n >\n extends EventEmitter\n implements Minipass.DualIterable\n{\n [FLOWING]: boolean = false;\n [PAUSED]: boolean = false;\n [PIPES]: Pipe[] = [];\n [BUFFER]: RType[] = [];\n [OBJECTMODE]: boolean;\n [ENCODING]: BufferEncoding | null;\n [ASYNC]: boolean;\n [DECODER]: SD | null;\n [EOF]: boolean = false;\n [EMITTED_END]: boolean = false;\n [EMITTING_END]: boolean = false;\n [CLOSED]: boolean = false;\n [EMITTED_ERROR]: unknown = null;\n [BUFFERLENGTH]: number = 0;\n [DESTROYED]: boolean = false;\n [SIGNAL]?: AbortSignal;\n [ABORTED]: boolean = false;\n [DATALISTENERS]: number = 0;\n [DISCARDED]: boolean = false\n\n /**\n * true if the stream can be written\n */\n writable: boolean = true\n /**\n * true if the stream can be read\n */\n readable: boolean = true\n\n /**\n * If `RType` is Buffer, then options do not need to be provided.\n * Otherwise, an options object must be provided to specify either\n * {@link Minipass.SharedOptions.objectMode} or\n * {@link Minipass.SharedOptions.encoding}, as appropriate.\n */\n constructor(\n ...args:\n | [Minipass.ObjectModeOptions]\n | (RType extends Buffer\n ? [] | [Minipass.Options]\n : [Minipass.Options])\n ) {\n const options: Minipass.Options = (args[0] ||\n {}) as Minipass.Options\n super()\n if (options.objectMode && typeof options.encoding === 'string') {\n throw new TypeError(\n 'Encoding and objectMode may not be used together'\n )\n }\n if (isObjectModeOptions(options)) {\n this[OBJECTMODE] = true\n this[ENCODING] = null\n } else if (isEncodingOptions(options)) {\n this[ENCODING] = options.encoding\n this[OBJECTMODE] = false\n } else {\n this[OBJECTMODE] = false\n this[ENCODING] = null\n }\n this[ASYNC] = !!options.async\n this[DECODER] = this[ENCODING]\n ? (new StringDecoder(this[ENCODING]) as SD)\n : null\n\n //@ts-ignore - private option for debugging and testing\n if (options && options.debugExposeBuffer === true) {\n Object.defineProperty(this, 'buffer', { get: () => this[BUFFER] })\n }\n //@ts-ignore - private option for debugging and testing\n if (options && options.debugExposePipes === true) {\n Object.defineProperty(this, 'pipes', { get: () => this[PIPES] })\n }\n\n const { signal } = options\n if (signal) {\n this[SIGNAL] = signal\n if (signal.aborted) {\n this[ABORT]()\n } else {\n signal.addEventListener('abort', () => this[ABORT]())\n }\n }\n }\n\n /**\n * The amount of data stored in the buffer waiting to be read.\n *\n * For Buffer strings, this will be the total byte length.\n * For string encoding streams, this will be the string character length,\n * according to JavaScript's `string.length` logic.\n * For objectMode streams, this is a count of the items waiting to be\n * emitted.\n */\n get bufferLength() {\n return this[BUFFERLENGTH]\n }\n\n /**\n * The `BufferEncoding` currently in use, or `null`\n */\n get encoding() {\n return this[ENCODING]\n }\n\n /**\n * @deprecated - This is a read only property\n */\n set encoding(_enc) {\n throw new Error('Encoding must be set at instantiation time')\n }\n\n /**\n * @deprecated - Encoding may only be set at instantiation time\n */\n setEncoding(_enc: Minipass.Encoding) {\n throw new Error('Encoding must be set at instantiation time')\n }\n\n /**\n * True if this is an objectMode stream\n */\n get objectMode() {\n return this[OBJECTMODE]\n }\n\n /**\n * @deprecated - This is a read-only property\n */\n set objectMode(_om) {\n throw new Error('objectMode must be set at instantiation time')\n }\n\n /**\n * true if this is an async stream\n */\n get ['async'](): boolean {\n return this[ASYNC]\n }\n /**\n * Set to true to make this stream async.\n *\n * Once set, it cannot be unset, as this would potentially cause incorrect\n * behavior. Ie, a sync stream can be made async, but an async stream\n * cannot be safely made sync.\n */\n set ['async'](a: boolean) {\n this[ASYNC] = this[ASYNC] || !!a\n }\n\n // drop everything and get out of the flow completely\n [ABORT]() {\n this[ABORTED] = true\n this.emit('abort', this[SIGNAL]?.reason)\n this.destroy(this[SIGNAL]?.reason)\n }\n\n /**\n * True if the stream has been aborted.\n */\n get aborted() {\n return this[ABORTED]\n }\n /**\n * No-op setter. Stream aborted status is set via the AbortSignal provided\n * in the constructor options.\n */\n set aborted(_) {}\n\n /**\n * Write data into the stream\n *\n * If the chunk written is a string, and encoding is not specified, then\n * `utf8` will be assumed. If the stream encoding matches the encoding of\n * a written string, and the state of the string decoder allows it, then\n * the string will be passed through to either the output or the internal\n * buffer without any processing. Otherwise, it will be turned into a\n * Buffer object for processing into the desired encoding.\n *\n * If provided, `cb` function is called immediately before return for\n * sync streams, or on next tick for async streams, because for this\n * base class, a chunk is considered \"processed\" once it is accepted\n * and either emitted or buffered. That is, the callback does not indicate\n * that the chunk has been eventually emitted, though of course child\n * classes can override this function to do whatever processing is required\n * and call `super.write(...)` only once processing is completed.\n */\n write(chunk: WType, cb?: () => void): boolean\n write(\n chunk: WType,\n encoding?: Minipass.Encoding,\n cb?: () => void\n ): boolean\n write(\n chunk: WType,\n encoding?: Minipass.Encoding | (() => void),\n cb?: () => void\n ): boolean {\n if (this[ABORTED]) return false\n if (this[EOF]) throw new Error('write after end')\n\n if (this[DESTROYED]) {\n this.emit(\n 'error',\n Object.assign(\n new Error('Cannot call write after a stream was destroyed'),\n { code: 'ERR_STREAM_DESTROYED' }\n )\n )\n return true\n }\n\n if (typeof encoding === 'function') {\n cb = encoding\n encoding = 'utf8'\n }\n\n if (!encoding) encoding = 'utf8'\n\n const fn = this[ASYNC] ? defer : nodefer\n\n // convert array buffers and typed array views into buffers\n // at some point in the future, we may want to do the opposite!\n // leave strings and buffers as-is\n // anything is only allowed if in object mode, so throw\n if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) {\n if (isArrayBufferView(chunk)) {\n //@ts-ignore - sinful unsafe type changing\n chunk = Buffer.from(\n chunk.buffer,\n chunk.byteOffset,\n chunk.byteLength\n )\n } else if (isArrayBufferLike(chunk)) {\n //@ts-ignore - sinful unsafe type changing\n chunk = Buffer.from(chunk)\n } else if (typeof chunk !== 'string') {\n throw new Error(\n 'Non-contiguous data written to non-objectMode stream'\n )\n }\n }\n\n // handle object mode up front, since it's simpler\n // this yields better performance, fewer checks later.\n if (this[OBJECTMODE]) {\n // maybe impossible?\n /* c8 ignore start */\n if (this[FLOWING] && this[BUFFERLENGTH] !== 0) this[FLUSH](true)\n /* c8 ignore stop */\n\n if (this[FLOWING]) this.emit('data', chunk as unknown as RType)\n else this[BUFFERPUSH](chunk as unknown as RType)\n\n if (this[BUFFERLENGTH] !== 0) this.emit('readable')\n\n if (cb) fn(cb)\n\n return this[FLOWING]\n }\n\n // at this point the chunk is a buffer or string\n // don't buffer it up or send it to the decoder\n if (!(chunk as Minipass.BufferOrString).length) {\n if (this[BUFFERLENGTH] !== 0) this.emit('readable')\n if (cb) fn(cb)\n return this[FLOWING]\n }\n\n // fast-path writing strings of same encoding to a stream with\n // an empty buffer, skipping the buffer/decoder dance\n if (\n typeof chunk === 'string' &&\n // unless it is a string already ready for us to use\n !(encoding === this[ENCODING] && !this[DECODER]?.lastNeed)\n ) {\n //@ts-ignore - sinful unsafe type change\n chunk = Buffer.from(chunk, encoding)\n }\n\n if (Buffer.isBuffer(chunk) && this[ENCODING]) {\n //@ts-ignore - sinful unsafe type change\n chunk = this[DECODER].write(chunk)\n }\n\n // Note: flushing CAN potentially switch us into not-flowing mode\n if (this[FLOWING] && this[BUFFERLENGTH] !== 0) this[FLUSH](true)\n\n if (this[FLOWING]) this.emit('data', chunk as unknown as RType)\n else this[BUFFERPUSH](chunk as unknown as RType)\n\n if (this[BUFFERLENGTH] !== 0) this.emit('readable')\n\n if (cb) fn(cb)\n\n return this[FLOWING]\n }\n\n /**\n * Low-level explicit read method.\n *\n * In objectMode, the argument is ignored, and one item is returned if\n * available.\n *\n * `n` is the number of bytes (or in the case of encoding streams,\n * characters) to consume. If `n` is not provided, then the entire buffer\n * is returned, or `null` is returned if no data is available.\n *\n * If `n` is greater that the amount of data in the internal buffer,\n * then `null` is returned.\n */\n read(n?: number | null): RType | null {\n if (this[DESTROYED]) return null\n this[DISCARDED] = false\n\n if (\n this[BUFFERLENGTH] === 0 ||\n n === 0 ||\n (n && n > this[BUFFERLENGTH])\n ) {\n this[MAYBE_EMIT_END]()\n return null\n }\n\n if (this[OBJECTMODE]) n = null\n\n if (this[BUFFER].length > 1 && !this[OBJECTMODE]) {\n // not object mode, so if we have an encoding, then RType is string\n // otherwise, must be Buffer\n this[BUFFER] = [\n (this[ENCODING]\n ? this[BUFFER].join('')\n : Buffer.concat(\n this[BUFFER] as Buffer[],\n this[BUFFERLENGTH]\n )) as RType,\n ]\n }\n\n const ret = this[READ](n || null, this[BUFFER][0] as RType)\n this[MAYBE_EMIT_END]()\n return ret\n }\n\n [READ](n: number | null, chunk: RType) {\n if (this[OBJECTMODE]) this[BUFFERSHIFT]()\n else {\n const c = chunk as Minipass.BufferOrString\n if (n === c.length || n === null) this[BUFFERSHIFT]()\n else if (typeof c === 'string') {\n this[BUFFER][0] = c.slice(n) as RType\n chunk = c.slice(0, n) as RType\n this[BUFFERLENGTH] -= n\n } else {\n this[BUFFER][0] = c.subarray(n) as RType\n chunk = c.subarray(0, n) as RType\n this[BUFFERLENGTH] -= n\n }\n }\n\n this.emit('data', chunk)\n\n if (!this[BUFFER].length && !this[EOF]) this.emit('drain')\n\n return chunk\n }\n\n /**\n * End the stream, optionally providing a final write.\n *\n * See {@link Minipass#write} for argument descriptions\n */\n end(cb?: () => void): this\n end(chunk: WType, cb?: () => void): this\n end(chunk: WType, encoding?: Minipass.Encoding, cb?: () => void): this\n end(\n chunk?: WType | (() => void),\n encoding?: Minipass.Encoding | (() => void),\n cb?: () => void\n ): this {\n if (typeof chunk === 'function') {\n cb = chunk as () => void\n chunk = undefined\n }\n if (typeof encoding === 'function') {\n cb = encoding\n encoding = 'utf8'\n }\n if (chunk !== undefined) this.write(chunk, encoding)\n if (cb) this.once('end', cb)\n this[EOF] = true\n this.writable = false\n\n // if we haven't written anything, then go ahead and emit,\n // even if we're not reading.\n // we'll re-emit if a new 'end' listener is added anyway.\n // This makes MP more suitable to write-only use cases.\n if (this[FLOWING] || !this[PAUSED]) this[MAYBE_EMIT_END]()\n return this\n }\n\n // don't let the internal resume be overwritten\n [RESUME]() {\n if (this[DESTROYED]) return\n\n if (!this[DATALISTENERS] && !this[PIPES].length) {\n this[DISCARDED] = true\n }\n this[PAUSED] = false\n this[FLOWING] = true\n this.emit('resume')\n if (this[BUFFER].length) this[FLUSH]()\n else if (this[EOF]) this[MAYBE_EMIT_END]()\n else this.emit('drain')\n }\n\n /**\n * Resume the stream if it is currently in a paused state\n *\n * If called when there are no pipe destinations or `data` event listeners,\n * this will place the stream in a \"discarded\" state, where all data will\n * be thrown away. The discarded state is removed if a pipe destination or\n * data handler is added, if pause() is called, or if any synchronous or\n * asynchronous iteration is started.\n */\n resume() {\n return this[RESUME]()\n }\n\n /**\n * Pause the stream\n */\n pause() {\n this[FLOWING] = false\n this[PAUSED] = true\n this[DISCARDED] = false\n }\n\n /**\n * true if the stream has been forcibly destroyed\n */\n get destroyed() {\n return this[DESTROYED]\n }\n\n /**\n * true if the stream is currently in a flowing state, meaning that\n * any writes will be immediately emitted.\n */\n get flowing() {\n return this[FLOWING]\n }\n\n /**\n * true if the stream is currently in a paused state\n */\n get paused() {\n return this[PAUSED]\n }\n\n [BUFFERPUSH](chunk: RType) {\n if (this[OBJECTMODE]) this[BUFFERLENGTH] += 1\n else this[BUFFERLENGTH] += (chunk as Minipass.BufferOrString).length\n this[BUFFER].push(chunk)\n }\n\n [BUFFERSHIFT](): RType {\n if (this[OBJECTMODE]) this[BUFFERLENGTH] -= 1\n else\n this[BUFFERLENGTH] -= (\n this[BUFFER][0] as Minipass.BufferOrString\n ).length\n return this[BUFFER].shift() as RType\n }\n\n [FLUSH](noDrain: boolean = false) {\n do {} while (\n this[FLUSHCHUNK](this[BUFFERSHIFT]()) &&\n this[BUFFER].length\n )\n\n if (!noDrain && !this[BUFFER].length && !this[EOF]) this.emit('drain')\n }\n\n [FLUSHCHUNK](chunk: RType) {\n this.emit('data', chunk)\n return this[FLOWING]\n }\n\n /**\n * Pipe all data emitted by this stream into the destination provided.\n *\n * Triggers the flow of data.\n */\n pipe(dest: W, opts?: PipeOptions): W {\n if (this[DESTROYED]) return dest\n this[DISCARDED] = false\n\n const ended = this[EMITTED_END]\n opts = opts || {}\n if (dest === proc.stdout || dest === proc.stderr) opts.end = false\n else opts.end = opts.end !== false\n opts.proxyErrors = !!opts.proxyErrors\n\n // piping an ended stream ends immediately\n if (ended) {\n if (opts.end) dest.end()\n } else {\n // \"as\" here just ignores the WType, which pipes don't care about,\n // since they're only consuming from us, and writing to the dest\n this[PIPES].push(\n !opts.proxyErrors\n ? new Pipe(this as Minipass, dest, opts)\n : new PipeProxyErrors(this as Minipass, dest, opts)\n )\n if (this[ASYNC]) defer(() => this[RESUME]())\n else this[RESUME]()\n }\n\n return dest\n }\n\n /**\n * Fully unhook a piped destination stream.\n *\n * If the destination stream was the only consumer of this stream (ie,\n * there are no other piped destinations or `'data'` event listeners)\n * then the flow of data will stop until there is another consumer or\n * {@link Minipass#resume} is explicitly called.\n */\n unpipe(dest: W) {\n const p = this[PIPES].find(p => p.dest === dest)\n if (p) {\n if (this[PIPES].length === 1) {\n if (this[FLOWING] && this[DATALISTENERS] === 0) {\n this[FLOWING] = false\n }\n this[PIPES] = []\n } else this[PIPES].splice(this[PIPES].indexOf(p), 1)\n p.unpipe()\n }\n }\n\n /**\n * Alias for {@link Minipass#on}\n */\n addListener(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ): this {\n return this.on(ev, handler)\n }\n\n /**\n * Mostly identical to `EventEmitter.on`, with the following\n * behavior differences to prevent data loss and unnecessary hangs:\n *\n * - Adding a 'data' event handler will trigger the flow of data\n *\n * - Adding a 'readable' event handler when there is data waiting to be read\n * will cause 'readable' to be emitted immediately.\n *\n * - Adding an 'endish' event handler ('end', 'finish', etc.) which has\n * already passed will cause the event to be emitted immediately and all\n * handlers removed.\n *\n * - Adding an 'error' event handler after an error has been emitted will\n * cause the event to be re-emitted immediately with the error previously\n * raised.\n */\n on(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ): this {\n const ret = super.on(\n ev as string | symbol,\n handler as (...a: any[]) => any\n )\n if (ev === 'data') {\n this[DISCARDED] = false\n this[DATALISTENERS]++\n if (!this[PIPES].length && !this[FLOWING]) {\n this[RESUME]()\n }\n } else if (ev === 'readable' && this[BUFFERLENGTH] !== 0) {\n super.emit('readable')\n } else if (isEndish(ev) && this[EMITTED_END]) {\n super.emit(ev)\n this.removeAllListeners(ev)\n } else if (ev === 'error' && this[EMITTED_ERROR]) {\n const h = handler as (...a: Events['error']) => any\n if (this[ASYNC]) defer(() => h.call(this, this[EMITTED_ERROR]))\n else h.call(this, this[EMITTED_ERROR])\n }\n return ret\n }\n\n /**\n * Alias for {@link Minipass#off}\n */\n removeListener(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ) {\n return this.off(ev, handler)\n }\n\n /**\n * Mostly identical to `EventEmitter.off`\n *\n * If a 'data' event handler is removed, and it was the last consumer\n * (ie, there are no pipe destinations or other 'data' event listeners),\n * then the flow of data will stop until there is another consumer or\n * {@link Minipass#resume} is explicitly called.\n */\n off(\n ev: Event,\n handler: (...args: Events[Event]) => any\n ) {\n const ret = super.off(\n ev as string | symbol,\n handler as (...a: any[]) => any\n )\n // if we previously had listeners, and now we don't, and we don't\n // have any pipes, then stop the flow, unless it's been explicitly\n // put in a discarded flowing state via stream.resume().\n if (ev === 'data') {\n this[DATALISTENERS] = this.listeners('data').length\n if (\n this[DATALISTENERS] === 0 &&\n !this[DISCARDED] &&\n !this[PIPES].length\n ) {\n this[FLOWING] = false\n }\n }\n return ret\n }\n\n /**\n * Mostly identical to `EventEmitter.removeAllListeners`\n *\n * If all 'data' event handlers are removed, and they were the last consumer\n * (ie, there are no pipe destinations), then the flow of data will stop\n * until there is another consumer or {@link Minipass#resume} is explicitly\n * called.\n */\n removeAllListeners(ev?: Event) {\n const ret = super.removeAllListeners(ev as string | symbol | undefined)\n if (ev === 'data' || ev === undefined) {\n this[DATALISTENERS] = 0\n if (!this[DISCARDED] && !this[PIPES].length) {\n this[FLOWING] = false\n }\n }\n return ret\n }\n\n /**\n * true if the 'end' event has been emitted\n */\n get emittedEnd() {\n return this[EMITTED_END]\n }\n\n [MAYBE_EMIT_END]() {\n if (\n !this[EMITTING_END] &&\n !this[EMITTED_END] &&\n !this[DESTROYED] &&\n this[BUFFER].length === 0 &&\n this[EOF]\n ) {\n this[EMITTING_END] = true\n this.emit('end')\n this.emit('prefinish')\n this.emit('finish')\n if (this[CLOSED]) this.emit('close')\n this[EMITTING_END] = false\n }\n }\n\n /**\n * Mostly identical to `EventEmitter.emit`, with the following\n * behavior differences to prevent data loss and unnecessary hangs:\n *\n * If the stream has been destroyed, and the event is something other\n * than 'close' or 'error', then `false` is returned and no handlers\n * are called.\n *\n * If the event is 'end', and has already been emitted, then the event\n * is ignored. If the stream is in a paused or non-flowing state, then\n * the event will be deferred until data flow resumes. If the stream is\n * async, then handlers will be called on the next tick rather than\n * immediately.\n *\n * If the event is 'close', and 'end' has not yet been emitted, then\n * the event will be deferred until after 'end' is emitted.\n *\n * If the event is 'error', and an AbortSignal was provided for the stream,\n * and there are no listeners, then the event is ignored, matching the\n * behavior of node core streams in the presense of an AbortSignal.\n *\n * If the event is 'finish' or 'prefinish', then all listeners will be\n * removed after emitting the event, to prevent double-firing.\n */\n emit(\n ev: Event,\n ...args: Events[Event]\n ): boolean {\n const data = args[0]\n // error and close are only events allowed after calling destroy()\n if (\n ev !== 'error' &&\n ev !== 'close' &&\n ev !== DESTROYED &&\n this[DESTROYED]\n ) {\n return false\n } else if (ev === 'data') {\n return !this[OBJECTMODE] && !data\n ? false\n : this[ASYNC]\n ? (defer(() => this[EMITDATA](data as RType)), true)\n : this[EMITDATA](data as RType)\n } else if (ev === 'end') {\n return this[EMITEND]()\n } else if (ev === 'close') {\n this[CLOSED] = true\n // don't emit close before 'end' and 'finish'\n if (!this[EMITTED_END] && !this[DESTROYED]) return false\n const ret = super.emit('close')\n this.removeAllListeners('close')\n return ret\n } else if (ev === 'error') {\n this[EMITTED_ERROR] = data\n super.emit(ERROR, data)\n const ret =\n !this[SIGNAL] || this.listeners('error').length\n ? super.emit('error', data)\n : false\n this[MAYBE_EMIT_END]()\n return ret\n } else if (ev === 'resume') {\n const ret = super.emit('resume')\n this[MAYBE_EMIT_END]()\n return ret\n } else if (ev === 'finish' || ev === 'prefinish') {\n const ret = super.emit(ev)\n this.removeAllListeners(ev)\n return ret\n }\n\n // Some other unknown event\n const ret = super.emit(ev as string, ...args)\n this[MAYBE_EMIT_END]()\n return ret\n }\n\n [EMITDATA](data: RType) {\n for (const p of this[PIPES]) {\n if (p.dest.write(data as RType) === false) this.pause()\n }\n const ret = this[DISCARDED] ? false : super.emit('data', data)\n this[MAYBE_EMIT_END]()\n return ret\n }\n\n [EMITEND]() {\n if (this[EMITTED_END]) return false\n\n this[EMITTED_END] = true\n this.readable = false\n return this[ASYNC]\n ? (defer(() => this[EMITEND2]()), true)\n : this[EMITEND2]()\n }\n\n [EMITEND2]() {\n if (this[DECODER]) {\n const data = this[DECODER].end()\n if (data) {\n for (const p of this[PIPES]) {\n p.dest.write(data as RType)\n }\n if (!this[DISCARDED]) super.emit('data', data)\n }\n }\n\n for (const p of this[PIPES]) {\n p.end()\n }\n const ret = super.emit('end')\n this.removeAllListeners('end')\n return ret\n }\n\n /**\n * Return a Promise that resolves to an array of all emitted data once\n * the stream ends.\n */\n async collect(): Promise {\n const buf: RType[] & { dataLength: number } = Object.assign([], {\n dataLength: 0,\n })\n if (!this[OBJECTMODE]) buf.dataLength = 0\n // set the promise first, in case an error is raised\n // by triggering the flow here.\n const p = this.promise()\n this.on('data', c => {\n buf.push(c)\n if (!this[OBJECTMODE])\n buf.dataLength += (c as Minipass.BufferOrString).length\n })\n await p\n return buf\n }\n\n /**\n * Return a Promise that resolves to the concatenation of all emitted data\n * once the stream ends.\n *\n * Not allowed on objectMode streams.\n */\n async concat(): Promise {\n if (this[OBJECTMODE]) {\n throw new Error('cannot concat in objectMode')\n }\n const buf = await this.collect()\n return (\n this[ENCODING]\n ? buf.join('')\n : Buffer.concat(buf as Buffer[], buf.dataLength)\n ) as RType\n }\n\n /**\n * Return a void Promise that resolves once the stream ends.\n */\n async promise(): Promise {\n return new Promise((resolve, reject) => {\n this.on(DESTROYED, () => reject(new Error('stream destroyed')))\n this.on('error', er => reject(er))\n this.on('end', () => resolve())\n })\n }\n\n /**\n * Asynchronous `for await of` iteration.\n *\n * This will continue emitting all chunks until the stream terminates.\n */\n [Symbol.asyncIterator](): AsyncGenerator {\n // set this up front, in case the consumer doesn't call next()\n // right away.\n this[DISCARDED] = false\n let stopped = false\n const stop = async (): Promise> => {\n this.pause()\n stopped = true\n return { value: undefined, done: true }\n }\n const next = (): Promise> => {\n if (stopped) return stop()\n const res = this.read()\n if (res !== null) return Promise.resolve({ done: false, value: res })\n\n if (this[EOF]) return stop()\n\n let resolve!: (res: IteratorResult) => void\n let reject!: (er: unknown) => void\n const onerr = (er: unknown) => {\n this.off('data', ondata)\n this.off('end', onend)\n this.off(DESTROYED, ondestroy)\n stop()\n reject(er)\n }\n const ondata = (value: RType) => {\n this.off('error', onerr)\n this.off('end', onend)\n this.off(DESTROYED, ondestroy)\n this.pause()\n resolve({ value, done: !!this[EOF] })\n }\n const onend = () => {\n this.off('error', onerr)\n this.off('data', ondata)\n this.off(DESTROYED, ondestroy)\n stop()\n resolve({ done: true, value: undefined })\n }\n const ondestroy = () => onerr(new Error('stream destroyed'))\n return new Promise>((res, rej) => {\n reject = rej\n resolve = res\n this.once(DESTROYED, ondestroy)\n this.once('error', onerr)\n this.once('end', onend)\n this.once('data', ondata)\n })\n }\n\n return {\n next,\n throw: stop,\n return: stop,\n [Symbol.asyncIterator]() {\n return this\n },\n }\n }\n\n /**\n * Synchronous `for of` iteration.\n *\n * The iteration will terminate when the internal buffer runs out, even\n * if the stream has not yet terminated.\n */\n [Symbol.iterator](): Generator {\n // set this up front, in case the consumer doesn't call next()\n // right away.\n this[DISCARDED] = false\n let stopped = false\n const stop = (): IteratorReturnResult => {\n this.pause()\n this.off(ERROR, stop)\n this.off(DESTROYED, stop)\n this.off('end', stop)\n stopped = true\n return { done: true, value: undefined }\n }\n\n const next = (): IteratorResult => {\n if (stopped) return stop()\n const value = this.read()\n return value === null ? stop() : { done: false, value }\n }\n\n this.once('end', stop)\n this.once(ERROR, stop)\n this.once(DESTROYED, stop)\n\n return {\n next,\n throw: stop,\n return: stop,\n [Symbol.iterator]() {\n return this\n },\n }\n }\n\n /**\n * Destroy a stream, preventing it from being used for any further purpose.\n *\n * If the stream has a `close()` method, then it will be called on\n * destruction.\n *\n * After destruction, any attempt to write data, read data, or emit most\n * events will be ignored.\n *\n * If an error argument is provided, then it will be emitted in an\n * 'error' event.\n */\n destroy(er?: unknown) {\n if (this[DESTROYED]) {\n if (er) this.emit('error', er)\n else this.emit(DESTROYED)\n return this\n }\n\n this[DESTROYED] = true\n this[DISCARDED] = true\n\n // throw away all buffered data, it's never coming out\n this[BUFFER].length = 0\n this[BUFFERLENGTH] = 0\n\n const wc = this as Minipass & {\n close?: () => void\n }\n if (typeof wc.close === 'function' && !this[CLOSED]) wc.close()\n\n if (er) this.emit('error', er)\n // if no error to emit, still reject pending promises\n else this.emit(DESTROYED)\n\n return this\n }\n\n /**\n * Alias for {@link isStream}\n *\n * Former export location, maintained for backwards compatibility.\n *\n * @deprecated\n */\n static get isStream() {\n return isStream\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/minipass/dist/esm/package.json b/node_modules/minipass/dist/esm/package.json
deleted file mode 100644
index 3dbc1ca..0000000
--- a/node_modules/minipass/dist/esm/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "type": "module"
-}
diff --git a/node_modules/minipass/package.json b/node_modules/minipass/package.json
deleted file mode 100644
index 771969b..0000000
--- a/node_modules/minipass/package.json
+++ /dev/null
@@ -1,82 +0,0 @@
-{
- "name": "minipass",
- "version": "7.1.2",
- "description": "minimal implementation of a PassThrough stream",
- "main": "./dist/commonjs/index.js",
- "types": "./dist/commonjs/index.d.ts",
- "type": "module",
- "tshy": {
- "selfLink": false,
- "main": true,
- "exports": {
- "./package.json": "./package.json",
- ".": "./src/index.ts"
- }
- },
- "exports": {
- "./package.json": "./package.json",
- ".": {
- "import": {
- "types": "./dist/esm/index.d.ts",
- "default": "./dist/esm/index.js"
- },
- "require": {
- "types": "./dist/commonjs/index.d.ts",
- "default": "./dist/commonjs/index.js"
- }
- }
- },
- "files": [
- "dist"
- ],
- "scripts": {
- "preversion": "npm test",
- "postversion": "npm publish",
- "prepublishOnly": "git push origin --follow-tags",
- "prepare": "tshy",
- "pretest": "npm run prepare",
- "presnap": "npm run prepare",
- "test": "tap",
- "snap": "tap",
- "format": "prettier --write . --loglevel warn",
- "typedoc": "typedoc --tsconfig .tshy/esm.json ./src/*.ts"
- },
- "prettier": {
- "semi": false,
- "printWidth": 75,
- "tabWidth": 2,
- "useTabs": false,
- "singleQuote": true,
- "jsxSingleQuote": false,
- "bracketSameLine": true,
- "arrowParens": "avoid",
- "endOfLine": "lf"
- },
- "devDependencies": {
- "@types/end-of-stream": "^1.4.2",
- "@types/node": "^20.1.2",
- "end-of-stream": "^1.4.0",
- "node-abort-controller": "^3.1.1",
- "prettier": "^2.6.2",
- "tap": "^19.0.0",
- "through2": "^2.0.3",
- "tshy": "^1.14.0",
- "typedoc": "^0.25.1"
- },
- "repository": "https://github.com/isaacs/minipass",
- "keywords": [
- "passthrough",
- "stream"
- ],
- "author": "Isaac Z. Schlueter (http://blog.izs.me/)",
- "license": "ISC",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "tap": {
- "typecheck": true,
- "include": [
- "test/*.ts"
- ]
- }
-}
diff --git a/node_modules/minizlib/LICENSE b/node_modules/minizlib/LICENSE
deleted file mode 100644
index 49f7efe..0000000
--- a/node_modules/minizlib/LICENSE
+++ /dev/null
@@ -1,26 +0,0 @@
-Minizlib was created by Isaac Z. Schlueter.
-It is a derivative work of the Node.js project.
-
-"""
-Copyright (c) 2017-2023 Isaac Z. Schlueter and Contributors
-Copyright (c) 2017-2023 Node.js contributors. All rights reserved.
-Copyright (c) 2017-2023 Joyent, Inc. and other Node contributors. All rights reserved.
-
-Permission is hereby granted, free of charge, to any person obtaining a
-copy of this software and associated documentation files (the "Software"),
-to deal in the Software without restriction, including without limitation
-the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the
-Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-"""
diff --git a/node_modules/minizlib/README.md b/node_modules/minizlib/README.md
deleted file mode 100644
index 0ab810d..0000000
--- a/node_modules/minizlib/README.md
+++ /dev/null
@@ -1,62 +0,0 @@
-# minizlib
-
-A fast zlib stream built on [minipass](http://npm.im/minipass) and
-Node.js's zlib binding.
-
-This module was created to serve the needs of
-[node-tar](http://npm.im/tar) and
-[minipass-fetch](http://npm.im/minipass-fetch).
-
-Brotli is supported in versions of node with a Brotli binding.
-
-## How does this differ from the streams in `'node:zlib'`?
-
-First, there are no convenience methods to compress or decompress a
-buffer. If you want those, use the built-in `zlib` module. This is
-only streams. That being said, Minipass streams to make it fairly easy to
-use as one-liners: `new zlib.Deflate().end(data).read()` will return the
-deflate compressed result.
-
-This module compresses and decompresses the data as fast as you feed
-it in. It is synchronous, and runs on the main process thread. Zlib
-and Brotli operations can be high CPU, but they're very fast, and doing it
-this way means much less bookkeeping and artificial deferral.
-
-Node's built in zlib streams are built on top of `stream.Transform`.
-They do the maximally safe thing with respect to consistent
-asynchrony, buffering, and backpressure.
-
-See [Minipass](http://npm.im/minipass) for more on the differences between
-Node.js core streams and Minipass streams, and the convenience methods
-provided by that class.
-
-## Classes
-
-- Deflate
-- Inflate
-- Gzip
-- Gunzip
-- DeflateRaw
-- InflateRaw
-- Unzip
-- BrotliCompress (Node v10 and higher)
-- BrotliDecompress (Node v10 and higher)
-
-## USAGE
-
-```js
-import { BrotliDecompress } from 'minizlib'
-// or: const BrotliDecompress = require('minizlib')
-
-const input = sourceOfCompressedData()
-const decode = new BrotliDecompress()
-const output = whereToWriteTheDecodedData()
-input.pipe(decode).pipe(output)
-```
-
-## REPRODUCIBLE BUILDS
-
-To create reproducible gzip compressed files across different operating
-systems, set `portable: true` in the options. This causes minizlib to set
-the `OS` indicator in byte 9 of the extended gzip header to `0xFF` for
-'unknown'.
diff --git a/node_modules/minizlib/dist/commonjs/constants.d.ts b/node_modules/minizlib/dist/commonjs/constants.d.ts
deleted file mode 100644
index 67c47b4..0000000
--- a/node_modules/minizlib/dist/commonjs/constants.d.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export declare const constants: any;
-//# sourceMappingURL=constants.d.ts.map
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/constants.d.ts.map b/node_modules/minizlib/dist/commonjs/constants.d.ts.map
deleted file mode 100644
index 25affce..0000000
--- a/node_modules/minizlib/dist/commonjs/constants.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,SAAS,KAiHrB,CAAA"}
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/constants.js b/node_modules/minizlib/dist/commonjs/constants.js
deleted file mode 100644
index dfc2c19..0000000
--- a/node_modules/minizlib/dist/commonjs/constants.js
+++ /dev/null
@@ -1,123 +0,0 @@
-"use strict";
-var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.constants = void 0;
-// Update with any zlib constants that are added or changed in the future.
-// Node v6 didn't export this, so we just hard code the version and rely
-// on all the other hard-coded values from zlib v4736. When node v6
-// support drops, we can just export the realZlibConstants object.
-const zlib_1 = __importDefault(require("zlib"));
-/* c8 ignore start */
-const realZlibConstants = zlib_1.default.constants || { ZLIB_VERNUM: 4736 };
-/* c8 ignore stop */
-exports.constants = Object.freeze(Object.assign(Object.create(null), {
- Z_NO_FLUSH: 0,
- Z_PARTIAL_FLUSH: 1,
- Z_SYNC_FLUSH: 2,
- Z_FULL_FLUSH: 3,
- Z_FINISH: 4,
- Z_BLOCK: 5,
- Z_OK: 0,
- Z_STREAM_END: 1,
- Z_NEED_DICT: 2,
- Z_ERRNO: -1,
- Z_STREAM_ERROR: -2,
- Z_DATA_ERROR: -3,
- Z_MEM_ERROR: -4,
- Z_BUF_ERROR: -5,
- Z_VERSION_ERROR: -6,
- Z_NO_COMPRESSION: 0,
- Z_BEST_SPEED: 1,
- Z_BEST_COMPRESSION: 9,
- Z_DEFAULT_COMPRESSION: -1,
- Z_FILTERED: 1,
- Z_HUFFMAN_ONLY: 2,
- Z_RLE: 3,
- Z_FIXED: 4,
- Z_DEFAULT_STRATEGY: 0,
- DEFLATE: 1,
- INFLATE: 2,
- GZIP: 3,
- GUNZIP: 4,
- DEFLATERAW: 5,
- INFLATERAW: 6,
- UNZIP: 7,
- BROTLI_DECODE: 8,
- BROTLI_ENCODE: 9,
- Z_MIN_WINDOWBITS: 8,
- Z_MAX_WINDOWBITS: 15,
- Z_DEFAULT_WINDOWBITS: 15,
- Z_MIN_CHUNK: 64,
- Z_MAX_CHUNK: Infinity,
- Z_DEFAULT_CHUNK: 16384,
- Z_MIN_MEMLEVEL: 1,
- Z_MAX_MEMLEVEL: 9,
- Z_DEFAULT_MEMLEVEL: 8,
- Z_MIN_LEVEL: -1,
- Z_MAX_LEVEL: 9,
- Z_DEFAULT_LEVEL: -1,
- BROTLI_OPERATION_PROCESS: 0,
- BROTLI_OPERATION_FLUSH: 1,
- BROTLI_OPERATION_FINISH: 2,
- BROTLI_OPERATION_EMIT_METADATA: 3,
- BROTLI_MODE_GENERIC: 0,
- BROTLI_MODE_TEXT: 1,
- BROTLI_MODE_FONT: 2,
- BROTLI_DEFAULT_MODE: 0,
- BROTLI_MIN_QUALITY: 0,
- BROTLI_MAX_QUALITY: 11,
- BROTLI_DEFAULT_QUALITY: 11,
- BROTLI_MIN_WINDOW_BITS: 10,
- BROTLI_MAX_WINDOW_BITS: 24,
- BROTLI_LARGE_MAX_WINDOW_BITS: 30,
- BROTLI_DEFAULT_WINDOW: 22,
- BROTLI_MIN_INPUT_BLOCK_BITS: 16,
- BROTLI_MAX_INPUT_BLOCK_BITS: 24,
- BROTLI_PARAM_MODE: 0,
- BROTLI_PARAM_QUALITY: 1,
- BROTLI_PARAM_LGWIN: 2,
- BROTLI_PARAM_LGBLOCK: 3,
- BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING: 4,
- BROTLI_PARAM_SIZE_HINT: 5,
- BROTLI_PARAM_LARGE_WINDOW: 6,
- BROTLI_PARAM_NPOSTFIX: 7,
- BROTLI_PARAM_NDIRECT: 8,
- BROTLI_DECODER_RESULT_ERROR: 0,
- BROTLI_DECODER_RESULT_SUCCESS: 1,
- BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT: 2,
- BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT: 3,
- BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION: 0,
- BROTLI_DECODER_PARAM_LARGE_WINDOW: 1,
- BROTLI_DECODER_NO_ERROR: 0,
- BROTLI_DECODER_SUCCESS: 1,
- BROTLI_DECODER_NEEDS_MORE_INPUT: 2,
- BROTLI_DECODER_NEEDS_MORE_OUTPUT: 3,
- BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE: -1,
- BROTLI_DECODER_ERROR_FORMAT_RESERVED: -2,
- BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE: -3,
- BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET: -4,
- BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME: -5,
- BROTLI_DECODER_ERROR_FORMAT_CL_SPACE: -6,
- BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE: -7,
- BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT: -8,
- BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1: -9,
- BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2: -10,
- BROTLI_DECODER_ERROR_FORMAT_TRANSFORM: -11,
- BROTLI_DECODER_ERROR_FORMAT_DICTIONARY: -12,
- BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS: -13,
- BROTLI_DECODER_ERROR_FORMAT_PADDING_1: -14,
- BROTLI_DECODER_ERROR_FORMAT_PADDING_2: -15,
- BROTLI_DECODER_ERROR_FORMAT_DISTANCE: -16,
- BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET: -19,
- BROTLI_DECODER_ERROR_INVALID_ARGUMENTS: -20,
- BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES: -21,
- BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS: -22,
- BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP: -25,
- BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1: -26,
- BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2: -27,
- BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: -30,
- BROTLI_DECODER_ERROR_UNREACHABLE: -31,
-}, realZlibConstants));
-//# sourceMappingURL=constants.js.map
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/constants.js.map b/node_modules/minizlib/dist/commonjs/constants.js.map
deleted file mode 100644
index 3b73335..0000000
--- a/node_modules/minizlib/dist/commonjs/constants.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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","sourcesContent":["// Update with any zlib constants that are added or changed in the future.\n// Node v6 didn't export this, so we just hard code the version and rely\n// on all the other hard-coded values from zlib v4736. When node v6\n// support drops, we can just export the realZlibConstants object.\nimport realZlib from 'zlib'\n/* c8 ignore start */\nconst realZlibConstants = realZlib.constants || { ZLIB_VERNUM: 4736 }\n/* c8 ignore stop */\n\nexport const constants = Object.freeze(\n Object.assign(\n Object.create(null),\n {\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n Z_VERSION_ERROR: -6,\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n DEFLATE: 1,\n INFLATE: 2,\n GZIP: 3,\n GUNZIP: 4,\n DEFLATERAW: 5,\n INFLATERAW: 6,\n UNZIP: 7,\n BROTLI_DECODE: 8,\n BROTLI_ENCODE: 9,\n Z_MIN_WINDOWBITS: 8,\n Z_MAX_WINDOWBITS: 15,\n Z_DEFAULT_WINDOWBITS: 15,\n Z_MIN_CHUNK: 64,\n Z_MAX_CHUNK: Infinity,\n Z_DEFAULT_CHUNK: 16384,\n Z_MIN_MEMLEVEL: 1,\n Z_MAX_MEMLEVEL: 9,\n Z_DEFAULT_MEMLEVEL: 8,\n Z_MIN_LEVEL: -1,\n Z_MAX_LEVEL: 9,\n Z_DEFAULT_LEVEL: -1,\n BROTLI_OPERATION_PROCESS: 0,\n BROTLI_OPERATION_FLUSH: 1,\n BROTLI_OPERATION_FINISH: 2,\n BROTLI_OPERATION_EMIT_METADATA: 3,\n BROTLI_MODE_GENERIC: 0,\n BROTLI_MODE_TEXT: 1,\n BROTLI_MODE_FONT: 2,\n BROTLI_DEFAULT_MODE: 0,\n BROTLI_MIN_QUALITY: 0,\n BROTLI_MAX_QUALITY: 11,\n BROTLI_DEFAULT_QUALITY: 11,\n BROTLI_MIN_WINDOW_BITS: 10,\n BROTLI_MAX_WINDOW_BITS: 24,\n BROTLI_LARGE_MAX_WINDOW_BITS: 30,\n BROTLI_DEFAULT_WINDOW: 22,\n BROTLI_MIN_INPUT_BLOCK_BITS: 16,\n BROTLI_MAX_INPUT_BLOCK_BITS: 24,\n BROTLI_PARAM_MODE: 0,\n BROTLI_PARAM_QUALITY: 1,\n BROTLI_PARAM_LGWIN: 2,\n BROTLI_PARAM_LGBLOCK: 3,\n BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING: 4,\n BROTLI_PARAM_SIZE_HINT: 5,\n BROTLI_PARAM_LARGE_WINDOW: 6,\n BROTLI_PARAM_NPOSTFIX: 7,\n BROTLI_PARAM_NDIRECT: 8,\n BROTLI_DECODER_RESULT_ERROR: 0,\n BROTLI_DECODER_RESULT_SUCCESS: 1,\n BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT: 2,\n BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT: 3,\n BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION: 0,\n BROTLI_DECODER_PARAM_LARGE_WINDOW: 1,\n BROTLI_DECODER_NO_ERROR: 0,\n BROTLI_DECODER_SUCCESS: 1,\n BROTLI_DECODER_NEEDS_MORE_INPUT: 2,\n BROTLI_DECODER_NEEDS_MORE_OUTPUT: 3,\n BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE: -1,\n BROTLI_DECODER_ERROR_FORMAT_RESERVED: -2,\n BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE: -3,\n BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET: -4,\n BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME: -5,\n BROTLI_DECODER_ERROR_FORMAT_CL_SPACE: -6,\n BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE: -7,\n BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT: -8,\n BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1: -9,\n BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2: -10,\n BROTLI_DECODER_ERROR_FORMAT_TRANSFORM: -11,\n BROTLI_DECODER_ERROR_FORMAT_DICTIONARY: -12,\n BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS: -13,\n BROTLI_DECODER_ERROR_FORMAT_PADDING_1: -14,\n BROTLI_DECODER_ERROR_FORMAT_PADDING_2: -15,\n BROTLI_DECODER_ERROR_FORMAT_DISTANCE: -16,\n BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET: -19,\n BROTLI_DECODER_ERROR_INVALID_ARGUMENTS: -20,\n BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES: -21,\n BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS: -22,\n BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP: -25,\n BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1: -26,\n BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2: -27,\n BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: -30,\n BROTLI_DECODER_ERROR_UNREACHABLE: -31,\n },\n realZlibConstants,\n ),\n)\n"]}
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/index.d.ts b/node_modules/minizlib/dist/commonjs/index.d.ts
deleted file mode 100644
index 6f2bd08..0000000
--- a/node_modules/minizlib/dist/commonjs/index.d.ts
+++ /dev/null
@@ -1,89 +0,0 @@
-import { Buffer } from 'buffer';
-import { Minipass } from 'minipass';
-import * as realZlib from 'zlib';
-export { constants } from './constants.js';
-declare const _superWrite: unique symbol;
-export declare class ZlibError extends Error {
- code?: string;
- errno?: number;
- constructor(err: NodeJS.ErrnoException | Error);
- get name(): string;
-}
-declare const _flushFlag: unique symbol;
-export type ChunkWithFlushFlag = Minipass.ContiguousData & {
- [_flushFlag]?: number;
-};
-export type ZlibBaseOptions = Minipass.Options & {
- flush?: number;
- finishFlush?: number;
- fullFlushFlag?: number;
-};
-export type ZlibMode = 'Gzip' | 'Gunzip' | 'Deflate' | 'Inflate' | 'DeflateRaw' | 'InflateRaw' | 'Unzip';
-export type ZlibHandle = realZlib.Gzip | realZlib.Gunzip | realZlib.Deflate | realZlib.Inflate | realZlib.DeflateRaw | realZlib.InflateRaw;
-export type BrotliMode = 'BrotliCompress' | 'BrotliDecompress';
-declare abstract class ZlibBase extends Minipass {
- #private;
- get sawError(): boolean;
- get handle(): ZlibHandle | undefined;
- get flushFlag(): number;
- constructor(opts: ZlibBaseOptions, mode: ZlibMode | BrotliMode);
- close(): void;
- reset(): any;
- flush(flushFlag?: number): void;
- end(cb?: () => void): this;
- end(chunk: ChunkWithFlushFlag, cb?: () => void): this;
- end(chunk: ChunkWithFlushFlag, encoding?: Minipass.Encoding, cb?: () => void): this;
- get ended(): boolean;
- [_superWrite](data: Buffer & {
- [_flushFlag]?: number;
- }): boolean;
- write(chunk: ChunkWithFlushFlag, cb?: () => void): boolean;
- write(chunk: ChunkWithFlushFlag, encoding?: Minipass.Encoding, cb?: () => void): boolean;
-}
-export type ZlibOptions = ZlibBaseOptions & {
- level?: number;
- strategy?: number;
-};
-export declare class Zlib extends ZlibBase {
- #private;
- constructor(opts: ZlibOptions, mode: ZlibMode);
- params(level: number, strategy: number): void;
-}
-export declare class Deflate extends Zlib {
- constructor(opts: ZlibOptions);
-}
-export declare class Inflate extends Zlib {
- constructor(opts: ZlibOptions);
-}
-export type GzipOptions = ZlibOptions & {
- portable?: boolean;
-};
-export declare class Gzip extends Zlib {
- #private;
- constructor(opts: GzipOptions);
- [_superWrite](data: Buffer & {
- [_flushFlag]?: number;
- }): boolean;
-}
-export declare class Gunzip extends Zlib {
- constructor(opts: ZlibOptions);
-}
-export declare class DeflateRaw extends Zlib {
- constructor(opts: ZlibOptions);
-}
-export declare class InflateRaw extends Zlib {
- constructor(opts: ZlibOptions);
-}
-export declare class Unzip extends Zlib {
- constructor(opts: ZlibOptions);
-}
-export declare class Brotli extends ZlibBase {
- constructor(opts: ZlibOptions, mode: BrotliMode);
-}
-export declare class BrotliCompress extends Brotli {
- constructor(opts: ZlibOptions);
-}
-export declare class BrotliDecompress extends Brotli {
- constructor(opts: ZlibOptions);
-}
-//# sourceMappingURL=index.d.ts.map
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/index.d.ts.map b/node_modules/minizlib/dist/commonjs/index.d.ts.map
deleted file mode 100644
index 3b8038c..0000000
--- a/node_modules/minizlib/dist/commonjs/index.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/index.js b/node_modules/minizlib/dist/commonjs/index.js
deleted file mode 100644
index b4906d2..0000000
--- a/node_modules/minizlib/dist/commonjs/index.js
+++ /dev/null
@@ -1,392 +0,0 @@
-"use strict";
-var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- var desc = Object.getOwnPropertyDescriptor(m, k);
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
- desc = { enumerable: true, get: function() { return m[k]; } };
- }
- Object.defineProperty(o, k2, desc);
-}) : (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- o[k2] = m[k];
-}));
-var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
- Object.defineProperty(o, "default", { enumerable: true, value: v });
-}) : function(o, v) {
- o["default"] = v;
-});
-var __importStar = (this && this.__importStar) || (function () {
- var ownKeys = function(o) {
- ownKeys = Object.getOwnPropertyNames || function (o) {
- var ar = [];
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
- return ar;
- };
- return ownKeys(o);
- };
- return function (mod) {
- if (mod && mod.__esModule) return mod;
- var result = {};
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
- __setModuleDefault(result, mod);
- return result;
- };
-})();
-var __importDefault = (this && this.__importDefault) || function (mod) {
- return (mod && mod.__esModule) ? mod : { "default": mod };
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.BrotliDecompress = exports.BrotliCompress = exports.Brotli = exports.Unzip = exports.InflateRaw = exports.DeflateRaw = exports.Gunzip = exports.Gzip = exports.Inflate = exports.Deflate = exports.Zlib = exports.ZlibError = exports.constants = void 0;
-const assert_1 = __importDefault(require("assert"));
-const buffer_1 = require("buffer");
-const minipass_1 = require("minipass");
-const realZlib = __importStar(require("zlib"));
-const constants_js_1 = require("./constants.js");
-var constants_js_2 = require("./constants.js");
-Object.defineProperty(exports, "constants", { enumerable: true, get: function () { return constants_js_2.constants; } });
-const OriginalBufferConcat = buffer_1.Buffer.concat;
-const desc = Object.getOwnPropertyDescriptor(buffer_1.Buffer, 'concat');
-const noop = (args) => args;
-const passthroughBufferConcat = desc?.writable === true || desc?.set !== undefined
- ? (makeNoOp) => {
- buffer_1.Buffer.concat = makeNoOp ? noop : OriginalBufferConcat;
- }
- : (_) => { };
-const _superWrite = Symbol('_superWrite');
-class ZlibError extends Error {
- code;
- errno;
- constructor(err) {
- super('zlib: ' + err.message);
- this.code = err.code;
- this.errno = err.errno;
- /* c8 ignore next */
- if (!this.code)
- this.code = 'ZLIB_ERROR';
- this.message = 'zlib: ' + err.message;
- Error.captureStackTrace(this, this.constructor);
- }
- get name() {
- return 'ZlibError';
- }
-}
-exports.ZlibError = ZlibError;
-// the Zlib class they all inherit from
-// This thing manages the queue of requests, and returns
-// true or false if there is anything in the queue when
-// you call the .write() method.
-const _flushFlag = Symbol('flushFlag');
-class ZlibBase extends minipass_1.Minipass {
- #sawError = false;
- #ended = false;
- #flushFlag;
- #finishFlushFlag;
- #fullFlushFlag;
- #handle;
- #onError;
- get sawError() {
- return this.#sawError;
- }
- get handle() {
- return this.#handle;
- }
- /* c8 ignore start */
- get flushFlag() {
- return this.#flushFlag;
- }
- /* c8 ignore stop */
- constructor(opts, mode) {
- if (!opts || typeof opts !== 'object')
- throw new TypeError('invalid options for ZlibBase constructor');
- //@ts-ignore
- super(opts);
- /* c8 ignore start */
- this.#flushFlag = opts.flush ?? 0;
- this.#finishFlushFlag = opts.finishFlush ?? 0;
- this.#fullFlushFlag = opts.fullFlushFlag ?? 0;
- /* c8 ignore stop */
- // this will throw if any options are invalid for the class selected
- try {
- // @types/node doesn't know that it exports the classes, but they're there
- //@ts-ignore
- this.#handle = new realZlib[mode](opts);
- }
- catch (er) {
- // make sure that all errors get decorated properly
- throw new ZlibError(er);
- }
- this.#onError = err => {
- // no sense raising multiple errors, since we abort on the first one.
- if (this.#sawError)
- return;
- this.#sawError = true;
- // there is no way to cleanly recover.
- // continuing only obscures problems.
- this.close();
- this.emit('error', err);
- };
- this.#handle?.on('error', er => this.#onError(new ZlibError(er)));
- this.once('end', () => this.close);
- }
- close() {
- if (this.#handle) {
- this.#handle.close();
- this.#handle = undefined;
- this.emit('close');
- }
- }
- reset() {
- if (!this.#sawError) {
- (0, assert_1.default)(this.#handle, 'zlib binding closed');
- //@ts-ignore
- return this.#handle.reset?.();
- }
- }
- flush(flushFlag) {
- if (this.ended)
- return;
- if (typeof flushFlag !== 'number')
- flushFlag = this.#fullFlushFlag;
- this.write(Object.assign(buffer_1.Buffer.alloc(0), { [_flushFlag]: flushFlag }));
- }
- end(chunk, encoding, cb) {
- /* c8 ignore start */
- if (typeof chunk === 'function') {
- cb = chunk;
- encoding = undefined;
- chunk = undefined;
- }
- if (typeof encoding === 'function') {
- cb = encoding;
- encoding = undefined;
- }
- /* c8 ignore stop */
- if (chunk) {
- if (encoding)
- this.write(chunk, encoding);
- else
- this.write(chunk);
- }
- this.flush(this.#finishFlushFlag);
- this.#ended = true;
- return super.end(cb);
- }
- get ended() {
- return this.#ended;
- }
- // overridden in the gzip classes to do portable writes
- [_superWrite](data) {
- return super.write(data);
- }
- write(chunk, encoding, cb) {
- // process the chunk using the sync process
- // then super.write() all the outputted chunks
- if (typeof encoding === 'function')
- (cb = encoding), (encoding = 'utf8');
- if (typeof chunk === 'string')
- chunk = buffer_1.Buffer.from(chunk, encoding);
- if (this.#sawError)
- return;
- (0, assert_1.default)(this.#handle, 'zlib binding closed');
- // _processChunk tries to .close() the native handle after it's done, so we
- // intercept that by temporarily making it a no-op.
- // diving into the node:zlib internals a bit here
- const nativeHandle = this.#handle
- ._handle;
- const originalNativeClose = nativeHandle.close;
- nativeHandle.close = () => { };
- const originalClose = this.#handle.close;
- this.#handle.close = () => { };
- // It also calls `Buffer.concat()` at the end, which may be convenient
- // for some, but which we are not interested in as it slows us down.
- passthroughBufferConcat(true);
- let result = undefined;
- try {
- const flushFlag = typeof chunk[_flushFlag] === 'number'
- ? chunk[_flushFlag]
- : this.#flushFlag;
- result = this.#handle._processChunk(chunk, flushFlag);
- // if we don't throw, reset it back how it was
- passthroughBufferConcat(false);
- }
- catch (err) {
- // or if we do, put Buffer.concat() back before we emit error
- // Error events call into user code, which may call Buffer.concat()
- passthroughBufferConcat(false);
- this.#onError(new ZlibError(err));
- }
- finally {
- if (this.#handle) {
- // Core zlib resets `_handle` to null after attempting to close the
- // native handle. Our no-op handler prevented actual closure, but we
- // need to restore the `._handle` property.
- ;
- this.#handle._handle =
- nativeHandle;
- nativeHandle.close = originalNativeClose;
- this.#handle.close = originalClose;
- // `_processChunk()` adds an 'error' listener. If we don't remove it
- // after each call, these handlers start piling up.
- this.#handle.removeAllListeners('error');
- // make sure OUR error listener is still attached tho
- }
- }
- if (this.#handle)
- this.#handle.on('error', er => this.#onError(new ZlibError(er)));
- let writeReturn;
- if (result) {
- if (Array.isArray(result) && result.length > 0) {
- const r = result[0];
- // The first buffer is always `handle._outBuffer`, which would be
- // re-used for later invocations; so, we always have to copy that one.
- writeReturn = this[_superWrite](buffer_1.Buffer.from(r));
- for (let i = 1; i < result.length; i++) {
- writeReturn = this[_superWrite](result[i]);
- }
- }
- else {
- // either a single Buffer or an empty array
- writeReturn = this[_superWrite](buffer_1.Buffer.from(result));
- }
- }
- if (cb)
- cb();
- return writeReturn;
- }
-}
-class Zlib extends ZlibBase {
- #level;
- #strategy;
- constructor(opts, mode) {
- opts = opts || {};
- opts.flush = opts.flush || constants_js_1.constants.Z_NO_FLUSH;
- opts.finishFlush = opts.finishFlush || constants_js_1.constants.Z_FINISH;
- opts.fullFlushFlag = constants_js_1.constants.Z_FULL_FLUSH;
- super(opts, mode);
- this.#level = opts.level;
- this.#strategy = opts.strategy;
- }
- params(level, strategy) {
- if (this.sawError)
- return;
- if (!this.handle)
- throw new Error('cannot switch params when binding is closed');
- // no way to test this without also not supporting params at all
- /* c8 ignore start */
- if (!this.handle.params)
- throw new Error('not supported in this implementation');
- /* c8 ignore stop */
- if (this.#level !== level || this.#strategy !== strategy) {
- this.flush(constants_js_1.constants.Z_SYNC_FLUSH);
- (0, assert_1.default)(this.handle, 'zlib binding closed');
- // .params() calls .flush(), but the latter is always async in the
- // core zlib. We override .flush() temporarily to intercept that and
- // flush synchronously.
- const origFlush = this.handle.flush;
- this.handle.flush = (flushFlag, cb) => {
- /* c8 ignore start */
- if (typeof flushFlag === 'function') {
- cb = flushFlag;
- flushFlag = this.flushFlag;
- }
- /* c8 ignore stop */
- this.flush(flushFlag);
- cb?.();
- };
- try {
- ;
- this.handle.params(level, strategy);
- }
- finally {
- this.handle.flush = origFlush;
- }
- /* c8 ignore start */
- if (this.handle) {
- this.#level = level;
- this.#strategy = strategy;
- }
- /* c8 ignore stop */
- }
- }
-}
-exports.Zlib = Zlib;
-// minimal 2-byte header
-class Deflate extends Zlib {
- constructor(opts) {
- super(opts, 'Deflate');
- }
-}
-exports.Deflate = Deflate;
-class Inflate extends Zlib {
- constructor(opts) {
- super(opts, 'Inflate');
- }
-}
-exports.Inflate = Inflate;
-class Gzip extends Zlib {
- #portable;
- constructor(opts) {
- super(opts, 'Gzip');
- this.#portable = opts && !!opts.portable;
- }
- [_superWrite](data) {
- if (!this.#portable)
- return super[_superWrite](data);
- // we'll always get the header emitted in one first chunk
- // overwrite the OS indicator byte with 0xFF
- this.#portable = false;
- data[9] = 255;
- return super[_superWrite](data);
- }
-}
-exports.Gzip = Gzip;
-class Gunzip extends Zlib {
- constructor(opts) {
- super(opts, 'Gunzip');
- }
-}
-exports.Gunzip = Gunzip;
-// raw - no header
-class DeflateRaw extends Zlib {
- constructor(opts) {
- super(opts, 'DeflateRaw');
- }
-}
-exports.DeflateRaw = DeflateRaw;
-class InflateRaw extends Zlib {
- constructor(opts) {
- super(opts, 'InflateRaw');
- }
-}
-exports.InflateRaw = InflateRaw;
-// auto-detect header.
-class Unzip extends Zlib {
- constructor(opts) {
- super(opts, 'Unzip');
- }
-}
-exports.Unzip = Unzip;
-class Brotli extends ZlibBase {
- constructor(opts, mode) {
- opts = opts || {};
- opts.flush = opts.flush || constants_js_1.constants.BROTLI_OPERATION_PROCESS;
- opts.finishFlush =
- opts.finishFlush || constants_js_1.constants.BROTLI_OPERATION_FINISH;
- opts.fullFlushFlag = constants_js_1.constants.BROTLI_OPERATION_FLUSH;
- super(opts, mode);
- }
-}
-exports.Brotli = Brotli;
-class BrotliCompress extends Brotli {
- constructor(opts) {
- super(opts, 'BrotliCompress');
- }
-}
-exports.BrotliCompress = BrotliCompress;
-class BrotliDecompress extends Brotli {
- constructor(opts) {
- super(opts, 'BrotliDecompress');
- }
-}
-exports.BrotliDecompress = BrotliDecompress;
-//# sourceMappingURL=index.js.map
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/index.js.map b/node_modules/minizlib/dist/commonjs/index.js.map
deleted file mode 100644
index d543fc0..0000000
--- a/node_modules/minizlib/dist/commonjs/index.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import assert from 'assert'\nimport { Buffer } from 'buffer'\nimport { Minipass } from 'minipass'\nimport * as realZlib from 'zlib'\nimport { constants } from './constants.js'\nexport { constants } from './constants.js'\n\nconst OriginalBufferConcat = Buffer.concat\nconst desc = Object.getOwnPropertyDescriptor(Buffer, 'concat')\nconst noop = (args: Buffer[]) => args as unknown as Buffer\nconst passthroughBufferConcat =\n desc?.writable === true || desc?.set !== undefined\n ? (makeNoOp: boolean) => {\n Buffer.concat = makeNoOp ? noop : OriginalBufferConcat\n }\n : (_: boolean) => {}\n\nconst _superWrite = Symbol('_superWrite')\n\nexport class ZlibError extends Error {\n code?: string\n errno?: number\n constructor(err: NodeJS.ErrnoException | Error) {\n super('zlib: ' + err.message)\n this.code = (err as NodeJS.ErrnoException).code\n this.errno = (err as NodeJS.ErrnoException).errno\n /* c8 ignore next */\n if (!this.code) this.code = 'ZLIB_ERROR'\n\n this.message = 'zlib: ' + err.message\n Error.captureStackTrace(this, this.constructor)\n }\n\n get name() {\n return 'ZlibError'\n }\n}\n\n// the Zlib class they all inherit from\n// This thing manages the queue of requests, and returns\n// true or false if there is anything in the queue when\n// you call the .write() method.\nconst _flushFlag = Symbol('flushFlag')\n\nexport type ChunkWithFlushFlag = Minipass.ContiguousData & {\n [_flushFlag]?: number\n}\n\nexport type ZlibBaseOptions = Minipass.Options & {\n flush?: number\n finishFlush?: number\n fullFlushFlag?: number\n}\nexport type ZlibMode =\n | 'Gzip'\n | 'Gunzip'\n | 'Deflate'\n | 'Inflate'\n | 'DeflateRaw'\n | 'InflateRaw'\n | 'Unzip'\nexport type ZlibHandle =\n | realZlib.Gzip\n | realZlib.Gunzip\n | realZlib.Deflate\n | realZlib.Inflate\n | realZlib.DeflateRaw\n | realZlib.InflateRaw\nexport type BrotliMode = 'BrotliCompress' | 'BrotliDecompress'\n\nabstract class ZlibBase extends Minipass {\n #sawError: boolean = false\n #ended: boolean = false\n #flushFlag: number\n #finishFlushFlag: number\n #fullFlushFlag: number\n #handle?: ZlibHandle\n #onError: (err: ZlibError) => any\n\n get sawError() {\n return this.#sawError\n }\n get handle() {\n return this.#handle\n }\n /* c8 ignore start */\n get flushFlag() {\n return this.#flushFlag\n }\n /* c8 ignore stop */\n\n constructor(opts: ZlibBaseOptions, mode: ZlibMode | BrotliMode) {\n if (!opts || typeof opts !== 'object')\n throw new TypeError('invalid options for ZlibBase constructor')\n\n //@ts-ignore\n super(opts)\n\n /* c8 ignore start */\n this.#flushFlag = opts.flush ?? 0\n this.#finishFlushFlag = opts.finishFlush ?? 0\n this.#fullFlushFlag = opts.fullFlushFlag ?? 0\n /* c8 ignore stop */\n\n // this will throw if any options are invalid for the class selected\n try {\n // @types/node doesn't know that it exports the classes, but they're there\n //@ts-ignore\n this.#handle = new realZlib[mode](opts)\n } catch (er) {\n // make sure that all errors get decorated properly\n throw new ZlibError(er as NodeJS.ErrnoException)\n }\n\n this.#onError = err => {\n // no sense raising multiple errors, since we abort on the first one.\n if (this.#sawError) return\n\n this.#sawError = true\n\n // there is no way to cleanly recover.\n // continuing only obscures problems.\n this.close()\n this.emit('error', err)\n }\n\n this.#handle?.on('error', er => this.#onError(new ZlibError(er)))\n this.once('end', () => this.close)\n }\n\n close() {\n if (this.#handle) {\n this.#handle.close()\n this.#handle = undefined\n this.emit('close')\n }\n }\n\n reset() {\n if (!this.#sawError) {\n assert(this.#handle, 'zlib binding closed')\n //@ts-ignore\n return this.#handle.reset?.()\n }\n }\n\n flush(flushFlag?: number) {\n if (this.ended) return\n\n if (typeof flushFlag !== 'number') flushFlag = this.#fullFlushFlag\n\n this.write(Object.assign(Buffer.alloc(0), { [_flushFlag]: flushFlag }))\n }\n\n end(cb?: () => void): this\n end(chunk: ChunkWithFlushFlag, cb?: () => void): this\n end(\n chunk: ChunkWithFlushFlag,\n encoding?: Minipass.Encoding,\n cb?: () => void,\n ): this\n end(\n chunk?: ChunkWithFlushFlag | (() => void),\n encoding?: Minipass.Encoding | (() => void),\n cb?: () => void,\n ) {\n /* c8 ignore start */\n if (typeof chunk === 'function') {\n cb = chunk\n encoding = undefined\n chunk = undefined\n }\n if (typeof encoding === 'function') {\n cb = encoding\n encoding = undefined\n }\n /* c8 ignore stop */\n if (chunk) {\n if (encoding) this.write(chunk, encoding)\n else this.write(chunk)\n }\n this.flush(this.#finishFlushFlag)\n this.#ended = true\n return super.end(cb)\n }\n\n get ended() {\n return this.#ended\n }\n\n // overridden in the gzip classes to do portable writes\n [_superWrite](data: Buffer & { [_flushFlag]?: number }) {\n return super.write(data)\n }\n\n write(chunk: ChunkWithFlushFlag, cb?: () => void): boolean\n write(\n chunk: ChunkWithFlushFlag,\n encoding?: Minipass.Encoding,\n cb?: () => void,\n ): boolean\n write(\n chunk: ChunkWithFlushFlag,\n encoding?: Minipass.Encoding | (() => void),\n cb?: () => void,\n ) {\n // process the chunk using the sync process\n // then super.write() all the outputted chunks\n if (typeof encoding === 'function')\n (cb = encoding), (encoding = 'utf8')\n\n if (typeof chunk === 'string')\n chunk = Buffer.from(chunk as string, encoding as BufferEncoding)\n\n if (this.#sawError) return\n assert(this.#handle, 'zlib binding closed')\n\n // _processChunk tries to .close() the native handle after it's done, so we\n // intercept that by temporarily making it a no-op.\n // diving into the node:zlib internals a bit here\n const nativeHandle = (this.#handle as unknown as { _handle: any })\n ._handle\n const originalNativeClose = nativeHandle.close\n nativeHandle.close = () => {}\n const originalClose = this.#handle.close\n this.#handle.close = () => {}\n // It also calls `Buffer.concat()` at the end, which may be convenient\n // for some, but which we are not interested in as it slows us down.\n passthroughBufferConcat(true)\n let result: undefined | Buffer | Buffer[] = undefined\n try {\n const flushFlag =\n typeof chunk[_flushFlag] === 'number'\n ? chunk[_flushFlag]\n : this.#flushFlag\n result = (\n this.#handle as unknown as {\n _processChunk: (chunk: Buffer, flushFlag: number) => Buffer[]\n }\n )._processChunk(chunk as Buffer, flushFlag)\n // if we don't throw, reset it back how it was\n passthroughBufferConcat(false)\n } catch (err) {\n // or if we do, put Buffer.concat() back before we emit error\n // Error events call into user code, which may call Buffer.concat()\n passthroughBufferConcat(false)\n this.#onError(new ZlibError(err as NodeJS.ErrnoException))\n } finally {\n if (this.#handle) {\n // Core zlib resets `_handle` to null after attempting to close the\n // native handle. Our no-op handler prevented actual closure, but we\n // need to restore the `._handle` property.\n ;(this.#handle as unknown as { _handle: any })._handle =\n nativeHandle\n nativeHandle.close = originalNativeClose\n this.#handle.close = originalClose\n // `_processChunk()` adds an 'error' listener. If we don't remove it\n // after each call, these handlers start piling up.\n this.#handle.removeAllListeners('error')\n // make sure OUR error listener is still attached tho\n }\n }\n\n if (this.#handle)\n this.#handle.on('error', er => this.#onError(new ZlibError(er)))\n\n let writeReturn\n if (result) {\n if (Array.isArray(result) && result.length > 0) {\n const r = result[0]\n // The first buffer is always `handle._outBuffer`, which would be\n // re-used for later invocations; so, we always have to copy that one.\n writeReturn = this[_superWrite](Buffer.from(r as Buffer))\n for (let i = 1; i < result.length; i++) {\n writeReturn = this[_superWrite](result[i] as Buffer)\n }\n } else {\n // either a single Buffer or an empty array\n writeReturn = this[_superWrite](Buffer.from(result as Buffer | []))\n }\n }\n\n if (cb) cb()\n return writeReturn\n }\n}\n\nexport type ZlibOptions = ZlibBaseOptions & {\n level?: number\n strategy?: number\n}\n\nexport class Zlib extends ZlibBase {\n #level?: number\n #strategy?: number\n\n constructor(opts: ZlibOptions, mode: ZlibMode) {\n opts = opts || {}\n\n opts.flush = opts.flush || constants.Z_NO_FLUSH\n opts.finishFlush = opts.finishFlush || constants.Z_FINISH\n opts.fullFlushFlag = constants.Z_FULL_FLUSH\n super(opts, mode)\n\n this.#level = opts.level\n this.#strategy = opts.strategy\n }\n\n params(level: number, strategy: number) {\n if (this.sawError) return\n\n if (!this.handle)\n throw new Error('cannot switch params when binding is closed')\n\n // no way to test this without also not supporting params at all\n /* c8 ignore start */\n if (!(this.handle as { params?: any }).params)\n throw new Error('not supported in this implementation')\n /* c8 ignore stop */\n\n if (this.#level !== level || this.#strategy !== strategy) {\n this.flush(constants.Z_SYNC_FLUSH)\n assert(this.handle, 'zlib binding closed')\n // .params() calls .flush(), but the latter is always async in the\n // core zlib. We override .flush() temporarily to intercept that and\n // flush synchronously.\n const origFlush = this.handle.flush\n this.handle.flush = (\n flushFlag?: (() => void) | number,\n cb?: () => void,\n ) => {\n /* c8 ignore start */\n if (typeof flushFlag === 'function') {\n cb = flushFlag\n flushFlag = this.flushFlag\n }\n /* c8 ignore stop */\n this.flush(flushFlag)\n cb?.()\n }\n try {\n ;(\n this.handle as unknown as {\n params: (level?: number, strategy?: number) => void\n }\n ).params(level, strategy)\n } finally {\n this.handle.flush = origFlush\n }\n /* c8 ignore start */\n if (this.handle) {\n this.#level = level\n this.#strategy = strategy\n }\n /* c8 ignore stop */\n }\n }\n}\n\n// minimal 2-byte header\nexport class Deflate extends Zlib {\n constructor(opts: ZlibOptions) {\n super(opts, 'Deflate')\n }\n}\n\nexport class Inflate extends Zlib {\n constructor(opts: ZlibOptions) {\n super(opts, 'Inflate')\n }\n}\n\n// gzip - bigger header, same deflate compression\nexport type GzipOptions = ZlibOptions & { portable?: boolean }\nexport class Gzip extends Zlib {\n #portable: boolean\n constructor(opts: GzipOptions) {\n super(opts, 'Gzip')\n this.#portable = opts && !!opts.portable\n }\n\n [_superWrite](data: Buffer & { [_flushFlag]?: number }) {\n if (!this.#portable) return super[_superWrite](data)\n\n // we'll always get the header emitted in one first chunk\n // overwrite the OS indicator byte with 0xFF\n this.#portable = false\n data[9] = 255\n return super[_superWrite](data)\n }\n}\n\nexport class Gunzip extends Zlib {\n constructor(opts: ZlibOptions) {\n super(opts, 'Gunzip')\n }\n}\n\n// raw - no header\nexport class DeflateRaw extends Zlib {\n constructor(opts: ZlibOptions) {\n super(opts, 'DeflateRaw')\n }\n}\n\nexport class InflateRaw extends Zlib {\n constructor(opts: ZlibOptions) {\n super(opts, 'InflateRaw')\n }\n}\n\n// auto-detect header.\nexport class Unzip extends Zlib {\n constructor(opts: ZlibOptions) {\n super(opts, 'Unzip')\n }\n}\n\nexport class Brotli extends ZlibBase {\n constructor(opts: ZlibOptions, mode: BrotliMode) {\n opts = opts || {}\n\n opts.flush = opts.flush || constants.BROTLI_OPERATION_PROCESS\n opts.finishFlush =\n opts.finishFlush || constants.BROTLI_OPERATION_FINISH\n opts.fullFlushFlag = constants.BROTLI_OPERATION_FLUSH\n super(opts, mode)\n }\n}\n\nexport class BrotliCompress extends Brotli {\n constructor(opts: ZlibOptions) {\n super(opts, 'BrotliCompress')\n }\n}\n\nexport class BrotliDecompress extends Brotli {\n constructor(opts: ZlibOptions) {\n super(opts, 'BrotliDecompress')\n }\n}\n"]}
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/commonjs/package.json b/node_modules/minizlib/dist/commonjs/package.json
deleted file mode 100644
index 5bbefff..0000000
--- a/node_modules/minizlib/dist/commonjs/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "type": "commonjs"
-}
diff --git a/node_modules/minizlib/dist/esm/constants.d.ts b/node_modules/minizlib/dist/esm/constants.d.ts
deleted file mode 100644
index 67c47b4..0000000
--- a/node_modules/minizlib/dist/esm/constants.d.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export declare const constants: any;
-//# sourceMappingURL=constants.d.ts.map
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/esm/constants.d.ts.map b/node_modules/minizlib/dist/esm/constants.d.ts.map
deleted file mode 100644
index 25affce..0000000
--- a/node_modules/minizlib/dist/esm/constants.d.ts.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,SAAS,KAiHrB,CAAA"}
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/esm/constants.js b/node_modules/minizlib/dist/esm/constants.js
deleted file mode 100644
index 7faf40b..0000000
--- a/node_modules/minizlib/dist/esm/constants.js
+++ /dev/null
@@ -1,117 +0,0 @@
-// Update with any zlib constants that are added or changed in the future.
-// Node v6 didn't export this, so we just hard code the version and rely
-// on all the other hard-coded values from zlib v4736. When node v6
-// support drops, we can just export the realZlibConstants object.
-import realZlib from 'zlib';
-/* c8 ignore start */
-const realZlibConstants = realZlib.constants || { ZLIB_VERNUM: 4736 };
-/* c8 ignore stop */
-export const constants = Object.freeze(Object.assign(Object.create(null), {
- Z_NO_FLUSH: 0,
- Z_PARTIAL_FLUSH: 1,
- Z_SYNC_FLUSH: 2,
- Z_FULL_FLUSH: 3,
- Z_FINISH: 4,
- Z_BLOCK: 5,
- Z_OK: 0,
- Z_STREAM_END: 1,
- Z_NEED_DICT: 2,
- Z_ERRNO: -1,
- Z_STREAM_ERROR: -2,
- Z_DATA_ERROR: -3,
- Z_MEM_ERROR: -4,
- Z_BUF_ERROR: -5,
- Z_VERSION_ERROR: -6,
- Z_NO_COMPRESSION: 0,
- Z_BEST_SPEED: 1,
- Z_BEST_COMPRESSION: 9,
- Z_DEFAULT_COMPRESSION: -1,
- Z_FILTERED: 1,
- Z_HUFFMAN_ONLY: 2,
- Z_RLE: 3,
- Z_FIXED: 4,
- Z_DEFAULT_STRATEGY: 0,
- DEFLATE: 1,
- INFLATE: 2,
- GZIP: 3,
- GUNZIP: 4,
- DEFLATERAW: 5,
- INFLATERAW: 6,
- UNZIP: 7,
- BROTLI_DECODE: 8,
- BROTLI_ENCODE: 9,
- Z_MIN_WINDOWBITS: 8,
- Z_MAX_WINDOWBITS: 15,
- Z_DEFAULT_WINDOWBITS: 15,
- Z_MIN_CHUNK: 64,
- Z_MAX_CHUNK: Infinity,
- Z_DEFAULT_CHUNK: 16384,
- Z_MIN_MEMLEVEL: 1,
- Z_MAX_MEMLEVEL: 9,
- Z_DEFAULT_MEMLEVEL: 8,
- Z_MIN_LEVEL: -1,
- Z_MAX_LEVEL: 9,
- Z_DEFAULT_LEVEL: -1,
- BROTLI_OPERATION_PROCESS: 0,
- BROTLI_OPERATION_FLUSH: 1,
- BROTLI_OPERATION_FINISH: 2,
- BROTLI_OPERATION_EMIT_METADATA: 3,
- BROTLI_MODE_GENERIC: 0,
- BROTLI_MODE_TEXT: 1,
- BROTLI_MODE_FONT: 2,
- BROTLI_DEFAULT_MODE: 0,
- BROTLI_MIN_QUALITY: 0,
- BROTLI_MAX_QUALITY: 11,
- BROTLI_DEFAULT_QUALITY: 11,
- BROTLI_MIN_WINDOW_BITS: 10,
- BROTLI_MAX_WINDOW_BITS: 24,
- BROTLI_LARGE_MAX_WINDOW_BITS: 30,
- BROTLI_DEFAULT_WINDOW: 22,
- BROTLI_MIN_INPUT_BLOCK_BITS: 16,
- BROTLI_MAX_INPUT_BLOCK_BITS: 24,
- BROTLI_PARAM_MODE: 0,
- BROTLI_PARAM_QUALITY: 1,
- BROTLI_PARAM_LGWIN: 2,
- BROTLI_PARAM_LGBLOCK: 3,
- BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING: 4,
- BROTLI_PARAM_SIZE_HINT: 5,
- BROTLI_PARAM_LARGE_WINDOW: 6,
- BROTLI_PARAM_NPOSTFIX: 7,
- BROTLI_PARAM_NDIRECT: 8,
- BROTLI_DECODER_RESULT_ERROR: 0,
- BROTLI_DECODER_RESULT_SUCCESS: 1,
- BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT: 2,
- BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT: 3,
- BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION: 0,
- BROTLI_DECODER_PARAM_LARGE_WINDOW: 1,
- BROTLI_DECODER_NO_ERROR: 0,
- BROTLI_DECODER_SUCCESS: 1,
- BROTLI_DECODER_NEEDS_MORE_INPUT: 2,
- BROTLI_DECODER_NEEDS_MORE_OUTPUT: 3,
- BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE: -1,
- BROTLI_DECODER_ERROR_FORMAT_RESERVED: -2,
- BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE: -3,
- BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET: -4,
- BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME: -5,
- BROTLI_DECODER_ERROR_FORMAT_CL_SPACE: -6,
- BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE: -7,
- BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT: -8,
- BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1: -9,
- BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2: -10,
- BROTLI_DECODER_ERROR_FORMAT_TRANSFORM: -11,
- BROTLI_DECODER_ERROR_FORMAT_DICTIONARY: -12,
- BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS: -13,
- BROTLI_DECODER_ERROR_FORMAT_PADDING_1: -14,
- BROTLI_DECODER_ERROR_FORMAT_PADDING_2: -15,
- BROTLI_DECODER_ERROR_FORMAT_DISTANCE: -16,
- BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET: -19,
- BROTLI_DECODER_ERROR_INVALID_ARGUMENTS: -20,
- BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES: -21,
- BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS: -22,
- BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP: -25,
- BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1: -26,
- BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2: -27,
- BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: -30,
- BROTLI_DECODER_ERROR_UNREACHABLE: -31,
-}, realZlibConstants));
-//# sourceMappingURL=constants.js.map
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/esm/constants.js.map b/node_modules/minizlib/dist/esm/constants.js.map
deleted file mode 100644
index bf23cbb..0000000
--- a/node_modules/minizlib/dist/esm/constants.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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","sourcesContent":["// Update with any zlib constants that are added or changed in the future.\n// Node v6 didn't export this, so we just hard code the version and rely\n// on all the other hard-coded values from zlib v4736. When node v6\n// support drops, we can just export the realZlibConstants object.\nimport realZlib from 'zlib'\n/* c8 ignore start */\nconst realZlibConstants = realZlib.constants || { ZLIB_VERNUM: 4736 }\n/* c8 ignore stop */\n\nexport const constants = Object.freeze(\n Object.assign(\n Object.create(null),\n {\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n Z_VERSION_ERROR: -6,\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n DEFLATE: 1,\n INFLATE: 2,\n GZIP: 3,\n GUNZIP: 4,\n DEFLATERAW: 5,\n INFLATERAW: 6,\n UNZIP: 7,\n BROTLI_DECODE: 8,\n BROTLI_ENCODE: 9,\n Z_MIN_WINDOWBITS: 8,\n Z_MAX_WINDOWBITS: 15,\n Z_DEFAULT_WINDOWBITS: 15,\n Z_MIN_CHUNK: 64,\n Z_MAX_CHUNK: Infinity,\n Z_DEFAULT_CHUNK: 16384,\n Z_MIN_MEMLEVEL: 1,\n Z_MAX_MEMLEVEL: 9,\n Z_DEFAULT_MEMLEVEL: 8,\n Z_MIN_LEVEL: -1,\n Z_MAX_LEVEL: 9,\n Z_DEFAULT_LEVEL: -1,\n BROTLI_OPERATION_PROCESS: 0,\n BROTLI_OPERATION_FLUSH: 1,\n BROTLI_OPERATION_FINISH: 2,\n BROTLI_OPERATION_EMIT_METADATA: 3,\n BROTLI_MODE_GENERIC: 0,\n BROTLI_MODE_TEXT: 1,\n BROTLI_MODE_FONT: 2,\n BROTLI_DEFAULT_MODE: 0,\n BROTLI_MIN_QUALITY: 0,\n BROTLI_MAX_QUALITY: 11,\n BROTLI_DEFAULT_QUALITY: 11,\n BROTLI_MIN_WINDOW_BITS: 10,\n BROTLI_MAX_WINDOW_BITS: 24,\n BROTLI_LARGE_MAX_WINDOW_BITS: 30,\n BROTLI_DEFAULT_WINDOW: 22,\n BROTLI_MIN_INPUT_BLOCK_BITS: 16,\n BROTLI_MAX_INPUT_BLOCK_BITS: 24,\n BROTLI_PARAM_MODE: 0,\n BROTLI_PARAM_QUALITY: 1,\n BROTLI_PARAM_LGWIN: 2,\n BROTLI_PARAM_LGBLOCK: 3,\n BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING: 4,\n BROTLI_PARAM_SIZE_HINT: 5,\n BROTLI_PARAM_LARGE_WINDOW: 6,\n BROTLI_PARAM_NPOSTFIX: 7,\n BROTLI_PARAM_NDIRECT: 8,\n BROTLI_DECODER_RESULT_ERROR: 0,\n BROTLI_DECODER_RESULT_SUCCESS: 1,\n BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT: 2,\n BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT: 3,\n BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION: 0,\n BROTLI_DECODER_PARAM_LARGE_WINDOW: 1,\n BROTLI_DECODER_NO_ERROR: 0,\n BROTLI_DECODER_SUCCESS: 1,\n BROTLI_DECODER_NEEDS_MORE_INPUT: 2,\n BROTLI_DECODER_NEEDS_MORE_OUTPUT: 3,\n BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE: -1,\n BROTLI_DECODER_ERROR_FORMAT_RESERVED: -2,\n BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE: -3,\n BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET: -4,\n BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME: -5,\n BROTLI_DECODER_ERROR_FORMAT_CL_SPACE: -6,\n BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE: -7,\n BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT: -8,\n BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1: -9,\n BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2: -10,\n BROTLI_DECODER_ERROR_FORMAT_TRANSFORM: -11,\n BROTLI_DECODER_ERROR_FORMAT_DICTIONARY: -12,\n BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS: -13,\n BROTLI_DECODER_ERROR_FORMAT_PADDING_1: -14,\n BROTLI_DECODER_ERROR_FORMAT_PADDING_2: -15,\n BROTLI_DECODER_ERROR_FORMAT_DISTANCE: -16,\n BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET: -19,\n BROTLI_DECODER_ERROR_INVALID_ARGUMENTS: -20,\n BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES: -21,\n BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS: -22,\n BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP: -25,\n BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1: -26,\n BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2: -27,\n BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: -30,\n BROTLI_DECODER_ERROR_UNREACHABLE: -31,\n },\n realZlibConstants,\n ),\n)\n"]}
\ No newline at end of file
diff --git a/node_modules/minizlib/dist/esm/index.d.ts b/node_modules/minizlib/dist/esm/index.d.ts
deleted file mode 100644
index 6f2bd08..0000000
--- a/node_modules/minizlib/dist/esm/index.d.ts
+++ /dev/null
@@ -1,89 +0,0 @@
-import { Buffer } from 'buffer';
-import { Minipass } from 'minipass';
-import * as realZlib from 'zlib';
-export { constants } from './constants.js';
-declare const _superWrite: unique symbol;
-export declare class ZlibError extends Error {
- code?: string;
- errno?: number;
- constructor(err: NodeJS.ErrnoException | Error);
- get name(): string;
-}
-declare const _flushFlag: unique symbol;
-export type ChunkWithFlushFlag = Minipass.ContiguousData & {
- [_flushFlag]?: number;
-};
-export type ZlibBaseOptions = Minipass.Options & {
- flush?: number;
- finishFlush?: number;
- fullFlushFlag?: number;
-};
-export type ZlibMode = 'Gzip' | 'Gunzip' | 'Deflate' | 'Inflate' | 'DeflateRaw' | 'InflateRaw' | 'Unzip';
-export type ZlibHandle = realZlib.Gzip | realZlib.Gunzip | realZlib.Deflate | realZlib.Inflate | realZlib.DeflateRaw | realZlib.InflateRaw;
-export type BrotliMode = 'BrotliCompress' | 'BrotliDecompress';
-declare abstract class ZlibBase extends Minipass