.tangled/images/apiWalk.jpg
.tangled/images/apiWalk.jpg
This is a binary file and will not be displayed.
.tangled/images/carWalk.jpg
.tangled/images/carWalk.jpg
This is a binary file and will not be displayed.
+13
-2
README.md
+13
-2
README.md
···
1
-
# WIP
1
+
# Walk The Repo
2
+
3
+
demo: [https://walktherepo.wisp.place](https://walktherepo.wisp.place/)
4
+
5
+
A demo showing how to use [@atcute](https://github.com/mary-ext/atcute) to download a user's repo and "walk" it to access all the records inside of it faster than you would via multiple api calls.
6
+
If you're just wanting to see that code directly it's [here](https://tangled.org/baileytownsend.dev/repo-walk-example/blob/main/src/lib/RepoStats.svelte#L56).
7
+
8
+
Comparisons using my repo as an example.
9
+
10
+
Repo Export
11
+

2
12
3
-
Will show how to get a users repo and walk it so you don't do 10 billion list records calls
13
+
API Calls
14
+

+45
eslint.config.js
+45
eslint.config.js
···
1
+
import { fileURLToPath } from 'node:url';
2
+
import { includeIgnoreFile } from '@eslint/compat';
3
+
import js from '@eslint/js';
4
+
import svelte from 'eslint-plugin-svelte';
5
+
import { defineConfig } from 'eslint/config';
6
+
import globals from 'globals';
7
+
import ts from 'typescript-eslint';
8
+
import svelteConfig from './svelte.config.js';
9
+
10
+
const gitignorePath = fileURLToPath(new URL('./.gitignore', import.meta.url));
11
+
12
+
export default defineConfig(
13
+
includeIgnoreFile(gitignorePath),
14
+
js.configs.recommended,
15
+
...ts.configs.recommended,
16
+
...svelte.configs.recommended,
17
+
{
18
+
languageOptions: {
19
+
globals: { ...globals.browser, ...globals.node }
20
+
},
21
+
rules: { // typescript-eslint strongly recommend that you do not use the no-undef lint rule on TypeScript projects.
22
+
// see: https://typescript-eslint.io/troubleshooting/faqs/eslint/#i-get-errors-from-the-no-undef-rule-about-global-variables-not-being-defined-even-though-there-are-no-typescript-errors
23
+
'no-undef': 'off',
24
+
'quotes': ['error', 'single'],
25
+
'semi': ['error', 'always'],
26
+
'object-curly-spacing': ['error', 'always']
27
+
}
28
+
},
29
+
{
30
+
files: [
31
+
'**/*.svelte',
32
+
'**/*.svelte.ts',
33
+
'**/*.svelte.js'
34
+
],
35
+
languageOptions: {
36
+
parserOptions: {
37
+
projectService: true,
38
+
extraFileExtensions: ['.svelte'],
39
+
parser: ts.parser,
40
+
svelteConfig
41
+
}
42
+
}
43
+
}
44
+
);
45
+
+7
-3
index.html
+7
-3
index.html
···
1
1
<!doctype html>
2
2
<html lang="en">
3
-
<head>
3
+
<head data-theme="forest">
4
4
<meta charset="UTF-8" />
5
-
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
5
+
<link rel="icon" type="image/svg+xml" href="/dude.png" />
6
6
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
-
<title>repo-walk-example</title>
7
+
<title>Repo Walking</title>
8
+
<meta name="og:title" content="Repo Walking">
9
+
<meta name="description" content="Walk the repo, count the records.">
10
+
<meta name="og:description" content="Walk the repo, count the records.">
11
+
8
12
</head>
9
13
<body>
10
14
<div id="app"></div>
-46
lexicons/com/atproto/sync/getRepo.json
-46
lexicons/com/atproto/sync/getRepo.json
···
1
-
{
2
-
"id": "com.atproto.sync.getRepo",
3
-
"defs": {
4
-
"main": {
5
-
"type": "query",
6
-
"errors": [
7
-
{
8
-
"name": "RepoNotFound"
9
-
},
10
-
{
11
-
"name": "RepoTakendown"
12
-
},
13
-
{
14
-
"name": "RepoSuspended"
15
-
},
16
-
{
17
-
"name": "RepoDeactivated"
18
-
}
19
-
],
20
-
"output": {
21
-
"encoding": "application/vnd.ipld.car"
22
-
},
23
-
"parameters": {
24
-
"type": "params",
25
-
"required": [
26
-
"did"
27
-
],
28
-
"properties": {
29
-
"did": {
30
-
"type": "string",
31
-
"format": "did",
32
-
"description": "The DID of the repo."
33
-
},
34
-
"since": {
35
-
"type": "string",
36
-
"format": "tid",
37
-
"description": "The revision ('rev') of the repo to create a diff from."
38
-
}
39
-
}
40
-
},
41
-
"description": "Download a repository export as CAR file. Optionally only a 'diff' since a previous revision. Does not require auth; implemented by PDS."
42
-
}
43
-
},
44
-
"$type": "com.atproto.lexicon.schema",
45
-
"lexicon": 1
46
-
}
+17
-6
package.json
+17
-6
package.json
···
7
7
"dev": "vite",
8
8
"build": "vite build",
9
9
"preview": "vite preview",
10
-
"check": "svelte-check --tsconfig ./tsconfig.app.json && tsc -p tsconfig.node.json"
10
+
"check": "svelte-check --tsconfig ./tsconfig.app.json && tsc -p tsconfig.node.json",
11
+
"lint": "eslint ."
11
12
},
12
13
"devDependencies": {
13
14
"@sveltejs/vite-plugin-svelte": "^6.2.1",
14
15
"@tsconfig/svelte": "^5.0.6",
15
16
"@types/node": "^24.10.1",
17
+
"daisyui": "^5.5.14",
16
18
"svelte": "^5.43.8",
17
19
"svelte-check": "^4.3.4",
18
20
"typescript": "~5.9.3",
19
21
"vite": "^7.2.4"
20
22
},
21
23
"dependencies": {
22
-
"@atcute/car": "^5.0.0",
23
-
"@atcute/cbor": "^2.2.8",
24
-
"@atproto-labs/handle-resolver": "^0.3.5",
25
-
"@atproto/identity": "^0.4.10",
26
-
"@atproto/lex": "^0.0.10"
24
+
"@atcute/atproto": "^3.1.10",
25
+
"@atcute/client": "^4.2.1",
26
+
"@atcute/identity": "^1.1.3",
27
+
"@atcute/identity-resolver": "^1.2.2",
28
+
"@atcute/lexicons": "^1.2.6",
29
+
"@atcute/repo": "^0.1.1",
30
+
"@eslint/compat": "^2.0.0",
31
+
"@eslint/js": "^9.39.2",
32
+
"@tailwindcss/vite": "^4.1.18",
33
+
"eslint": "^9.39.2",
34
+
"eslint-plugin-svelte": "^3.14.0",
35
+
"globals": "^17.0.0",
36
+
"tailwindcss": "^4.1.18",
37
+
"typescript-eslint": "^8.52.0"
27
38
}
28
39
}
+1351
-526
pnpm-lock.yaml
+1351
-526
pnpm-lock.yaml
···
8
8
9
9
.:
10
10
dependencies:
11
-
'@atcute/car':
12
-
specifier: ^5.0.0
13
-
version: 5.0.0
14
-
'@atcute/cbor':
15
-
specifier: ^2.2.8
16
-
version: 2.2.8
17
-
'@atproto-labs/handle-resolver':
18
-
specifier: ^0.3.5
19
-
version: 0.3.5
20
-
'@atproto/identity':
21
-
specifier: ^0.4.10
22
-
version: 0.4.10
23
-
'@atproto/lex':
24
-
specifier: ^0.0.10
25
-
version: 0.0.10
11
+
'@atcute/atproto':
12
+
specifier: ^3.1.10
13
+
version: 3.1.10
14
+
'@atcute/client':
15
+
specifier: ^4.2.1
16
+
version: 4.2.1
17
+
'@atcute/identity':
18
+
specifier: ^1.1.3
19
+
version: 1.1.3
20
+
'@atcute/identity-resolver':
21
+
specifier: ^1.2.2
22
+
version: 1.2.2(@atcute/identity@1.1.3)
23
+
'@atcute/lexicons':
24
+
specifier: ^1.2.6
25
+
version: 1.2.6
26
+
'@atcute/repo':
27
+
specifier: ^0.1.1
28
+
version: 0.1.1
29
+
'@eslint/compat':
30
+
specifier: ^2.0.0
31
+
version: 2.0.0(eslint@9.39.2(jiti@2.6.1))
32
+
'@eslint/js':
33
+
specifier: ^9.39.2
34
+
version: 9.39.2
35
+
'@tailwindcss/vite':
36
+
specifier: ^4.1.18
37
+
version: 4.1.18(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))
38
+
eslint:
39
+
specifier: ^9.39.2
40
+
version: 9.39.2(jiti@2.6.1)
41
+
eslint-plugin-svelte:
42
+
specifier: ^3.14.0
43
+
version: 3.14.0(eslint@9.39.2(jiti@2.6.1))(svelte@5.46.1)
44
+
globals:
45
+
specifier: ^17.0.0
46
+
version: 17.0.0
47
+
tailwindcss:
48
+
specifier: ^4.1.18
49
+
version: 4.1.18
50
+
typescript-eslint:
51
+
specifier: ^8.52.0
52
+
version: 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
26
53
devDependencies:
27
54
'@sveltejs/vite-plugin-svelte':
28
55
specifier: ^6.2.1
29
-
version: 6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4))
56
+
version: 6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))
30
57
'@tsconfig/svelte':
31
58
specifier: ^5.0.6
32
59
version: 5.0.6
33
60
'@types/node':
34
61
specifier: ^24.10.1
35
62
version: 24.10.4
63
+
daisyui:
64
+
specifier: ^5.5.14
65
+
version: 5.5.14
36
66
svelte:
37
67
specifier: ^5.43.8
38
68
version: 5.46.1
···
44
74
version: 5.9.3
45
75
vite:
46
76
specifier: ^7.2.4
47
-
version: 7.3.1(@types/node@24.10.4)
77
+
version: 7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)
48
78
49
79
packages:
80
+
81
+
'@atcute/atproto@3.1.10':
82
+
resolution: {integrity: sha512-+GKZpOc0PJcdWMQEkTfg/rSNDAAHxmAUGBl60g2az15etqJn5WaUPNGFE2sB7hKpwi5Ue2h/L0OacINcE/JDDQ==}
50
83
51
84
'@atcute/car@5.0.0':
52
85
resolution: {integrity: sha512-OIY2xTXv8lSpZsDSn/UYQtJSMvDw5Hi4Q+uyvmiqSM+fht08QRAEq/nxa5YFciPZ3nfDFnZ3//EgJw7QhkSXLQ==}
···
57
90
'@atcute/cid@2.3.0':
58
91
resolution: {integrity: sha512-1SRdkTuMs/l5arQ+7Ag0F7JAueZqtzYE0d2gmbkuzi8EPweNU1kYlQs0CE4dSd81YF8PMDTOQty0K2ATq9CW9g==}
59
92
60
-
'@atcute/multibase@1.1.6':
61
-
resolution: {integrity: sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg==}
93
+
'@atcute/client@4.2.1':
94
+
resolution: {integrity: sha512-ZBFM2pW075JtgGFu5g7HHZBecrClhlcNH8GVP9Zz1aViWR+cjjBsTpeE63rJs+FCOHFYlirUyo5L8SGZ4kMINw==}
62
95
63
-
'@atcute/uint8array@1.0.6':
64
-
resolution: {integrity: sha512-ucfRBQc7BFT8n9eCyGOzDHEMKF/nZwhS2pPao4Xtab1ML3HdFYcX2DM1tadCzas85QTGxHe5urnUAAcNKGRi9A==}
96
+
'@atcute/crypto@2.3.0':
97
+
resolution: {integrity: sha512-w5pkJKCjbNMQu+F4JRHbR3ROQyhi1wbn+GSC6WDQamcYHkZmEZk1/eoI354bIQOOfkEM6aFLv718iskrkon4GQ==}
65
98
66
-
'@atcute/varint@1.0.3':
67
-
resolution: {integrity: sha512-fdvMPyBB+McDT+Ai5e9RwEbwYV4yjZ60S2Dn5PTjGqUyxvoCH1z42viuheDZRUDkmfQehXJTZ5az7dSozVNtog==}
99
+
'@atcute/identity-resolver@1.2.2':
100
+
resolution: {integrity: sha512-eUh/UH4bFvuXS0X7epYCeJC/kj4rbBXfSRumLEH4smMVwNOgTo7cL/0Srty+P/qVPoZEyXdfEbS0PHJyzoXmHw==}
101
+
peerDependencies:
102
+
'@atcute/identity': ^1.0.0
68
103
69
-
'@atproto-labs/did-resolver@0.2.5':
70
-
resolution: {integrity: sha512-he7EC6OMSifNs01a4RT9mta/yYitoKDzlK9ty2TFV5Uj/+HpB4vYMRdIDFrRW0Hcsehy90E2t/dw0t7361MEKQ==}
104
+
'@atcute/identity@1.1.3':
105
+
resolution: {integrity: sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng==}
71
106
72
-
'@atproto-labs/fetch@0.2.3':
73
-
resolution: {integrity: sha512-NZtbJOCbxKUFRFKMpamT38PUQMY0hX0p7TG5AEYOPhZKZEP7dHZ1K2s1aB8MdVH0qxmqX7nQleNrrvLf09Zfdw==}
107
+
'@atcute/lexicons@1.2.6':
108
+
resolution: {integrity: sha512-s76UQd8D+XmHIzrjD9CJ9SOOeeLPHc+sMmcj7UFakAW/dDFXc579fcRdRfuUKvXBL5v1Gs2VgDdlh/IvvQZAwA==}
74
109
75
-
'@atproto-labs/handle-resolver@0.3.5':
76
-
resolution: {integrity: sha512-r3b+plCh/0arN535Aool9gL6yTSbAPDOyReURbA2TWAaeW4vrSJPwR6yYUx0k0vmVPjkZPIdUVd63bG/+VG5MA==}
110
+
'@atcute/mst@0.1.1':
111
+
resolution: {integrity: sha512-NZ/lZ68GOjmAgBSeGf6WHyKM5wo1Hhc7PNt9uwsViswGPMNEEKNj9cw+0YGziXee/Qbnvc+CKqbRSPwruhXFQg==}
77
112
78
-
'@atproto-labs/pipe@0.1.1':
79
-
resolution: {integrity: sha512-hdNw2oUs2B6BN1lp+32pF7cp8EMKuIN5Qok2Vvv/aOpG/3tNSJ9YkvfI0k6Zd188LeDDYRUpYpxcoFIcGH/FNg==}
113
+
'@atcute/multibase@1.1.6':
114
+
resolution: {integrity: sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg==}
80
115
81
-
'@atproto-labs/simple-store-memory@0.1.4':
82
-
resolution: {integrity: sha512-3mKY4dP8I7yKPFj9VKpYyCRzGJOi5CEpOLPlRhoJyLmgs3J4RzDrjn323Oakjz2Aj2JzRU/AIvWRAZVhpYNJHw==}
116
+
'@atcute/repo@0.1.1':
117
+
resolution: {integrity: sha512-P5aWjt3bvcquUkUmGPslF0naAfLGRHse5Qdz9/RJYrFuoH0iiEMyRnW6M+3ksOe20GPsMnbq71WbzzFkRFPBtg==}
83
118
84
-
'@atproto-labs/simple-store@0.3.0':
85
-
resolution: {integrity: sha512-nOb6ONKBRJHRlukW1sVawUkBqReLlLx6hT35VS3imaNPwiXDxLnTK7lxw3Lrl9k5yugSBDQAkZAq3MPTEFSUBQ==}
119
+
'@atcute/uint8array@1.0.6':
120
+
resolution: {integrity: sha512-ucfRBQc7BFT8n9eCyGOzDHEMKF/nZwhS2pPao4Xtab1ML3HdFYcX2DM1tadCzas85QTGxHe5urnUAAcNKGRi9A==}
86
121
87
-
'@atproto/common-web@0.4.11':
88
-
resolution: {integrity: sha512-VHejNmSABU8/03VrQ3e36AmT5U3UIeio+qSUqCrO1oNgrJcWfGy1rpj0FVtUugWF8Un29+yzkukzWGZfXL70rQ==}
122
+
'@atcute/util-fetch@1.0.5':
123
+
resolution: {integrity: sha512-qjHj01BGxjSjIFdPiAjSARnodJIIyKxnCMMEcXMESo9TAyND6XZQqrie5fia+LlYWVXdpsTds8uFQwc9jdKTig==}
89
124
90
-
'@atproto/common@0.5.7':
91
-
resolution: {integrity: sha512-SSdXo8s1PtyeJyZd/AOocwlMloNQn+6WMwF4DzYihn/dT3Dx+6+WSOx8/Q/xCK4bIG15OTTEyLV+RxpOHmmUnQ==}
92
-
engines: {node: '>=18.7.0'}
125
+
'@atcute/util-text@0.0.1':
126
+
resolution: {integrity: sha512-t1KZqvn0AYy+h2KcJyHnKF9aEqfRfMUmyY8j1ELtAEIgqN9CxINAjxnoRCJIFUlvWzb+oY3uElQL/Vyk3yss0g==}
93
127
94
-
'@atproto/crypto@0.4.5':
95
-
resolution: {integrity: sha512-n40aKkMoCatP0u9Yvhrdk6fXyOHFDDbkdm4h4HCyWW+KlKl8iXfD5iV+ECq+w5BM+QH25aIpt3/j6EUNerhLxw==}
96
-
engines: {node: '>=18.7.0'}
128
+
'@atcute/varint@1.0.3':
129
+
resolution: {integrity: sha512-fdvMPyBB+McDT+Ai5e9RwEbwYV4yjZ60S2Dn5PTjGqUyxvoCH1z42viuheDZRUDkmfQehXJTZ5az7dSozVNtog==}
97
130
98
-
'@atproto/did@0.2.4':
99
-
resolution: {integrity: sha512-nxNiCgXeo7pfjojq9fpfZxCO0X0xUipNVKW+AHNZwQKiUDt6zYL0VXEfm8HBUwQOCmKvj2pRRSM1Cur+tUWk3g==}
100
-
101
-
'@atproto/identity@0.4.10':
102
-
resolution: {integrity: sha512-nQbzDLXOhM8p/wo0cTh5DfMSOSHzj6jizpodX37LJ4S1TZzumSxAjHEZa5Rev3JaoD5uSWMVE0MmKEGWkPPvfQ==}
103
-
engines: {node: '>=18.7.0'}
104
-
105
-
'@atproto/lex-builder@0.0.10':
106
-
resolution: {integrity: sha512-vQ7l9yWdqBxFclNllxWhR38/PNLaPHuLaKcb/qpt5Xh7fw1+dMQwYNG8TYUjdXd1DbAWhWzmG4iejbZcoWP05g==}
107
-
108
-
'@atproto/lex-cbor@0.0.7':
109
-
resolution: {integrity: sha512-thpjx0anzMi4J+o8JuKtyVQNFE+XStFhmYR4qf6mPWFC16MGbvoWnzONwJPTTP2kl6MiFVlQMnsUX7k9XGvxQg==}
110
-
111
-
'@atproto/lex-client@0.0.8':
112
-
resolution: {integrity: sha512-KnqpEzJl8WUQ8u7tTp38FXzYl5namHhB1Ez9rWGq1RqqLQE5dGDtWjSt5Eksx1Pcvi/TEGdZR6BoKakF6Z9P5Q==}
113
-
114
-
'@atproto/lex-data@0.0.7':
115
-
resolution: {integrity: sha512-W/Q5o9o7n2Sv3UywckChu01X5lwQUtaiiOkGJLnRsdkQTyC6813nPgY+p2sG7NwwM+82lu+FUV9fE/Ul3VqaJw==}
116
-
117
-
'@atproto/lex-document@0.0.9':
118
-
resolution: {integrity: sha512-f6vcLvBS3tn/aJf3gv/c2a/FVIulpIZWrXQkNjb6jo2jg2DOJkKBel+6nm4ygaBDUQjSDngZGFMe1eq4e6JJmg==}
119
-
120
-
'@atproto/lex-installer@0.0.10':
121
-
resolution: {integrity: sha512-JpP+Jcf/gXlV+ClkBC972sJmdXsxi3W65PA3A8DQJCtC95kqm/PLoEwGW/YsQEuBcIlWjx3Dc8NVpgiAfp4qTQ==}
122
-
123
-
'@atproto/lex-json@0.0.7':
124
-
resolution: {integrity: sha512-bjNPD5M/MhLfjNM7tcxuls80UgXpHqxdOxDXEUouAtZQV/nIDhGjmNUvKxOmOgnDsiZRnT2g5y3onrnjH3a44g==}
125
-
126
-
'@atproto/lex-resolver@0.0.9':
127
-
resolution: {integrity: sha512-vysKmRCQOdEmys1WUQWNYdwKCmckbFGsIAbyKKCk4oBNz6TkksZKd8ifsW+OIh0a+68lMZZIDiGxeXFgZSdFrA==}
128
-
129
-
'@atproto/lex-schema@0.0.8':
130
-
resolution: {integrity: sha512-Dfx+n0bFJsFofN7sDhftOXXrJ+YRN8q/JXlGFuS9p72ZdrwahNU5Yp1X7yga3vyeEftffxlw0gw8NXIpNbDQmg==}
131
-
132
-
'@atproto/lex@0.0.10':
133
-
resolution: {integrity: sha512-ajmMw4uks1BNO2nS4yMeox08dB7lTPXFTZhGY13OMWSBYetsU42iM0Cm0bw3DJ7gSrS6sRcHgTvSJAKNNpLNqg==}
134
-
hasBin: true
135
-
136
-
'@atproto/lexicon@0.6.0':
137
-
resolution: {integrity: sha512-5veb8aD+J5M0qszLJ+73KSFsFrJBgAY/nM1TSAJvGY7fNc9ZAT+PSUlmIyrdye9YznAZ07yktalls/TwNV7cHQ==}
138
-
139
-
'@atproto/repo@0.8.12':
140
-
resolution: {integrity: sha512-QpVTVulgfz5PUiCTELlDBiRvnsnwrFWi+6CfY88VwXzrRHd9NE8GItK7sfxQ6U65vD/idH8ddCgFrlrsn1REPQ==}
141
-
engines: {node: '>=18.7.0'}
142
-
143
-
'@atproto/syntax@0.4.2':
144
-
resolution: {integrity: sha512-X9XSRPinBy/0VQ677j8VXlBsYSsUXaiqxWVpGGxJYsAhugdQRb0jqaVKJFtm6RskeNkV6y9xclSUi9UYG/COrA==}
131
+
'@badrap/valita@0.4.6':
132
+
resolution: {integrity: sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==}
133
+
engines: {node: '>= 18'}
145
134
146
135
'@esbuild/aix-ppc64@0.27.2':
147
136
resolution: {integrity: sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==}
···
299
288
cpu: [x64]
300
289
os: [win32]
301
290
302
-
'@ipld/dag-cbor@7.0.3':
303
-
resolution: {integrity: sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==}
291
+
'@eslint-community/eslint-utils@4.9.1':
292
+
resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==}
293
+
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
294
+
peerDependencies:
295
+
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
296
+
297
+
'@eslint-community/regexpp@4.12.2':
298
+
resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==}
299
+
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
300
+
301
+
'@eslint/compat@2.0.0':
302
+
resolution: {integrity: sha512-T9AfE1G1uv4wwq94ozgTGio5EUQBqAVe1X9qsQtSNVEYW6j3hvtZVm8Smr4qL1qDPFg+lOB2cL5RxTRMzq4CTA==}
303
+
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
304
+
peerDependencies:
305
+
eslint: ^8.40 || 9
306
+
peerDependenciesMeta:
307
+
eslint:
308
+
optional: true
304
309
305
-
'@isaacs/balanced-match@4.0.1':
306
-
resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
307
-
engines: {node: 20 || >=22}
310
+
'@eslint/config-array@0.21.1':
311
+
resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==}
312
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
308
313
309
-
'@isaacs/brace-expansion@5.0.0':
310
-
resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
311
-
engines: {node: 20 || >=22}
314
+
'@eslint/config-helpers@0.4.2':
315
+
resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==}
316
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
317
+
318
+
'@eslint/core@0.17.0':
319
+
resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==}
320
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
321
+
322
+
'@eslint/core@1.0.0':
323
+
resolution: {integrity: sha512-PRfWP+8FOldvbApr6xL7mNCw4cJcSTq4GA7tYbgq15mRb0kWKO/wEB2jr+uwjFH3sZvEZneZyCUGTxsv4Sahyw==}
324
+
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
325
+
326
+
'@eslint/eslintrc@3.3.3':
327
+
resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==}
328
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
329
+
330
+
'@eslint/js@9.39.2':
331
+
resolution: {integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==}
332
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
333
+
334
+
'@eslint/object-schema@2.1.7':
335
+
resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==}
336
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
337
+
338
+
'@eslint/plugin-kit@0.4.1':
339
+
resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==}
340
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
341
+
342
+
'@humanfs/core@0.19.1':
343
+
resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
344
+
engines: {node: '>=18.18.0'}
345
+
346
+
'@humanfs/node@0.16.7':
347
+
resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==}
348
+
engines: {node: '>=18.18.0'}
349
+
350
+
'@humanwhocodes/module-importer@1.0.1':
351
+
resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
352
+
engines: {node: '>=12.22'}
353
+
354
+
'@humanwhocodes/retry@0.4.3':
355
+
resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
356
+
engines: {node: '>=18.18'}
312
357
313
358
'@jridgewell/gen-mapping@0.3.13':
314
359
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
···
326
371
'@jridgewell/trace-mapping@0.3.31':
327
372
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
328
373
329
-
'@noble/curves@1.9.7':
330
-
resolution: {integrity: sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw==}
331
-
engines: {node: ^14.21.3 || >=16}
332
-
333
-
'@noble/hashes@1.8.0':
334
-
resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==}
335
-
engines: {node: ^14.21.3 || >=16}
374
+
'@noble/secp256k1@3.0.0':
375
+
resolution: {integrity: sha512-NJBaR352KyIvj3t6sgT/+7xrNyF9Xk9QlLSIqUGVUYlsnDTAUqY8LOmwpcgEx4AMJXRITQ5XEVHD+mMaPfr3mg==}
336
376
337
377
'@rollup/rollup-android-arm-eabi@4.55.1':
338
378
resolution: {integrity: sha512-9R0DM/ykwfGIlNu6+2U09ga0WXeZ9MRC2Ter8jnz8415VbuIykVuc6bhdrbORFZANDmTDvq26mJrEVTl8TdnDg==}
···
459
499
cpu: [x64]
460
500
os: [win32]
461
501
502
+
'@standard-schema/spec@1.1.0':
503
+
resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==}
504
+
462
505
'@sveltejs/acorn-typescript@1.0.8':
463
506
resolution: {integrity: sha512-esgN+54+q0NjB0Y/4BomT9samII7jGwNy/2a3wNZbT2A2RpmXsXwUt24LvLhx6jUq2gVk4cWEvcRO6MFQbOfNA==}
464
507
peerDependencies:
···
479
522
svelte: ^5.0.0
480
523
vite: ^6.3.0 || ^7.0.0
481
524
482
-
'@ts-morph/common@0.28.1':
483
-
resolution: {integrity: sha512-W74iWf7ILp1ZKNYXY5qbddNaml7e9Sedv5lvU1V8lftlitkc9Pq1A+jlH23ltDgWYeZFFEqGCD1Ies9hqu3O+g==}
525
+
'@tailwindcss/node@4.1.18':
526
+
resolution: {integrity: sha512-DoR7U1P7iYhw16qJ49fgXUlry1t4CpXeErJHnQ44JgTSKMaZUdf17cfn5mHchfJ4KRBZRFA/Coo+MUF5+gOaCQ==}
527
+
528
+
'@tailwindcss/oxide-android-arm64@4.1.18':
529
+
resolution: {integrity: sha512-dJHz7+Ugr9U/diKJA0W6N/6/cjI+ZTAoxPf9Iz9BFRF2GzEX8IvXxFIi/dZBloVJX/MZGvRuFA9rqwdiIEZQ0Q==}
530
+
engines: {node: '>= 10'}
531
+
cpu: [arm64]
532
+
os: [android]
533
+
534
+
'@tailwindcss/oxide-darwin-arm64@4.1.18':
535
+
resolution: {integrity: sha512-Gc2q4Qhs660bhjyBSKgq6BYvwDz4G+BuyJ5H1xfhmDR3D8HnHCmT/BSkvSL0vQLy/nkMLY20PQ2OoYMO15Jd0A==}
536
+
engines: {node: '>= 10'}
537
+
cpu: [arm64]
538
+
os: [darwin]
539
+
540
+
'@tailwindcss/oxide-darwin-x64@4.1.18':
541
+
resolution: {integrity: sha512-FL5oxr2xQsFrc3X9o1fjHKBYBMD1QZNyc1Xzw/h5Qu4XnEBi3dZn96HcHm41c/euGV+GRiXFfh2hUCyKi/e+yw==}
542
+
engines: {node: '>= 10'}
543
+
cpu: [x64]
544
+
os: [darwin]
545
+
546
+
'@tailwindcss/oxide-freebsd-x64@4.1.18':
547
+
resolution: {integrity: sha512-Fj+RHgu5bDodmV1dM9yAxlfJwkkWvLiRjbhuO2LEtwtlYlBgiAT4x/j5wQr1tC3SANAgD+0YcmWVrj8R9trVMA==}
548
+
engines: {node: '>= 10'}
549
+
cpu: [x64]
550
+
os: [freebsd]
551
+
552
+
'@tailwindcss/oxide-linux-arm-gnueabihf@4.1.18':
553
+
resolution: {integrity: sha512-Fp+Wzk/Ws4dZn+LV2Nqx3IilnhH51YZoRaYHQsVq3RQvEl+71VGKFpkfHrLM/Li+kt5c0DJe/bHXK1eHgDmdiA==}
554
+
engines: {node: '>= 10'}
555
+
cpu: [arm]
556
+
os: [linux]
557
+
558
+
'@tailwindcss/oxide-linux-arm64-gnu@4.1.18':
559
+
resolution: {integrity: sha512-S0n3jboLysNbh55Vrt7pk9wgpyTTPD0fdQeh7wQfMqLPM/Hrxi+dVsLsPrycQjGKEQk85Kgbx+6+QnYNiHalnw==}
560
+
engines: {node: '>= 10'}
561
+
cpu: [arm64]
562
+
os: [linux]
563
+
564
+
'@tailwindcss/oxide-linux-arm64-musl@4.1.18':
565
+
resolution: {integrity: sha512-1px92582HkPQlaaCkdRcio71p8bc8i/ap5807tPRDK/uw953cauQBT8c5tVGkOwrHMfc2Yh6UuxaH4vtTjGvHg==}
566
+
engines: {node: '>= 10'}
567
+
cpu: [arm64]
568
+
os: [linux]
569
+
570
+
'@tailwindcss/oxide-linux-x64-gnu@4.1.18':
571
+
resolution: {integrity: sha512-v3gyT0ivkfBLoZGF9LyHmts0Isc8jHZyVcbzio6Wpzifg/+5ZJpDiRiUhDLkcr7f/r38SWNe7ucxmGW3j3Kb/g==}
572
+
engines: {node: '>= 10'}
573
+
cpu: [x64]
574
+
os: [linux]
575
+
576
+
'@tailwindcss/oxide-linux-x64-musl@4.1.18':
577
+
resolution: {integrity: sha512-bhJ2y2OQNlcRwwgOAGMY0xTFStt4/wyU6pvI6LSuZpRgKQwxTec0/3Scu91O8ir7qCR3AuepQKLU/kX99FouqQ==}
578
+
engines: {node: '>= 10'}
579
+
cpu: [x64]
580
+
os: [linux]
581
+
582
+
'@tailwindcss/oxide-wasm32-wasi@4.1.18':
583
+
resolution: {integrity: sha512-LffYTvPjODiP6PT16oNeUQJzNVyJl1cjIebq/rWWBF+3eDst5JGEFSc5cWxyRCJ0Mxl+KyIkqRxk1XPEs9x8TA==}
584
+
engines: {node: '>=14.0.0'}
585
+
cpu: [wasm32]
586
+
bundledDependencies:
587
+
- '@napi-rs/wasm-runtime'
588
+
- '@emnapi/core'
589
+
- '@emnapi/runtime'
590
+
- '@tybys/wasm-util'
591
+
- '@emnapi/wasi-threads'
592
+
- tslib
593
+
594
+
'@tailwindcss/oxide-win32-arm64-msvc@4.1.18':
595
+
resolution: {integrity: sha512-HjSA7mr9HmC8fu6bdsZvZ+dhjyGCLdotjVOgLA2vEqxEBZaQo9YTX4kwgEvPCpRh8o4uWc4J/wEoFzhEmjvPbA==}
596
+
engines: {node: '>= 10'}
597
+
cpu: [arm64]
598
+
os: [win32]
599
+
600
+
'@tailwindcss/oxide-win32-x64-msvc@4.1.18':
601
+
resolution: {integrity: sha512-bJWbyYpUlqamC8dpR7pfjA0I7vdF6t5VpUGMWRkXVE3AXgIZjYUYAK7II1GNaxR8J1SSrSrppRar8G++JekE3Q==}
602
+
engines: {node: '>= 10'}
603
+
cpu: [x64]
604
+
os: [win32]
605
+
606
+
'@tailwindcss/oxide@4.1.18':
607
+
resolution: {integrity: sha512-EgCR5tTS5bUSKQgzeMClT6iCY3ToqE1y+ZB0AKldj809QXk1Y+3jB0upOYZrn9aGIzPtUsP7sX4QQ4XtjBB95A==}
608
+
engines: {node: '>= 10'}
609
+
610
+
'@tailwindcss/vite@4.1.18':
611
+
resolution: {integrity: sha512-jVA+/UpKL1vRLg6Hkao5jldawNmRo7mQYrZtNHMIVpLfLhDml5nMRUo/8MwoX2vNXvnaXNNMedrMfMugAVX1nA==}
612
+
peerDependencies:
613
+
vite: ^5.2.0 || ^6 || ^7
484
614
485
615
'@tsconfig/svelte@5.0.6':
486
616
resolution: {integrity: sha512-yGxYL0I9eETH1/DR9qVJey4DAsCdeau4a9wYPKuXfEhm8lFO8wg+LLYJjIpAm6Fw7HSlhepPhYPDop75485yWQ==}
···
488
618
'@types/estree@1.0.8':
489
619
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
490
620
621
+
'@types/json-schema@7.0.15':
622
+
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
623
+
491
624
'@types/node@24.10.4':
492
625
resolution: {integrity: sha512-vnDVpYPMzs4wunl27jHrfmwojOGKya0xyM3sH+UE5iv5uPS6vX7UIoh6m+vQc5LGBq52HBKPIn/zcSZVzeDEZg==}
493
626
494
-
abort-controller@3.0.0:
495
-
resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
496
-
engines: {node: '>=6.5'}
627
+
'@typescript-eslint/eslint-plugin@8.52.0':
628
+
resolution: {integrity: sha512-okqtOgqu2qmZJ5iN4TWlgfF171dZmx2FzdOv2K/ixL2LZWDStL8+JgQerI2sa8eAEfoydG9+0V96m7V+P8yE1Q==}
629
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
630
+
peerDependencies:
631
+
'@typescript-eslint/parser': ^8.52.0
632
+
eslint: ^8.57.0 || ^9.0.0
633
+
typescript: '>=4.8.4 <6.0.0'
634
+
635
+
'@typescript-eslint/parser@8.52.0':
636
+
resolution: {integrity: sha512-iIACsx8pxRnguSYhHiMn2PvhvfpopO9FXHyn1mG5txZIsAaB6F0KwbFnUQN3KCiG3Jcuad/Cao2FAs1Wp7vAyg==}
637
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
638
+
peerDependencies:
639
+
eslint: ^8.57.0 || ^9.0.0
640
+
typescript: '>=4.8.4 <6.0.0'
641
+
642
+
'@typescript-eslint/project-service@8.52.0':
643
+
resolution: {integrity: sha512-xD0MfdSdEmeFa3OmVqonHi+Cciab96ls1UhIF/qX/O/gPu5KXD0bY9lu33jj04fjzrXHcuvjBcBC+D3SNSadaw==}
644
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
645
+
peerDependencies:
646
+
typescript: '>=4.8.4 <6.0.0'
647
+
648
+
'@typescript-eslint/scope-manager@8.52.0':
649
+
resolution: {integrity: sha512-ixxqmmCcc1Nf8S0mS0TkJ/3LKcC8mruYJPOU6Ia2F/zUUR4pApW7LzrpU3JmtePbRUTes9bEqRc1Gg4iyRnDzA==}
650
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
651
+
652
+
'@typescript-eslint/tsconfig-utils@8.52.0':
653
+
resolution: {integrity: sha512-jl+8fzr/SdzdxWJznq5nvoI7qn2tNYV/ZBAEcaFMVXf+K6jmXvAFrgo/+5rxgnL152f//pDEAYAhhBAZGrVfwg==}
654
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
655
+
peerDependencies:
656
+
typescript: '>=4.8.4 <6.0.0'
657
+
658
+
'@typescript-eslint/type-utils@8.52.0':
659
+
resolution: {integrity: sha512-JD3wKBRWglYRQkAtsyGz1AewDu3mTc7NtRjR/ceTyGoPqmdS5oCdx/oZMWD5Zuqmo6/MpsYs0wp6axNt88/2EQ==}
660
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
661
+
peerDependencies:
662
+
eslint: ^8.57.0 || ^9.0.0
663
+
typescript: '>=4.8.4 <6.0.0'
664
+
665
+
'@typescript-eslint/types@8.52.0':
666
+
resolution: {integrity: sha512-LWQV1V4q9V4cT4H5JCIx3481iIFxH1UkVk+ZkGGAV1ZGcjGI9IoFOfg3O6ywz8QqCDEp7Inlg6kovMofsNRaGg==}
667
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
668
+
669
+
'@typescript-eslint/typescript-estree@8.52.0':
670
+
resolution: {integrity: sha512-XP3LClsCc0FsTK5/frGjolyADTh3QmsLp6nKd476xNI9CsSsLnmn4f0jrzNoAulmxlmNIpeXuHYeEQv61Q6qeQ==}
671
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
672
+
peerDependencies:
673
+
typescript: '>=4.8.4 <6.0.0'
674
+
675
+
'@typescript-eslint/utils@8.52.0':
676
+
resolution: {integrity: sha512-wYndVMWkweqHpEpwPhwqE2lnD2DxC6WVLupU/DOt/0/v+/+iQbbzO3jOHjmBMnhu0DgLULvOaU4h4pwHYi2oRQ==}
677
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
678
+
peerDependencies:
679
+
eslint: ^8.57.0 || ^9.0.0
680
+
typescript: '>=4.8.4 <6.0.0'
681
+
682
+
'@typescript-eslint/visitor-keys@8.52.0':
683
+
resolution: {integrity: sha512-ink3/Zofus34nmBsPjow63FP5M7IGff0RKAgqR6+CFpdk22M7aLwC9gOcLGYqr7MczLPzZVERW9hRog3O4n1sQ==}
684
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
685
+
686
+
acorn-jsx@5.3.2:
687
+
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
688
+
peerDependencies:
689
+
acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
497
690
498
691
acorn@8.15.0:
499
692
resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
500
693
engines: {node: '>=0.4.0'}
501
694
hasBin: true
502
695
503
-
ansi-regex@5.0.1:
504
-
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
505
-
engines: {node: '>=8'}
696
+
ajv@6.12.6:
697
+
resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
506
698
507
699
ansi-styles@4.3.0:
508
700
resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
509
701
engines: {node: '>=8'}
510
702
703
+
argparse@2.0.1:
704
+
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
705
+
511
706
aria-query@5.3.2:
512
707
resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
513
708
engines: {node: '>= 0.4'}
514
709
515
-
atomic-sleep@1.0.0:
516
-
resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==}
517
-
engines: {node: '>=8.0.0'}
518
-
519
710
axobject-query@4.1.0:
520
711
resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
521
712
engines: {node: '>= 0.4'}
522
713
523
-
base64-js@1.5.1:
524
-
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
714
+
balanced-match@1.0.2:
715
+
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
525
716
526
-
buffer@6.0.3:
527
-
resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
717
+
brace-expansion@1.1.12:
718
+
resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==}
528
719
529
-
cborg@1.10.2:
530
-
resolution: {integrity: sha512-b3tFPA9pUr2zCUiCfRd2+wok2/LBSNUMKOuRRok+WlvvAgEt/PlbgPTsZUcwCOs53IJvLgTp0eotwtosE6njug==}
531
-
hasBin: true
720
+
brace-expansion@2.0.2:
721
+
resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==}
722
+
723
+
callsites@3.1.0:
724
+
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
725
+
engines: {node: '>=6'}
726
+
727
+
chalk@4.1.2:
728
+
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
729
+
engines: {node: '>=10'}
532
730
533
731
chokidar@4.0.3:
534
732
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
535
733
engines: {node: '>= 14.16.0'}
536
734
537
-
cliui@8.0.1:
538
-
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
539
-
engines: {node: '>=12'}
540
-
541
735
clsx@2.1.1:
542
736
resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
543
737
engines: {node: '>=6'}
544
-
545
-
code-block-writer@13.0.3:
546
-
resolution: {integrity: sha512-Oofo0pq3IKnsFtuHqSF7TqBfr71aeyZDVJ0HpmqB7FBM2qEigL0iPONSCZSO9pE9dZTAxANe5XHG9Uy0YMv8cg==}
547
738
548
739
color-convert@2.0.1:
549
740
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
···
552
743
color-name@1.1.4:
553
744
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
554
745
555
-
core-js@3.47.0:
556
-
resolution: {integrity: sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==}
746
+
concat-map@0.0.1:
747
+
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
748
+
749
+
cross-spawn@7.0.6:
750
+
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
751
+
engines: {node: '>= 8'}
752
+
753
+
cssesc@3.0.0:
754
+
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
755
+
engines: {node: '>=4'}
756
+
hasBin: true
757
+
758
+
daisyui@5.5.14:
759
+
resolution: {integrity: sha512-L47rvw7I7hK68TA97VB8Ee0woHew+/ohR6Lx6Ah/krfISOqcG4My7poNpX5Mo5/ytMxiR40fEaz6njzDi7cuSg==}
760
+
761
+
debug@4.4.3:
762
+
resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
763
+
engines: {node: '>=6.0'}
764
+
peerDependencies:
765
+
supports-color: '*'
766
+
peerDependenciesMeta:
767
+
supports-color:
768
+
optional: true
769
+
770
+
deep-is@0.1.4:
771
+
resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
557
772
558
773
deepmerge@4.3.1:
559
774
resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
560
775
engines: {node: '>=0.10.0'}
776
+
777
+
detect-libc@2.1.2:
778
+
resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
779
+
engines: {node: '>=8'}
561
780
562
781
devalue@5.6.1:
563
782
resolution: {integrity: sha512-jDwizj+IlEZBunHcOuuFVBnIMPAEHvTsJj0BcIp94xYguLRVBcXO853px/MyIJvbVzWdsGvrRweIUWJw8hBP7A==}
564
783
565
-
emoji-regex@8.0.0:
566
-
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
784
+
enhanced-resolve@5.18.4:
785
+
resolution: {integrity: sha512-LgQMM4WXU3QI+SYgEc2liRgznaD5ojbmY3sb8LxyguVkIg5FxdpTkvk72te2R38/TGKxH634oLxXRGY6d7AP+Q==}
786
+
engines: {node: '>=10.13.0'}
567
787
568
788
esbuild@0.27.2:
569
789
resolution: {integrity: sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==}
570
790
engines: {node: '>=18'}
571
791
hasBin: true
572
792
573
-
escalade@3.2.0:
574
-
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
575
-
engines: {node: '>=6'}
793
+
escape-string-regexp@4.0.0:
794
+
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
795
+
engines: {node: '>=10'}
796
+
797
+
eslint-plugin-svelte@3.14.0:
798
+
resolution: {integrity: sha512-Isw0GvaMm0yHxAj71edAdGFh28ufYs+6rk2KlbbZphnqZAzrH3Se3t12IFh2H9+1F/jlDhBBL4oiOJmLqmYX0g==}
799
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
800
+
peerDependencies:
801
+
eslint: ^8.57.1 || ^9.0.0
802
+
svelte: ^3.37.0 || ^4.0.0 || ^5.0.0
803
+
peerDependenciesMeta:
804
+
svelte:
805
+
optional: true
806
+
807
+
eslint-scope@8.4.0:
808
+
resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==}
809
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
810
+
811
+
eslint-visitor-keys@3.4.3:
812
+
resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
813
+
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
814
+
815
+
eslint-visitor-keys@4.2.1:
816
+
resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
817
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
818
+
819
+
eslint@9.39.2:
820
+
resolution: {integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==}
821
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
822
+
hasBin: true
823
+
peerDependencies:
824
+
jiti: '*'
825
+
peerDependenciesMeta:
826
+
jiti:
827
+
optional: true
576
828
577
829
esm-env@1.2.2:
578
830
resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==}
579
831
832
+
espree@10.4.0:
833
+
resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==}
834
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
835
+
836
+
esquery@1.7.0:
837
+
resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==}
838
+
engines: {node: '>=0.10'}
839
+
580
840
esrap@2.2.1:
581
841
resolution: {integrity: sha512-GiYWG34AN/4CUyaWAgunGt0Rxvr1PTMlGC0vvEov/uOQYWne2bpN03Um+k8jT+q3op33mKouP2zeJ6OlM+qeUg==}
582
842
583
-
event-target-shim@5.0.1:
584
-
resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
585
-
engines: {node: '>=6'}
843
+
esrecurse@4.3.0:
844
+
resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
845
+
engines: {node: '>=4.0'}
586
846
587
-
events@3.3.0:
588
-
resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
589
-
engines: {node: '>=0.8.x'}
847
+
estraverse@5.3.0:
848
+
resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
849
+
engines: {node: '>=4.0'}
850
+
851
+
esutils@2.0.3:
852
+
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
853
+
engines: {node: '>=0.10.0'}
854
+
855
+
fast-deep-equal@3.1.3:
856
+
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
857
+
858
+
fast-json-stable-stringify@2.1.0:
859
+
resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
590
860
591
-
fast-redact@3.5.0:
592
-
resolution: {integrity: sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==}
593
-
engines: {node: '>=6'}
861
+
fast-levenshtein@2.0.6:
862
+
resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
594
863
595
864
fdir@6.5.0:
596
865
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
···
601
870
picomatch:
602
871
optional: true
603
872
873
+
file-entry-cache@8.0.0:
874
+
resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
875
+
engines: {node: '>=16.0.0'}
876
+
877
+
find-up@5.0.0:
878
+
resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
879
+
engines: {node: '>=10'}
880
+
881
+
flat-cache@4.0.1:
882
+
resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
883
+
engines: {node: '>=16'}
884
+
885
+
flatted@3.3.3:
886
+
resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
887
+
604
888
fsevents@2.3.3:
605
889
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
606
890
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
607
891
os: [darwin]
608
892
609
-
get-caller-file@2.0.5:
610
-
resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
611
-
engines: {node: 6.* || 8.* || >= 10.*}
893
+
glob-parent@6.0.2:
894
+
resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
895
+
engines: {node: '>=10.13.0'}
896
+
897
+
globals@14.0.0:
898
+
resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
899
+
engines: {node: '>=18'}
900
+
901
+
globals@16.5.0:
902
+
resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==}
903
+
engines: {node: '>=18'}
904
+
905
+
globals@17.0.0:
906
+
resolution: {integrity: sha512-gv5BeD2EssA793rlFWVPMMCqefTlpusw6/2TbAVMy0FzcG8wKJn4O+NqJ4+XWmmwrayJgw5TzrmWjFgmz1XPqw==}
907
+
engines: {node: '>=18'}
612
908
613
-
ieee754@1.2.1:
614
-
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
909
+
graceful-fs@4.2.11:
910
+
resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
615
911
616
-
is-fullwidth-code-point@3.0.0:
617
-
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
912
+
has-flag@4.0.0:
913
+
resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
618
914
engines: {node: '>=8'}
619
915
916
+
ignore@5.3.2:
917
+
resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
918
+
engines: {node: '>= 4'}
919
+
920
+
ignore@7.0.5:
921
+
resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
922
+
engines: {node: '>= 4'}
923
+
924
+
import-fresh@3.3.1:
925
+
resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
926
+
engines: {node: '>=6'}
927
+
928
+
imurmurhash@0.1.4:
929
+
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
930
+
engines: {node: '>=0.8.19'}
931
+
932
+
is-extglob@2.1.1:
933
+
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
934
+
engines: {node: '>=0.10.0'}
935
+
936
+
is-glob@4.0.3:
937
+
resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
938
+
engines: {node: '>=0.10.0'}
939
+
620
940
is-reference@3.0.3:
621
941
resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==}
622
942
623
-
iso-datestring-validator@2.2.2:
624
-
resolution: {integrity: sha512-yLEMkBbLZTlVQqOnQ4FiMujR6T4DEcCb1xizmvXS+OxuhwcbtynoosRzdMA69zZCShCNAbi+gJ71FxZBBXx1SA==}
943
+
isexe@2.0.0:
944
+
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
945
+
946
+
jiti@2.6.1:
947
+
resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
948
+
hasBin: true
949
+
950
+
js-yaml@4.1.1:
951
+
resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==}
952
+
hasBin: true
953
+
954
+
json-buffer@3.0.1:
955
+
resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
956
+
957
+
json-schema-traverse@0.4.1:
958
+
resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
959
+
960
+
json-stable-stringify-without-jsonify@1.0.1:
961
+
resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
962
+
963
+
keyv@4.5.4:
964
+
resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
965
+
966
+
known-css-properties@0.37.0:
967
+
resolution: {integrity: sha512-JCDrsP4Z1Sb9JwG0aJ8Eo2r7k4Ou5MwmThS/6lcIe1ICyb7UBJKGRIUUdqc2ASdE/42lgz6zFUnzAIhtXnBVrQ==}
968
+
969
+
levn@0.4.1:
970
+
resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
971
+
engines: {node: '>= 0.8.0'}
972
+
973
+
lightningcss-android-arm64@1.30.2:
974
+
resolution: {integrity: sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==}
975
+
engines: {node: '>= 12.0.0'}
976
+
cpu: [arm64]
977
+
os: [android]
978
+
979
+
lightningcss-darwin-arm64@1.30.2:
980
+
resolution: {integrity: sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==}
981
+
engines: {node: '>= 12.0.0'}
982
+
cpu: [arm64]
983
+
os: [darwin]
984
+
985
+
lightningcss-darwin-x64@1.30.2:
986
+
resolution: {integrity: sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==}
987
+
engines: {node: '>= 12.0.0'}
988
+
cpu: [x64]
989
+
os: [darwin]
990
+
991
+
lightningcss-freebsd-x64@1.30.2:
992
+
resolution: {integrity: sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==}
993
+
engines: {node: '>= 12.0.0'}
994
+
cpu: [x64]
995
+
os: [freebsd]
996
+
997
+
lightningcss-linux-arm-gnueabihf@1.30.2:
998
+
resolution: {integrity: sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==}
999
+
engines: {node: '>= 12.0.0'}
1000
+
cpu: [arm]
1001
+
os: [linux]
1002
+
1003
+
lightningcss-linux-arm64-gnu@1.30.2:
1004
+
resolution: {integrity: sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==}
1005
+
engines: {node: '>= 12.0.0'}
1006
+
cpu: [arm64]
1007
+
os: [linux]
1008
+
1009
+
lightningcss-linux-arm64-musl@1.30.2:
1010
+
resolution: {integrity: sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==}
1011
+
engines: {node: '>= 12.0.0'}
1012
+
cpu: [arm64]
1013
+
os: [linux]
1014
+
1015
+
lightningcss-linux-x64-gnu@1.30.2:
1016
+
resolution: {integrity: sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==}
1017
+
engines: {node: '>= 12.0.0'}
1018
+
cpu: [x64]
1019
+
os: [linux]
1020
+
1021
+
lightningcss-linux-x64-musl@1.30.2:
1022
+
resolution: {integrity: sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==}
1023
+
engines: {node: '>= 12.0.0'}
1024
+
cpu: [x64]
1025
+
os: [linux]
1026
+
1027
+
lightningcss-win32-arm64-msvc@1.30.2:
1028
+
resolution: {integrity: sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==}
1029
+
engines: {node: '>= 12.0.0'}
1030
+
cpu: [arm64]
1031
+
os: [win32]
1032
+
1033
+
lightningcss-win32-x64-msvc@1.30.2:
1034
+
resolution: {integrity: sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==}
1035
+
engines: {node: '>= 12.0.0'}
1036
+
cpu: [x64]
1037
+
os: [win32]
1038
+
1039
+
lightningcss@1.30.2:
1040
+
resolution: {integrity: sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==}
1041
+
engines: {node: '>= 12.0.0'}
1042
+
1043
+
lilconfig@2.1.0:
1044
+
resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
1045
+
engines: {node: '>=10'}
625
1046
626
1047
locate-character@3.0.0:
627
1048
resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==}
628
1049
629
-
lru-cache@10.4.3:
630
-
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
1050
+
locate-path@6.0.0:
1051
+
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
1052
+
engines: {node: '>=10'}
1053
+
1054
+
lodash.merge@4.6.2:
1055
+
resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
631
1056
632
1057
magic-string@0.30.21:
633
1058
resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
634
1059
635
-
minimatch@10.1.1:
636
-
resolution: {integrity: sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==}
637
-
engines: {node: 20 || >=22}
1060
+
minimatch@3.1.2:
1061
+
resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
1062
+
1063
+
minimatch@9.0.5:
1064
+
resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
1065
+
engines: {node: '>=16 || 14 >=14.17'}
638
1066
639
1067
mri@1.2.0:
640
1068
resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
641
1069
engines: {node: '>=4'}
642
1070
643
-
multiformats@9.9.0:
644
-
resolution: {integrity: sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==}
1071
+
ms@2.1.3:
1072
+
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
645
1073
646
1074
nanoid@3.3.11:
647
1075
resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
648
1076
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
649
1077
hasBin: true
1078
+
1079
+
natural-compare@1.4.0:
1080
+
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
650
1081
651
1082
obug@2.1.1:
652
1083
resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==}
653
1084
654
-
on-exit-leak-free@2.1.2:
655
-
resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==}
656
-
engines: {node: '>=14.0.0'}
1085
+
optionator@0.9.4:
1086
+
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
1087
+
engines: {node: '>= 0.8.0'}
1088
+
1089
+
p-limit@3.1.0:
1090
+
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
1091
+
engines: {node: '>=10'}
1092
+
1093
+
p-locate@5.0.0:
1094
+
resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
1095
+
engines: {node: '>=10'}
1096
+
1097
+
parent-module@1.0.1:
1098
+
resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
1099
+
engines: {node: '>=6'}
1100
+
1101
+
path-exists@4.0.0:
1102
+
resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
1103
+
engines: {node: '>=8'}
657
1104
658
-
path-browserify@1.0.1:
659
-
resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
1105
+
path-key@3.1.1:
1106
+
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
1107
+
engines: {node: '>=8'}
660
1108
661
1109
picocolors@1.1.1:
662
1110
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
···
665
1113
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
666
1114
engines: {node: '>=12'}
667
1115
668
-
pino-abstract-transport@1.2.0:
669
-
resolution: {integrity: sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==}
1116
+
postcss-load-config@3.1.4:
1117
+
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
1118
+
engines: {node: '>= 10'}
1119
+
peerDependencies:
1120
+
postcss: '>=8.0.9'
1121
+
ts-node: '>=9.0.0'
1122
+
peerDependenciesMeta:
1123
+
postcss:
1124
+
optional: true
1125
+
ts-node:
1126
+
optional: true
670
1127
671
-
pino-std-serializers@6.2.2:
672
-
resolution: {integrity: sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==}
1128
+
postcss-safe-parser@7.0.1:
1129
+
resolution: {integrity: sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==}
1130
+
engines: {node: '>=18.0'}
1131
+
peerDependencies:
1132
+
postcss: ^8.4.31
1133
+
1134
+
postcss-scss@4.0.9:
1135
+
resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==}
1136
+
engines: {node: '>=12.0'}
1137
+
peerDependencies:
1138
+
postcss: ^8.4.29
673
1139
674
-
pino@8.21.0:
675
-
resolution: {integrity: sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==}
676
-
hasBin: true
1140
+
postcss-selector-parser@7.1.1:
1141
+
resolution: {integrity: sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==}
1142
+
engines: {node: '>=4'}
677
1143
678
1144
postcss@8.5.6:
679
1145
resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
680
1146
engines: {node: ^10 || ^12 || >=14}
681
1147
682
-
prettier@3.7.4:
683
-
resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==}
684
-
engines: {node: '>=14'}
685
-
hasBin: true
686
-
687
-
process-warning@3.0.0:
688
-
resolution: {integrity: sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==}
1148
+
prelude-ls@1.2.1:
1149
+
resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
1150
+
engines: {node: '>= 0.8.0'}
689
1151
690
-
process@0.11.10:
691
-
resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
692
-
engines: {node: '>= 0.6.0'}
693
-
694
-
quick-format-unescaped@4.0.4:
695
-
resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==}
696
-
697
-
readable-stream@4.7.0:
698
-
resolution: {integrity: sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==}
699
-
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1152
+
punycode@2.3.1:
1153
+
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
1154
+
engines: {node: '>=6'}
700
1155
701
1156
readdirp@4.1.2:
702
1157
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
703
1158
engines: {node: '>= 14.18.0'}
704
1159
705
-
real-require@0.2.0:
706
-
resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==}
707
-
engines: {node: '>= 12.13.0'}
708
-
709
-
require-directory@2.1.1:
710
-
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
711
-
engines: {node: '>=0.10.0'}
1160
+
resolve-from@4.0.0:
1161
+
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
1162
+
engines: {node: '>=4'}
712
1163
713
1164
rollup@4.55.1:
714
1165
resolution: {integrity: sha512-wDv/Ht1BNHB4upNbK74s9usvl7hObDnvVzknxqY/E/O3X6rW1U1rV1aENEfJ54eFZDTNo7zv1f5N4edCluH7+A==}
···
719
1170
resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
720
1171
engines: {node: '>=6'}
721
1172
722
-
safe-buffer@5.2.1:
723
-
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
1173
+
semver@7.7.3:
1174
+
resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==}
1175
+
engines: {node: '>=10'}
1176
+
hasBin: true
724
1177
725
-
safe-stable-stringify@2.5.0:
726
-
resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==}
727
-
engines: {node: '>=10'}
1178
+
shebang-command@2.0.0:
1179
+
resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
1180
+
engines: {node: '>=8'}
728
1181
729
-
sonic-boom@3.8.1:
730
-
resolution: {integrity: sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg==}
1182
+
shebang-regex@3.0.0:
1183
+
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
1184
+
engines: {node: '>=8'}
731
1185
732
1186
source-map-js@1.2.1:
733
1187
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
734
1188
engines: {node: '>=0.10.0'}
735
1189
736
-
split2@4.2.0:
737
-
resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
738
-
engines: {node: '>= 10.x'}
739
-
740
-
string-width@4.2.3:
741
-
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
1190
+
strip-json-comments@3.1.1:
1191
+
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
742
1192
engines: {node: '>=8'}
743
1193
744
-
string_decoder@1.3.0:
745
-
resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
746
-
747
-
strip-ansi@6.0.1:
748
-
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1194
+
supports-color@7.2.0:
1195
+
resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
749
1196
engines: {node: '>=8'}
750
1197
751
1198
svelte-check@4.3.5:
···
756
1203
svelte: ^4.0.0 || ^5.0.0-next.0
757
1204
typescript: '>=5.0.0'
758
1205
1206
+
svelte-eslint-parser@1.4.1:
1207
+
resolution: {integrity: sha512-1eqkfQ93goAhjAXxZiu1SaKI9+0/sxp4JIWQwUpsz7ybehRE5L8dNuz7Iry7K22R47p5/+s9EM+38nHV2OlgXA==}
1208
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0, pnpm: 10.24.0}
1209
+
peerDependencies:
1210
+
svelte: ^3.37.0 || ^4.0.0 || ^5.0.0
1211
+
peerDependenciesMeta:
1212
+
svelte:
1213
+
optional: true
1214
+
759
1215
svelte@5.46.1:
760
1216
resolution: {integrity: sha512-ynjfCHD3nP2el70kN5Pmg37sSi0EjOm9FgHYQdC4giWG/hzO3AatzXXJJgP305uIhGQxSufJLuYWtkY8uK/8RA==}
761
1217
engines: {node: '>=18'}
762
1218
763
-
thread-stream@2.7.0:
764
-
resolution: {integrity: sha512-qQiRWsU/wvNolI6tbbCKd9iKaTnCXsTwVxhhKM6nctPdujTyztjlbUkUTUymidWcMnZ5pWR0ej4a0tjsW021vw==}
1219
+
tailwindcss@4.1.18:
1220
+
resolution: {integrity: sha512-4+Z+0yiYyEtUVCScyfHCxOYP06L5Ne+JiHhY2IjR2KWMIWhJOYZKLSGZaP5HkZ8+bY0cxfzwDE5uOmzFXyIwxw==}
1221
+
1222
+
tapable@2.3.0:
1223
+
resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
1224
+
engines: {node: '>=6'}
765
1225
766
1226
tinyglobby@0.2.15:
767
1227
resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==}
768
1228
engines: {node: '>=12.0.0'}
769
1229
770
-
ts-morph@27.0.2:
771
-
resolution: {integrity: sha512-fhUhgeljcrdZ+9DZND1De1029PrE+cMkIP7ooqkLRTrRLTqcki2AstsyJm0vRNbTbVCNJ0idGlbBrfqc7/nA8w==}
1230
+
ts-api-utils@2.4.0:
1231
+
resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==}
1232
+
engines: {node: '>=18.12'}
1233
+
peerDependencies:
1234
+
typescript: '>=4.8.4'
772
1235
773
-
tslib@2.8.1:
774
-
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
1236
+
type-check@0.4.0:
1237
+
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
1238
+
engines: {node: '>= 0.8.0'}
1239
+
1240
+
typescript-eslint@8.52.0:
1241
+
resolution: {integrity: sha512-atlQQJ2YkO4pfTVQmQ+wvYQwexPDOIgo+RaVcD7gHgzy/IQA+XTyuxNM9M9TVXvttkF7koBHmcwisKdOAf2EcA==}
1242
+
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1243
+
peerDependencies:
1244
+
eslint: ^8.57.0 || ^9.0.0
1245
+
typescript: '>=4.8.4 <6.0.0'
775
1246
776
1247
typescript@5.9.3:
777
1248
resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==}
778
1249
engines: {node: '>=14.17'}
779
1250
hasBin: true
780
1251
781
-
uint8arrays@3.0.0:
782
-
resolution: {integrity: sha512-HRCx0q6O9Bfbp+HHSfQQKD7wU70+lydKVt4EghkdOvlK/NlrF90z+eXV34mUd48rNvVJXwkrMSPpCATkct8fJA==}
783
-
784
1252
undici-types@7.16.0:
785
1253
resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==}
786
1254
787
1255
unicode-segmenter@0.14.5:
788
1256
resolution: {integrity: sha512-jHGmj2LUuqDcX3hqY12Ql+uhUTn8huuxNZGq7GvtF6bSybzH3aFgedYu/KTzQStEgt1Ra2F3HxadNXsNjb3m3g==}
789
1257
790
-
varint@6.0.0:
791
-
resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==}
1258
+
uri-js@4.4.1:
1259
+
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
1260
+
1261
+
util-deprecate@1.0.2:
1262
+
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
792
1263
793
1264
vite@7.3.1:
794
1265
resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==}
···
838
1309
vite:
839
1310
optional: true
840
1311
841
-
wrap-ansi@7.0.0:
842
-
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
843
-
engines: {node: '>=10'}
1312
+
which@2.0.2:
1313
+
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
1314
+
engines: {node: '>= 8'}
1315
+
hasBin: true
844
1316
845
-
y18n@5.0.8:
846
-
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
847
-
engines: {node: '>=10'}
1317
+
word-wrap@1.2.5:
1318
+
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
1319
+
engines: {node: '>=0.10.0'}
848
1320
849
-
yargs-parser@21.1.1:
850
-
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
851
-
engines: {node: '>=12'}
1321
+
yaml@1.10.2:
1322
+
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
1323
+
engines: {node: '>= 6'}
852
1324
853
-
yargs@17.7.2:
854
-
resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
855
-
engines: {node: '>=12'}
1325
+
yocto-queue@0.1.0:
1326
+
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
1327
+
engines: {node: '>=10'}
856
1328
857
1329
zimmerframe@1.1.4:
858
1330
resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==}
859
1331
860
-
zod@3.25.76:
861
-
resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
1332
+
snapshots:
862
1333
863
-
snapshots:
1334
+
'@atcute/atproto@3.1.10':
1335
+
dependencies:
1336
+
'@atcute/lexicons': 1.2.6
864
1337
865
1338
'@atcute/car@5.0.0':
866
1339
dependencies:
···
880
1353
'@atcute/multibase': 1.1.6
881
1354
'@atcute/uint8array': 1.0.6
882
1355
883
-
'@atcute/multibase@1.1.6':
1356
+
'@atcute/client@4.2.1':
884
1357
dependencies:
885
-
'@atcute/uint8array': 1.0.6
886
-
887
-
'@atcute/uint8array@1.0.6': {}
1358
+
'@atcute/identity': 1.1.3
1359
+
'@atcute/lexicons': 1.2.6
888
1360
889
-
'@atcute/varint@1.0.3': {}
890
-
891
-
'@atproto-labs/did-resolver@0.2.5':
1361
+
'@atcute/crypto@2.3.0':
892
1362
dependencies:
893
-
'@atproto-labs/fetch': 0.2.3
894
-
'@atproto-labs/pipe': 0.1.1
895
-
'@atproto-labs/simple-store': 0.3.0
896
-
'@atproto-labs/simple-store-memory': 0.1.4
897
-
'@atproto/did': 0.2.4
898
-
zod: 3.25.76
1363
+
'@atcute/multibase': 1.1.6
1364
+
'@atcute/uint8array': 1.0.6
1365
+
'@noble/secp256k1': 3.0.0
899
1366
900
-
'@atproto-labs/fetch@0.2.3':
1367
+
'@atcute/identity-resolver@1.2.2(@atcute/identity@1.1.3)':
901
1368
dependencies:
902
-
'@atproto-labs/pipe': 0.1.1
903
-
904
-
'@atproto-labs/handle-resolver@0.3.5':
905
-
dependencies:
906
-
'@atproto-labs/simple-store': 0.3.0
907
-
'@atproto-labs/simple-store-memory': 0.1.4
908
-
'@atproto/did': 0.2.4
909
-
zod: 3.25.76
1369
+
'@atcute/identity': 1.1.3
1370
+
'@atcute/lexicons': 1.2.6
1371
+
'@atcute/util-fetch': 1.0.5
1372
+
'@badrap/valita': 0.4.6
910
1373
911
-
'@atproto-labs/pipe@0.1.1': {}
912
-
913
-
'@atproto-labs/simple-store-memory@0.1.4':
1374
+
'@atcute/identity@1.1.3':
914
1375
dependencies:
915
-
'@atproto-labs/simple-store': 0.3.0
916
-
lru-cache: 10.4.3
917
-
918
-
'@atproto-labs/simple-store@0.3.0': {}
1376
+
'@atcute/lexicons': 1.2.6
1377
+
'@badrap/valita': 0.4.6
919
1378
920
-
'@atproto/common-web@0.4.11':
1379
+
'@atcute/lexicons@1.2.6':
921
1380
dependencies:
922
-
'@atproto/lex-data': 0.0.7
923
-
'@atproto/lex-json': 0.0.7
924
-
zod: 3.25.76
1381
+
'@atcute/uint8array': 1.0.6
1382
+
'@atcute/util-text': 0.0.1
1383
+
'@standard-schema/spec': 1.1.0
1384
+
esm-env: 1.2.2
925
1385
926
-
'@atproto/common@0.5.7':
1386
+
'@atcute/mst@0.1.1':
927
1387
dependencies:
928
-
'@atproto/common-web': 0.4.11
929
-
'@atproto/lex-cbor': 0.0.7
930
-
'@atproto/lex-data': 0.0.7
931
-
iso-datestring-validator: 2.2.2
932
-
multiformats: 9.9.0
933
-
pino: 8.21.0
1388
+
'@atcute/cbor': 2.2.8
1389
+
'@atcute/cid': 2.3.0
1390
+
'@atcute/uint8array': 1.0.6
934
1391
935
-
'@atproto/crypto@0.4.5':
1392
+
'@atcute/multibase@1.1.6':
936
1393
dependencies:
937
-
'@noble/curves': 1.9.7
938
-
'@noble/hashes': 1.8.0
939
-
uint8arrays: 3.0.0
1394
+
'@atcute/uint8array': 1.0.6
940
1395
941
-
'@atproto/did@0.2.4':
1396
+
'@atcute/repo@0.1.1':
942
1397
dependencies:
943
-
zod: 3.25.76
1398
+
'@atcute/car': 5.0.0
1399
+
'@atcute/cbor': 2.2.8
1400
+
'@atcute/cid': 2.3.0
1401
+
'@atcute/crypto': 2.3.0
1402
+
'@atcute/lexicons': 1.2.6
1403
+
'@atcute/mst': 0.1.1
1404
+
'@atcute/uint8array': 1.0.6
944
1405
945
-
'@atproto/identity@0.4.10':
946
-
dependencies:
947
-
'@atproto/common-web': 0.4.11
948
-
'@atproto/crypto': 0.4.5
1406
+
'@atcute/uint8array@1.0.6': {}
949
1407
950
-
'@atproto/lex-builder@0.0.10':
1408
+
'@atcute/util-fetch@1.0.5':
951
1409
dependencies:
952
-
'@atproto/lex-document': 0.0.9
953
-
'@atproto/lex-schema': 0.0.8
954
-
prettier: 3.7.4
955
-
ts-morph: 27.0.2
956
-
tslib: 2.8.1
1410
+
'@badrap/valita': 0.4.6
957
1411
958
-
'@atproto/lex-cbor@0.0.7':
1412
+
'@atcute/util-text@0.0.1':
959
1413
dependencies:
960
-
'@atproto/lex-data': 0.0.7
961
-
tslib: 2.8.1
962
-
963
-
'@atproto/lex-client@0.0.8':
964
-
dependencies:
965
-
'@atproto/lex-data': 0.0.7
966
-
'@atproto/lex-json': 0.0.7
967
-
'@atproto/lex-schema': 0.0.8
968
-
tslib: 2.8.1
969
-
970
-
'@atproto/lex-data@0.0.7':
971
-
dependencies:
972
-
'@atproto/syntax': 0.4.2
973
-
multiformats: 9.9.0
974
-
tslib: 2.8.1
975
-
uint8arrays: 3.0.0
976
1414
unicode-segmenter: 0.14.5
977
1415
978
-
'@atproto/lex-document@0.0.9':
979
-
dependencies:
980
-
'@atproto/lex-schema': 0.0.8
981
-
core-js: 3.47.0
982
-
tslib: 2.8.1
1416
+
'@atcute/varint@1.0.3': {}
983
1417
984
-
'@atproto/lex-installer@0.0.10':
985
-
dependencies:
986
-
'@atproto/lex-builder': 0.0.10
987
-
'@atproto/lex-cbor': 0.0.7
988
-
'@atproto/lex-data': 0.0.7
989
-
'@atproto/lex-document': 0.0.9
990
-
'@atproto/lex-resolver': 0.0.9
991
-
'@atproto/lex-schema': 0.0.8
992
-
'@atproto/syntax': 0.4.2
993
-
tslib: 2.8.1
994
-
995
-
'@atproto/lex-json@0.0.7':
996
-
dependencies:
997
-
'@atproto/lex-data': 0.0.7
998
-
tslib: 2.8.1
999
-
1000
-
'@atproto/lex-resolver@0.0.9':
1001
-
dependencies:
1002
-
'@atproto-labs/did-resolver': 0.2.5
1003
-
'@atproto/crypto': 0.4.5
1004
-
'@atproto/lex-client': 0.0.8
1005
-
'@atproto/lex-data': 0.0.7
1006
-
'@atproto/lex-document': 0.0.9
1007
-
'@atproto/lex-schema': 0.0.8
1008
-
'@atproto/repo': 0.8.12
1009
-
'@atproto/syntax': 0.4.2
1010
-
tslib: 2.8.1
1011
-
1012
-
'@atproto/lex-schema@0.0.8':
1013
-
dependencies:
1014
-
'@atproto/lex-data': 0.0.7
1015
-
'@atproto/syntax': 0.4.2
1016
-
tslib: 2.8.1
1017
-
1018
-
'@atproto/lex@0.0.10':
1019
-
dependencies:
1020
-
'@atproto/lex-builder': 0.0.10
1021
-
'@atproto/lex-client': 0.0.8
1022
-
'@atproto/lex-data': 0.0.7
1023
-
'@atproto/lex-installer': 0.0.10
1024
-
'@atproto/lex-json': 0.0.7
1025
-
'@atproto/lex-schema': 0.0.8
1026
-
tslib: 2.8.1
1027
-
yargs: 17.7.2
1028
-
1029
-
'@atproto/lexicon@0.6.0':
1030
-
dependencies:
1031
-
'@atproto/common-web': 0.4.11
1032
-
'@atproto/syntax': 0.4.2
1033
-
iso-datestring-validator: 2.2.2
1034
-
multiformats: 9.9.0
1035
-
zod: 3.25.76
1036
-
1037
-
'@atproto/repo@0.8.12':
1038
-
dependencies:
1039
-
'@atproto/common': 0.5.7
1040
-
'@atproto/common-web': 0.4.11
1041
-
'@atproto/crypto': 0.4.5
1042
-
'@atproto/lexicon': 0.6.0
1043
-
'@ipld/dag-cbor': 7.0.3
1044
-
multiformats: 9.9.0
1045
-
uint8arrays: 3.0.0
1046
-
varint: 6.0.0
1047
-
zod: 3.25.76
1048
-
1049
-
'@atproto/syntax@0.4.2': {}
1418
+
'@badrap/valita@0.4.6': {}
1050
1419
1051
1420
'@esbuild/aix-ppc64@0.27.2':
1052
1421
optional: true
···
1126
1495
'@esbuild/win32-x64@0.27.2':
1127
1496
optional: true
1128
1497
1129
-
'@ipld/dag-cbor@7.0.3':
1498
+
'@eslint-community/eslint-utils@4.9.1(eslint@9.39.2(jiti@2.6.1))':
1499
+
dependencies:
1500
+
eslint: 9.39.2(jiti@2.6.1)
1501
+
eslint-visitor-keys: 3.4.3
1502
+
1503
+
'@eslint-community/regexpp@4.12.2': {}
1504
+
1505
+
'@eslint/compat@2.0.0(eslint@9.39.2(jiti@2.6.1))':
1506
+
dependencies:
1507
+
'@eslint/core': 1.0.0
1508
+
optionalDependencies:
1509
+
eslint: 9.39.2(jiti@2.6.1)
1510
+
1511
+
'@eslint/config-array@0.21.1':
1512
+
dependencies:
1513
+
'@eslint/object-schema': 2.1.7
1514
+
debug: 4.4.3
1515
+
minimatch: 3.1.2
1516
+
transitivePeerDependencies:
1517
+
- supports-color
1518
+
1519
+
'@eslint/config-helpers@0.4.2':
1520
+
dependencies:
1521
+
'@eslint/core': 0.17.0
1522
+
1523
+
'@eslint/core@0.17.0':
1524
+
dependencies:
1525
+
'@types/json-schema': 7.0.15
1526
+
1527
+
'@eslint/core@1.0.0':
1528
+
dependencies:
1529
+
'@types/json-schema': 7.0.15
1530
+
1531
+
'@eslint/eslintrc@3.3.3':
1130
1532
dependencies:
1131
-
cborg: 1.10.2
1132
-
multiformats: 9.9.0
1533
+
ajv: 6.12.6
1534
+
debug: 4.4.3
1535
+
espree: 10.4.0
1536
+
globals: 14.0.0
1537
+
ignore: 5.3.2
1538
+
import-fresh: 3.3.1
1539
+
js-yaml: 4.1.1
1540
+
minimatch: 3.1.2
1541
+
strip-json-comments: 3.1.1
1542
+
transitivePeerDependencies:
1543
+
- supports-color
1133
1544
1134
-
'@isaacs/balanced-match@4.0.1': {}
1545
+
'@eslint/js@9.39.2': {}
1546
+
1547
+
'@eslint/object-schema@2.1.7': {}
1548
+
1549
+
'@eslint/plugin-kit@0.4.1':
1550
+
dependencies:
1551
+
'@eslint/core': 0.17.0
1552
+
levn: 0.4.1
1553
+
1554
+
'@humanfs/core@0.19.1': {}
1135
1555
1136
-
'@isaacs/brace-expansion@5.0.0':
1556
+
'@humanfs/node@0.16.7':
1137
1557
dependencies:
1138
-
'@isaacs/balanced-match': 4.0.1
1558
+
'@humanfs/core': 0.19.1
1559
+
'@humanwhocodes/retry': 0.4.3
1560
+
1561
+
'@humanwhocodes/module-importer@1.0.1': {}
1562
+
1563
+
'@humanwhocodes/retry@0.4.3': {}
1139
1564
1140
1565
'@jridgewell/gen-mapping@0.3.13':
1141
1566
dependencies:
···
1156
1581
'@jridgewell/resolve-uri': 3.1.2
1157
1582
'@jridgewell/sourcemap-codec': 1.5.5
1158
1583
1159
-
'@noble/curves@1.9.7':
1160
-
dependencies:
1161
-
'@noble/hashes': 1.8.0
1162
-
1163
-
'@noble/hashes@1.8.0': {}
1584
+
'@noble/secp256k1@3.0.0': {}
1164
1585
1165
1586
'@rollup/rollup-android-arm-eabi@4.55.1':
1166
1587
optional: true
···
1237
1658
'@rollup/rollup-win32-x64-msvc@4.55.1':
1238
1659
optional: true
1239
1660
1661
+
'@standard-schema/spec@1.1.0': {}
1662
+
1240
1663
'@sveltejs/acorn-typescript@1.0.8(acorn@8.15.0)':
1241
1664
dependencies:
1242
1665
acorn: 8.15.0
1243
1666
1244
-
'@sveltejs/vite-plugin-svelte-inspector@5.0.2(@sveltejs/vite-plugin-svelte@6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)))(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4))':
1667
+
'@sveltejs/vite-plugin-svelte-inspector@5.0.2(@sveltejs/vite-plugin-svelte@6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)))(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))':
1245
1668
dependencies:
1246
-
'@sveltejs/vite-plugin-svelte': 6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4))
1669
+
'@sveltejs/vite-plugin-svelte': 6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))
1247
1670
obug: 2.1.1
1248
1671
svelte: 5.46.1
1249
-
vite: 7.3.1(@types/node@24.10.4)
1672
+
vite: 7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)
1250
1673
1251
-
'@sveltejs/vite-plugin-svelte@6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4))':
1674
+
'@sveltejs/vite-plugin-svelte@6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))':
1252
1675
dependencies:
1253
-
'@sveltejs/vite-plugin-svelte-inspector': 5.0.2(@sveltejs/vite-plugin-svelte@6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)))(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4))
1676
+
'@sveltejs/vite-plugin-svelte-inspector': 5.0.2(@sveltejs/vite-plugin-svelte@6.2.3(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)))(svelte@5.46.1)(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))
1254
1677
deepmerge: 4.3.1
1255
1678
magic-string: 0.30.21
1256
1679
obug: 2.1.1
1257
1680
svelte: 5.46.1
1258
-
vite: 7.3.1(@types/node@24.10.4)
1259
-
vitefu: 1.1.1(vite@7.3.1(@types/node@24.10.4))
1681
+
vite: 7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)
1682
+
vitefu: 1.1.1(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))
1260
1683
1261
-
'@ts-morph/common@0.28.1':
1684
+
'@tailwindcss/node@4.1.18':
1262
1685
dependencies:
1263
-
minimatch: 10.1.1
1264
-
path-browserify: 1.0.1
1265
-
tinyglobby: 0.2.15
1686
+
'@jridgewell/remapping': 2.3.5
1687
+
enhanced-resolve: 5.18.4
1688
+
jiti: 2.6.1
1689
+
lightningcss: 1.30.2
1690
+
magic-string: 0.30.21
1691
+
source-map-js: 1.2.1
1692
+
tailwindcss: 4.1.18
1693
+
1694
+
'@tailwindcss/oxide-android-arm64@4.1.18':
1695
+
optional: true
1696
+
1697
+
'@tailwindcss/oxide-darwin-arm64@4.1.18':
1698
+
optional: true
1699
+
1700
+
'@tailwindcss/oxide-darwin-x64@4.1.18':
1701
+
optional: true
1702
+
1703
+
'@tailwindcss/oxide-freebsd-x64@4.1.18':
1704
+
optional: true
1705
+
1706
+
'@tailwindcss/oxide-linux-arm-gnueabihf@4.1.18':
1707
+
optional: true
1708
+
1709
+
'@tailwindcss/oxide-linux-arm64-gnu@4.1.18':
1710
+
optional: true
1711
+
1712
+
'@tailwindcss/oxide-linux-arm64-musl@4.1.18':
1713
+
optional: true
1714
+
1715
+
'@tailwindcss/oxide-linux-x64-gnu@4.1.18':
1716
+
optional: true
1717
+
1718
+
'@tailwindcss/oxide-linux-x64-musl@4.1.18':
1719
+
optional: true
1720
+
1721
+
'@tailwindcss/oxide-wasm32-wasi@4.1.18':
1722
+
optional: true
1723
+
1724
+
'@tailwindcss/oxide-win32-arm64-msvc@4.1.18':
1725
+
optional: true
1726
+
1727
+
'@tailwindcss/oxide-win32-x64-msvc@4.1.18':
1728
+
optional: true
1729
+
1730
+
'@tailwindcss/oxide@4.1.18':
1731
+
optionalDependencies:
1732
+
'@tailwindcss/oxide-android-arm64': 4.1.18
1733
+
'@tailwindcss/oxide-darwin-arm64': 4.1.18
1734
+
'@tailwindcss/oxide-darwin-x64': 4.1.18
1735
+
'@tailwindcss/oxide-freebsd-x64': 4.1.18
1736
+
'@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.18
1737
+
'@tailwindcss/oxide-linux-arm64-gnu': 4.1.18
1738
+
'@tailwindcss/oxide-linux-arm64-musl': 4.1.18
1739
+
'@tailwindcss/oxide-linux-x64-gnu': 4.1.18
1740
+
'@tailwindcss/oxide-linux-x64-musl': 4.1.18
1741
+
'@tailwindcss/oxide-wasm32-wasi': 4.1.18
1742
+
'@tailwindcss/oxide-win32-arm64-msvc': 4.1.18
1743
+
'@tailwindcss/oxide-win32-x64-msvc': 4.1.18
1744
+
1745
+
'@tailwindcss/vite@4.1.18(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2))':
1746
+
dependencies:
1747
+
'@tailwindcss/node': 4.1.18
1748
+
'@tailwindcss/oxide': 4.1.18
1749
+
tailwindcss: 4.1.18
1750
+
vite: 7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)
1266
1751
1267
1752
'@tsconfig/svelte@5.0.6': {}
1268
1753
1269
1754
'@types/estree@1.0.8': {}
1270
1755
1756
+
'@types/json-schema@7.0.15': {}
1757
+
1271
1758
'@types/node@24.10.4':
1272
1759
dependencies:
1273
1760
undici-types: 7.16.0
1274
1761
1275
-
abort-controller@3.0.0:
1762
+
'@typescript-eslint/eslint-plugin@8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
1763
+
dependencies:
1764
+
'@eslint-community/regexpp': 4.12.2
1765
+
'@typescript-eslint/parser': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
1766
+
'@typescript-eslint/scope-manager': 8.52.0
1767
+
'@typescript-eslint/type-utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
1768
+
'@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
1769
+
'@typescript-eslint/visitor-keys': 8.52.0
1770
+
eslint: 9.39.2(jiti@2.6.1)
1771
+
ignore: 7.0.5
1772
+
natural-compare: 1.4.0
1773
+
ts-api-utils: 2.4.0(typescript@5.9.3)
1774
+
typescript: 5.9.3
1775
+
transitivePeerDependencies:
1776
+
- supports-color
1777
+
1778
+
'@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
1779
+
dependencies:
1780
+
'@typescript-eslint/scope-manager': 8.52.0
1781
+
'@typescript-eslint/types': 8.52.0
1782
+
'@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3)
1783
+
'@typescript-eslint/visitor-keys': 8.52.0
1784
+
debug: 4.4.3
1785
+
eslint: 9.39.2(jiti@2.6.1)
1786
+
typescript: 5.9.3
1787
+
transitivePeerDependencies:
1788
+
- supports-color
1789
+
1790
+
'@typescript-eslint/project-service@8.52.0(typescript@5.9.3)':
1791
+
dependencies:
1792
+
'@typescript-eslint/tsconfig-utils': 8.52.0(typescript@5.9.3)
1793
+
'@typescript-eslint/types': 8.52.0
1794
+
debug: 4.4.3
1795
+
typescript: 5.9.3
1796
+
transitivePeerDependencies:
1797
+
- supports-color
1798
+
1799
+
'@typescript-eslint/scope-manager@8.52.0':
1800
+
dependencies:
1801
+
'@typescript-eslint/types': 8.52.0
1802
+
'@typescript-eslint/visitor-keys': 8.52.0
1803
+
1804
+
'@typescript-eslint/tsconfig-utils@8.52.0(typescript@5.9.3)':
1805
+
dependencies:
1806
+
typescript: 5.9.3
1807
+
1808
+
'@typescript-eslint/type-utils@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
1276
1809
dependencies:
1277
-
event-target-shim: 5.0.1
1810
+
'@typescript-eslint/types': 8.52.0
1811
+
'@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3)
1812
+
'@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
1813
+
debug: 4.4.3
1814
+
eslint: 9.39.2(jiti@2.6.1)
1815
+
ts-api-utils: 2.4.0(typescript@5.9.3)
1816
+
typescript: 5.9.3
1817
+
transitivePeerDependencies:
1818
+
- supports-color
1819
+
1820
+
'@typescript-eslint/types@8.52.0': {}
1821
+
1822
+
'@typescript-eslint/typescript-estree@8.52.0(typescript@5.9.3)':
1823
+
dependencies:
1824
+
'@typescript-eslint/project-service': 8.52.0(typescript@5.9.3)
1825
+
'@typescript-eslint/tsconfig-utils': 8.52.0(typescript@5.9.3)
1826
+
'@typescript-eslint/types': 8.52.0
1827
+
'@typescript-eslint/visitor-keys': 8.52.0
1828
+
debug: 4.4.3
1829
+
minimatch: 9.0.5
1830
+
semver: 7.7.3
1831
+
tinyglobby: 0.2.15
1832
+
ts-api-utils: 2.4.0(typescript@5.9.3)
1833
+
typescript: 5.9.3
1834
+
transitivePeerDependencies:
1835
+
- supports-color
1836
+
1837
+
'@typescript-eslint/utils@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)':
1838
+
dependencies:
1839
+
'@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
1840
+
'@typescript-eslint/scope-manager': 8.52.0
1841
+
'@typescript-eslint/types': 8.52.0
1842
+
'@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3)
1843
+
eslint: 9.39.2(jiti@2.6.1)
1844
+
typescript: 5.9.3
1845
+
transitivePeerDependencies:
1846
+
- supports-color
1847
+
1848
+
'@typescript-eslint/visitor-keys@8.52.0':
1849
+
dependencies:
1850
+
'@typescript-eslint/types': 8.52.0
1851
+
eslint-visitor-keys: 4.2.1
1852
+
1853
+
acorn-jsx@5.3.2(acorn@8.15.0):
1854
+
dependencies:
1855
+
acorn: 8.15.0
1278
1856
1279
1857
acorn@8.15.0: {}
1280
1858
1281
-
ansi-regex@5.0.1: {}
1859
+
ajv@6.12.6:
1860
+
dependencies:
1861
+
fast-deep-equal: 3.1.3
1862
+
fast-json-stable-stringify: 2.1.0
1863
+
json-schema-traverse: 0.4.1
1864
+
uri-js: 4.4.1
1282
1865
1283
1866
ansi-styles@4.3.0:
1284
1867
dependencies:
1285
1868
color-convert: 2.0.1
1286
1869
1287
-
aria-query@5.3.2: {}
1870
+
argparse@2.0.1: {}
1288
1871
1289
-
atomic-sleep@1.0.0: {}
1872
+
aria-query@5.3.2: {}
1290
1873
1291
1874
axobject-query@4.1.0: {}
1292
1875
1293
-
base64-js@1.5.1: {}
1876
+
balanced-match@1.0.2: {}
1294
1877
1295
-
buffer@6.0.3:
1878
+
brace-expansion@1.1.12:
1296
1879
dependencies:
1297
-
base64-js: 1.5.1
1298
-
ieee754: 1.2.1
1880
+
balanced-match: 1.0.2
1881
+
concat-map: 0.0.1
1299
1882
1300
-
cborg@1.10.2: {}
1883
+
brace-expansion@2.0.2:
1884
+
dependencies:
1885
+
balanced-match: 1.0.2
1886
+
1887
+
callsites@3.1.0: {}
1888
+
1889
+
chalk@4.1.2:
1890
+
dependencies:
1891
+
ansi-styles: 4.3.0
1892
+
supports-color: 7.2.0
1301
1893
1302
1894
chokidar@4.0.3:
1303
1895
dependencies:
1304
1896
readdirp: 4.1.2
1305
1897
1306
-
cliui@8.0.1:
1307
-
dependencies:
1308
-
string-width: 4.2.3
1309
-
strip-ansi: 6.0.1
1310
-
wrap-ansi: 7.0.0
1311
-
1312
1898
clsx@2.1.1: {}
1313
-
1314
-
code-block-writer@13.0.3: {}
1315
1899
1316
1900
color-convert@2.0.1:
1317
1901
dependencies:
···
1319
1903
1320
1904
color-name@1.1.4: {}
1321
1905
1322
-
core-js@3.47.0: {}
1906
+
concat-map@0.0.1: {}
1907
+
1908
+
cross-spawn@7.0.6:
1909
+
dependencies:
1910
+
path-key: 3.1.1
1911
+
shebang-command: 2.0.0
1912
+
which: 2.0.2
1913
+
1914
+
cssesc@3.0.0: {}
1915
+
1916
+
daisyui@5.5.14: {}
1917
+
1918
+
debug@4.4.3:
1919
+
dependencies:
1920
+
ms: 2.1.3
1921
+
1922
+
deep-is@0.1.4: {}
1323
1923
1324
1924
deepmerge@4.3.1: {}
1925
+
1926
+
detect-libc@2.1.2: {}
1325
1927
1326
1928
devalue@5.6.1: {}
1327
1929
1328
-
emoji-regex@8.0.0: {}
1930
+
enhanced-resolve@5.18.4:
1931
+
dependencies:
1932
+
graceful-fs: 4.2.11
1933
+
tapable: 2.3.0
1329
1934
1330
1935
esbuild@0.27.2:
1331
1936
optionalDependencies:
···
1356
1961
'@esbuild/win32-ia32': 0.27.2
1357
1962
'@esbuild/win32-x64': 0.27.2
1358
1963
1359
-
escalade@3.2.0: {}
1964
+
escape-string-regexp@4.0.0: {}
1965
+
1966
+
eslint-plugin-svelte@3.14.0(eslint@9.39.2(jiti@2.6.1))(svelte@5.46.1):
1967
+
dependencies:
1968
+
'@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
1969
+
'@jridgewell/sourcemap-codec': 1.5.5
1970
+
eslint: 9.39.2(jiti@2.6.1)
1971
+
esutils: 2.0.3
1972
+
globals: 16.5.0
1973
+
known-css-properties: 0.37.0
1974
+
postcss: 8.5.6
1975
+
postcss-load-config: 3.1.4(postcss@8.5.6)
1976
+
postcss-safe-parser: 7.0.1(postcss@8.5.6)
1977
+
semver: 7.7.3
1978
+
svelte-eslint-parser: 1.4.1(svelte@5.46.1)
1979
+
optionalDependencies:
1980
+
svelte: 5.46.1
1981
+
transitivePeerDependencies:
1982
+
- ts-node
1983
+
1984
+
eslint-scope@8.4.0:
1985
+
dependencies:
1986
+
esrecurse: 4.3.0
1987
+
estraverse: 5.3.0
1988
+
1989
+
eslint-visitor-keys@3.4.3: {}
1990
+
1991
+
eslint-visitor-keys@4.2.1: {}
1992
+
1993
+
eslint@9.39.2(jiti@2.6.1):
1994
+
dependencies:
1995
+
'@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1))
1996
+
'@eslint-community/regexpp': 4.12.2
1997
+
'@eslint/config-array': 0.21.1
1998
+
'@eslint/config-helpers': 0.4.2
1999
+
'@eslint/core': 0.17.0
2000
+
'@eslint/eslintrc': 3.3.3
2001
+
'@eslint/js': 9.39.2
2002
+
'@eslint/plugin-kit': 0.4.1
2003
+
'@humanfs/node': 0.16.7
2004
+
'@humanwhocodes/module-importer': 1.0.1
2005
+
'@humanwhocodes/retry': 0.4.3
2006
+
'@types/estree': 1.0.8
2007
+
ajv: 6.12.6
2008
+
chalk: 4.1.2
2009
+
cross-spawn: 7.0.6
2010
+
debug: 4.4.3
2011
+
escape-string-regexp: 4.0.0
2012
+
eslint-scope: 8.4.0
2013
+
eslint-visitor-keys: 4.2.1
2014
+
espree: 10.4.0
2015
+
esquery: 1.7.0
2016
+
esutils: 2.0.3
2017
+
fast-deep-equal: 3.1.3
2018
+
file-entry-cache: 8.0.0
2019
+
find-up: 5.0.0
2020
+
glob-parent: 6.0.2
2021
+
ignore: 5.3.2
2022
+
imurmurhash: 0.1.4
2023
+
is-glob: 4.0.3
2024
+
json-stable-stringify-without-jsonify: 1.0.1
2025
+
lodash.merge: 4.6.2
2026
+
minimatch: 3.1.2
2027
+
natural-compare: 1.4.0
2028
+
optionator: 0.9.4
2029
+
optionalDependencies:
2030
+
jiti: 2.6.1
2031
+
transitivePeerDependencies:
2032
+
- supports-color
1360
2033
1361
2034
esm-env@1.2.2: {}
1362
2035
2036
+
espree@10.4.0:
2037
+
dependencies:
2038
+
acorn: 8.15.0
2039
+
acorn-jsx: 5.3.2(acorn@8.15.0)
2040
+
eslint-visitor-keys: 4.2.1
2041
+
2042
+
esquery@1.7.0:
2043
+
dependencies:
2044
+
estraverse: 5.3.0
2045
+
1363
2046
esrap@2.2.1:
1364
2047
dependencies:
1365
2048
'@jridgewell/sourcemap-codec': 1.5.5
1366
2049
1367
-
event-target-shim@5.0.1: {}
2050
+
esrecurse@4.3.0:
2051
+
dependencies:
2052
+
estraverse: 5.3.0
2053
+
2054
+
estraverse@5.3.0: {}
2055
+
2056
+
esutils@2.0.3: {}
2057
+
2058
+
fast-deep-equal@3.1.3: {}
1368
2059
1369
-
events@3.3.0: {}
2060
+
fast-json-stable-stringify@2.1.0: {}
1370
2061
1371
-
fast-redact@3.5.0: {}
2062
+
fast-levenshtein@2.0.6: {}
1372
2063
1373
2064
fdir@6.5.0(picomatch@4.0.3):
1374
2065
optionalDependencies:
1375
2066
picomatch: 4.0.3
1376
2067
2068
+
file-entry-cache@8.0.0:
2069
+
dependencies:
2070
+
flat-cache: 4.0.1
2071
+
2072
+
find-up@5.0.0:
2073
+
dependencies:
2074
+
locate-path: 6.0.0
2075
+
path-exists: 4.0.0
2076
+
2077
+
flat-cache@4.0.1:
2078
+
dependencies:
2079
+
flatted: 3.3.3
2080
+
keyv: 4.5.4
2081
+
2082
+
flatted@3.3.3: {}
2083
+
1377
2084
fsevents@2.3.3:
1378
2085
optional: true
1379
2086
1380
-
get-caller-file@2.0.5: {}
2087
+
glob-parent@6.0.2:
2088
+
dependencies:
2089
+
is-glob: 4.0.3
2090
+
2091
+
globals@14.0.0: {}
2092
+
2093
+
globals@16.5.0: {}
2094
+
2095
+
globals@17.0.0: {}
2096
+
2097
+
graceful-fs@4.2.11: {}
2098
+
2099
+
has-flag@4.0.0: {}
2100
+
2101
+
ignore@5.3.2: {}
2102
+
2103
+
ignore@7.0.5: {}
2104
+
2105
+
import-fresh@3.3.1:
2106
+
dependencies:
2107
+
parent-module: 1.0.1
2108
+
resolve-from: 4.0.0
2109
+
2110
+
imurmurhash@0.1.4: {}
1381
2111
1382
-
ieee754@1.2.1: {}
2112
+
is-extglob@2.1.1: {}
1383
2113
1384
-
is-fullwidth-code-point@3.0.0: {}
2114
+
is-glob@4.0.3:
2115
+
dependencies:
2116
+
is-extglob: 2.1.1
1385
2117
1386
2118
is-reference@3.0.3:
1387
2119
dependencies:
1388
2120
'@types/estree': 1.0.8
1389
2121
1390
-
iso-datestring-validator@2.2.2: {}
2122
+
isexe@2.0.0: {}
2123
+
2124
+
jiti@2.6.1: {}
2125
+
2126
+
js-yaml@4.1.1:
2127
+
dependencies:
2128
+
argparse: 2.0.1
2129
+
2130
+
json-buffer@3.0.1: {}
2131
+
2132
+
json-schema-traverse@0.4.1: {}
2133
+
2134
+
json-stable-stringify-without-jsonify@1.0.1: {}
2135
+
2136
+
keyv@4.5.4:
2137
+
dependencies:
2138
+
json-buffer: 3.0.1
2139
+
2140
+
known-css-properties@0.37.0: {}
2141
+
2142
+
levn@0.4.1:
2143
+
dependencies:
2144
+
prelude-ls: 1.2.1
2145
+
type-check: 0.4.0
2146
+
2147
+
lightningcss-android-arm64@1.30.2:
2148
+
optional: true
2149
+
2150
+
lightningcss-darwin-arm64@1.30.2:
2151
+
optional: true
2152
+
2153
+
lightningcss-darwin-x64@1.30.2:
2154
+
optional: true
2155
+
2156
+
lightningcss-freebsd-x64@1.30.2:
2157
+
optional: true
2158
+
2159
+
lightningcss-linux-arm-gnueabihf@1.30.2:
2160
+
optional: true
2161
+
2162
+
lightningcss-linux-arm64-gnu@1.30.2:
2163
+
optional: true
2164
+
2165
+
lightningcss-linux-arm64-musl@1.30.2:
2166
+
optional: true
2167
+
2168
+
lightningcss-linux-x64-gnu@1.30.2:
2169
+
optional: true
2170
+
2171
+
lightningcss-linux-x64-musl@1.30.2:
2172
+
optional: true
2173
+
2174
+
lightningcss-win32-arm64-msvc@1.30.2:
2175
+
optional: true
2176
+
2177
+
lightningcss-win32-x64-msvc@1.30.2:
2178
+
optional: true
2179
+
2180
+
lightningcss@1.30.2:
2181
+
dependencies:
2182
+
detect-libc: 2.1.2
2183
+
optionalDependencies:
2184
+
lightningcss-android-arm64: 1.30.2
2185
+
lightningcss-darwin-arm64: 1.30.2
2186
+
lightningcss-darwin-x64: 1.30.2
2187
+
lightningcss-freebsd-x64: 1.30.2
2188
+
lightningcss-linux-arm-gnueabihf: 1.30.2
2189
+
lightningcss-linux-arm64-gnu: 1.30.2
2190
+
lightningcss-linux-arm64-musl: 1.30.2
2191
+
lightningcss-linux-x64-gnu: 1.30.2
2192
+
lightningcss-linux-x64-musl: 1.30.2
2193
+
lightningcss-win32-arm64-msvc: 1.30.2
2194
+
lightningcss-win32-x64-msvc: 1.30.2
2195
+
2196
+
lilconfig@2.1.0: {}
1391
2197
1392
2198
locate-character@3.0.0: {}
1393
2199
1394
-
lru-cache@10.4.3: {}
2200
+
locate-path@6.0.0:
2201
+
dependencies:
2202
+
p-locate: 5.0.0
2203
+
2204
+
lodash.merge@4.6.2: {}
1395
2205
1396
2206
magic-string@0.30.21:
1397
2207
dependencies:
1398
2208
'@jridgewell/sourcemap-codec': 1.5.5
1399
2209
1400
-
minimatch@10.1.1:
2210
+
minimatch@3.1.2:
2211
+
dependencies:
2212
+
brace-expansion: 1.1.12
2213
+
2214
+
minimatch@9.0.5:
1401
2215
dependencies:
1402
-
'@isaacs/brace-expansion': 5.0.0
2216
+
brace-expansion: 2.0.2
1403
2217
1404
2218
mri@1.2.0: {}
1405
2219
1406
-
multiformats@9.9.0: {}
2220
+
ms@2.1.3: {}
1407
2221
1408
2222
nanoid@3.3.11: {}
1409
2223
2224
+
natural-compare@1.4.0: {}
2225
+
1410
2226
obug@2.1.1: {}
1411
2227
1412
-
on-exit-leak-free@2.1.2: {}
2228
+
optionator@0.9.4:
2229
+
dependencies:
2230
+
deep-is: 0.1.4
2231
+
fast-levenshtein: 2.0.6
2232
+
levn: 0.4.1
2233
+
prelude-ls: 1.2.1
2234
+
type-check: 0.4.0
2235
+
word-wrap: 1.2.5
2236
+
2237
+
p-limit@3.1.0:
2238
+
dependencies:
2239
+
yocto-queue: 0.1.0
2240
+
2241
+
p-locate@5.0.0:
2242
+
dependencies:
2243
+
p-limit: 3.1.0
2244
+
2245
+
parent-module@1.0.1:
2246
+
dependencies:
2247
+
callsites: 3.1.0
1413
2248
1414
-
path-browserify@1.0.1: {}
2249
+
path-exists@4.0.0: {}
2250
+
2251
+
path-key@3.1.1: {}
1415
2252
1416
2253
picocolors@1.1.1: {}
1417
2254
1418
2255
picomatch@4.0.3: {}
1419
2256
1420
-
pino-abstract-transport@1.2.0:
2257
+
postcss-load-config@3.1.4(postcss@8.5.6):
1421
2258
dependencies:
1422
-
readable-stream: 4.7.0
1423
-
split2: 4.2.0
2259
+
lilconfig: 2.1.0
2260
+
yaml: 1.10.2
2261
+
optionalDependencies:
2262
+
postcss: 8.5.6
1424
2263
1425
-
pino-std-serializers@6.2.2: {}
2264
+
postcss-safe-parser@7.0.1(postcss@8.5.6):
2265
+
dependencies:
2266
+
postcss: 8.5.6
2267
+
2268
+
postcss-scss@4.0.9(postcss@8.5.6):
2269
+
dependencies:
2270
+
postcss: 8.5.6
1426
2271
1427
-
pino@8.21.0:
2272
+
postcss-selector-parser@7.1.1:
1428
2273
dependencies:
1429
-
atomic-sleep: 1.0.0
1430
-
fast-redact: 3.5.0
1431
-
on-exit-leak-free: 2.1.2
1432
-
pino-abstract-transport: 1.2.0
1433
-
pino-std-serializers: 6.2.2
1434
-
process-warning: 3.0.0
1435
-
quick-format-unescaped: 4.0.4
1436
-
real-require: 0.2.0
1437
-
safe-stable-stringify: 2.5.0
1438
-
sonic-boom: 3.8.1
1439
-
thread-stream: 2.7.0
2274
+
cssesc: 3.0.0
2275
+
util-deprecate: 1.0.2
1440
2276
1441
2277
postcss@8.5.6:
1442
2278
dependencies:
···
1444
2280
picocolors: 1.1.1
1445
2281
source-map-js: 1.2.1
1446
2282
1447
-
prettier@3.7.4: {}
1448
-
1449
-
process-warning@3.0.0: {}
1450
-
1451
-
process@0.11.10: {}
1452
-
1453
-
quick-format-unescaped@4.0.4: {}
2283
+
prelude-ls@1.2.1: {}
1454
2284
1455
-
readable-stream@4.7.0:
1456
-
dependencies:
1457
-
abort-controller: 3.0.0
1458
-
buffer: 6.0.3
1459
-
events: 3.3.0
1460
-
process: 0.11.10
1461
-
string_decoder: 1.3.0
2285
+
punycode@2.3.1: {}
1462
2286
1463
2287
readdirp@4.1.2: {}
1464
2288
1465
-
real-require@0.2.0: {}
1466
-
1467
-
require-directory@2.1.1: {}
2289
+
resolve-from@4.0.0: {}
1468
2290
1469
2291
rollup@4.55.1:
1470
2292
dependencies:
···
1501
2323
dependencies:
1502
2324
mri: 1.2.0
1503
2325
1504
-
safe-buffer@5.2.1: {}
1505
-
1506
-
safe-stable-stringify@2.5.0: {}
2326
+
semver@7.7.3: {}
1507
2327
1508
-
sonic-boom@3.8.1:
2328
+
shebang-command@2.0.0:
1509
2329
dependencies:
1510
-
atomic-sleep: 1.0.0
2330
+
shebang-regex: 3.0.0
2331
+
2332
+
shebang-regex@3.0.0: {}
1511
2333
1512
2334
source-map-js@1.2.1: {}
1513
2335
1514
-
split2@4.2.0: {}
2336
+
strip-json-comments@3.1.1: {}
1515
2337
1516
-
string-width@4.2.3:
2338
+
supports-color@7.2.0:
1517
2339
dependencies:
1518
-
emoji-regex: 8.0.0
1519
-
is-fullwidth-code-point: 3.0.0
1520
-
strip-ansi: 6.0.1
1521
-
1522
-
string_decoder@1.3.0:
1523
-
dependencies:
1524
-
safe-buffer: 5.2.1
1525
-
1526
-
strip-ansi@6.0.1:
1527
-
dependencies:
1528
-
ansi-regex: 5.0.1
2340
+
has-flag: 4.0.0
1529
2341
1530
2342
svelte-check@4.3.5(picomatch@4.0.3)(svelte@5.46.1)(typescript@5.9.3):
1531
2343
dependencies:
···
1539
2351
transitivePeerDependencies:
1540
2352
- picomatch
1541
2353
2354
+
svelte-eslint-parser@1.4.1(svelte@5.46.1):
2355
+
dependencies:
2356
+
eslint-scope: 8.4.0
2357
+
eslint-visitor-keys: 4.2.1
2358
+
espree: 10.4.0
2359
+
postcss: 8.5.6
2360
+
postcss-scss: 4.0.9(postcss@8.5.6)
2361
+
postcss-selector-parser: 7.1.1
2362
+
optionalDependencies:
2363
+
svelte: 5.46.1
2364
+
1542
2365
svelte@5.46.1:
1543
2366
dependencies:
1544
2367
'@jridgewell/remapping': 2.3.5
···
1557
2380
magic-string: 0.30.21
1558
2381
zimmerframe: 1.1.4
1559
2382
1560
-
thread-stream@2.7.0:
1561
-
dependencies:
1562
-
real-require: 0.2.0
2383
+
tailwindcss@4.1.18: {}
2384
+
2385
+
tapable@2.3.0: {}
1563
2386
1564
2387
tinyglobby@0.2.15:
1565
2388
dependencies:
1566
2389
fdir: 6.5.0(picomatch@4.0.3)
1567
2390
picomatch: 4.0.3
1568
2391
1569
-
ts-morph@27.0.2:
2392
+
ts-api-utils@2.4.0(typescript@5.9.3):
2393
+
dependencies:
2394
+
typescript: 5.9.3
2395
+
2396
+
type-check@0.4.0:
1570
2397
dependencies:
1571
-
'@ts-morph/common': 0.28.1
1572
-
code-block-writer: 13.0.3
2398
+
prelude-ls: 1.2.1
1573
2399
1574
-
tslib@2.8.1: {}
2400
+
typescript-eslint@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3):
2401
+
dependencies:
2402
+
'@typescript-eslint/eslint-plugin': 8.52.0(@typescript-eslint/parser@8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
2403
+
'@typescript-eslint/parser': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
2404
+
'@typescript-eslint/typescript-estree': 8.52.0(typescript@5.9.3)
2405
+
'@typescript-eslint/utils': 8.52.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)
2406
+
eslint: 9.39.2(jiti@2.6.1)
2407
+
typescript: 5.9.3
2408
+
transitivePeerDependencies:
2409
+
- supports-color
1575
2410
1576
2411
typescript@5.9.3: {}
1577
-
1578
-
uint8arrays@3.0.0:
1579
-
dependencies:
1580
-
multiformats: 9.9.0
1581
2412
1582
2413
undici-types@7.16.0: {}
1583
2414
1584
2415
unicode-segmenter@0.14.5: {}
1585
2416
1586
-
varint@6.0.0: {}
2417
+
uri-js@4.4.1:
2418
+
dependencies:
2419
+
punycode: 2.3.1
2420
+
2421
+
util-deprecate@1.0.2: {}
1587
2422
1588
-
vite@7.3.1(@types/node@24.10.4):
2423
+
vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2):
1589
2424
dependencies:
1590
2425
esbuild: 0.27.2
1591
2426
fdir: 6.5.0(picomatch@4.0.3)
···
1596
2431
optionalDependencies:
1597
2432
'@types/node': 24.10.4
1598
2433
fsevents: 2.3.3
2434
+
jiti: 2.6.1
2435
+
lightningcss: 1.30.2
1599
2436
1600
-
vitefu@1.1.1(vite@7.3.1(@types/node@24.10.4)):
2437
+
vitefu@1.1.1(vite@7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)):
1601
2438
optionalDependencies:
1602
-
vite: 7.3.1(@types/node@24.10.4)
2439
+
vite: 7.3.1(@types/node@24.10.4)(jiti@2.6.1)(lightningcss@1.30.2)
1603
2440
1604
-
wrap-ansi@7.0.0:
2441
+
which@2.0.2:
1605
2442
dependencies:
1606
-
ansi-styles: 4.3.0
1607
-
string-width: 4.2.3
1608
-
strip-ansi: 6.0.1
2443
+
isexe: 2.0.0
1609
2444
1610
-
y18n@5.0.8: {}
2445
+
word-wrap@1.2.5: {}
1611
2446
1612
-
yargs-parser@21.1.1: {}
2447
+
yaml@1.10.2: {}
1613
2448
1614
-
yargs@17.7.2:
1615
-
dependencies:
1616
-
cliui: 8.0.1
1617
-
escalade: 3.2.0
1618
-
get-caller-file: 2.0.5
1619
-
require-directory: 2.1.1
1620
-
string-width: 4.2.3
1621
-
y18n: 5.0.8
1622
-
yargs-parser: 21.1.1
2449
+
yocto-queue@0.1.0: {}
1623
2450
1624
2451
zimmerframe@1.1.4: {}
1625
-
1626
-
zod@3.25.76: {}
public/dude.png
public/dude.png
This is a binary file and will not be displayed.
public/slowPoke.png
public/slowPoke.png
This is a binary file and will not be displayed.
-1
public/vite.svg
-1
public/vite.svg
···
1
-
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
+40
-24
src/App.svelte
+40
-24
src/App.svelte
···
1
1
<script lang="ts">
2
2
3
-
import SearchForm from "./lib/SearchForm.svelte";
4
-
import RepoStats from "./lib/RepoStats.svelte";
5
-
6
-
let showRepoStats = $state(false)
7
-
let did = $state("")
8
-
let pdsUrl = $state("")
3
+
import SearchForm from './lib/SearchForm.svelte';
4
+
import RepoStats from './lib/RepoStats.svelte';
9
5
10
-
const resolvedResult = (didResult: string, pdsUrlResult: string) => {
11
-
did = didResult;
12
-
pdsUrl = pdsUrlResult;
13
-
showRepoStats = true;
14
-
}
6
+
let showRepoStats = $state(false);
7
+
let searchResults = $state({
8
+
did: '',
9
+
handle: '',
10
+
pdsUrl: '',
11
+
slowPoke: false
12
+
});
15
13
14
+
const resolvedResult = (didResult: string, handle: string, pdsUrlResult: string, slowPokeResult: boolean) => {
15
+
searchResults = { did: didResult, handle: handle, pdsUrl: pdsUrlResult, slowPoke: slowPokeResult };
16
+
showRepoStats = true;
17
+
};
16
18
17
19
</script>
18
20
19
-
<main>
20
-
<h1>Repo Walk Example</h1>
21
+
<a href="https://tangled.org/baileytownsend.dev/repo-walk-example" target="_blank" rel="noopener noreferrer" class="fixed top-4 right-4 z-50 btn btn-ghost btn-sm gap-2 hover:scale-110 transition-transform shadow-lg">
22
+
<svg version="1.1" class="size-6" width="25" height="25" viewBox="0 0 25 25" xmlns="http://www.w3.org/2000/svg">
23
+
<g transform="translate(-0.42924038,-0.87777209)">
24
+
<path fill="currentColor" style="stroke-width:0.111183;" d="m 16.775491,24.987061 c -0.78517,-0.0064 -1.384202,-0.234614 -2.033994,-0.631295 -0.931792,-0.490188 -1.643475,-1.31368 -2.152014,-2.221647 C 11.781409,23.136647 10.701392,23.744942 9.4922931,24.0886 8.9774725,24.238111 8.0757679,24.389777 6.5811304,23.84827 4.4270703,23.124679 2.8580086,20.883331 3.0363279,18.599583 3.0037061,17.652919 3.3488675,16.723769 3.8381157,15.925061 2.5329485,15.224503 1.4686756,14.048584 1.0611184,12.606459 0.81344502,11.816973 0.82385989,10.966486 0.91519098,10.154906 1.2422711,8.2387903 2.6795811,6.5725716 4.5299585,5.9732484 5.2685364,4.290122 6.8802592,3.0349975 8.706276,2.7794663 c 1.2124148,-0.1688264 2.46744,0.084987 3.52811,0.7011837 1.545426,-1.7139736 4.237779,-2.2205077 6.293579,-1.1676231 1.568222,0.7488935 2.689625,2.3113526 2.961888,4.0151464 1.492195,0.5977882 2.749007,1.8168898 3.242225,3.3644951 0.329805,0.9581836 0.340709,2.0135956 0.127128,2.9974286 -0.381606,1.535184 -1.465322,2.842146 -2.868035,3.556463 0.0034,0.273204 0.901506,2.243045 0.751284,3.729647 -0.03281,1.858525 -1.211631,3.619894 -2.846433,4.475452 -0.953967,0.556812 -2.084452,0.546309 -3.120531,0.535398 z m -4.470079,-5.349839 c 1.322246,-0.147248 2.189053,-1.300106 2.862307,-2.338363 0.318287,-0.472954 0.561404,-1.002348 0.803,-1.505815 0.313265,0.287151 0.578698,0.828085 1.074141,0.956909 0.521892,0.162542 1.133743,0.03052 1.45325,-0.443554 0.611414,-1.140449 0.31004,-2.516537 -0.04602,-3.698347 C 18.232844,11.92927 17.945151,11.232927 17.397785,10.751793 17.514522,9.9283111 17.026575,9.0919791 16.332883,8.6609491 15.741721,9.1323278 14.842258,9.1294949 14.271975,8.6252369 13.178927,9.7400102 12.177239,9.7029996 11.209704,8.8195135 10.992255,8.6209543 10.577326,10.031484 9.1211947,9.2324497 8.2846288,9.9333947 7.6359672,10.607693 7.0611981,11.578553 6.5026891,12.62523 5.9177873,13.554793 5.867393,14.69141 c -0.024234,0.66432 0.4948601,1.360337 1.1982269,1.306329 0.702996,0.06277 1.1815208,-0.629091 1.7138087,-0.916491 0.079382,0.927141 0.1688108,1.923227 0.4821259,2.828358 0.3596254,1.171275 1.6262605,1.915695 2.8251855,1.745211 0.08481,-0.0066 0.218672,-0.01769 0.218672,-0.0176 z m 0.686342,-3.497495 c -0.643126,-0.394168 -0.33365,-1.249599 -0.359402,-1.870938 0.064,-0.749774 0.115321,-1.538054 0.452402,-2.221125 0.356724,-0.487008 1.226721,-0.299139 1.265134,0.325689 -0.02558,0.628509 -0.314101,1.25416 -0.279646,1.9057 -0.07482,0.544043 0.05418,1.155133 -0.186476,1.652391 -0.197455,0.275121 -0.599638,0.355105 -0.892012,0.208283 z m -2.808766,-0.358124 c -0.605767,-0.328664 -0.4133176,-1.155655 -0.5083256,-1.73063 0.078762,-0.66567 0.013203,-1.510085 0.5705316,-1.976886 0.545037,-0.380109 1.286917,0.270803 1.029164,0.868384 -0.274913,0.755214 -0.09475,1.580345 -0.08893,2.34609 -0.104009,0.451702 -0.587146,0.691508 -1.002445,0.493042 z"></path>
25
+
</g>
26
+
</svg>
27
+
<span class="hidden sm:inline">View on Tangled</span>
28
+
</a>
21
29
22
-
<div class="card">
23
-
{#if showRepoStats}
24
-
<RepoStats did={did} pdsUrl={pdsUrl}/>
25
-
{:else}
26
-
<SearchForm resolvedResult={resolvedResult} />
27
-
{/if}
28
-
</div>
30
+
<main class="container mx-auto px-4 py-8 max-w-4xl">
31
+
<div class="text-center mb-8">
32
+
{#if showRepoStats}
33
+
<h2 class="text-2xl font-bold text-primary">Walking <a class="link link-info" href="https://pdsls.dev/at://{searchResults.did}" target="_blank">{searchResults.handle}</a>'s repo {searchResults.slowPoke ? 'via api calls' : 'via export'}</h2>
34
+
{:else}
35
+
<h1 class="text-5xl font-bold mb-4">Walk The Repo</h1>
36
+
<p class="text-lg mb-2">Demo showing why you may rather export the users whole repo instead of walking it via api calls if you want to access all the user's records.</p>
37
+
<p class="text-sm opacity-70">Also shows how many records you have and how many of each kind if you're into that kind of thing...</p>
38
+
{/if}
39
+
</div>
29
40
41
+
<div class="card bg-base-200 shadow-xl">
42
+
<div class="card-body">
43
+
{#if showRepoStats}
44
+
<RepoStats did={searchResults.did} pdsUrl={searchResults.pdsUrl} slowPokeMode={searchResults.slowPoke} handle={searchResults.handle}/>
45
+
{:else}
46
+
<SearchForm resolvedResult={resolvedResult}/>
47
+
{/if}
48
+
</div>
49
+
</div>
30
50
</main>
31
-
32
-
<style>
33
-
34
-
</style>
+3
-78
src/app.css
+3
-78
src/app.css
···
1
-
:root {
2
-
font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
3
-
line-height: 1.5;
4
-
font-weight: 400;
5
-
6
-
color-scheme: light dark;
7
-
color: rgba(255, 255, 255, 0.87);
8
-
background-color: #242424;
9
-
10
-
font-synthesis: none;
11
-
text-rendering: optimizeLegibility;
12
-
-webkit-font-smoothing: antialiased;
13
-
-moz-osx-font-smoothing: grayscale;
14
-
}
15
-
16
-
a {
17
-
font-weight: 500;
18
-
color: #646cff;
19
-
text-decoration: inherit;
20
-
}
21
-
a:hover {
22
-
color: #535bf2;
23
-
}
24
-
25
-
body {
26
-
margin: 0;
27
-
display: flex;
28
-
place-items: start;
29
-
min-width: 320px;
30
-
min-height: 100vh;
31
-
}
32
-
33
-
h1 {
34
-
font-size: 3.2em;
35
-
line-height: 1.1;
36
-
}
37
-
38
-
.card {
39
-
padding: 2em;
40
-
}
41
-
42
-
#app {
43
-
max-width: 1280px;
44
-
margin: 0 auto;
45
-
padding: 2rem;
46
-
text-align: center;
47
-
}
48
-
49
-
button {
50
-
border-radius: 8px;
51
-
border: 1px solid transparent;
52
-
padding: 0.6em 1.2em;
53
-
font-size: 1em;
54
-
font-weight: 500;
55
-
font-family: inherit;
56
-
background-color: #1a1a1a;
57
-
cursor: pointer;
58
-
transition: border-color 0.25s;
59
-
}
60
-
button:hover {
61
-
border-color: #646cff;
62
-
}
63
-
button:focus,
64
-
button:focus-visible {
65
-
outline: 4px auto -webkit-focus-ring-color;
66
-
}
67
-
68
-
@media (prefers-color-scheme: light) {
69
-
:root {
70
-
color: #213547;
71
-
background-color: #ffffff;
72
-
}
73
-
a:hover {
74
-
color: #747bff;
75
-
}
76
-
button {
77
-
background-color: #f9f9f9;
78
-
}
1
+
@import "tailwindcss";
2
+
@plugin "daisyui" {
3
+
themes: forest --default;
79
4
}
-1
src/assets/svelte.svg
-1
src/assets/svelte.svg
···
1
-
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="26.6" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 308"><path fill="#FF3E00" d="M239.682 40.707C211.113-.182 154.69-12.301 113.895 13.69L42.247 59.356a82.198 82.198 0 0 0-37.135 55.056a86.566 86.566 0 0 0 8.536 55.576a82.425 82.425 0 0 0-12.296 30.719a87.596 87.596 0 0 0 14.964 66.244c28.574 40.893 84.997 53.007 125.787 27.016l71.648-45.664a82.182 82.182 0 0 0 37.135-55.057a86.601 86.601 0 0 0-8.53-55.577a82.409 82.409 0 0 0 12.29-30.718a87.573 87.573 0 0 0-14.963-66.244"></path><path fill="#FFF" d="M106.889 270.841c-23.102 6.007-47.497-3.036-61.103-22.648a52.685 52.685 0 0 1-9.003-39.85a49.978 49.978 0 0 1 1.713-6.693l1.35-4.115l3.671 2.697a92.447 92.447 0 0 0 28.036 14.007l2.663.808l-.245 2.659a16.067 16.067 0 0 0 2.89 10.656a17.143 17.143 0 0 0 18.397 6.828a15.786 15.786 0 0 0 4.403-1.935l71.67-45.672a14.922 14.922 0 0 0 6.734-9.977a15.923 15.923 0 0 0-2.713-12.011a17.156 17.156 0 0 0-18.404-6.832a15.78 15.78 0 0 0-4.396 1.933l-27.35 17.434a52.298 52.298 0 0 1-14.553 6.391c-23.101 6.007-47.497-3.036-61.101-22.649a52.681 52.681 0 0 1-9.004-39.849a49.428 49.428 0 0 1 22.34-33.114l71.664-45.677a52.218 52.218 0 0 1 14.563-6.398c23.101-6.007 47.497 3.036 61.101 22.648a52.685 52.685 0 0 1 9.004 39.85a50.559 50.559 0 0 1-1.713 6.692l-1.35 4.116l-3.67-2.693a92.373 92.373 0 0 0-28.037-14.013l-2.664-.809l.246-2.658a16.099 16.099 0 0 0-2.89-10.656a17.143 17.143 0 0 0-18.398-6.828a15.786 15.786 0 0 0-4.402 1.935l-71.67 45.674a14.898 14.898 0 0 0-6.73 9.975a15.9 15.9 0 0 0 2.709 12.012a17.156 17.156 0 0 0 18.404 6.832a15.841 15.841 0 0 0 4.402-1.935l27.345-17.427a52.147 52.147 0 0 1 14.552-6.397c23.101-6.006 47.497 3.037 61.102 22.65a52.681 52.681 0 0 1 9.003 39.848a49.453 49.453 0 0 1-22.34 33.12l-71.664 45.673a52.218 52.218 0 0 1-14.563 6.398"></path></svg>
+257
-68
src/lib/RepoStats.svelte
+257
-68
src/lib/RepoStats.svelte
···
1
1
<script lang="ts">
2
-
import {fromStream, fromUint8Array} from '@atcute/car';
3
-
import * as CBOR from '@atcute/cbor';
2
+
import { onMount } from 'svelte';
3
+
import { Client, simpleFetchHandler } from '@atcute/client';
4
+
import type {} from '@atcute/atproto';
5
+
import { fromStream } from '@atcute/repo';
6
+
7
+
const { did, handle, pdsUrl, slowPokeMode } = $props();
4
8
5
9
interface CountedCollection {
6
-
collection: string;
7
-
count: number;
10
+
collection: string;
11
+
count: number;
8
12
}
9
13
10
-
11
-
const { did, pdsUrl } = $props();
12
-
let loading = $state(true)
13
-
let downloadedBytes = $state(0)
14
-
let downloadedMB = $derived((downloadedBytes / (1024 * 1024)).toFixed(2))
15
-
let error: string | null = $state(null)
14
+
//Shared State
15
+
let loading = $state(true);
16
+
let error: string | null = $state(null);
17
+
//Download info stuff
18
+
let downloadedBytes = $state(0);
19
+
let downloadedMB = $derived((downloadedBytes / (1024 * 1024)).toFixed(2));
20
+
//Ui counts for collections
16
21
let collections = $state(new Array<CountedCollection>());
17
-
let collectionsOrdered: Array<CountedCollection> = $derived([...collections].sort((a, b) => b.count - a.count))
18
-
let totalRecords = $state(0)
19
-
let startTime = $state<number | null>(null)
20
-
let endTime = $state<number | null>(null)
21
-
let elapsedTime = $derived.by(() => {
22
-
if (!startTime) return "0.00"
23
-
const end = endTime ?? Date.now()
24
-
return ((end - startTime) / 1000).toFixed(2)
25
-
})
22
+
let collectionsOrdered: Array<CountedCollection> = $derived([...collections].sort((a, b) => b.count - a.count));
23
+
let totalRecords = $state(0);
24
+
let currentCollection: string | null = $state(null);
25
+
//Timer stuff
26
+
let startTime = $state<number | null>(null);
27
+
let endTime = $state<number | null>(null);
28
+
let elapsedTime = $state('');
29
+
let interval = $state<number | null>(null);
30
+
//Just for the slow pokes
31
+
let webCalls = $state(0);
26
32
27
-
const getRepoStats = async () => {
28
-
const endPoint = `${pdsUrl}/xrpc/com.atproto.sync.getRepo?did=${did}`
33
+
const calculateElapsedTime = () => {
34
+
if (!startTime) return '0.00';
35
+
const end = endTime ?? Date.now();
36
+
elapsedTime = ((end - startTime) / 1000).toFixed(2);
37
+
};
38
+
39
+
const startTimer = () => {
40
+
endTime = null;
41
+
startTime = Date.now();
42
+
interval = setInterval(() => {
43
+
calculateElapsedTime();
44
+
}, 250);
45
+
};
46
+
47
+
const stopTimer = () => {
48
+
if (interval) {
49
+
clearInterval(interval);
50
+
}
51
+
endTime = Date.now();
52
+
calculateElapsedTime();
53
+
};
29
54
30
-
startTime = Date.now()
31
-
endTime = null
55
+
// Calls the getRepo endpoint to get a .car export to walk the repo. allows you to stream and access records as they are downloaded
56
+
const getRepoStatsViaExport = async () => {
57
+
const rpc = new Client({ handler: simpleFetchHandler({ service: pdsUrl }) });
58
+
startTimer();
32
59
try {
33
-
const response = await fetch(endPoint)
34
-
if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`)
60
+
const result = await rpc.get('com.atproto.sync.getRepo', {
61
+
params: { did: did },
62
+
as: 'stream',
63
+
});
35
64
36
-
const car = fromStream(response.body);
65
+
if (!result.ok) {
66
+
throw new Error(`HTTP error! status: ${result.status}`);
67
+
}
68
+
const repo = fromStream(result.data);
37
69
38
-
try {
39
-
for await (const entry of car) {
40
-
const data = CBOR.decode(entry.bytes);
41
-
if (!data.$type) {
42
-
continue;
43
-
}
70
+
try {
71
+
//This reads the repo as it is downloaded. which was very cool and I didn't know it would do that
72
+
for await (const entry of repo) {
73
+
// record here is the content of the atproto record
74
+
// console.log(entry.record);
75
+
let checkForCollection = collections.find(c => c.collection === entry.collection);
76
+
if (!checkForCollection) {
77
+
collections.push({ collection: entry.collection, count: 1 });
78
+
} else {
79
+
checkForCollection.count++;
80
+
}
81
+
downloadedBytes = entry.carEntry.entryEnd;
82
+
totalRecords++;
83
+
}
84
+
} finally {
85
+
stopTimer();
86
+
}
87
+
loading = false;
88
+
} catch (err) {
89
+
stopTimer();
90
+
console.log(err);
91
+
console.error('Error fetching repo stats:', err);
92
+
if (err instanceof Error) {
93
+
error = err.message;
94
+
} else {
95
+
error = 'Unknown error: can check the console for more details';
96
+
}
97
+
loading = false;
98
+
}
99
+
};
44
100
45
-
let checkForCollection = collections.find(c => c.collection === data.$type);
46
-
if (!checkForCollection) {
47
-
collections.push({collection: data.$type, count: 1});
48
-
}else{
49
-
checkForCollection.count++;
50
-
}
51
-
downloadedBytes = entry.entryEnd;
52
-
totalRecords++;
101
+
//An ungodly amount of api calls showing the speed difference between getting an export and walking the repo
102
+
//via api calls
103
+
const getRepoStatsTheLongWay = async () => {
104
+
try {
105
+
const rpc = new Client({ handler: simpleFetchHandler({ service: pdsUrl }) });
106
+
startTimer();
107
+
//We can make a call to get a list of collections in the repo
108
+
let describeRepo = await rpc.get('com.atproto.repo.describeRepo', {
109
+
params: {
110
+
repo: did
111
+
}
112
+
});
113
+
if(!describeRepo.ok){
114
+
throw new Error(`HTTP error! status: ${describeRepo.status}`);
53
115
}
54
-
}finally{
55
-
await car.dispose()
56
-
}
116
+
webCalls++;
117
+
//We go through each collection and get a list of records in it
118
+
for (const collection of describeRepo.data.collections) {
119
+
let totalRecordsInCollection = 0;
120
+
currentCollection = collection;
121
+
//Do the first call to get a cursor
122
+
const firstCollectionList = await rpc.get('com.atproto.repo.listRecords', {
123
+
params: {
124
+
collection,
125
+
repo: did,
126
+
limit: 100,
127
+
}
128
+
});
129
+
webCalls++;
130
+
if(!firstCollectionList.ok){
131
+
console.error(`HTTP error! status: ${firstCollectionList.status}`);
132
+
continue;
133
+
}
134
+
totalRecords += firstCollectionList.data.records.length;
135
+
totalRecordsInCollection += firstCollectionList.data.records.length;
136
+
137
+
let cursor = firstCollectionList.data.cursor;
138
+
//Walk the collection till the cursor is undefined meaning no more records
139
+
do {
140
+
const nextCollectionList = await rpc.get('com.atproto.repo.listRecords', {
141
+
params: {
142
+
collection,
143
+
repo: did,
144
+
limit: 100,
145
+
cursor
146
+
}
147
+
});
148
+
webCalls++;
149
+
if(!nextCollectionList.ok){
150
+
console.error(`HTTP error! status: ${nextCollectionList.status}`);
151
+
continue;
152
+
}
153
+
totalRecordsInCollection += nextCollectionList.data.records.length;
154
+
cursor = nextCollectionList.data.cursor;
155
+
totalRecords += nextCollectionList.data.records.length;
57
156
58
-
endTime = Date.now()
157
+
} while (cursor !== undefined);
158
+
collections.push({ collection: collection, count:totalRecordsInCollection });
159
+
}
59
160
loading = false;
60
-
} catch (err) {
61
-
endTime = Date.now()
62
-
console.error('Error fetching repo stats:', err)
63
-
error = err.message
64
-
loading = false
161
+
stopTimer();
162
+
}
163
+
catch (err) {
164
+
loading = false;
165
+
stopTimer();
166
+
console.error('Error fetching repo stats:', err);
167
+
if (err instanceof Error) {
168
+
error = err.message;
169
+
} else {
170
+
error = 'Unknown error: can check the console for more details';
171
+
}
172
+
}
173
+
};
174
+
175
+
onMount(() => {
176
+
if (slowPokeMode) {
177
+
getRepoStatsTheLongWay();
178
+
} else {
179
+
getRepoStatsViaExport();
65
180
}
66
-
}
67
181
68
-
$effect(() => {
69
-
getRepoStats()
70
-
})
182
+
});
71
183
72
184
</script>
73
185
74
-
<div>
186
+
<div class="flex flex-col items-center gap-4">
187
+
<div class="w-full flex justify-center">
188
+
{#if slowPokeMode}
189
+
<img
190
+
alt="A Shellder biting a Slowpoke's tail, as seen in the Pokรฉmon anime"
191
+
src="/slowPoke.png"
192
+
class="max-w-sm rounded-lg shadow-lg"
193
+
>
194
+
{:else}
195
+
<img
196
+
alt="text in a speech bubble that says 'Dude, wheres my car'"
197
+
src="/dude.png"
198
+
class="max-w-sm rounded-lg shadow-lg"
199
+
>
200
+
{/if}
201
+
</div>
202
+
75
203
{#if error}
76
-
<p style="color: red">{error}</p>
204
+
<div class="alert alert-error w-full">
205
+
<svg xmlns="http://www.w3.org/2000/svg" class="stroke-current shrink-0 h-6 w-6" fill="none" viewBox="0 0 24 24">
206
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z" />
207
+
</svg>
208
+
<span>{error}</span>
209
+
</div>
77
210
{/if}
78
-
{#if loading}
79
-
Loading... ({downloadedMB} MB downloaded, {elapsedTime}s)
211
+
212
+
{#if loading && !slowPokeMode}
213
+
<div class="flex items-center gap-3">
214
+
<span class="loading loading-spinner loading-lg text-primary"></span>
215
+
<div class="text-lg">
216
+
<div class="font-semibold">Loading...</div>
217
+
<div class="text-sm opacity-70">
218
+
<span class="badge badge-info">{downloadedMB} MB</span> downloaded in
219
+
<span class="badge badge-ghost">{elapsedTime}s</span>
220
+
</div>
221
+
</div>
222
+
</div>
223
+
{:else if loading && slowPokeMode}
224
+
<div class="flex items-center gap-3">
225
+
<span class="loading loading-spinner loading-lg text-primary"></span>
226
+
<div class="text-lg">
227
+
<div class="font-semibold">Loading...</div>
228
+
<div class="text-sm opacity-70">
229
+
<span class="badge badge-info">{webCalls.toLocaleString()} web calls</span> made in
230
+
<span class="badge badge-ghost">{elapsedTime}s</span>
231
+
</div>
232
+
</div>
233
+
</div>
80
234
{:else}
81
-
<span>Repo size {downloadedMB} MB (fetched in {elapsedTime}s)</span>
235
+
<div class="stats shadow bg-base-300">
236
+
<div class="stat">
237
+
<div class="stat-title">{slowPokeMode ? 'Web Calls Made' : 'Repo Size'}</div>
238
+
<div class="stat-value text-primary">
239
+
{#if !slowPokeMode}
240
+
{downloadedMB} MB
241
+
{:else}
242
+
{webCalls.toLocaleString()}
243
+
{/if}
244
+
</div>
245
+
<div class="stat-desc">Fetched in {elapsedTime}s</div>
246
+
</div>
247
+
</div>
248
+
{/if}
249
+
250
+
{#if loading && currentCollection !== null}
251
+
<div class="alert alert-info">
252
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" class="stroke-current shrink-0 w-6 h-6">
253
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
254
+
</svg>
255
+
<span>Currently walking collection: <strong>{currentCollection}</strong></span>
256
+
</div>
82
257
{/if}
258
+
83
259
{#if collectionsOrdered.length > 0}
260
+
<div class="stats stats-vertical lg:stats-horizontal shadow bg-base-300 w-full">
261
+
<div class="stat">
262
+
<div class="stat-title">Total Records</div>
263
+
<div class="stat-value text-secondary">{totalRecords.toLocaleString()}</div>
264
+
</div>
265
+
<div class="stat">
266
+
<div class="stat-title">Different Collections</div>
267
+
<div class="stat-value text-accent">{collectionsOrdered.length}</div>
268
+
</div>
269
+
</div>
84
270
85
-
<br>
86
-
<span>Total Records: {totalRecords.toLocaleString()}</span>
87
-
<br>
88
-
<span>Different Collections: {collectionsOrdered.length}</span>
89
-
<br>
90
-
<ol style="text-align: left;">
91
-
{#each collectionsOrdered as collection (collection.collection)}
92
-
<li>{collection.collection} ({collection.count.toLocaleString()} records)</li>
93
-
{/each}
94
-
</ol>
271
+
<div class="card bg-base-300 shadow-xl w-full">
272
+
<div class="card-body">
273
+
<h3 class="card-title">{handle}'s Collections Breakdown</h3>
274
+
<ol class="list-decimal list-inside space-y-2">
275
+
{#each collectionsOrdered as collection (collection.collection)}
276
+
<li class="text-sm">
277
+
<a class="link font-mono text-primary" href="https://pdsls.dev/at://{did}/{collection.collection}" target="_blank">{collection.collection}</a>
278
+
<span class="badge badge-sm ml-2">{collection.count.toLocaleString()} records</span>
279
+
</li>
280
+
{/each}
281
+
</ol>
282
+
</div>
283
+
</div>
95
284
{/if}
96
285
</div>
+79
-38
src/lib/SearchForm.svelte
+79
-38
src/lib/SearchForm.svelte
···
1
1
<script lang="ts">
2
-
import { AtprotoDohHandleResolver} from "@atproto-labs/handle-resolver";
3
-
import { DidResolver } from "@atproto/identity"
2
+
import {
3
+
CompositeHandleResolver,
4
+
DohJsonHandleResolver,
5
+
WellKnownHandleResolver,
6
+
CompositeDidDocumentResolver,
7
+
PlcDidDocumentResolver,
8
+
WebDidDocumentResolver,
9
+
} from '@atcute/identity-resolver';
10
+
import { isHandle } from '@atcute/lexicons/syntax';
11
+
import { getPdsEndpoint } from '@atcute/identity';
4
12
5
-
const didResolver = new DidResolver({})
6
-
const handleResolver = new AtprotoDohHandleResolver({ dohEndpoint: 'https://cloudflare-dns.com/dns-query'});
7
13
8
-
let handleToLookUp = $state('');
9
-
let error: string | null = $state(null);
14
+
const handleResolver = new CompositeHandleResolver({
15
+
methods: {
16
+
dns: new DohJsonHandleResolver({ dohUrl: 'https://cloudflare-dns.com/dns-query' }),
17
+
http: new WellKnownHandleResolver(),
18
+
},
19
+
});
20
+
21
+
22
+
const didResolver = new CompositeDidDocumentResolver({
23
+
methods: {
24
+
plc: new PlcDidDocumentResolver(),
25
+
web: new WebDidDocumentResolver(),
26
+
},
27
+
});
10
28
11
-
let { resolvedResult } = $props();
29
+
let handleToLookUp = $state('');
30
+
let error: string | null = $state(null);
31
+
let slowpoke = $state(false);
12
32
33
+
let { resolvedResult } = $props();
13
34
14
-
const searchForUser = async (event: Event) => {
15
-
event.preventDefault();
16
-
error = null;
17
35
18
-
let did = await handleResolver.resolve(handleToLookUp)
19
-
if (did === null) {
20
-
error = 'No result found';
21
-
return;
22
-
}
36
+
const searchForUser = async (event: Event) => {
37
+
event.preventDefault();
38
+
error = null;
39
+
try {
40
+
let handle = handleToLookUp.replace(/^@/, '').toLowerCase();
41
+
if (!isHandle(handle)) {
42
+
error = 'Not a valid handle';
43
+
return;
44
+
}
45
+
let did = await handleResolver.resolve(handle);
23
46
24
-
const didDoc = await didResolver.resolve(did);
25
-
if (!didDoc){
26
-
error = 'No did doc found';
27
-
return
28
-
}
29
-
if (!didDoc.service){
30
-
error = 'No services?';
31
-
return
32
-
}
33
-
const pds = didDoc?.service?.find(s => s.id === '#atproto_pds')
34
-
if (!pds){
35
-
error = 'No pds service found????';
36
-
return
37
-
}
38
-
const pdsUrl = pds.serviceEndpoint;
39
-
resolvedResult(did, pdsUrl)
40
-
}
47
+
const didDoc = await didResolver.resolve(did);
48
+
const pdsUrl = getPdsEndpoint(didDoc);
41
49
50
+
resolvedResult(did, handle, pdsUrl, slowpoke);
51
+
}catch(e){
52
+
if (e instanceof Error) {
53
+
error = e.message;
54
+
}
55
+
}
56
+
};
42
57
43
58
44
59
</script>
45
60
46
-
<form onsubmit={searchForUser}>
47
-
<label for="search">ATProto Handle</label>
48
-
<input bind:value={handleToLookUp} id="search" type="text" placeholder="alice.bsky.social"/>
49
-
<button>Lookup</button>
50
-
<br>
61
+
<form onsubmit={searchForUser} class="space-y-4">
62
+
<fieldset class="fieldset w-full">
63
+
<label class="label" for="search">ATProto Handle</label>
64
+
<input
65
+
bind:value={handleToLookUp}
66
+
id="search"
67
+
type="text"
68
+
placeholder="alice.bsky.social"
69
+
class="input input-bordered w-full"
70
+
/>
71
+
</fieldset>
72
+
73
+
<fieldset class="fieldset bg-base-100 border-base-300 rounded-box w-64 border p-4">
74
+
<legend class="fieldset-legend">Slow Poke</legend>
75
+
<label class="label">
76
+
<input type="checkbox" bind:checked={slowpoke} class="toggle" />
77
+
uses web calls to walk the repo to show you the speed difference
78
+
</label>
79
+
</fieldset>
80
+
51
81
{#if error}
52
-
<p style="color: red;">Error: {error}</p>
82
+
<div class="alert alert-error">
83
+
<svg xmlns="http://www.w3.org/2000/svg" class="stroke-current shrink-0 h-6 w-6" fill="none" viewBox="0 0 24 24">
84
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z" />
85
+
</svg>
86
+
<span>Error: {error}</span>
87
+
</div>
53
88
{/if}
89
+
90
+
<div class="form-control mt-6">
91
+
<button class="btn btn-primary">
92
+
Walk by {slowpoke ? 'API Calls' : 'Repo Export'}
93
+
</button>
94
+
</div>
54
95
</form>
+5
-5
src/main.ts
+5
-5
src/main.ts
···
1
-
import { mount } from 'svelte'
2
-
import './app.css'
3
-
import App from './App.svelte'
1
+
import { mount } from 'svelte';
2
+
import './app.css';
3
+
import App from './App.svelte';
4
4
5
5
const app = mount(App, {
6
6
target: document.getElementById('app')!,
7
-
})
7
+
});
8
8
9
-
export default app
9
+
export default app;
+2
-2
svelte.config.js
+2
-2
svelte.config.js
···
1
-
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'
1
+
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
2
2
3
3
/** @type {import("@sveltejs/vite-plugin-svelte").SvelteConfig} */
4
4
export default {
5
5
// Consult https://svelte.dev/docs#compile-time-svelte-preprocess
6
6
// for more information about preprocessors
7
7
preprocess: vitePreprocess(),
8
-
}
8
+
};
+2
-2
tsconfig.app.json
+2
-2
tsconfig.app.json
···
5
5
"target": "ES2022",
6
6
"useDefineForClassFields": true,
7
7
"module": "ESNext",
8
-
"types": ["svelte", "vite/client"],
8
+
"types": ["svelte", "vite/client", "@atcute/bluesky"],
9
9
"noEmit": true,
10
10
/**
11
11
* Typecheck JS in `.svelte` and `.js` files by default.
···
15
15
*/
16
16
"allowJs": true,
17
17
"checkJs": true,
18
-
"moduleDetection": "force"
18
+
"moduleDetection": "force",
19
19
},
20
20
"include": ["src/**/*.ts", "src/**/*.js", "src/**/*.svelte"]
21
21
}
+1
-1
tsconfig.node.json
+1
-1
tsconfig.node.json
+8
-4
vite.config.ts
+8
-4
vite.config.ts
···
1
-
import { defineConfig } from 'vite'
2
-
import { svelte } from '@sveltejs/vite-plugin-svelte'
1
+
import { defineConfig } from 'vite';
2
+
import { svelte } from '@sveltejs/vite-plugin-svelte';
3
+
import tailwindcss from '@tailwindcss/vite'
3
4
4
5
// https://vite.dev/config/
5
6
export default defineConfig({
6
-
plugins: [svelte()],
7
-
})
7
+
plugins: [
8
+
svelte(),
9
+
tailwindcss(),
10
+
],
11
+
});