├── .github
└── workflows
│ ├── release.yml
│ └── tests.yaml
├── .gitignore
├── LICENSE
├── README.md
├── biome.json
├── bun.lockb
├── examples
├── cloudflare
│ ├── ci.test.ts
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ └── worker.ts
│ ├── tsconfig.json
│ └── wrangler.toml
├── deno
│ ├── main.test.ts
│ └── main.ts
└── nextjs
│ ├── .gitignore
│ ├── README.md
│ ├── app
│ ├── layout.tsx
│ └── route.ts
│ ├── bun.lockb
│ ├── ci.test.ts
│ ├── next.config.js
│ ├── package.json
│ ├── postcss.config.js
│ ├── tailwind.config.ts
│ └── tsconfig.json
├── package.json
├── pnpm-lock.yaml
├── src
├── booleans.test.ts
├── booleans.ts
└── index.ts
├── tsconfig.json
└── tsup.config.js
/.github/workflows/release.yml:
--------------------------------------------------------------------------------
1 | name: Release
2 |
3 | on:
4 | release:
5 | types:
6 | - published
7 |
8 | jobs:
9 | release:
10 | name: Release
11 | runs-on: ubuntu-latest
12 | steps:
13 | - name: Checkout Repo
14 | uses: actions/checkout@v3
15 |
16 | - name: Set env
17 | run: echo "VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
18 |
19 | - name: Setup Node
20 | uses: actions/setup-node@v2
21 | with:
22 | node-version: lts/*
23 |
24 | - name: Install bun
25 | run: npm i -g bun
26 |
27 | - name: Set package version
28 | run: |
29 | bun run ./scripts/set-version.js . ${{ env.VERSION }}
30 | echo "export const VERSION='${{ env.VERSION }}'" > ./src/version.ts
31 |
32 | - name: Install Dependencies
33 | run: bun install
34 |
35 | - name: Build
36 | run: bun run build
37 |
38 | - name: Publish
39 | if: "!github.event.release.prerelease"
40 | working-directory: ./dist
41 | run: |
42 | echo "//registry.npmjs.org/:_authToken=${{secrets.NPM_TOKEN}}" > .npmrc
43 | npm publish --access public
44 |
45 | - name: Publish release candidate
46 | if: "github.event.release.prerelease"
47 | working-directory: ./dist
48 | run: |
49 | echo "//registry.npmjs.org/:_authToken=${{secrets.NPM_TOKEN}}" > .npmrc
50 | npm publish --access public --tag=next
51 |
--------------------------------------------------------------------------------
/.github/workflows/tests.yaml:
--------------------------------------------------------------------------------
1 | name: Tests
2 | on:
3 | push:
4 | branches:
5 | - main
6 | pull_request:
7 | schedule:
8 | - cron: "0 0 * * *" # daily
9 |
10 |
11 | jobs:
12 | test:
13 | runs-on: ubuntu-latest
14 | concurrency: test
15 |
16 | name: Tests
17 | steps:
18 | - name: Setup repo
19 | uses: actions/checkout@v3
20 |
21 | - name: Install bun
22 | run: npm install -g bun
23 |
24 | - name: Install Dependencies
25 | run: bun install
26 |
27 | - name: Lint
28 | run: bun run fmt
29 |
30 | - name: Run tests
31 | run: bun test src --bail --coverage
32 |
33 | - name: Build
34 | run: bun run build
35 |
36 |
37 | nextjs-local:
38 | needs:
39 | - test
40 |
41 | runs-on: ubuntu-latest
42 | steps:
43 | - name: Setup repo
44 | uses: actions/checkout@v3
45 |
46 | - name: Install bun
47 | run: npm install -g bun
48 |
49 | - name: Install Dependencies
50 | run: bun install
51 |
52 | - name: Build
53 | run: bun run build
54 |
55 | - name: Install example
56 | run: |
57 | bun install
58 | bun add @chronark/sdk@../..
59 | working-directory: ./examples/nextjs
60 |
61 | - name: Build example
62 | run: bun run build
63 | working-directory: ./examples/nextjs
64 |
65 | - name: Start example
66 | run: bun run start &
67 | working-directory: ./examples/nextjs
68 |
69 | - name: Test
70 | run: bun test examples/nextjs/ci.test.ts
71 | env:
72 | DEPLOYMENT_URL: http://localhost:3000
73 |
74 |
75 | nextjs-deployed:
76 | concurrency: nextjs-deployed
77 | runs-on: ubuntu-latest
78 | needs:
79 | - release
80 | steps:
81 | - name: Setup repo
82 | uses: actions/checkout@v3
83 |
84 | - name: Setup node
85 | uses: actions/setup-node@v2
86 | with:
87 | node-version: 18
88 |
89 | - name: Install bun
90 | run: npm install -g bun
91 |
92 | - name: Install Canary
93 | run: bun install @chronark/sdk@${{needs.release.outputs.version}}
94 | working-directory: ./examples/nextjs
95 |
96 | - name: Deploy
97 | run: |
98 | DEPLOYMENT_URL=$(npx vercel --token=${{ secrets.VERCEL_TOKEN }})
99 | echo "DEPLOYMENT_URL=${DEPLOYMENT_URL}" >> $GITHUB_ENV
100 | env:
101 | VERCEL_ORG_ID: ${{secrets.VERCEL_ORG_ID}}
102 | VERCEL_PROJECT_ID: ${{secrets.VERCEL_PROJECT_ID}}
103 |
104 | - name: Test
105 | run: bun test examples/nextjs/ci.test.ts
106 |
107 |
108 | cloudflare-local:
109 | needs:
110 | - test
111 |
112 | runs-on: ubuntu-latest
113 | steps:
114 | - name: Setup repo
115 | uses: actions/checkout@v3
116 |
117 | - name: Install bun
118 | run: npm install -g bun
119 |
120 | - name: Install Dependencies
121 | run: bun install
122 |
123 | - name: Build
124 | run: bun run build
125 |
126 | - name: Install example
127 | run: |
128 | npm install
129 | npm install @chronark/sdk@../..
130 | npm install -g wrangler
131 | working-directory: ./examples/cloudflare
132 |
133 | - name: Start example
134 | run: wrangler dev & sleep 5
135 | working-directory: ./examples/cloudflare
136 |
137 | - name: Test
138 | run: bun test examples/cloudflare/ci.test.ts
139 | env:
140 | DEPLOYMENT_URL: http://127.0.0.1:8787
141 |
142 |
143 | cloudflare-deployed:
144 | needs:
145 | - release
146 |
147 | runs-on: ubuntu-latest
148 | steps:
149 | - name: Setup repo
150 | uses: actions/checkout@v3
151 |
152 | - name: Install bun
153 | run: npm install -g bun
154 |
155 | - name: Install example
156 | run: |
157 | npm install
158 | npm install @chronark/sdk@${{needs.release.outputs.version}}
159 | npm install -g wrangler
160 | working-directory: ./examples/cloudflare
161 |
162 | - name: Deploy
163 | run: wrangler deploy
164 | working-directory: ./examples/cloudflare
165 | env:
166 | CLOUDFLARE_API_TOKEN: ${{secrets.CF_API_TOKEN}}
167 | - name: Test
168 | run: bun test examples/cloudflare/ci.test.ts
169 | env:
170 | DEPLOYMENT_URL: https://sdk.chronark.workers.dev
171 |
172 |
173 |
174 | deno-deployed:
175 | concurrency: deno-deployed
176 | needs:
177 | - release
178 | runs-on: ubuntu-latest
179 | steps:
180 | - name: Setup repo
181 | uses: actions/checkout@v3
182 |
183 | - name: Install bun
184 | run: npm install -g bun
185 |
186 | - uses: denoland/setup-deno@v1
187 | with:
188 | deno-version: v1.x
189 |
190 | - name: Install @chronark/sdk canary version
191 | run: sed -i 's;@chronark/sdk@latest;@chronark/sdk@${{needs.release.outputs.version}};' ./examples/deno/main.ts
192 |
193 | - name: Deploy
194 | run: deno run -A https://deno.land/x/deploy/deployctl.ts deploy --project=chronark-sdk ./main.ts
195 | working-directory: examples/deno
196 | env:
197 | DENO_DEPLOY_TOKEN: ${{ secrets.DENO_DEPLOY_TOKEN }}
198 |
199 | - name: Test
200 | run: bun test examples/deno/ci.test.ts
201 | env:
202 | DEPLOYMENT_URL: https://upstash-redis-70jbfgxwz310.deno.dev
203 |
204 |
205 | release:
206 | concurrency: release
207 | outputs:
208 | version: ${{ steps.version.outputs.version }}
209 | needs:
210 | - nextjs-local
211 | - cloudflare-local
212 |
213 | name: Canary Release
214 | runs-on: ubuntu-latest
215 | steps:
216 | - name: Checkout Repo
217 | uses: actions/checkout@v3
218 |
219 | - name: Get version
220 | id: version
221 | run: echo "::set-output name=version::0.0.0-ci.${GITHUB_SHA}-$(date +%s)"
222 |
223 | - name: Setup Node
224 | uses: actions/setup-node@v2
225 | with:
226 | node-version: 18
227 |
228 | - name: Install bun
229 | run: npm install -g bun
230 |
231 | - name: Set package version
232 | run: |
233 | jq '.version = "${{ steps.version.outputs.version }}"' <<< cat package.json > tmp.json
234 | mv tmp.json package.json
235 |
236 | - name: Install Dependencies
237 | run: bun install
238 |
239 | - name: Build
240 | run: bun run build
241 |
242 | - name: Publish ci version
243 | run: |
244 | npm config set //registry.npmjs.org/:_authToken=${{secrets.NPM_TOKEN}}
245 | npm publish --tag=ci
246 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | lerna-debug.log*
8 | .pnpm-debug.log*
9 |
10 | # Diagnostic reports (https://nodejs.org/api/report.html)
11 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
12 |
13 | # Runtime data
14 | pids
15 | *.pid
16 | *.seed
17 | *.pid.lock
18 |
19 | # Directory for instrumented libs generated by jscoverage/JSCover
20 | lib-cov
21 |
22 | # Coverage directory used by tools like istanbul
23 | coverage
24 | *.lcov
25 |
26 | # nyc test coverage
27 | .nyc_output
28 |
29 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
30 | .grunt
31 |
32 | # Bower dependency directory (https://bower.io/)
33 | bower_components
34 |
35 | # node-waf configuration
36 | .lock-wscript
37 |
38 | # Compiled binary addons (https://nodejs.org/api/addons.html)
39 | build/Release
40 |
41 | # Dependency directories
42 | node_modules/
43 | jspm_packages/
44 |
45 | # Snowpack dependency directory (https://snowpack.dev/)
46 | web_modules/
47 |
48 | # TypeScript cache
49 | *.tsbuildinfo
50 |
51 | # Optional npm cache directory
52 | .npm
53 |
54 | # Optional eslint cache
55 | .eslintcache
56 |
57 | # Optional stylelint cache
58 | .stylelintcache
59 |
60 | # Microbundle cache
61 | .rpt2_cache/
62 | .rts2_cache_cjs/
63 | .rts2_cache_es/
64 | .rts2_cache_umd/
65 |
66 | # Optional REPL history
67 | .node_repl_history
68 |
69 | # Output of 'npm pack'
70 | *.tgz
71 |
72 | # Yarn Integrity file
73 | .yarn-integrity
74 |
75 | # dotenv environment variable files
76 | .env
77 | .env.development.local
78 | .env.test.local
79 | .env.production.local
80 | .env.local
81 |
82 | # parcel-bundler cache (https://parceljs.org/)
83 | .cache
84 | .parcel-cache
85 |
86 | # Next.js build output
87 | .next
88 | out
89 |
90 | # Nuxt.js build / generate output
91 | .nuxt
92 | dist
93 |
94 | # Gatsby files
95 | .cache/
96 | # Comment in the public line in if your project uses Gatsby and not Next.js
97 | # https://nextjs.org/blog/next-9-1#public-directory-support
98 | # public
99 |
100 | # vuepress build output
101 | .vuepress/dist
102 |
103 | # vuepress v2.x temp and cache directory
104 | .temp
105 | .cache
106 |
107 | # Docusaurus cache and generated files
108 | .docusaurus
109 |
110 | # Serverless directories
111 | .serverless/
112 |
113 | # FuseBox cache
114 | .fusebox/
115 |
116 | # DynamoDB Local files
117 | .dynamodb/
118 |
119 | # TernJS port file
120 | .tern-port
121 |
122 | # Stores VSCode versions used for testing VSCode extensions
123 | .vscode-test
124 |
125 | # yarn v2
126 | .yarn/cache
127 | .yarn/unplugged
128 | .yarn/build-state.yml
129 | .yarn/install-state.gz
130 | .pnp.*
131 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 Andreas Thomas
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
@chronark/sdk
3 | Typescript SDK Template
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/biome.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://biomejs.dev/schemas/1.0.0/schema.json",
3 |
4 | "linter": {
5 | "enabled": true,
6 | "rules": {
7 | "recommended": true
8 | },
9 | "ignore": ["node_modules", ".next", "dist"]
10 | },
11 | "formatter": {
12 | "indentStyle": "space",
13 | "indentWidth": 2,
14 | "enabled": true,
15 | "lineWidth": 100,
16 | "ignore": ["node_modules", ".next", "dist"]
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/bun.lockb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chronark/sdk/19ded770d95104a643cf2a3f8797bec19e36f636/bun.lockb
--------------------------------------------------------------------------------
/examples/cloudflare/ci.test.ts:
--------------------------------------------------------------------------------
1 | import { expect, test } from "bun:test";
2 |
3 | const url = process.env.DEPLOYMENT_URL;
4 | if (!url) {
5 | throw new Error("DEPLOYMENT_URL not set");
6 | }
7 |
8 | test("works", async () => {
9 | const res = await fetch(url);
10 | if (res.status !== 200) {
11 | console.log(await res.text());
12 | }
13 | expect(res.status).toEqual(200);
14 |
15 | const response = (await res.json()) as { shouldBeTrue: boolean; shouldBeFalse: boolean };
16 | expect(response.shouldBeTrue).toBeTrue();
17 | expect(response.shouldBeFalse).toBeFalse();
18 | });
19 |
--------------------------------------------------------------------------------
/examples/cloudflare/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "cloudflare",
3 | "version": "0.0.0",
4 | "lockfileVersion": 3,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "cloudflare",
9 | "version": "0.0.0",
10 | "dependencies": {
11 | "@chronark/sdk": "^0.0.2"
12 | },
13 | "devDependencies": {
14 | "@cloudflare/workers-types": "^4.20230419.0",
15 | "typescript": "^5.0.4",
16 | "wrangler": "^3.0.0"
17 | }
18 | },
19 | "node_modules/@chronark/sdk": {
20 | "version": "0.0.2",
21 | "resolved": "https://registry.npmjs.org/@chronark/sdk/-/sdk-0.0.2.tgz",
22 | "integrity": "sha512-yakgoixj5qHyhuKhZkCXapfmERSNz8RHmNEg8yqThaKHSfwIkvmRBQDQRzWRMye8MBLFrofD1GSSt1NWxI7izQ==",
23 | "peerDependencies": {
24 | "typescript": "^5.0.0"
25 | }
26 | },
27 | "node_modules/@cloudflare/kv-asset-handler": {
28 | "version": "0.2.0",
29 | "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.2.0.tgz",
30 | "integrity": "sha512-MVbXLbTcAotOPUj0pAMhVtJ+3/kFkwJqc5qNOleOZTv6QkZZABDMS21dSrSlVswEHwrpWC03e4fWytjqKvuE2A==",
31 | "dev": true,
32 | "dependencies": {
33 | "mime": "^3.0.0"
34 | }
35 | },
36 | "node_modules/@cloudflare/workerd-darwin-64": {
37 | "version": "1.20231025.0",
38 | "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20231025.0.tgz",
39 | "integrity": "sha512-MYRYTbSl+tjGg6su7savlLIb8cOcKJfdGpA+WdtgqT2OF7O+89Lag0l1SA/iyVlUkT31Jc6OLHqvzsXgmg+niQ==",
40 | "cpu": [
41 | "x64"
42 | ],
43 | "dev": true,
44 | "optional": true,
45 | "os": [
46 | "darwin"
47 | ],
48 | "engines": {
49 | "node": ">=16"
50 | }
51 | },
52 | "node_modules/@cloudflare/workerd-darwin-arm64": {
53 | "version": "1.20231025.0",
54 | "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20231025.0.tgz",
55 | "integrity": "sha512-BszjtBDR84TVa6oWe74dePJSAukWlTmLw9zR4KeWuwZLJGV7RMm6AmwGStetjnwZrecZaaOFELfBCAHtsebV0Q==",
56 | "cpu": [
57 | "arm64"
58 | ],
59 | "dev": true,
60 | "optional": true,
61 | "os": [
62 | "darwin"
63 | ],
64 | "engines": {
65 | "node": ">=16"
66 | }
67 | },
68 | "node_modules/@cloudflare/workerd-linux-64": {
69 | "version": "1.20231025.0",
70 | "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20231025.0.tgz",
71 | "integrity": "sha512-AT9dxgKXOa9xZxZ3k2a432axPJJ58KpoNWnPiPYGpuAuLoWnfcYwwh6mr9sZVcTdAdTAK9Xu9c81tp0YABanUw==",
72 | "cpu": [
73 | "x64"
74 | ],
75 | "dev": true,
76 | "optional": true,
77 | "os": [
78 | "linux"
79 | ],
80 | "engines": {
81 | "node": ">=16"
82 | }
83 | },
84 | "node_modules/@cloudflare/workerd-linux-arm64": {
85 | "version": "1.20231025.0",
86 | "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20231025.0.tgz",
87 | "integrity": "sha512-EIjex5o2k80YZWPix1btGybL/vNZ3o6vqKX9ptS0JcFkHV5aFX5/kcMwSBRjiIC+w04zVjmGQx3N1Vh3njuncg==",
88 | "cpu": [
89 | "arm64"
90 | ],
91 | "dev": true,
92 | "optional": true,
93 | "os": [
94 | "linux"
95 | ],
96 | "engines": {
97 | "node": ">=16"
98 | }
99 | },
100 | "node_modules/@cloudflare/workerd-windows-64": {
101 | "version": "1.20231025.0",
102 | "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20231025.0.tgz",
103 | "integrity": "sha512-7vtq0mO22A2v0OOsKXa760r9a84Gg8CK0gDu5uNWlj6hojmt011iz7jJt76I7oo/XrVwVlVfu69GnA3ljx6U8w==",
104 | "cpu": [
105 | "x64"
106 | ],
107 | "dev": true,
108 | "optional": true,
109 | "os": [
110 | "win32"
111 | ],
112 | "engines": {
113 | "node": ">=16"
114 | }
115 | },
116 | "node_modules/@cloudflare/workers-types": {
117 | "version": "4.20231025.0",
118 | "resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-4.20231025.0.tgz",
119 | "integrity": "sha512-TkcZkntUTOcvJ4vgmwpNfLTclpMbmbClZCe62B25/VTukmyv91joRa4eKzSjzCZUXTbFHNmVdOpmGaaJU2U3+A==",
120 | "dev": true
121 | },
122 | "node_modules/@esbuild-plugins/node-globals-polyfill": {
123 | "version": "0.2.3",
124 | "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz",
125 | "integrity": "sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==",
126 | "dev": true,
127 | "peerDependencies": {
128 | "esbuild": "*"
129 | }
130 | },
131 | "node_modules/@esbuild-plugins/node-modules-polyfill": {
132 | "version": "0.2.2",
133 | "resolved": "https://registry.npmjs.org/@esbuild-plugins/node-modules-polyfill/-/node-modules-polyfill-0.2.2.tgz",
134 | "integrity": "sha512-LXV7QsWJxRuMYvKbiznh+U1ilIop3g2TeKRzUxOG5X3YITc8JyyTa90BmLwqqv0YnX4v32CSlG+vsziZp9dMvA==",
135 | "dev": true,
136 | "dependencies": {
137 | "escape-string-regexp": "^4.0.0",
138 | "rollup-plugin-node-polyfills": "^0.2.1"
139 | },
140 | "peerDependencies": {
141 | "esbuild": "*"
142 | }
143 | },
144 | "node_modules/@esbuild/android-arm": {
145 | "version": "0.17.19",
146 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz",
147 | "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==",
148 | "cpu": [
149 | "arm"
150 | ],
151 | "dev": true,
152 | "optional": true,
153 | "os": [
154 | "android"
155 | ],
156 | "engines": {
157 | "node": ">=12"
158 | }
159 | },
160 | "node_modules/@esbuild/android-arm64": {
161 | "version": "0.17.19",
162 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz",
163 | "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==",
164 | "cpu": [
165 | "arm64"
166 | ],
167 | "dev": true,
168 | "optional": true,
169 | "os": [
170 | "android"
171 | ],
172 | "engines": {
173 | "node": ">=12"
174 | }
175 | },
176 | "node_modules/@esbuild/android-x64": {
177 | "version": "0.17.19",
178 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz",
179 | "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==",
180 | "cpu": [
181 | "x64"
182 | ],
183 | "dev": true,
184 | "optional": true,
185 | "os": [
186 | "android"
187 | ],
188 | "engines": {
189 | "node": ">=12"
190 | }
191 | },
192 | "node_modules/@esbuild/darwin-arm64": {
193 | "version": "0.17.19",
194 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz",
195 | "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==",
196 | "cpu": [
197 | "arm64"
198 | ],
199 | "dev": true,
200 | "optional": true,
201 | "os": [
202 | "darwin"
203 | ],
204 | "engines": {
205 | "node": ">=12"
206 | }
207 | },
208 | "node_modules/@esbuild/darwin-x64": {
209 | "version": "0.17.19",
210 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz",
211 | "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==",
212 | "cpu": [
213 | "x64"
214 | ],
215 | "dev": true,
216 | "optional": true,
217 | "os": [
218 | "darwin"
219 | ],
220 | "engines": {
221 | "node": ">=12"
222 | }
223 | },
224 | "node_modules/@esbuild/freebsd-arm64": {
225 | "version": "0.17.19",
226 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz",
227 | "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==",
228 | "cpu": [
229 | "arm64"
230 | ],
231 | "dev": true,
232 | "optional": true,
233 | "os": [
234 | "freebsd"
235 | ],
236 | "engines": {
237 | "node": ">=12"
238 | }
239 | },
240 | "node_modules/@esbuild/freebsd-x64": {
241 | "version": "0.17.19",
242 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz",
243 | "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==",
244 | "cpu": [
245 | "x64"
246 | ],
247 | "dev": true,
248 | "optional": true,
249 | "os": [
250 | "freebsd"
251 | ],
252 | "engines": {
253 | "node": ">=12"
254 | }
255 | },
256 | "node_modules/@esbuild/linux-arm": {
257 | "version": "0.17.19",
258 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz",
259 | "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==",
260 | "cpu": [
261 | "arm"
262 | ],
263 | "dev": true,
264 | "optional": true,
265 | "os": [
266 | "linux"
267 | ],
268 | "engines": {
269 | "node": ">=12"
270 | }
271 | },
272 | "node_modules/@esbuild/linux-arm64": {
273 | "version": "0.17.19",
274 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz",
275 | "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==",
276 | "cpu": [
277 | "arm64"
278 | ],
279 | "dev": true,
280 | "optional": true,
281 | "os": [
282 | "linux"
283 | ],
284 | "engines": {
285 | "node": ">=12"
286 | }
287 | },
288 | "node_modules/@esbuild/linux-ia32": {
289 | "version": "0.17.19",
290 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz",
291 | "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==",
292 | "cpu": [
293 | "ia32"
294 | ],
295 | "dev": true,
296 | "optional": true,
297 | "os": [
298 | "linux"
299 | ],
300 | "engines": {
301 | "node": ">=12"
302 | }
303 | },
304 | "node_modules/@esbuild/linux-loong64": {
305 | "version": "0.17.19",
306 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz",
307 | "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==",
308 | "cpu": [
309 | "loong64"
310 | ],
311 | "dev": true,
312 | "optional": true,
313 | "os": [
314 | "linux"
315 | ],
316 | "engines": {
317 | "node": ">=12"
318 | }
319 | },
320 | "node_modules/@esbuild/linux-mips64el": {
321 | "version": "0.17.19",
322 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz",
323 | "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==",
324 | "cpu": [
325 | "mips64el"
326 | ],
327 | "dev": true,
328 | "optional": true,
329 | "os": [
330 | "linux"
331 | ],
332 | "engines": {
333 | "node": ">=12"
334 | }
335 | },
336 | "node_modules/@esbuild/linux-ppc64": {
337 | "version": "0.17.19",
338 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz",
339 | "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==",
340 | "cpu": [
341 | "ppc64"
342 | ],
343 | "dev": true,
344 | "optional": true,
345 | "os": [
346 | "linux"
347 | ],
348 | "engines": {
349 | "node": ">=12"
350 | }
351 | },
352 | "node_modules/@esbuild/linux-riscv64": {
353 | "version": "0.17.19",
354 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz",
355 | "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==",
356 | "cpu": [
357 | "riscv64"
358 | ],
359 | "dev": true,
360 | "optional": true,
361 | "os": [
362 | "linux"
363 | ],
364 | "engines": {
365 | "node": ">=12"
366 | }
367 | },
368 | "node_modules/@esbuild/linux-s390x": {
369 | "version": "0.17.19",
370 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz",
371 | "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==",
372 | "cpu": [
373 | "s390x"
374 | ],
375 | "dev": true,
376 | "optional": true,
377 | "os": [
378 | "linux"
379 | ],
380 | "engines": {
381 | "node": ">=12"
382 | }
383 | },
384 | "node_modules/@esbuild/linux-x64": {
385 | "version": "0.17.19",
386 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz",
387 | "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==",
388 | "cpu": [
389 | "x64"
390 | ],
391 | "dev": true,
392 | "optional": true,
393 | "os": [
394 | "linux"
395 | ],
396 | "engines": {
397 | "node": ">=12"
398 | }
399 | },
400 | "node_modules/@esbuild/netbsd-x64": {
401 | "version": "0.17.19",
402 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz",
403 | "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==",
404 | "cpu": [
405 | "x64"
406 | ],
407 | "dev": true,
408 | "optional": true,
409 | "os": [
410 | "netbsd"
411 | ],
412 | "engines": {
413 | "node": ">=12"
414 | }
415 | },
416 | "node_modules/@esbuild/openbsd-x64": {
417 | "version": "0.17.19",
418 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz",
419 | "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==",
420 | "cpu": [
421 | "x64"
422 | ],
423 | "dev": true,
424 | "optional": true,
425 | "os": [
426 | "openbsd"
427 | ],
428 | "engines": {
429 | "node": ">=12"
430 | }
431 | },
432 | "node_modules/@esbuild/sunos-x64": {
433 | "version": "0.17.19",
434 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz",
435 | "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==",
436 | "cpu": [
437 | "x64"
438 | ],
439 | "dev": true,
440 | "optional": true,
441 | "os": [
442 | "sunos"
443 | ],
444 | "engines": {
445 | "node": ">=12"
446 | }
447 | },
448 | "node_modules/@esbuild/win32-arm64": {
449 | "version": "0.17.19",
450 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz",
451 | "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==",
452 | "cpu": [
453 | "arm64"
454 | ],
455 | "dev": true,
456 | "optional": true,
457 | "os": [
458 | "win32"
459 | ],
460 | "engines": {
461 | "node": ">=12"
462 | }
463 | },
464 | "node_modules/@esbuild/win32-ia32": {
465 | "version": "0.17.19",
466 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz",
467 | "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==",
468 | "cpu": [
469 | "ia32"
470 | ],
471 | "dev": true,
472 | "optional": true,
473 | "os": [
474 | "win32"
475 | ],
476 | "engines": {
477 | "node": ">=12"
478 | }
479 | },
480 | "node_modules/@esbuild/win32-x64": {
481 | "version": "0.17.19",
482 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz",
483 | "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==",
484 | "cpu": [
485 | "x64"
486 | ],
487 | "dev": true,
488 | "optional": true,
489 | "os": [
490 | "win32"
491 | ],
492 | "engines": {
493 | "node": ">=12"
494 | }
495 | },
496 | "node_modules/@fastify/busboy": {
497 | "version": "2.0.0",
498 | "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.0.0.tgz",
499 | "integrity": "sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==",
500 | "dev": true,
501 | "engines": {
502 | "node": ">=14"
503 | }
504 | },
505 | "node_modules/@types/node": {
506 | "version": "20.8.9",
507 | "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.9.tgz",
508 | "integrity": "sha512-UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg==",
509 | "dev": true,
510 | "dependencies": {
511 | "undici-types": "~5.26.4"
512 | }
513 | },
514 | "node_modules/@types/node-forge": {
515 | "version": "1.3.8",
516 | "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.8.tgz",
517 | "integrity": "sha512-vGXshY9vim9CJjrpcS5raqSjEfKlJcWy2HNdgUasR66fAnVEYarrf1ULV4nfvpC1nZq/moA9qyqBcu83x+Jlrg==",
518 | "dev": true,
519 | "dependencies": {
520 | "@types/node": "*"
521 | }
522 | },
523 | "node_modules/acorn": {
524 | "version": "8.11.2",
525 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz",
526 | "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==",
527 | "dev": true,
528 | "bin": {
529 | "acorn": "bin/acorn"
530 | },
531 | "engines": {
532 | "node": ">=0.4.0"
533 | }
534 | },
535 | "node_modules/acorn-walk": {
536 | "version": "8.3.0",
537 | "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz",
538 | "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==",
539 | "dev": true,
540 | "engines": {
541 | "node": ">=0.4.0"
542 | }
543 | },
544 | "node_modules/anymatch": {
545 | "version": "3.1.3",
546 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
547 | "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
548 | "dev": true,
549 | "dependencies": {
550 | "normalize-path": "^3.0.0",
551 | "picomatch": "^2.0.4"
552 | },
553 | "engines": {
554 | "node": ">= 8"
555 | }
556 | },
557 | "node_modules/as-table": {
558 | "version": "1.0.55",
559 | "resolved": "https://registry.npmjs.org/as-table/-/as-table-1.0.55.tgz",
560 | "integrity": "sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ==",
561 | "dev": true,
562 | "dependencies": {
563 | "printable-characters": "^1.0.42"
564 | }
565 | },
566 | "node_modules/binary-extensions": {
567 | "version": "2.2.0",
568 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
569 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
570 | "dev": true,
571 | "engines": {
572 | "node": ">=8"
573 | }
574 | },
575 | "node_modules/blake3-wasm": {
576 | "version": "2.1.5",
577 | "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz",
578 | "integrity": "sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==",
579 | "dev": true
580 | },
581 | "node_modules/braces": {
582 | "version": "3.0.2",
583 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
584 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
585 | "dev": true,
586 | "dependencies": {
587 | "fill-range": "^7.0.1"
588 | },
589 | "engines": {
590 | "node": ">=8"
591 | }
592 | },
593 | "node_modules/buffer-from": {
594 | "version": "1.1.2",
595 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
596 | "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
597 | "dev": true
598 | },
599 | "node_modules/capnp-ts": {
600 | "version": "0.7.0",
601 | "resolved": "https://registry.npmjs.org/capnp-ts/-/capnp-ts-0.7.0.tgz",
602 | "integrity": "sha512-XKxXAC3HVPv7r674zP0VC3RTXz+/JKhfyw94ljvF80yynK6VkTnqE3jMuN8b3dUVmmc43TjyxjW4KTsmB3c86g==",
603 | "dev": true,
604 | "dependencies": {
605 | "debug": "^4.3.1",
606 | "tslib": "^2.2.0"
607 | }
608 | },
609 | "node_modules/chokidar": {
610 | "version": "3.5.3",
611 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
612 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
613 | "dev": true,
614 | "funding": [
615 | {
616 | "type": "individual",
617 | "url": "https://paulmillr.com/funding/"
618 | }
619 | ],
620 | "dependencies": {
621 | "anymatch": "~3.1.2",
622 | "braces": "~3.0.2",
623 | "glob-parent": "~5.1.2",
624 | "is-binary-path": "~2.1.0",
625 | "is-glob": "~4.0.1",
626 | "normalize-path": "~3.0.0",
627 | "readdirp": "~3.6.0"
628 | },
629 | "engines": {
630 | "node": ">= 8.10.0"
631 | },
632 | "optionalDependencies": {
633 | "fsevents": "~2.3.2"
634 | }
635 | },
636 | "node_modules/cookie": {
637 | "version": "0.5.0",
638 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
639 | "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
640 | "dev": true,
641 | "engines": {
642 | "node": ">= 0.6"
643 | }
644 | },
645 | "node_modules/data-uri-to-buffer": {
646 | "version": "2.0.2",
647 | "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz",
648 | "integrity": "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==",
649 | "dev": true
650 | },
651 | "node_modules/debug": {
652 | "version": "4.3.4",
653 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
654 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
655 | "dev": true,
656 | "dependencies": {
657 | "ms": "2.1.2"
658 | },
659 | "engines": {
660 | "node": ">=6.0"
661 | },
662 | "peerDependenciesMeta": {
663 | "supports-color": {
664 | "optional": true
665 | }
666 | }
667 | },
668 | "node_modules/esbuild": {
669 | "version": "0.17.19",
670 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz",
671 | "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==",
672 | "dev": true,
673 | "hasInstallScript": true,
674 | "bin": {
675 | "esbuild": "bin/esbuild"
676 | },
677 | "engines": {
678 | "node": ">=12"
679 | },
680 | "optionalDependencies": {
681 | "@esbuild/android-arm": "0.17.19",
682 | "@esbuild/android-arm64": "0.17.19",
683 | "@esbuild/android-x64": "0.17.19",
684 | "@esbuild/darwin-arm64": "0.17.19",
685 | "@esbuild/darwin-x64": "0.17.19",
686 | "@esbuild/freebsd-arm64": "0.17.19",
687 | "@esbuild/freebsd-x64": "0.17.19",
688 | "@esbuild/linux-arm": "0.17.19",
689 | "@esbuild/linux-arm64": "0.17.19",
690 | "@esbuild/linux-ia32": "0.17.19",
691 | "@esbuild/linux-loong64": "0.17.19",
692 | "@esbuild/linux-mips64el": "0.17.19",
693 | "@esbuild/linux-ppc64": "0.17.19",
694 | "@esbuild/linux-riscv64": "0.17.19",
695 | "@esbuild/linux-s390x": "0.17.19",
696 | "@esbuild/linux-x64": "0.17.19",
697 | "@esbuild/netbsd-x64": "0.17.19",
698 | "@esbuild/openbsd-x64": "0.17.19",
699 | "@esbuild/sunos-x64": "0.17.19",
700 | "@esbuild/win32-arm64": "0.17.19",
701 | "@esbuild/win32-ia32": "0.17.19",
702 | "@esbuild/win32-x64": "0.17.19"
703 | }
704 | },
705 | "node_modules/escape-string-regexp": {
706 | "version": "4.0.0",
707 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
708 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
709 | "dev": true,
710 | "engines": {
711 | "node": ">=10"
712 | },
713 | "funding": {
714 | "url": "https://github.com/sponsors/sindresorhus"
715 | }
716 | },
717 | "node_modules/estree-walker": {
718 | "version": "0.6.1",
719 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz",
720 | "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==",
721 | "dev": true
722 | },
723 | "node_modules/exit-hook": {
724 | "version": "2.2.1",
725 | "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-2.2.1.tgz",
726 | "integrity": "sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==",
727 | "dev": true,
728 | "engines": {
729 | "node": ">=6"
730 | },
731 | "funding": {
732 | "url": "https://github.com/sponsors/sindresorhus"
733 | }
734 | },
735 | "node_modules/fill-range": {
736 | "version": "7.0.1",
737 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
738 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
739 | "dev": true,
740 | "dependencies": {
741 | "to-regex-range": "^5.0.1"
742 | },
743 | "engines": {
744 | "node": ">=8"
745 | }
746 | },
747 | "node_modules/fsevents": {
748 | "version": "2.3.3",
749 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
750 | "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
751 | "dev": true,
752 | "hasInstallScript": true,
753 | "optional": true,
754 | "os": [
755 | "darwin"
756 | ],
757 | "engines": {
758 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
759 | }
760 | },
761 | "node_modules/get-source": {
762 | "version": "2.0.12",
763 | "resolved": "https://registry.npmjs.org/get-source/-/get-source-2.0.12.tgz",
764 | "integrity": "sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==",
765 | "dev": true,
766 | "dependencies": {
767 | "data-uri-to-buffer": "^2.0.0",
768 | "source-map": "^0.6.1"
769 | }
770 | },
771 | "node_modules/glob-parent": {
772 | "version": "5.1.2",
773 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
774 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
775 | "dev": true,
776 | "dependencies": {
777 | "is-glob": "^4.0.1"
778 | },
779 | "engines": {
780 | "node": ">= 6"
781 | }
782 | },
783 | "node_modules/glob-to-regexp": {
784 | "version": "0.4.1",
785 | "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
786 | "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
787 | "dev": true
788 | },
789 | "node_modules/is-binary-path": {
790 | "version": "2.1.0",
791 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
792 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
793 | "dev": true,
794 | "dependencies": {
795 | "binary-extensions": "^2.0.0"
796 | },
797 | "engines": {
798 | "node": ">=8"
799 | }
800 | },
801 | "node_modules/is-extglob": {
802 | "version": "2.1.1",
803 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
804 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
805 | "dev": true,
806 | "engines": {
807 | "node": ">=0.10.0"
808 | }
809 | },
810 | "node_modules/is-glob": {
811 | "version": "4.0.3",
812 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
813 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
814 | "dev": true,
815 | "dependencies": {
816 | "is-extglob": "^2.1.1"
817 | },
818 | "engines": {
819 | "node": ">=0.10.0"
820 | }
821 | },
822 | "node_modules/is-number": {
823 | "version": "7.0.0",
824 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
825 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
826 | "dev": true,
827 | "engines": {
828 | "node": ">=0.12.0"
829 | }
830 | },
831 | "node_modules/magic-string": {
832 | "version": "0.25.9",
833 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
834 | "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
835 | "dev": true,
836 | "dependencies": {
837 | "sourcemap-codec": "^1.4.8"
838 | }
839 | },
840 | "node_modules/mime": {
841 | "version": "3.0.0",
842 | "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz",
843 | "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==",
844 | "dev": true,
845 | "bin": {
846 | "mime": "cli.js"
847 | },
848 | "engines": {
849 | "node": ">=10.0.0"
850 | }
851 | },
852 | "node_modules/miniflare": {
853 | "version": "3.20231025.0",
854 | "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-3.20231025.0.tgz",
855 | "integrity": "sha512-pFcr2BRaGIQ26UfdDo8BMJ6kkd/Jo/FkQ/4K7UG/eORlDepsLrR/sTJddcSSIGl07MA+MGjhzopFTPpFskkS+g==",
856 | "dev": true,
857 | "dependencies": {
858 | "acorn": "^8.8.0",
859 | "acorn-walk": "^8.2.0",
860 | "capnp-ts": "^0.7.0",
861 | "exit-hook": "^2.2.1",
862 | "glob-to-regexp": "^0.4.1",
863 | "source-map-support": "0.5.21",
864 | "stoppable": "^1.1.0",
865 | "undici": "^5.22.1",
866 | "workerd": "1.20231025.0",
867 | "ws": "^8.11.0",
868 | "youch": "^3.2.2",
869 | "zod": "^3.20.6"
870 | },
871 | "engines": {
872 | "node": ">=16.13"
873 | }
874 | },
875 | "node_modules/ms": {
876 | "version": "2.1.2",
877 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
878 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
879 | "dev": true
880 | },
881 | "node_modules/mustache": {
882 | "version": "4.2.0",
883 | "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz",
884 | "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==",
885 | "dev": true,
886 | "bin": {
887 | "mustache": "bin/mustache"
888 | }
889 | },
890 | "node_modules/nanoid": {
891 | "version": "3.3.6",
892 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
893 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
894 | "dev": true,
895 | "funding": [
896 | {
897 | "type": "github",
898 | "url": "https://github.com/sponsors/ai"
899 | }
900 | ],
901 | "bin": {
902 | "nanoid": "bin/nanoid.cjs"
903 | },
904 | "engines": {
905 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
906 | }
907 | },
908 | "node_modules/node-forge": {
909 | "version": "1.3.1",
910 | "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz",
911 | "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==",
912 | "dev": true,
913 | "engines": {
914 | "node": ">= 6.13.0"
915 | }
916 | },
917 | "node_modules/normalize-path": {
918 | "version": "3.0.0",
919 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
920 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
921 | "dev": true,
922 | "engines": {
923 | "node": ">=0.10.0"
924 | }
925 | },
926 | "node_modules/path-to-regexp": {
927 | "version": "6.2.1",
928 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz",
929 | "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==",
930 | "dev": true
931 | },
932 | "node_modules/picomatch": {
933 | "version": "2.3.1",
934 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
935 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
936 | "dev": true,
937 | "engines": {
938 | "node": ">=8.6"
939 | },
940 | "funding": {
941 | "url": "https://github.com/sponsors/jonschlinkert"
942 | }
943 | },
944 | "node_modules/printable-characters": {
945 | "version": "1.0.42",
946 | "resolved": "https://registry.npmjs.org/printable-characters/-/printable-characters-1.0.42.tgz",
947 | "integrity": "sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==",
948 | "dev": true
949 | },
950 | "node_modules/readdirp": {
951 | "version": "3.6.0",
952 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
953 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
954 | "dev": true,
955 | "dependencies": {
956 | "picomatch": "^2.2.1"
957 | },
958 | "engines": {
959 | "node": ">=8.10.0"
960 | }
961 | },
962 | "node_modules/resolve.exports": {
963 | "version": "2.0.2",
964 | "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz",
965 | "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==",
966 | "dev": true,
967 | "engines": {
968 | "node": ">=10"
969 | }
970 | },
971 | "node_modules/rollup-plugin-inject": {
972 | "version": "3.0.2",
973 | "resolved": "https://registry.npmjs.org/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz",
974 | "integrity": "sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w==",
975 | "deprecated": "This package has been deprecated and is no longer maintained. Please use @rollup/plugin-inject.",
976 | "dev": true,
977 | "dependencies": {
978 | "estree-walker": "^0.6.1",
979 | "magic-string": "^0.25.3",
980 | "rollup-pluginutils": "^2.8.1"
981 | }
982 | },
983 | "node_modules/rollup-plugin-node-polyfills": {
984 | "version": "0.2.1",
985 | "resolved": "https://registry.npmjs.org/rollup-plugin-node-polyfills/-/rollup-plugin-node-polyfills-0.2.1.tgz",
986 | "integrity": "sha512-4kCrKPTJ6sK4/gLL/U5QzVT8cxJcofO0OU74tnB19F40cmuAKSzH5/siithxlofFEjwvw1YAhPmbvGNA6jEroA==",
987 | "dev": true,
988 | "dependencies": {
989 | "rollup-plugin-inject": "^3.0.0"
990 | }
991 | },
992 | "node_modules/rollup-pluginutils": {
993 | "version": "2.8.2",
994 | "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz",
995 | "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==",
996 | "dev": true,
997 | "dependencies": {
998 | "estree-walker": "^0.6.1"
999 | }
1000 | },
1001 | "node_modules/selfsigned": {
1002 | "version": "2.4.1",
1003 | "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz",
1004 | "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==",
1005 | "dev": true,
1006 | "dependencies": {
1007 | "@types/node-forge": "^1.3.0",
1008 | "node-forge": "^1"
1009 | },
1010 | "engines": {
1011 | "node": ">=10"
1012 | }
1013 | },
1014 | "node_modules/source-map": {
1015 | "version": "0.6.1",
1016 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
1017 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
1018 | "dev": true,
1019 | "engines": {
1020 | "node": ">=0.10.0"
1021 | }
1022 | },
1023 | "node_modules/source-map-support": {
1024 | "version": "0.5.21",
1025 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
1026 | "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
1027 | "dev": true,
1028 | "dependencies": {
1029 | "buffer-from": "^1.0.0",
1030 | "source-map": "^0.6.0"
1031 | }
1032 | },
1033 | "node_modules/sourcemap-codec": {
1034 | "version": "1.4.8",
1035 | "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
1036 | "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
1037 | "deprecated": "Please use @jridgewell/sourcemap-codec instead",
1038 | "dev": true
1039 | },
1040 | "node_modules/stacktracey": {
1041 | "version": "2.1.8",
1042 | "resolved": "https://registry.npmjs.org/stacktracey/-/stacktracey-2.1.8.tgz",
1043 | "integrity": "sha512-Kpij9riA+UNg7TnphqjH7/CzctQ/owJGNbFkfEeve4Z4uxT5+JapVLFXcsurIfN34gnTWZNJ/f7NMG0E8JDzTw==",
1044 | "dev": true,
1045 | "dependencies": {
1046 | "as-table": "^1.0.36",
1047 | "get-source": "^2.0.12"
1048 | }
1049 | },
1050 | "node_modules/stoppable": {
1051 | "version": "1.1.0",
1052 | "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz",
1053 | "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==",
1054 | "dev": true,
1055 | "engines": {
1056 | "node": ">=4",
1057 | "npm": ">=6"
1058 | }
1059 | },
1060 | "node_modules/to-regex-range": {
1061 | "version": "5.0.1",
1062 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
1063 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
1064 | "dev": true,
1065 | "dependencies": {
1066 | "is-number": "^7.0.0"
1067 | },
1068 | "engines": {
1069 | "node": ">=8.0"
1070 | }
1071 | },
1072 | "node_modules/tslib": {
1073 | "version": "2.6.2",
1074 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
1075 | "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
1076 | "dev": true
1077 | },
1078 | "node_modules/typescript": {
1079 | "version": "5.2.2",
1080 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz",
1081 | "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==",
1082 | "bin": {
1083 | "tsc": "bin/tsc",
1084 | "tsserver": "bin/tsserver"
1085 | },
1086 | "engines": {
1087 | "node": ">=14.17"
1088 | }
1089 | },
1090 | "node_modules/undici": {
1091 | "version": "5.27.0",
1092 | "resolved": "https://registry.npmjs.org/undici/-/undici-5.27.0.tgz",
1093 | "integrity": "sha512-l3ydWhlhOJzMVOYkymLykcRRXqbUaQriERtR70B9LzNkZ4bX52Fc8wbTDneMiwo8T+AemZXvXaTx+9o5ROxrXg==",
1094 | "dev": true,
1095 | "dependencies": {
1096 | "@fastify/busboy": "^2.0.0"
1097 | },
1098 | "engines": {
1099 | "node": ">=14.0"
1100 | }
1101 | },
1102 | "node_modules/undici-types": {
1103 | "version": "5.26.5",
1104 | "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
1105 | "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
1106 | "dev": true
1107 | },
1108 | "node_modules/workerd": {
1109 | "version": "1.20231025.0",
1110 | "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20231025.0.tgz",
1111 | "integrity": "sha512-W1PFtpMFfvmm+ozBf+u70TE3Pviv7WA4qzDeejHDC4z+PFDq4+3KJCkgffaGBO86h+akWO0hSsc0uXL2zAqofQ==",
1112 | "dev": true,
1113 | "hasInstallScript": true,
1114 | "bin": {
1115 | "workerd": "bin/workerd"
1116 | },
1117 | "engines": {
1118 | "node": ">=16"
1119 | },
1120 | "optionalDependencies": {
1121 | "@cloudflare/workerd-darwin-64": "1.20231025.0",
1122 | "@cloudflare/workerd-darwin-arm64": "1.20231025.0",
1123 | "@cloudflare/workerd-linux-64": "1.20231025.0",
1124 | "@cloudflare/workerd-linux-arm64": "1.20231025.0",
1125 | "@cloudflare/workerd-windows-64": "1.20231025.0"
1126 | }
1127 | },
1128 | "node_modules/wrangler": {
1129 | "version": "3.15.0",
1130 | "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-3.15.0.tgz",
1131 | "integrity": "sha512-kxzK62rD+LRrDeZZzw8cP6FBub71vJCbfAAb594XobXajgXYh3pFjv18Vm8YLxHzoGMhmAOJPA5b4DHq4HEUCw==",
1132 | "dev": true,
1133 | "dependencies": {
1134 | "@cloudflare/kv-asset-handler": "^0.2.0",
1135 | "@esbuild-plugins/node-globals-polyfill": "^0.2.3",
1136 | "@esbuild-plugins/node-modules-polyfill": "^0.2.2",
1137 | "blake3-wasm": "^2.1.5",
1138 | "chokidar": "^3.5.3",
1139 | "esbuild": "0.17.19",
1140 | "miniflare": "3.20231025.0",
1141 | "nanoid": "^3.3.3",
1142 | "path-to-regexp": "^6.2.0",
1143 | "resolve.exports": "^2.0.2",
1144 | "selfsigned": "^2.0.1",
1145 | "source-map": "0.6.1",
1146 | "source-map-support": "0.5.21",
1147 | "xxhash-wasm": "^1.0.1"
1148 | },
1149 | "bin": {
1150 | "wrangler": "bin/wrangler.js",
1151 | "wrangler2": "bin/wrangler.js"
1152 | },
1153 | "engines": {
1154 | "node": ">=16.17.0"
1155 | },
1156 | "optionalDependencies": {
1157 | "fsevents": "~2.3.2"
1158 | }
1159 | },
1160 | "node_modules/ws": {
1161 | "version": "8.14.2",
1162 | "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz",
1163 | "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==",
1164 | "dev": true,
1165 | "engines": {
1166 | "node": ">=10.0.0"
1167 | },
1168 | "peerDependencies": {
1169 | "bufferutil": "^4.0.1",
1170 | "utf-8-validate": ">=5.0.2"
1171 | },
1172 | "peerDependenciesMeta": {
1173 | "bufferutil": {
1174 | "optional": true
1175 | },
1176 | "utf-8-validate": {
1177 | "optional": true
1178 | }
1179 | }
1180 | },
1181 | "node_modules/xxhash-wasm": {
1182 | "version": "1.0.2",
1183 | "resolved": "https://registry.npmjs.org/xxhash-wasm/-/xxhash-wasm-1.0.2.tgz",
1184 | "integrity": "sha512-ibF0Or+FivM9lNrg+HGJfVX8WJqgo+kCLDc4vx6xMeTce7Aj+DLttKbxxRR/gNLSAelRc1omAPlJ77N/Jem07A==",
1185 | "dev": true
1186 | },
1187 | "node_modules/youch": {
1188 | "version": "3.3.2",
1189 | "resolved": "https://registry.npmjs.org/youch/-/youch-3.3.2.tgz",
1190 | "integrity": "sha512-9cwz/z7abtcHOIuH45nzmUFCZbyJA1nLqlirKvyNRx4wDMhqsBaifAJzBej7L4fsVPjFxYq3NK3GAcfvZsydFw==",
1191 | "dev": true,
1192 | "dependencies": {
1193 | "cookie": "^0.5.0",
1194 | "mustache": "^4.2.0",
1195 | "stacktracey": "^2.1.8"
1196 | }
1197 | },
1198 | "node_modules/zod": {
1199 | "version": "3.22.4",
1200 | "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz",
1201 | "integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==",
1202 | "dev": true,
1203 | "funding": {
1204 | "url": "https://github.com/sponsors/colinhacks"
1205 | }
1206 | }
1207 | }
1208 | }
1209 |
--------------------------------------------------------------------------------
/examples/cloudflare/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "cloudflare",
3 | "version": "0.0.0",
4 | "private": true,
5 | "scripts": {
6 | "deploy": "wrangler publish",
7 | "start": "wrangler dev"
8 | },
9 | "devDependencies": {
10 | "@cloudflare/workers-types": "^4.20230419.0",
11 | "typescript": "^5.0.4",
12 | "wrangler": "^3.0.0"
13 | },
14 | "dependencies": {
15 | "@chronark/sdk": "^0.0.2"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/examples/cloudflare/src/worker.ts:
--------------------------------------------------------------------------------
1 | import { isTrue } from "@chronark/sdk";
2 |
3 | export interface Env {
4 | WE_DONT_NEED_ENV?: string;
5 | }
6 |
7 | export default {
8 | async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise {
9 | return Response.json({
10 | shouldBeTrue: isTrue(true),
11 | shouldBeFalse: isTrue(false),
12 | });
13 | },
14 | };
15 |
--------------------------------------------------------------------------------
/examples/cloudflare/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */
4 |
5 | /* Projects */
6 | // "incremental": true, /* Enable incremental compilation */
7 | // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
8 | // "tsBuildInfoFile": "./", /* Specify the folder for .tsbuildinfo incremental compilation files. */
9 | // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects */
10 | // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
11 | // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
12 |
13 | /* Language and Environment */
14 | "target": "es2021" /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */,
15 | "lib": ["es2021"] /* Specify a set of bundled library declaration files that describe the target runtime environment. */,
16 | "jsx": "react" /* Specify what JSX code is generated. */,
17 | // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
18 | // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
19 | // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */
20 | // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
21 | // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.` */
22 | // "reactNamespace": "", /* Specify the object invoked for `createElement`. This only applies when targeting `react` JSX emit. */
23 | // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
24 | // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
25 |
26 | /* Modules */
27 | "module": "es2022" /* Specify what module code is generated. */,
28 | // "rootDir": "./", /* Specify the root folder within your source files. */
29 | "moduleResolution": "node" /* Specify how TypeScript looks up a file from a given module specifier. */,
30 | // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
31 | // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
32 | // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
33 | // "typeRoots": [], /* Specify multiple folders that act like `./node_modules/@types`. */
34 | "types": ["@cloudflare/workers-types"] /* Specify type package names to be included without being referenced in a source file. */,
35 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
36 | "resolveJsonModule": true /* Enable importing .json files */,
37 | // "noResolve": true, /* Disallow `import`s, `require`s or ``s from expanding the number of files TypeScript should add to a project. */
38 |
39 | /* JavaScript Support */
40 | "allowJs": true /* Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files. */,
41 | "checkJs": false /* Enable error reporting in type-checked JavaScript files. */,
42 | // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from `node_modules`. Only applicable with `allowJs`. */
43 |
44 | /* Emit */
45 | // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
46 | // "declarationMap": true, /* Create sourcemaps for d.ts files. */
47 | // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
48 | // "sourceMap": true, /* Create source map files for emitted JavaScript files. */
49 | // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */
50 | // "outDir": "./", /* Specify an output folder for all emitted files. */
51 | // "removeComments": true, /* Disable emitting comments. */
52 | "noEmit": true /* Disable emitting files from a compilation. */,
53 | // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
54 | // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types */
55 | // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
56 | // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
57 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
58 | // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
59 | // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
60 | // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
61 | // "newLine": "crlf", /* Set the newline character for emitting files. */
62 | // "stripInternal": true, /* Disable emitting declarations that have `@internal` in their JSDoc comments. */
63 | // "noEmitHelpers": true, /* Disable generating custom helper functions like `__extends` in compiled output. */
64 | // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
65 | // "preserveConstEnums": true, /* Disable erasing `const enum` declarations in generated code. */
66 | // "declarationDir": "./", /* Specify the output directory for generated declaration files. */
67 | // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
68 |
69 | /* Interop Constraints */
70 | "isolatedModules": true /* Ensure that each file can be safely transpiled without relying on other imports. */,
71 | "allowSyntheticDefaultImports": true /* Allow 'import x from y' when a module doesn't have a default export. */,
72 | // "esModuleInterop": true /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables `allowSyntheticDefaultImports` for type compatibility. */,
73 | // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
74 | "forceConsistentCasingInFileNames": true /* Ensure that casing is correct in imports. */,
75 |
76 | /* Type Checking */
77 | "strict": true /* Enable all strict type-checking options. */,
78 | // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied `any` type.. */
79 | // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */
80 | // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
81 | // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */
82 | // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */
83 | // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */
84 | // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */
85 | // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
86 | // "noUnusedLocals": true, /* Enable error reporting when a local variables aren't read. */
87 | // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read */
88 | // "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */
89 | // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
90 | // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
91 | // "noUncheckedIndexedAccess": true, /* Include 'undefined' in index signature results */
92 | // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
93 | // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type */
94 | // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
95 | // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
96 |
97 | /* Completeness */
98 | // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
99 | "skipLibCheck": true /* Skip type checking all .d.ts files. */
100 | }
101 | }
102 |
--------------------------------------------------------------------------------
/examples/cloudflare/wrangler.toml:
--------------------------------------------------------------------------------
1 | name = "sdk"
2 | main = "src/worker.ts"
3 | compatibility_date = "2023-10-27"
4 |
--------------------------------------------------------------------------------
/examples/deno/main.test.ts:
--------------------------------------------------------------------------------
1 | import { expect, test } from "bun:test";
2 |
3 | const url = process.env.DEPLOYMENT_URL;
4 | if (!url) {
5 | throw new Error("DEPLOYMENT_URL not set");
6 | }
7 |
8 | test("works", async () => {
9 | const res = await fetch(url);
10 | if (res.status !== 200) {
11 | console.log(await res.text());
12 | }
13 | expect(res.status).toEqual(200);
14 |
15 | const response = (await res.json()) as { shouldBeTrue: boolean; shouldBeFalse: boolean };
16 | expect(response.shouldBeTrue).toBeTrue();
17 | expect(response.shouldBeFalse).toBeFalse();
18 | });
19 |
--------------------------------------------------------------------------------
/examples/deno/main.ts:
--------------------------------------------------------------------------------
1 | import { serve } from "https://deno.land/std@0.177.0/http/server.ts";
2 | import { isTrue } from "https://esm.sh/@chronark/sdk@latest";
3 |
4 | serve(async (_req: Request) => {
5 | return new Response(
6 | JSON.stringify({
7 | shouldBeTrue: isTrue(true),
8 | shouldBeFalse: isTrue(false),
9 | }),
10 | { status: 200 },
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/examples/nextjs/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 | .yarn/install-state.gz
8 |
9 | # testing
10 | /coverage
11 |
12 | # next.js
13 | /.next/
14 | /out/
15 |
16 | # production
17 | /build
18 |
19 | # misc
20 | .DS_Store
21 | *.pem
22 |
23 | # debug
24 | npm-debug.log*
25 | yarn-debug.log*
26 | yarn-error.log*
27 |
28 | # local env files
29 | .env*.local
30 |
31 | # vercel
32 | .vercel
33 |
34 | # typescript
35 | *.tsbuildinfo
36 | next-env.d.ts
37 |
--------------------------------------------------------------------------------
/examples/nextjs/README.md:
--------------------------------------------------------------------------------
1 | This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
2 |
3 | ## Getting Started
4 |
5 | First, run the development server:
6 |
7 | ```bash
8 | npm run dev
9 | # or
10 | yarn dev
11 | # or
12 | pnpm dev
13 | # or
14 | bun dev
15 | ```
16 |
17 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
18 |
19 | You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
20 |
21 | This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
22 |
23 | ## Learn More
24 |
25 | To learn more about Next.js, take a look at the following resources:
26 |
27 | - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
28 | - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
29 |
30 | You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
31 |
32 | ## Deploy on Vercel
33 |
34 | The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
35 |
36 | Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
37 |
--------------------------------------------------------------------------------
/examples/nextjs/app/layout.tsx:
--------------------------------------------------------------------------------
1 | export const metadata = {
2 | title: "Next.js",
3 | description: "Generated by Next.js",
4 | };
5 |
6 | export default function RootLayout({
7 | children,
8 | }: {
9 | children: React.ReactNode;
10 | }) {
11 | return (
12 |
13 | {children}
14 |
15 | );
16 | }
17 |
--------------------------------------------------------------------------------
/examples/nextjs/app/route.ts:
--------------------------------------------------------------------------------
1 | import { isTrue } from "@chronark/sdk";
2 |
3 | export const runtime = "edge";
4 |
5 | /**
6 | * This is obviously a ridiculous route, but the only thing we care about is that our code can run
7 | * in this environment
8 | */
9 | export function GET(_req: Request): Response {
10 | return Response.json({
11 | shouldBeTrue: isTrue(true),
12 | shouldBeFalse: isTrue(false),
13 | });
14 | }
15 |
--------------------------------------------------------------------------------
/examples/nextjs/bun.lockb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/chronark/sdk/19ded770d95104a643cf2a3f8797bec19e36f636/examples/nextjs/bun.lockb
--------------------------------------------------------------------------------
/examples/nextjs/ci.test.ts:
--------------------------------------------------------------------------------
1 | import { expect, test } from "bun:test";
2 |
3 | const url = process.env.DEPLOYMENT_URL;
4 | if (!url) {
5 | throw new Error("DEPLOYMENT_URL not set");
6 | }
7 |
8 | test("works", async () => {
9 | const res = await fetch(url);
10 | if (res.status !== 200) {
11 | console.log(await res.text());
12 | }
13 | expect(res.status).toEqual(200);
14 |
15 | const response = (await res.json()) as { shouldBeTrue: boolean; shouldBeFalse: boolean };
16 | expect(response.shouldBeTrue).toBeTrue();
17 | expect(response.shouldBeFalse).toBeFalse();
18 | });
19 |
--------------------------------------------------------------------------------
/examples/nextjs/next.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('next').NextConfig} */
2 | const nextConfig = {};
3 |
4 | module.exports = nextConfig;
5 |
--------------------------------------------------------------------------------
/examples/nextjs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "next",
3 | "version": "0.1.0",
4 | "private": true,
5 | "scripts": {
6 | "dev": "next dev",
7 | "build": "next build",
8 | "start": "next start",
9 | "lint": "next lint"
10 | },
11 | "dependencies": {
12 | "react": "^18",
13 | "react-dom": "^18",
14 | "next": "14.0.0",
15 | "@chronark/sdk": "^0.0.2"
16 | },
17 | "devDependencies": {
18 | "typescript": "^5",
19 | "@types/node": "^20",
20 | "@types/react": "^18",
21 | "@types/react-dom": "^18",
22 | "autoprefixer": "^10",
23 | "postcss": "^8",
24 | "tailwindcss": "^3"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/examples/nextjs/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: {
3 | tailwindcss: {},
4 | autoprefixer: {},
5 | },
6 | };
7 |
--------------------------------------------------------------------------------
/examples/nextjs/tailwind.config.ts:
--------------------------------------------------------------------------------
1 | import type { Config } from "tailwindcss";
2 |
3 | const config: Config = {
4 | content: [
5 | "./pages/**/*.{js,ts,jsx,tsx,mdx}",
6 | "./components/**/*.{js,ts,jsx,tsx,mdx}",
7 | "./app/**/*.{js,ts,jsx,tsx,mdx}",
8 | ],
9 | theme: {
10 | extend: {
11 | backgroundImage: {
12 | "gradient-radial": "radial-gradient(var(--tw-gradient-stops))",
13 | "gradient-conic": "conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))",
14 | },
15 | },
16 | },
17 | plugins: [],
18 | };
19 | export default config;
20 |
--------------------------------------------------------------------------------
/examples/nextjs/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "lib": ["dom", "dom.iterable", "esnext"],
5 | "allowJs": true,
6 | "skipLibCheck": true,
7 | "strict": true,
8 | "noEmit": true,
9 | "esModuleInterop": true,
10 | "module": "esnext",
11 | "moduleResolution": "bundler",
12 | "resolveJsonModule": true,
13 | "isolatedModules": true,
14 | "jsx": "preserve",
15 | "incremental": true,
16 | "plugins": [
17 | {
18 | "name": "next"
19 | }
20 | ],
21 | "paths": {
22 | "@/*": ["./*"]
23 | }
24 | },
25 | "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
26 | "exclude": ["node_modules"]
27 | }
28 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@chronark/sdk",
3 | "description": "Typescritp SDK Template",
4 | "version": "0.0.2",
5 | "repository": {
6 | "type": "git",
7 | "url": "git+https://github.com/chronark/sdk.git"
8 | },
9 | "author": "Andreas Thomas ",
10 | "license": "MIT",
11 | "bugs": {
12 | "url": "https://github.com/chronark/sdk/issues"
13 | },
14 | "homepage": "https://github.com/chronark/sdk#readme",
15 | "files": [
16 | "README.md",
17 | "LICENSE",
18 | "./dist"
19 | ],
20 | "main": "./dist/index.js",
21 | "types": "./dist/index.d.ts",
22 | "module": "./dist/index.mjs",
23 | "devDependencies": {
24 | "@biomejs/biome": "^1.3.1",
25 | "bun-types": "latest",
26 | "tsup": "^7.2.0"
27 | },
28 | "scripts": {
29 | "build": "tsup",
30 | "fmt": "biome check --apply ."
31 | },
32 | "peerDependencies": {
33 | "typescript": "^5.0.0"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '6.0'
2 |
3 | settings:
4 | autoInstallPeers: true
5 | excludeLinksFromLockfile: false
6 |
7 | dependencies:
8 | typescript:
9 | specifier: ^5.0.0
10 | version: 5.0.2
11 |
12 | devDependencies:
13 | '@biomejs/biome':
14 | specifier: ^1.3.1
15 | version: 1.3.1
16 | bun-types:
17 | specifier: latest
18 | version: 1.0.6
19 | tsup:
20 | specifier: ^7.2.0
21 | version: 7.2.0(typescript@5.0.2)
22 |
23 | packages:
24 |
25 | /@biomejs/biome@1.3.1:
26 | resolution: {integrity: sha512-ufGCBj8ZNbF+vZDZscqvvLIGsh8M4BduQoJ1X3nm8c9Dupp8gzAKibZSWDLLcgnsAVeKEmWwY6r3Wv/JIa0LgA==}
27 | engines: {node: '>=14.*'}
28 | hasBin: true
29 | requiresBuild: true
30 | optionalDependencies:
31 | '@biomejs/cli-darwin-arm64': 1.3.1
32 | '@biomejs/cli-darwin-x64': 1.3.1
33 | '@biomejs/cli-linux-arm64': 1.3.1
34 | '@biomejs/cli-linux-x64': 1.3.1
35 | '@biomejs/cli-win32-arm64': 1.3.1
36 | '@biomejs/cli-win32-x64': 1.3.1
37 | dev: true
38 |
39 | /@biomejs/cli-darwin-arm64@1.3.1:
40 | resolution: {integrity: sha512-m3cBroQftLFYFh3to6RO4ooLqZsE2K9yf5xOlDjm6D4Vrgq85XFwDOxjjJyGGDjDPQ55xGunm80qmGr8jTjiyA==}
41 | engines: {node: '>=14.*'}
42 | cpu: [arm64]
43 | os: [darwin]
44 | requiresBuild: true
45 | dev: true
46 | optional: true
47 |
48 | /@biomejs/cli-darwin-x64@1.3.1:
49 | resolution: {integrity: sha512-i2yDivc/HHBRFJMoRUUPsFs9pKK0NnS/8tQg/uqNsAkLMF9OKZCCxtUJPmpUBHpdQ2f39An1cVpFmCIEv0uYJQ==}
50 | engines: {node: '>=14.*'}
51 | cpu: [x64]
52 | os: [darwin]
53 | requiresBuild: true
54 | dev: true
55 | optional: true
56 |
57 | /@biomejs/cli-linux-arm64@1.3.1:
58 | resolution: {integrity: sha512-H56MB7Mf59snzG+nLpfS2j3jXsJ+a6aQOBeRiT0rgn44FZ63yI9jWNIgN1+Xylsa8shmwtquOkoxLS/4KKt0Qg==}
59 | engines: {node: '>=14.*'}
60 | cpu: [arm64]
61 | os: [linux]
62 | requiresBuild: true
63 | dev: true
64 | optional: true
65 |
66 | /@biomejs/cli-linux-x64@1.3.1:
67 | resolution: {integrity: sha512-8ENayCpYXXC77a7AxDNjC+pPKMYteLzysxhkCCZ7Gd2sWtrH8iMM45JL8wQJhoHz5NT3+qgsfGafiNuxeVAVlg==}
68 | engines: {node: '>=14.*'}
69 | cpu: [x64]
70 | os: [linux]
71 | requiresBuild: true
72 | dev: true
73 | optional: true
74 |
75 | /@biomejs/cli-win32-arm64@1.3.1:
76 | resolution: {integrity: sha512-gAx/E949/1/jQDwG9nTspVtjikBI/y7RbbUwwBVABF1bcAUC63VhrHfKJRbM7VTXMlZ7n9YrxkyMww8vf40qcQ==}
77 | engines: {node: '>=14.*'}
78 | cpu: [arm64]
79 | os: [win32]
80 | requiresBuild: true
81 | dev: true
82 | optional: true
83 |
84 | /@biomejs/cli-win32-x64@1.3.1:
85 | resolution: {integrity: sha512-+08eKmEdVM7d4UxY/tff2aPXbeUNNp6wwH7v0FbrE+25mH9lhELgylEk4+k6OLXOcDT7KDAduzP2f9CuM/Aj9w==}
86 | engines: {node: '>=14.*'}
87 | cpu: [x64]
88 | os: [win32]
89 | requiresBuild: true
90 | dev: true
91 | optional: true
92 |
93 | /@esbuild/android-arm64@0.18.20:
94 | resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==}
95 | engines: {node: '>=12'}
96 | cpu: [arm64]
97 | os: [android]
98 | requiresBuild: true
99 | dev: true
100 | optional: true
101 |
102 | /@esbuild/android-arm@0.18.20:
103 | resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==}
104 | engines: {node: '>=12'}
105 | cpu: [arm]
106 | os: [android]
107 | requiresBuild: true
108 | dev: true
109 | optional: true
110 |
111 | /@esbuild/android-x64@0.18.20:
112 | resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==}
113 | engines: {node: '>=12'}
114 | cpu: [x64]
115 | os: [android]
116 | requiresBuild: true
117 | dev: true
118 | optional: true
119 |
120 | /@esbuild/darwin-arm64@0.18.20:
121 | resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==}
122 | engines: {node: '>=12'}
123 | cpu: [arm64]
124 | os: [darwin]
125 | requiresBuild: true
126 | dev: true
127 | optional: true
128 |
129 | /@esbuild/darwin-x64@0.18.20:
130 | resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==}
131 | engines: {node: '>=12'}
132 | cpu: [x64]
133 | os: [darwin]
134 | requiresBuild: true
135 | dev: true
136 | optional: true
137 |
138 | /@esbuild/freebsd-arm64@0.18.20:
139 | resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==}
140 | engines: {node: '>=12'}
141 | cpu: [arm64]
142 | os: [freebsd]
143 | requiresBuild: true
144 | dev: true
145 | optional: true
146 |
147 | /@esbuild/freebsd-x64@0.18.20:
148 | resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==}
149 | engines: {node: '>=12'}
150 | cpu: [x64]
151 | os: [freebsd]
152 | requiresBuild: true
153 | dev: true
154 | optional: true
155 |
156 | /@esbuild/linux-arm64@0.18.20:
157 | resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==}
158 | engines: {node: '>=12'}
159 | cpu: [arm64]
160 | os: [linux]
161 | requiresBuild: true
162 | dev: true
163 | optional: true
164 |
165 | /@esbuild/linux-arm@0.18.20:
166 | resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==}
167 | engines: {node: '>=12'}
168 | cpu: [arm]
169 | os: [linux]
170 | requiresBuild: true
171 | dev: true
172 | optional: true
173 |
174 | /@esbuild/linux-ia32@0.18.20:
175 | resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==}
176 | engines: {node: '>=12'}
177 | cpu: [ia32]
178 | os: [linux]
179 | requiresBuild: true
180 | dev: true
181 | optional: true
182 |
183 | /@esbuild/linux-loong64@0.18.20:
184 | resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==}
185 | engines: {node: '>=12'}
186 | cpu: [loong64]
187 | os: [linux]
188 | requiresBuild: true
189 | dev: true
190 | optional: true
191 |
192 | /@esbuild/linux-mips64el@0.18.20:
193 | resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==}
194 | engines: {node: '>=12'}
195 | cpu: [mips64el]
196 | os: [linux]
197 | requiresBuild: true
198 | dev: true
199 | optional: true
200 |
201 | /@esbuild/linux-ppc64@0.18.20:
202 | resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==}
203 | engines: {node: '>=12'}
204 | cpu: [ppc64]
205 | os: [linux]
206 | requiresBuild: true
207 | dev: true
208 | optional: true
209 |
210 | /@esbuild/linux-riscv64@0.18.20:
211 | resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==}
212 | engines: {node: '>=12'}
213 | cpu: [riscv64]
214 | os: [linux]
215 | requiresBuild: true
216 | dev: true
217 | optional: true
218 |
219 | /@esbuild/linux-s390x@0.18.20:
220 | resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==}
221 | engines: {node: '>=12'}
222 | cpu: [s390x]
223 | os: [linux]
224 | requiresBuild: true
225 | dev: true
226 | optional: true
227 |
228 | /@esbuild/linux-x64@0.18.20:
229 | resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==}
230 | engines: {node: '>=12'}
231 | cpu: [x64]
232 | os: [linux]
233 | requiresBuild: true
234 | dev: true
235 | optional: true
236 |
237 | /@esbuild/netbsd-x64@0.18.20:
238 | resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==}
239 | engines: {node: '>=12'}
240 | cpu: [x64]
241 | os: [netbsd]
242 | requiresBuild: true
243 | dev: true
244 | optional: true
245 |
246 | /@esbuild/openbsd-x64@0.18.20:
247 | resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==}
248 | engines: {node: '>=12'}
249 | cpu: [x64]
250 | os: [openbsd]
251 | requiresBuild: true
252 | dev: true
253 | optional: true
254 |
255 | /@esbuild/sunos-x64@0.18.20:
256 | resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==}
257 | engines: {node: '>=12'}
258 | cpu: [x64]
259 | os: [sunos]
260 | requiresBuild: true
261 | dev: true
262 | optional: true
263 |
264 | /@esbuild/win32-arm64@0.18.20:
265 | resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==}
266 | engines: {node: '>=12'}
267 | cpu: [arm64]
268 | os: [win32]
269 | requiresBuild: true
270 | dev: true
271 | optional: true
272 |
273 | /@esbuild/win32-ia32@0.18.20:
274 | resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==}
275 | engines: {node: '>=12'}
276 | cpu: [ia32]
277 | os: [win32]
278 | requiresBuild: true
279 | dev: true
280 | optional: true
281 |
282 | /@esbuild/win32-x64@0.18.20:
283 | resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==}
284 | engines: {node: '>=12'}
285 | cpu: [x64]
286 | os: [win32]
287 | requiresBuild: true
288 | dev: true
289 | optional: true
290 |
291 | /@jridgewell/gen-mapping@0.3.3:
292 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
293 | engines: {node: '>=6.0.0'}
294 | dependencies:
295 | '@jridgewell/set-array': 1.1.2
296 | '@jridgewell/sourcemap-codec': 1.4.15
297 | '@jridgewell/trace-mapping': 0.3.20
298 | dev: true
299 |
300 | /@jridgewell/resolve-uri@3.1.1:
301 | resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
302 | engines: {node: '>=6.0.0'}
303 | dev: true
304 |
305 | /@jridgewell/set-array@1.1.2:
306 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
307 | engines: {node: '>=6.0.0'}
308 | dev: true
309 |
310 | /@jridgewell/sourcemap-codec@1.4.15:
311 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
312 | dev: true
313 |
314 | /@jridgewell/trace-mapping@0.3.20:
315 | resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==}
316 | dependencies:
317 | '@jridgewell/resolve-uri': 3.1.1
318 | '@jridgewell/sourcemap-codec': 1.4.15
319 | dev: true
320 |
321 | /@nodelib/fs.scandir@2.1.5:
322 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
323 | engines: {node: '>= 8'}
324 | dependencies:
325 | '@nodelib/fs.stat': 2.0.5
326 | run-parallel: 1.2.0
327 | dev: true
328 |
329 | /@nodelib/fs.stat@2.0.5:
330 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
331 | engines: {node: '>= 8'}
332 | dev: true
333 |
334 | /@nodelib/fs.walk@1.2.8:
335 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
336 | engines: {node: '>= 8'}
337 | dependencies:
338 | '@nodelib/fs.scandir': 2.1.5
339 | fastq: 1.15.0
340 | dev: true
341 |
342 | /any-promise@1.3.0:
343 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
344 | dev: true
345 |
346 | /anymatch@3.1.3:
347 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
348 | engines: {node: '>= 8'}
349 | dependencies:
350 | normalize-path: 3.0.0
351 | picomatch: 2.3.1
352 | dev: true
353 |
354 | /array-union@2.1.0:
355 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
356 | engines: {node: '>=8'}
357 | dev: true
358 |
359 | /balanced-match@1.0.2:
360 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
361 | dev: true
362 |
363 | /binary-extensions@2.2.0:
364 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
365 | engines: {node: '>=8'}
366 | dev: true
367 |
368 | /brace-expansion@1.1.11:
369 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
370 | dependencies:
371 | balanced-match: 1.0.2
372 | concat-map: 0.0.1
373 | dev: true
374 |
375 | /braces@3.0.2:
376 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
377 | engines: {node: '>=8'}
378 | dependencies:
379 | fill-range: 7.0.1
380 | dev: true
381 |
382 | /bun-types@1.0.6:
383 | resolution: {integrity: sha512-5QwynfXiRCRxPW3ZnC0Dv+sHHmctP4SHIuzsRKOWYO0HF/qUpsxQVexoviaxpmwDsF1hoVDDFdc4xUuafOzx1g==}
384 | dev: true
385 |
386 | /bundle-require@4.0.2(esbuild@0.18.20):
387 | resolution: {integrity: sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==}
388 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
389 | peerDependencies:
390 | esbuild: '>=0.17'
391 | dependencies:
392 | esbuild: 0.18.20
393 | load-tsconfig: 0.2.5
394 | dev: true
395 |
396 | /cac@6.7.14:
397 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
398 | engines: {node: '>=8'}
399 | dev: true
400 |
401 | /chokidar@3.5.3:
402 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
403 | engines: {node: '>= 8.10.0'}
404 | dependencies:
405 | anymatch: 3.1.3
406 | braces: 3.0.2
407 | glob-parent: 5.1.2
408 | is-binary-path: 2.1.0
409 | is-glob: 4.0.3
410 | normalize-path: 3.0.0
411 | readdirp: 3.6.0
412 | optionalDependencies:
413 | fsevents: 2.3.3
414 | dev: true
415 |
416 | /commander@4.1.1:
417 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
418 | engines: {node: '>= 6'}
419 | dev: true
420 |
421 | /concat-map@0.0.1:
422 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
423 | dev: true
424 |
425 | /cross-spawn@7.0.3:
426 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
427 | engines: {node: '>= 8'}
428 | dependencies:
429 | path-key: 3.1.1
430 | shebang-command: 2.0.0
431 | which: 2.0.2
432 | dev: true
433 |
434 | /debug@4.3.4:
435 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
436 | engines: {node: '>=6.0'}
437 | peerDependencies:
438 | supports-color: '*'
439 | peerDependenciesMeta:
440 | supports-color:
441 | optional: true
442 | dependencies:
443 | ms: 2.1.2
444 | dev: true
445 |
446 | /dir-glob@3.0.1:
447 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
448 | engines: {node: '>=8'}
449 | dependencies:
450 | path-type: 4.0.0
451 | dev: true
452 |
453 | /esbuild@0.18.20:
454 | resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==}
455 | engines: {node: '>=12'}
456 | hasBin: true
457 | requiresBuild: true
458 | optionalDependencies:
459 | '@esbuild/android-arm': 0.18.20
460 | '@esbuild/android-arm64': 0.18.20
461 | '@esbuild/android-x64': 0.18.20
462 | '@esbuild/darwin-arm64': 0.18.20
463 | '@esbuild/darwin-x64': 0.18.20
464 | '@esbuild/freebsd-arm64': 0.18.20
465 | '@esbuild/freebsd-x64': 0.18.20
466 | '@esbuild/linux-arm': 0.18.20
467 | '@esbuild/linux-arm64': 0.18.20
468 | '@esbuild/linux-ia32': 0.18.20
469 | '@esbuild/linux-loong64': 0.18.20
470 | '@esbuild/linux-mips64el': 0.18.20
471 | '@esbuild/linux-ppc64': 0.18.20
472 | '@esbuild/linux-riscv64': 0.18.20
473 | '@esbuild/linux-s390x': 0.18.20
474 | '@esbuild/linux-x64': 0.18.20
475 | '@esbuild/netbsd-x64': 0.18.20
476 | '@esbuild/openbsd-x64': 0.18.20
477 | '@esbuild/sunos-x64': 0.18.20
478 | '@esbuild/win32-arm64': 0.18.20
479 | '@esbuild/win32-ia32': 0.18.20
480 | '@esbuild/win32-x64': 0.18.20
481 | dev: true
482 |
483 | /execa@5.1.1:
484 | resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
485 | engines: {node: '>=10'}
486 | dependencies:
487 | cross-spawn: 7.0.3
488 | get-stream: 6.0.1
489 | human-signals: 2.1.0
490 | is-stream: 2.0.1
491 | merge-stream: 2.0.0
492 | npm-run-path: 4.0.1
493 | onetime: 5.1.2
494 | signal-exit: 3.0.7
495 | strip-final-newline: 2.0.0
496 | dev: true
497 |
498 | /fast-glob@3.3.1:
499 | resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==}
500 | engines: {node: '>=8.6.0'}
501 | dependencies:
502 | '@nodelib/fs.stat': 2.0.5
503 | '@nodelib/fs.walk': 1.2.8
504 | glob-parent: 5.1.2
505 | merge2: 1.4.1
506 | micromatch: 4.0.5
507 | dev: true
508 |
509 | /fastq@1.15.0:
510 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
511 | dependencies:
512 | reusify: 1.0.4
513 | dev: true
514 |
515 | /fill-range@7.0.1:
516 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
517 | engines: {node: '>=8'}
518 | dependencies:
519 | to-regex-range: 5.0.1
520 | dev: true
521 |
522 | /fs.realpath@1.0.0:
523 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
524 | dev: true
525 |
526 | /fsevents@2.3.3:
527 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
528 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
529 | os: [darwin]
530 | requiresBuild: true
531 | dev: true
532 | optional: true
533 |
534 | /get-stream@6.0.1:
535 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
536 | engines: {node: '>=10'}
537 | dev: true
538 |
539 | /glob-parent@5.1.2:
540 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
541 | engines: {node: '>= 6'}
542 | dependencies:
543 | is-glob: 4.0.3
544 | dev: true
545 |
546 | /glob@7.1.6:
547 | resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==}
548 | dependencies:
549 | fs.realpath: 1.0.0
550 | inflight: 1.0.6
551 | inherits: 2.0.4
552 | minimatch: 3.1.2
553 | once: 1.4.0
554 | path-is-absolute: 1.0.1
555 | dev: true
556 |
557 | /globby@11.1.0:
558 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
559 | engines: {node: '>=10'}
560 | dependencies:
561 | array-union: 2.1.0
562 | dir-glob: 3.0.1
563 | fast-glob: 3.3.1
564 | ignore: 5.2.4
565 | merge2: 1.4.1
566 | slash: 3.0.0
567 | dev: true
568 |
569 | /human-signals@2.1.0:
570 | resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
571 | engines: {node: '>=10.17.0'}
572 | dev: true
573 |
574 | /ignore@5.2.4:
575 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==}
576 | engines: {node: '>= 4'}
577 | dev: true
578 |
579 | /inflight@1.0.6:
580 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
581 | dependencies:
582 | once: 1.4.0
583 | wrappy: 1.0.2
584 | dev: true
585 |
586 | /inherits@2.0.4:
587 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
588 | dev: true
589 |
590 | /is-binary-path@2.1.0:
591 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
592 | engines: {node: '>=8'}
593 | dependencies:
594 | binary-extensions: 2.2.0
595 | dev: true
596 |
597 | /is-extglob@2.1.1:
598 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
599 | engines: {node: '>=0.10.0'}
600 | dev: true
601 |
602 | /is-glob@4.0.3:
603 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
604 | engines: {node: '>=0.10.0'}
605 | dependencies:
606 | is-extglob: 2.1.1
607 | dev: true
608 |
609 | /is-number@7.0.0:
610 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
611 | engines: {node: '>=0.12.0'}
612 | dev: true
613 |
614 | /is-stream@2.0.1:
615 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
616 | engines: {node: '>=8'}
617 | dev: true
618 |
619 | /isexe@2.0.0:
620 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
621 | dev: true
622 |
623 | /joycon@3.1.1:
624 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
625 | engines: {node: '>=10'}
626 | dev: true
627 |
628 | /lilconfig@2.1.0:
629 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
630 | engines: {node: '>=10'}
631 | dev: true
632 |
633 | /lines-and-columns@1.2.4:
634 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
635 | dev: true
636 |
637 | /load-tsconfig@0.2.5:
638 | resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==}
639 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
640 | dev: true
641 |
642 | /lodash.sortby@4.7.0:
643 | resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==}
644 | dev: true
645 |
646 | /merge-stream@2.0.0:
647 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
648 | dev: true
649 |
650 | /merge2@1.4.1:
651 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
652 | engines: {node: '>= 8'}
653 | dev: true
654 |
655 | /micromatch@4.0.5:
656 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
657 | engines: {node: '>=8.6'}
658 | dependencies:
659 | braces: 3.0.2
660 | picomatch: 2.3.1
661 | dev: true
662 |
663 | /mimic-fn@2.1.0:
664 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
665 | engines: {node: '>=6'}
666 | dev: true
667 |
668 | /minimatch@3.1.2:
669 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
670 | dependencies:
671 | brace-expansion: 1.1.11
672 | dev: true
673 |
674 | /ms@2.1.2:
675 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
676 | dev: true
677 |
678 | /mz@2.7.0:
679 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
680 | dependencies:
681 | any-promise: 1.3.0
682 | object-assign: 4.1.1
683 | thenify-all: 1.6.0
684 | dev: true
685 |
686 | /normalize-path@3.0.0:
687 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
688 | engines: {node: '>=0.10.0'}
689 | dev: true
690 |
691 | /npm-run-path@4.0.1:
692 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
693 | engines: {node: '>=8'}
694 | dependencies:
695 | path-key: 3.1.1
696 | dev: true
697 |
698 | /object-assign@4.1.1:
699 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
700 | engines: {node: '>=0.10.0'}
701 | dev: true
702 |
703 | /once@1.4.0:
704 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
705 | dependencies:
706 | wrappy: 1.0.2
707 | dev: true
708 |
709 | /onetime@5.1.2:
710 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
711 | engines: {node: '>=6'}
712 | dependencies:
713 | mimic-fn: 2.1.0
714 | dev: true
715 |
716 | /path-is-absolute@1.0.1:
717 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
718 | engines: {node: '>=0.10.0'}
719 | dev: true
720 |
721 | /path-key@3.1.1:
722 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
723 | engines: {node: '>=8'}
724 | dev: true
725 |
726 | /path-type@4.0.0:
727 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
728 | engines: {node: '>=8'}
729 | dev: true
730 |
731 | /picomatch@2.3.1:
732 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
733 | engines: {node: '>=8.6'}
734 | dev: true
735 |
736 | /pirates@4.0.6:
737 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
738 | engines: {node: '>= 6'}
739 | dev: true
740 |
741 | /postcss-load-config@4.0.1:
742 | resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==}
743 | engines: {node: '>= 14'}
744 | peerDependencies:
745 | postcss: '>=8.0.9'
746 | ts-node: '>=9.0.0'
747 | peerDependenciesMeta:
748 | postcss:
749 | optional: true
750 | ts-node:
751 | optional: true
752 | dependencies:
753 | lilconfig: 2.1.0
754 | yaml: 2.3.3
755 | dev: true
756 |
757 | /punycode@2.3.0:
758 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==}
759 | engines: {node: '>=6'}
760 | dev: true
761 |
762 | /queue-microtask@1.2.3:
763 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
764 | dev: true
765 |
766 | /readdirp@3.6.0:
767 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
768 | engines: {node: '>=8.10.0'}
769 | dependencies:
770 | picomatch: 2.3.1
771 | dev: true
772 |
773 | /resolve-from@5.0.0:
774 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
775 | engines: {node: '>=8'}
776 | dev: true
777 |
778 | /reusify@1.0.4:
779 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
780 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
781 | dev: true
782 |
783 | /rollup@3.29.4:
784 | resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==}
785 | engines: {node: '>=14.18.0', npm: '>=8.0.0'}
786 | hasBin: true
787 | optionalDependencies:
788 | fsevents: 2.3.3
789 | dev: true
790 |
791 | /run-parallel@1.2.0:
792 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
793 | dependencies:
794 | queue-microtask: 1.2.3
795 | dev: true
796 |
797 | /shebang-command@2.0.0:
798 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
799 | engines: {node: '>=8'}
800 | dependencies:
801 | shebang-regex: 3.0.0
802 | dev: true
803 |
804 | /shebang-regex@3.0.0:
805 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
806 | engines: {node: '>=8'}
807 | dev: true
808 |
809 | /signal-exit@3.0.7:
810 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
811 | dev: true
812 |
813 | /slash@3.0.0:
814 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
815 | engines: {node: '>=8'}
816 | dev: true
817 |
818 | /source-map@0.8.0-beta.0:
819 | resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==}
820 | engines: {node: '>= 8'}
821 | dependencies:
822 | whatwg-url: 7.1.0
823 | dev: true
824 |
825 | /strip-final-newline@2.0.0:
826 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
827 | engines: {node: '>=6'}
828 | dev: true
829 |
830 | /sucrase@3.34.0:
831 | resolution: {integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==}
832 | engines: {node: '>=8'}
833 | hasBin: true
834 | dependencies:
835 | '@jridgewell/gen-mapping': 0.3.3
836 | commander: 4.1.1
837 | glob: 7.1.6
838 | lines-and-columns: 1.2.4
839 | mz: 2.7.0
840 | pirates: 4.0.6
841 | ts-interface-checker: 0.1.13
842 | dev: true
843 |
844 | /thenify-all@1.6.0:
845 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
846 | engines: {node: '>=0.8'}
847 | dependencies:
848 | thenify: 3.3.1
849 | dev: true
850 |
851 | /thenify@3.3.1:
852 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
853 | dependencies:
854 | any-promise: 1.3.0
855 | dev: true
856 |
857 | /to-regex-range@5.0.1:
858 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
859 | engines: {node: '>=8.0'}
860 | dependencies:
861 | is-number: 7.0.0
862 | dev: true
863 |
864 | /tr46@1.0.1:
865 | resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==}
866 | dependencies:
867 | punycode: 2.3.0
868 | dev: true
869 |
870 | /tree-kill@1.2.2:
871 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
872 | hasBin: true
873 | dev: true
874 |
875 | /ts-interface-checker@0.1.13:
876 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
877 | dev: true
878 |
879 | /tsup@7.2.0(typescript@5.0.2):
880 | resolution: {integrity: sha512-vDHlczXbgUvY3rWvqFEbSqmC1L7woozbzngMqTtL2PGBODTtWlRwGDDawhvWzr5c1QjKe4OAKqJGfE1xeXUvtQ==}
881 | engines: {node: '>=16.14'}
882 | hasBin: true
883 | peerDependencies:
884 | '@swc/core': ^1
885 | postcss: ^8.4.12
886 | typescript: '>=4.1.0'
887 | peerDependenciesMeta:
888 | '@swc/core':
889 | optional: true
890 | postcss:
891 | optional: true
892 | typescript:
893 | optional: true
894 | dependencies:
895 | bundle-require: 4.0.2(esbuild@0.18.20)
896 | cac: 6.7.14
897 | chokidar: 3.5.3
898 | debug: 4.3.4
899 | esbuild: 0.18.20
900 | execa: 5.1.1
901 | globby: 11.1.0
902 | joycon: 3.1.1
903 | postcss-load-config: 4.0.1
904 | resolve-from: 5.0.0
905 | rollup: 3.29.4
906 | source-map: 0.8.0-beta.0
907 | sucrase: 3.34.0
908 | tree-kill: 1.2.2
909 | typescript: 5.0.2
910 | transitivePeerDependencies:
911 | - supports-color
912 | - ts-node
913 | dev: true
914 |
915 | /typescript@5.0.2:
916 | resolution: {integrity: sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw==}
917 | engines: {node: '>=12.20'}
918 | hasBin: true
919 |
920 | /webidl-conversions@4.0.2:
921 | resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==}
922 | dev: true
923 |
924 | /whatwg-url@7.1.0:
925 | resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==}
926 | dependencies:
927 | lodash.sortby: 4.7.0
928 | tr46: 1.0.1
929 | webidl-conversions: 4.0.2
930 | dev: true
931 |
932 | /which@2.0.2:
933 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
934 | engines: {node: '>= 8'}
935 | hasBin: true
936 | dependencies:
937 | isexe: 2.0.0
938 | dev: true
939 |
940 | /wrappy@1.0.2:
941 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
942 | dev: true
943 |
944 | /yaml@2.3.3:
945 | resolution: {integrity: sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ==}
946 | engines: {node: '>= 14'}
947 | dev: true
948 |
--------------------------------------------------------------------------------
/src/booleans.test.ts:
--------------------------------------------------------------------------------
1 | import { describe, expect, test } from "bun:test";
2 | import { isFalse, isTrue } from "./booleans";
3 |
4 | describe("isTrue()", () => {
5 | test("`false` should return `false`", () => {
6 | expect(isTrue(false)).toBeFalse();
7 | });
8 |
9 | test("`true` should return `true`", () => {
10 | expect(isTrue(true)).toBeTrue();
11 | });
12 | });
13 |
14 | describe("isFalse()", () => {
15 | test("`false` should return `true`", () => {
16 | expect(isFalse(false)).toBeTrue();
17 | });
18 | test("`true` should return `false`", () => {
19 | expect(isFalse(true)).toBeFalse();
20 | });
21 | });
22 |
--------------------------------------------------------------------------------
/src/booleans.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * isTrue returns `true` if the input is true
3 | *
4 | *
5 | * Sorry I could not come with a more ridiculous function.
6 | */
7 | export function isTrue(b: boolean): boolean {
8 | return b === true;
9 | }
10 |
11 | /**
12 | * isFalse returns `true` if the input is false
13 | */
14 | export function isFalse(b: boolean): boolean {
15 | return !isTrue(b);
16 | }
17 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from "./booleans";
2 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Visit https://aka.ms/tsconfig to read more about this file */
4 |
5 | /* Projects */
6 | // "incremental": true, /* Save .tsbuildinfo files to allow for incremental compilation of projects. */
7 | // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
8 | // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */
9 | // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */
10 | // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
11 | // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
12 |
13 | /* Language and Environment */
14 | "target": "ESNext", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
15 | // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
16 | // "jsx": "preserve", /* Specify what JSX code is generated. */
17 | // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
18 | // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
19 | // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */
20 | // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
21 | // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */
22 | // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */
23 | // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
24 | // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
25 | // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */
26 |
27 | /* Modules */
28 | // "module": "commonjs", /* Specify what module code is generated. */
29 | // "rootDir": "./", /* Specify the root folder within your source files. */
30 | // "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
31 | // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
32 | // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
33 | // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
34 | // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */
35 | // "types": [], /* Specify type package names to be included without being referenced in a source file. */
36 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
37 | // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */
38 | // "resolveJsonModule": true, /* Enable importing .json files. */
39 | // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */
40 |
41 | /* JavaScript Support */
42 | // "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */
43 | // "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */
44 | // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */
45 |
46 | /* Emit */
47 | // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
48 | // "declarationMap": true, /* Create sourcemaps for d.ts files. */
49 | // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
50 | // "sourceMap": true, /* Create source map files for emitted JavaScript files. */
51 | // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */
52 | "outDir": "./dist", /* Specify an output folder for all emitted files. */
53 | // "removeComments": true, /* Disable emitting comments. */
54 | "noEmit": true, /* Disable emitting files from a compilation. */
55 | // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
56 | // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types. */
57 | // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
58 | // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
59 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
60 | // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
61 | // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
62 | // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
63 | // "newLine": "crlf", /* Set the newline character for emitting files. */
64 | // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */
65 | // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */
66 | // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
67 | // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */
68 | // "declarationDir": "./", /* Specify the output directory for generated declaration files. */
69 | // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
70 |
71 | /* Interop Constraints */
72 | // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
73 | // "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
74 | "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */
75 | // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
76 | "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
77 |
78 | /* Type Checking */
79 | "strict": true, /* Enable all strict type-checking options. */
80 | // "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */
81 | "strictNullChecks": true, /* When type checking, take into account 'null' and 'undefined'. */
82 | "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
83 | "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */
84 | "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */
85 | // "noImplicitThis": true, /* Enable error reporting when 'this' is given the type 'any'. */
86 | // "useUnknownInCatchVariables": true, /* Default catch clause variables as 'unknown' instead of 'any'. */
87 | // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
88 | // "noUnusedLocals": true, /* Enable error reporting when local variables aren't read. */
89 | // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read. */
90 | "exactOptionalPropertyTypes": true, /* Interpret optional property types as written, rather than adding 'undefined'. */
91 | // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
92 | // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
93 | // "noUncheckedIndexedAccess": true, /* Add 'undefined' to a type when accessed using an index. */
94 | // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
95 | // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type. */
96 | // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
97 | // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
98 |
99 | /* Completeness */
100 | // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
101 | "skipLibCheck": true /* Skip type checking all .d.ts files. */
102 | }
103 | }
104 |
--------------------------------------------------------------------------------
/tsup.config.js:
--------------------------------------------------------------------------------
1 | import { defineConfig } from "tsup";
2 |
3 | export default defineConfig({
4 | entry: ["src/index.ts"],
5 | format: ["cjs", "esm"],
6 | splitting: false,
7 | sourcemap: false,
8 | clean: true,
9 | bundle: true,
10 | dts: true,
11 | });
12 |
--------------------------------------------------------------------------------