+6
-6
README.md
+6
-6
README.md
···
18
18
each section will usually contain its own README.md file dedicated to it, going into more detail about that specific
19
19
package.
20
20
21
-
| package | description |
22
-
|--------------------------------------------------------------------------|------------------------------------------------------|
23
-
| [``backend``](https://tangled.sh/@hexmani.ac/clippr/tree/main/backend) | the reference appview written using node and hono |
24
-
| [``frontend``](https://tangled.sh/@hexmani.ac/clippr/tree/main/frontend) | the reference client written in astro and typescript |
25
-
| [``lexdocs``](https://tangled.sh/@hexmani.ac/clippr/tree/main/lexdocs) | the original lexicon files |
26
-
| [``lexicons``](https://tangled.sh/@hexmani.ac/clippr/tree/main/lexicons) | an atcute package for the clippr lexicons |
21
+
| package | description |
22
+
|--------------------------------------------------------------------------|---------------------------------------------------|
23
+
| [``backend``](https://tangled.sh/@hexmani.ac/clippr/tree/main/backend) | the reference appview written using node and hono |
24
+
| [``frontend``](https://tangled.sh/@hexmani.ac/clippr/tree/main/frontend) | the reference client written in solid |
25
+
| [``lexdocs``](https://tangled.sh/@hexmani.ac/clippr/tree/main/lexdocs) | the original lexicon files |
26
+
| [``lexicons``](https://tangled.sh/@hexmani.ac/clippr/tree/main/lexicons) | an atcute package for the clippr lexicons |
27
27
28
28
## roadmap
29
29
+17
-17
backend/package.json
+17
-17
backend/package.json
···
24
24
"@atcute/identity-resolver": "^1.1.3",
25
25
"@atcute/lexicon-doc": "^1.0.3",
26
26
"@atcute/lexicons": "^1.1.0",
27
-
"@clipprjs/lexicons": "^1.0.1",
27
+
"@clipprjs/lexicons": "^1.0.2",
28
28
"@eslint/eslintrc": "^3.3.1",
29
-
"@hono/node-server": "^1.17.1",
30
-
"@libsql/client": "^0.15.10",
31
-
"@scalar/hono-api-reference": "^0.9.12",
32
-
"@scalar/openapi-to-markdown": "^0.2.23",
29
+
"@hono/node-server": "^1.19.0",
30
+
"@libsql/client": "^0.15.12",
31
+
"@scalar/hono-api-reference": "^0.9.13",
32
+
"@scalar/openapi-to-markdown": "^0.2.26",
33
33
"@skyware/jetstream": "^0.2.5",
34
-
"drizzle-orm": "^0.44.3",
35
-
"hono": "^4.8.5",
34
+
"drizzle-orm": "^0.44.4",
35
+
"hono": "^4.9.2",
36
36
"toml": "^3.0.0",
37
37
"winston": "^3.17.0",
38
38
"xxhash-wasm": "^1.1.0"
39
39
},
40
40
"devDependencies": {
41
41
"@atcute/lex-cli": "^2.1.1",
42
-
"@eslint/js": "^9.31.0",
43
-
"@types/node": "^24.0.15",
44
-
"@typescript-eslint/eslint-plugin": "^8.38.0",
45
-
"@typescript-eslint/parser": "^8.38.0",
42
+
"@eslint/js": "^9.33.0",
43
+
"@types/node": "^24.3.0",
44
+
"@typescript-eslint/eslint-plugin": "^8.40.0",
45
+
"@typescript-eslint/parser": "^8.40.0",
46
46
"drizzle-kit": "^0.31.4",
47
-
"eslint": "^9.31.0",
47
+
"eslint": "^9.33.0",
48
48
"eslint-config-prettier": "^10.1.8",
49
49
"eslint-plugin-drizzle": "^0.2.3",
50
50
"eslint-plugin-import": "^2.32.0",
51
-
"eslint-plugin-prettier": "^5.5.3",
51
+
"eslint-plugin-prettier": "^5.5.4",
52
52
"globals": "^16.3.0",
53
-
"jiti": "^2.4.2",
53
+
"jiti": "^2.5.1",
54
54
"prettier": "^3.6.2",
55
-
"tsx": "^4.20.3",
56
-
"typescript": "^5.8.3",
57
-
"typescript-eslint": "^8.38.0"
55
+
"tsx": "^4.20.4",
56
+
"typescript": "^5.9.2",
57
+
"typescript-eslint": "^8.40.0"
58
58
}
59
59
}
+647
-607
backend/pnpm-lock.yaml
+647
-607
backend/pnpm-lock.yaml
···
27
27
specifier: ^1.1.0
28
28
version: 1.1.0
29
29
'@clipprjs/lexicons':
30
-
specifier: ^1.0.1
31
-
version: 1.0.1
30
+
specifier: ^1.0.2
31
+
version: 1.0.2
32
32
'@eslint/eslintrc':
33
33
specifier: ^3.3.1
34
34
version: 3.3.1
35
35
'@hono/node-server':
36
-
specifier: ^1.17.1
37
-
version: 1.17.1(hono@4.8.5)
36
+
specifier: ^1.19.0
37
+
version: 1.19.0(hono@4.9.2)
38
38
'@libsql/client':
39
-
specifier: ^0.15.10
40
-
version: 0.15.10
39
+
specifier: ^0.15.12
40
+
version: 0.15.12
41
41
'@scalar/hono-api-reference':
42
-
specifier: ^0.9.12
43
-
version: 0.9.12(hono@4.8.5)
42
+
specifier: ^0.9.13
43
+
version: 0.9.13(hono@4.9.2)
44
44
'@scalar/openapi-to-markdown':
45
-
specifier: ^0.2.23
46
-
version: 0.2.23(typescript@5.8.3)
45
+
specifier: ^0.2.26
46
+
version: 0.2.26(typescript@5.9.2)
47
47
'@skyware/jetstream':
48
48
specifier: ^0.2.5
49
49
version: 0.2.5
50
50
drizzle-orm:
51
-
specifier: ^0.44.3
52
-
version: 0.44.3(@libsql/client@0.15.10)(bun-types@1.2.17)
51
+
specifier: ^0.44.4
52
+
version: 0.44.4(@libsql/client@0.15.12)(bun-types@1.2.17)
53
53
hono:
54
-
specifier: ^4.8.5
55
-
version: 4.8.5
54
+
specifier: ^4.9.2
55
+
version: 4.9.2
56
56
toml:
57
57
specifier: ^3.0.0
58
58
version: 3.0.0
···
67
67
specifier: ^2.1.1
68
68
version: 2.1.1
69
69
'@eslint/js':
70
-
specifier: ^9.31.0
71
-
version: 9.31.0
70
+
specifier: ^9.33.0
71
+
version: 9.33.0
72
72
'@types/node':
73
-
specifier: ^24.0.15
74
-
version: 24.0.15
73
+
specifier: ^24.3.0
74
+
version: 24.3.0
75
75
'@typescript-eslint/eslint-plugin':
76
-
specifier: ^8.38.0
77
-
version: 8.38.0(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
76
+
specifier: ^8.40.0
77
+
version: 8.40.0(@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
78
78
'@typescript-eslint/parser':
79
-
specifier: ^8.38.0
80
-
version: 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
79
+
specifier: ^8.40.0
80
+
version: 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
81
81
drizzle-kit:
82
82
specifier: ^0.31.4
83
83
version: 0.31.4
84
84
eslint:
85
-
specifier: ^9.31.0
86
-
version: 9.31.0(jiti@2.4.2)
85
+
specifier: ^9.33.0
86
+
version: 9.33.0(jiti@2.5.1)
87
87
eslint-config-prettier:
88
88
specifier: ^10.1.8
89
-
version: 10.1.8(eslint@9.31.0(jiti@2.4.2))
89
+
version: 10.1.8(eslint@9.33.0(jiti@2.5.1))
90
90
eslint-plugin-drizzle:
91
91
specifier: ^0.2.3
92
-
version: 0.2.3(eslint@9.31.0(jiti@2.4.2))
92
+
version: 0.2.3(eslint@9.33.0(jiti@2.5.1))
93
93
eslint-plugin-import:
94
94
specifier: ^2.32.0
95
-
version: 2.32.0(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))
95
+
version: 2.32.0(@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.33.0(jiti@2.5.1))
96
96
eslint-plugin-prettier:
97
-
specifier: ^5.5.3
98
-
version: 5.5.3(eslint-config-prettier@10.1.8(eslint@9.31.0(jiti@2.4.2)))(eslint@9.31.0(jiti@2.4.2))(prettier@3.6.2)
97
+
specifier: ^5.5.4
98
+
version: 5.5.4(eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)))(eslint@9.33.0(jiti@2.5.1))(prettier@3.6.2)
99
99
globals:
100
100
specifier: ^16.3.0
101
101
version: 16.3.0
102
102
jiti:
103
-
specifier: ^2.4.2
104
-
version: 2.4.2
103
+
specifier: ^2.5.1
104
+
version: 2.5.1
105
105
prettier:
106
106
specifier: ^3.6.2
107
107
version: 3.6.2
108
108
tsx:
109
-
specifier: ^4.20.3
110
-
version: 4.20.3
109
+
specifier: ^4.20.4
110
+
version: 4.20.4
111
111
typescript:
112
-
specifier: ^5.8.3
113
-
version: 5.8.3
112
+
specifier: ^5.9.2
113
+
version: 5.9.2
114
114
typescript-eslint:
115
-
specifier: ^8.38.0
116
-
version: 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
115
+
specifier: ^8.40.0
116
+
version: 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
117
117
118
118
packages:
119
119
120
120
'@atcute/atproto@3.1.1':
121
121
resolution: {integrity: sha512-D+RLTIPF0xLu7BPZY8KSewAPemJFh+3n3zeQ3ROsLxbTtCHbrTDMAmAFexaVRAPGcPYrwXaBUlv7yZjScJolMg==}
122
122
123
-
'@atcute/bluesky@3.1.5':
124
-
resolution: {integrity: sha512-OJO1HOqRZmpSQ2W2QSbgGIk301JUX7rmLV8LYqQGxsbpNJOLNJ8//vcD4Ag4WsxTRm+Z+vEUZ4qWXnNsZlgXXg==}
123
+
'@atcute/bluesky@3.2.0':
124
+
resolution: {integrity: sha512-OqPLqUNjXcgQ25MaPdU7H0QcWmZrx6QQk7d5B22A5U4xy+hZJ954kQ5mSAn24Bt0DEm4j/isq1WZovr3vaPTUA==}
125
125
126
126
'@atcute/client@4.0.3':
127
127
resolution: {integrity: sha512-RIOZWFVLca/HiPAAUDqQPOdOreCxTbL5cb+WUf5yqQOKIu5yEAP3eksinmlLmgIrlr5qVOE7brazUUzaskFCfw==}
···
155
155
resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==}
156
156
engines: {node: '>=6.9.0'}
157
157
158
-
'@babel/parser@7.28.0':
159
-
resolution: {integrity: sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==}
158
+
'@babel/parser@7.28.3':
159
+
resolution: {integrity: sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==}
160
160
engines: {node: '>=6.0.0'}
161
161
hasBin: true
162
162
163
-
'@babel/types@7.28.1':
164
-
resolution: {integrity: sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==}
163
+
'@babel/types@7.28.2':
164
+
resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==}
165
165
engines: {node: '>=6.9.0'}
166
166
167
-
'@badrap/valita@0.4.5':
168
-
resolution: {integrity: sha512-4QwGbuhh/JesHRQj79mO/l37PvJj4l/tlAu7+S1n4h47qwaNpZ0WDvIwUGLYUsdi9uQ5UPpiG9wb1Wm3XUFBUQ==}
167
+
'@badrap/valita@0.4.6':
168
+
resolution: {integrity: sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==}
169
169
engines: {node: '>= 18'}
170
170
171
-
'@clipprjs/lexicons@1.0.1':
172
-
resolution: {integrity: sha512-2vlFTntYj3YuOJyk8L8dVn1uRYq93GwiIZiDDmIRL2Q3tvbZlynYOYJH4mfNBLxS98L7om2kAVbtILMBLRNygg==}
171
+
'@clipprjs/lexicons@1.0.2':
172
+
resolution: {integrity: sha512-AIof/RWAtwq/8ygMSNS5KzElbPdXWD9WEX4uGCgAb0RQ/FJUe41X7gIpL0MYOrVtLmOwH+A5rHxq8o3Tn3b8Sg==}
173
173
174
174
'@colors/colors@1.6.0':
175
175
resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==}
···
189
189
resolution: {integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==}
190
190
deprecated: 'Merged into tsx: https://tsx.is'
191
191
192
-
'@esbuild/aix-ppc64@0.25.8':
193
-
resolution: {integrity: sha512-urAvrUedIqEiFR3FYSLTWQgLu5tb+m0qZw0NBEasUeo6wuqatkMDaRT+1uABiGXEu5vqgPd7FGE1BhsAIy9QVA==}
192
+
'@esbuild/aix-ppc64@0.25.9':
193
+
resolution: {integrity: sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==}
194
194
engines: {node: '>=18'}
195
195
cpu: [ppc64]
196
196
os: [aix]
···
201
201
cpu: [arm64]
202
202
os: [android]
203
203
204
-
'@esbuild/android-arm64@0.25.8':
205
-
resolution: {integrity: sha512-OD3p7LYzWpLhZEyATcTSJ67qB5D+20vbtr6vHlHWSQYhKtzUYrETuWThmzFpZtFsBIxRvhO07+UgVA9m0i/O1w==}
204
+
'@esbuild/android-arm64@0.25.9':
205
+
resolution: {integrity: sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==}
206
206
engines: {node: '>=18'}
207
207
cpu: [arm64]
208
208
os: [android]
···
213
213
cpu: [arm]
214
214
os: [android]
215
215
216
-
'@esbuild/android-arm@0.25.8':
217
-
resolution: {integrity: sha512-RONsAvGCz5oWyePVnLdZY/HHwA++nxYWIX1atInlaW6SEkwq6XkP3+cb825EUcRs5Vss/lGh/2YxAb5xqc07Uw==}
216
+
'@esbuild/android-arm@0.25.9':
217
+
resolution: {integrity: sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==}
218
218
engines: {node: '>=18'}
219
219
cpu: [arm]
220
220
os: [android]
···
225
225
cpu: [x64]
226
226
os: [android]
227
227
228
-
'@esbuild/android-x64@0.25.8':
229
-
resolution: {integrity: sha512-yJAVPklM5+4+9dTeKwHOaA+LQkmrKFX96BM0A/2zQrbS6ENCmxc4OVoBs5dPkCCak2roAD+jKCdnmOqKszPkjA==}
228
+
'@esbuild/android-x64@0.25.9':
229
+
resolution: {integrity: sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==}
230
230
engines: {node: '>=18'}
231
231
cpu: [x64]
232
232
os: [android]
···
237
237
cpu: [arm64]
238
238
os: [darwin]
239
239
240
-
'@esbuild/darwin-arm64@0.25.8':
241
-
resolution: {integrity: sha512-Jw0mxgIaYX6R8ODrdkLLPwBqHTtYHJSmzzd+QeytSugzQ0Vg4c5rDky5VgkoowbZQahCbsv1rT1KW72MPIkevw==}
240
+
'@esbuild/darwin-arm64@0.25.9':
241
+
resolution: {integrity: sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==}
242
242
engines: {node: '>=18'}
243
243
cpu: [arm64]
244
244
os: [darwin]
···
249
249
cpu: [x64]
250
250
os: [darwin]
251
251
252
-
'@esbuild/darwin-x64@0.25.8':
253
-
resolution: {integrity: sha512-Vh2gLxxHnuoQ+GjPNvDSDRpoBCUzY4Pu0kBqMBDlK4fuWbKgGtmDIeEC081xi26PPjn+1tct+Bh8FjyLlw1Zlg==}
252
+
'@esbuild/darwin-x64@0.25.9':
253
+
resolution: {integrity: sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==}
254
254
engines: {node: '>=18'}
255
255
cpu: [x64]
256
256
os: [darwin]
···
261
261
cpu: [arm64]
262
262
os: [freebsd]
263
263
264
-
'@esbuild/freebsd-arm64@0.25.8':
265
-
resolution: {integrity: sha512-YPJ7hDQ9DnNe5vxOm6jaie9QsTwcKedPvizTVlqWG9GBSq+BuyWEDazlGaDTC5NGU4QJd666V0yqCBL2oWKPfA==}
264
+
'@esbuild/freebsd-arm64@0.25.9':
265
+
resolution: {integrity: sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==}
266
266
engines: {node: '>=18'}
267
267
cpu: [arm64]
268
268
os: [freebsd]
···
273
273
cpu: [x64]
274
274
os: [freebsd]
275
275
276
-
'@esbuild/freebsd-x64@0.25.8':
277
-
resolution: {integrity: sha512-MmaEXxQRdXNFsRN/KcIimLnSJrk2r5H8v+WVafRWz5xdSVmWLoITZQXcgehI2ZE6gioE6HirAEToM/RvFBeuhw==}
276
+
'@esbuild/freebsd-x64@0.25.9':
277
+
resolution: {integrity: sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==}
278
278
engines: {node: '>=18'}
279
279
cpu: [x64]
280
280
os: [freebsd]
···
285
285
cpu: [arm64]
286
286
os: [linux]
287
287
288
-
'@esbuild/linux-arm64@0.25.8':
289
-
resolution: {integrity: sha512-WIgg00ARWv/uYLU7lsuDK00d/hHSfES5BzdWAdAig1ioV5kaFNrtK8EqGcUBJhYqotlUByUKz5Qo6u8tt7iD/w==}
288
+
'@esbuild/linux-arm64@0.25.9':
289
+
resolution: {integrity: sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==}
290
290
engines: {node: '>=18'}
291
291
cpu: [arm64]
292
292
os: [linux]
···
297
297
cpu: [arm]
298
298
os: [linux]
299
299
300
-
'@esbuild/linux-arm@0.25.8':
301
-
resolution: {integrity: sha512-FuzEP9BixzZohl1kLf76KEVOsxtIBFwCaLupVuk4eFVnOZfU+Wsn+x5Ryam7nILV2pkq2TqQM9EZPsOBuMC+kg==}
300
+
'@esbuild/linux-arm@0.25.9':
301
+
resolution: {integrity: sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==}
302
302
engines: {node: '>=18'}
303
303
cpu: [arm]
304
304
os: [linux]
···
309
309
cpu: [ia32]
310
310
os: [linux]
311
311
312
-
'@esbuild/linux-ia32@0.25.8':
313
-
resolution: {integrity: sha512-A1D9YzRX1i+1AJZuFFUMP1E9fMaYY+GnSQil9Tlw05utlE86EKTUA7RjwHDkEitmLYiFsRd9HwKBPEftNdBfjg==}
312
+
'@esbuild/linux-ia32@0.25.9':
313
+
resolution: {integrity: sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==}
314
314
engines: {node: '>=18'}
315
315
cpu: [ia32]
316
316
os: [linux]
···
321
321
cpu: [loong64]
322
322
os: [linux]
323
323
324
-
'@esbuild/linux-loong64@0.25.8':
325
-
resolution: {integrity: sha512-O7k1J/dwHkY1RMVvglFHl1HzutGEFFZ3kNiDMSOyUrB7WcoHGf96Sh+64nTRT26l3GMbCW01Ekh/ThKM5iI7hQ==}
324
+
'@esbuild/linux-loong64@0.25.9':
325
+
resolution: {integrity: sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==}
326
326
engines: {node: '>=18'}
327
327
cpu: [loong64]
328
328
os: [linux]
···
333
333
cpu: [mips64el]
334
334
os: [linux]
335
335
336
-
'@esbuild/linux-mips64el@0.25.8':
337
-
resolution: {integrity: sha512-uv+dqfRazte3BzfMp8PAQXmdGHQt2oC/y2ovwpTteqrMx2lwaksiFZ/bdkXJC19ttTvNXBuWH53zy/aTj1FgGw==}
336
+
'@esbuild/linux-mips64el@0.25.9':
337
+
resolution: {integrity: sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==}
338
338
engines: {node: '>=18'}
339
339
cpu: [mips64el]
340
340
os: [linux]
···
345
345
cpu: [ppc64]
346
346
os: [linux]
347
347
348
-
'@esbuild/linux-ppc64@0.25.8':
349
-
resolution: {integrity: sha512-GyG0KcMi1GBavP5JgAkkstMGyMholMDybAf8wF5A70CALlDM2p/f7YFE7H92eDeH/VBtFJA5MT4nRPDGg4JuzQ==}
348
+
'@esbuild/linux-ppc64@0.25.9':
349
+
resolution: {integrity: sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==}
350
350
engines: {node: '>=18'}
351
351
cpu: [ppc64]
352
352
os: [linux]
···
357
357
cpu: [riscv64]
358
358
os: [linux]
359
359
360
-
'@esbuild/linux-riscv64@0.25.8':
361
-
resolution: {integrity: sha512-rAqDYFv3yzMrq7GIcen3XP7TUEG/4LK86LUPMIz6RT8A6pRIDn0sDcvjudVZBiiTcZCY9y2SgYX2lgK3AF+1eg==}
360
+
'@esbuild/linux-riscv64@0.25.9':
361
+
resolution: {integrity: sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==}
362
362
engines: {node: '>=18'}
363
363
cpu: [riscv64]
364
364
os: [linux]
···
369
369
cpu: [s390x]
370
370
os: [linux]
371
371
372
-
'@esbuild/linux-s390x@0.25.8':
373
-
resolution: {integrity: sha512-Xutvh6VjlbcHpsIIbwY8GVRbwoviWT19tFhgdA7DlenLGC/mbc3lBoVb7jxj9Z+eyGqvcnSyIltYUrkKzWqSvg==}
372
+
'@esbuild/linux-s390x@0.25.9':
373
+
resolution: {integrity: sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==}
374
374
engines: {node: '>=18'}
375
375
cpu: [s390x]
376
376
os: [linux]
···
381
381
cpu: [x64]
382
382
os: [linux]
383
383
384
-
'@esbuild/linux-x64@0.25.8':
385
-
resolution: {integrity: sha512-ASFQhgY4ElXh3nDcOMTkQero4b1lgubskNlhIfJrsH5OKZXDpUAKBlNS0Kx81jwOBp+HCeZqmoJuihTv57/jvQ==}
384
+
'@esbuild/linux-x64@0.25.9':
385
+
resolution: {integrity: sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==}
386
386
engines: {node: '>=18'}
387
387
cpu: [x64]
388
388
os: [linux]
389
389
390
-
'@esbuild/netbsd-arm64@0.25.8':
391
-
resolution: {integrity: sha512-d1KfruIeohqAi6SA+gENMuObDbEjn22olAR7egqnkCD9DGBG0wsEARotkLgXDu6c4ncgWTZJtN5vcgxzWRMzcw==}
390
+
'@esbuild/netbsd-arm64@0.25.9':
391
+
resolution: {integrity: sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==}
392
392
engines: {node: '>=18'}
393
393
cpu: [arm64]
394
394
os: [netbsd]
···
399
399
cpu: [x64]
400
400
os: [netbsd]
401
401
402
-
'@esbuild/netbsd-x64@0.25.8':
403
-
resolution: {integrity: sha512-nVDCkrvx2ua+XQNyfrujIG38+YGyuy2Ru9kKVNyh5jAys6n+l44tTtToqHjino2My8VAY6Lw9H7RI73XFi66Cg==}
402
+
'@esbuild/netbsd-x64@0.25.9':
403
+
resolution: {integrity: sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==}
404
404
engines: {node: '>=18'}
405
405
cpu: [x64]
406
406
os: [netbsd]
407
407
408
-
'@esbuild/openbsd-arm64@0.25.8':
409
-
resolution: {integrity: sha512-j8HgrDuSJFAujkivSMSfPQSAa5Fxbvk4rgNAS5i3K+r8s1X0p1uOO2Hl2xNsGFppOeHOLAVgYwDVlmxhq5h+SQ==}
408
+
'@esbuild/openbsd-arm64@0.25.9':
409
+
resolution: {integrity: sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==}
410
410
engines: {node: '>=18'}
411
411
cpu: [arm64]
412
412
os: [openbsd]
···
417
417
cpu: [x64]
418
418
os: [openbsd]
419
419
420
-
'@esbuild/openbsd-x64@0.25.8':
421
-
resolution: {integrity: sha512-1h8MUAwa0VhNCDp6Af0HToI2TJFAn1uqT9Al6DJVzdIBAd21m/G0Yfc77KDM3uF3T/YaOgQq3qTJHPbTOInaIQ==}
420
+
'@esbuild/openbsd-x64@0.25.9':
421
+
resolution: {integrity: sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==}
422
422
engines: {node: '>=18'}
423
423
cpu: [x64]
424
424
os: [openbsd]
425
425
426
-
'@esbuild/openharmony-arm64@0.25.8':
427
-
resolution: {integrity: sha512-r2nVa5SIK9tSWd0kJd9HCffnDHKchTGikb//9c7HX+r+wHYCpQrSgxhlY6KWV1nFo1l4KFbsMlHk+L6fekLsUg==}
426
+
'@esbuild/openharmony-arm64@0.25.9':
427
+
resolution: {integrity: sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==}
428
428
engines: {node: '>=18'}
429
429
cpu: [arm64]
430
430
os: [openharmony]
···
435
435
cpu: [x64]
436
436
os: [sunos]
437
437
438
-
'@esbuild/sunos-x64@0.25.8':
439
-
resolution: {integrity: sha512-zUlaP2S12YhQ2UzUfcCuMDHQFJyKABkAjvO5YSndMiIkMimPmxA+BYSBikWgsRpvyxuRnow4nS5NPnf9fpv41w==}
438
+
'@esbuild/sunos-x64@0.25.9':
439
+
resolution: {integrity: sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==}
440
440
engines: {node: '>=18'}
441
441
cpu: [x64]
442
442
os: [sunos]
···
447
447
cpu: [arm64]
448
448
os: [win32]
449
449
450
-
'@esbuild/win32-arm64@0.25.8':
451
-
resolution: {integrity: sha512-YEGFFWESlPva8hGL+zvj2z/SaK+pH0SwOM0Nc/d+rVnW7GSTFlLBGzZkuSU9kFIGIo8q9X3ucpZhu8PDN5A2sQ==}
450
+
'@esbuild/win32-arm64@0.25.9':
451
+
resolution: {integrity: sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==}
452
452
engines: {node: '>=18'}
453
453
cpu: [arm64]
454
454
os: [win32]
···
459
459
cpu: [ia32]
460
460
os: [win32]
461
461
462
-
'@esbuild/win32-ia32@0.25.8':
463
-
resolution: {integrity: sha512-hiGgGC6KZ5LZz58OL/+qVVoZiuZlUYlYHNAmczOm7bs2oE1XriPFi5ZHHrS8ACpV5EjySrnoCKmcbQMN+ojnHg==}
462
+
'@esbuild/win32-ia32@0.25.9':
463
+
resolution: {integrity: sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==}
464
464
engines: {node: '>=18'}
465
465
cpu: [ia32]
466
466
os: [win32]
···
471
471
cpu: [x64]
472
472
os: [win32]
473
473
474
-
'@esbuild/win32-x64@0.25.8':
475
-
resolution: {integrity: sha512-cn3Yr7+OaaZq1c+2pe+8yxC8E144SReCQjN6/2ynubzYjvyqZjTXfQJpAcQpsdJq3My7XADANiYGHoFC69pLQw==}
474
+
'@esbuild/win32-x64@0.25.9':
475
+
resolution: {integrity: sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==}
476
476
engines: {node: '>=18'}
477
477
cpu: [x64]
478
478
os: [win32]
···
491
491
resolution: {integrity: sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==}
492
492
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
493
493
494
-
'@eslint/config-helpers@0.3.0':
495
-
resolution: {integrity: sha512-ViuymvFmcJi04qdZeDc2whTHryouGcDlaxPqarTD0ZE10ISpxGUVZGZDx4w01upyIynL3iu6IXH2bS1NhclQMw==}
494
+
'@eslint/config-helpers@0.3.1':
495
+
resolution: {integrity: sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==}
496
496
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
497
497
498
-
'@eslint/core@0.15.1':
499
-
resolution: {integrity: sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==}
498
+
'@eslint/core@0.15.2':
499
+
resolution: {integrity: sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==}
500
500
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
501
501
502
502
'@eslint/eslintrc@3.3.1':
503
503
resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
504
504
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
505
505
506
-
'@eslint/js@9.31.0':
507
-
resolution: {integrity: sha512-LOm5OVt7D4qiKCqoiPbA7LWmI+tbw1VbTUowBcUMgQSuM6poJufkFkYDcQpo5KfgD39TnNySV26QjOh7VFpSyw==}
506
+
'@eslint/js@9.33.0':
507
+
resolution: {integrity: sha512-5K1/mKhWaMfreBGJTwval43JJmkip0RmM+3+IuqupeSKNC/Th2Kc7ucaq5ovTSra/OOKB9c58CGSz3QMVbWt0A==}
508
508
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
509
509
510
510
'@eslint/object-schema@2.1.6':
511
511
resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==}
512
512
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
513
513
514
-
'@eslint/plugin-kit@0.3.4':
515
-
resolution: {integrity: sha512-Ul5l+lHEcw3L5+k8POx6r74mxEYKG5kOb6Xpy2gCRW6zweT6TEhAf8vhxGgjhqrd/VO/Dirhsb+1hNpD1ue9hw==}
514
+
'@eslint/plugin-kit@0.3.5':
515
+
resolution: {integrity: sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==}
516
516
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
517
517
518
518
'@externdefs/collider@0.3.0':
···
520
520
peerDependencies:
521
521
'@badrap/valita': ^0.4.4
522
522
523
-
'@floating-ui/core@1.7.2':
524
-
resolution: {integrity: sha512-wNB5ooIKHQc+Kui96jE/n69rHFWAVoxn5CAzL1Xdd8FG03cgY3MLO+GF9U3W737fYDSgPWA6MReKhBQBop6Pcw==}
523
+
'@floating-ui/core@1.7.3':
524
+
resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==}
525
525
526
-
'@floating-ui/dom@1.7.2':
527
-
resolution: {integrity: sha512-7cfaOQuCS27HD7DX+6ib2OrnW+b4ZBwDNnCcT0uTyidcmyWb03FnQqJybDBoCnpdxwBSfA94UAYlRCt7mV+TbA==}
526
+
'@floating-ui/dom@1.7.3':
527
+
resolution: {integrity: sha512-uZA413QEpNuhtb3/iIKoYMSK07keHPYeXF02Zhd6e213j+d1NamLix/mCLxBUDW/Gx52sPH2m+chlUsyaBs/Ag==}
528
528
529
529
'@floating-ui/utils@0.2.10':
530
530
resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==}
531
531
532
-
'@floating-ui/vue@1.1.7':
533
-
resolution: {integrity: sha512-idmAtbAIigGXN2SI5gItiXYBYtNfDTP9yIiObxgu13dgtG7ARCHlNfnR29GxP4LI4o13oiwsJ8wVgghj1lNqcw==}
532
+
'@floating-ui/vue@1.1.8':
533
+
resolution: {integrity: sha512-SNJAa1jbT8Gh1LvWw2uIIViLL0saV2bCY59ISCvJzhbut5DSb2H3LKUK49Xkd7SixTNHKX4LFu59nbwIXt9jjQ==}
534
534
535
535
'@headlessui/vue@1.7.23':
536
536
resolution: {integrity: sha512-JzdCNqurrtuu0YW6QaDtR2PIYCKPUWq28csDyMvN4zmGccmE7lz40Is6hc3LA4HFeCI7sekZ/PQMTNmn9I/4Wg==}
···
538
538
peerDependencies:
539
539
vue: ^3.2.0
540
540
541
-
'@hono/node-server@1.17.1':
542
-
resolution: {integrity: sha512-SY79W/C+2b1MyAzmIcV32Q47vO1b5XwLRwj8S9N6Jr5n1QCkIfAIH6umOSgqWZ4/v67hg6qq8Ha5vZonVidGsg==}
541
+
'@hono/node-server@1.19.0':
542
+
resolution: {integrity: sha512-1k8/8OHf5VIymJEcJyVksFpT+AQ5euY0VA5hUkCnlKpD4mr8FSbvXaHblxeTTEr90OaqWzAkQaqD80qHZQKxBA==}
543
543
engines: {node: '>=18.14.1'}
544
544
peerDependencies:
545
545
hono: ^4
···
585
585
'@internationalized/date@3.8.2':
586
586
resolution: {integrity: sha512-/wENk7CbvLbkUvX1tu0mwq49CVkkWpkXubGel6birjRPyo6uQ4nQpnq5xZu823zRCwwn82zgHrvgF1vZyvmVgA==}
587
587
588
-
'@internationalized/number@3.6.3':
589
-
resolution: {integrity: sha512-p+Zh1sb6EfrfVaS86jlHGQ9HA66fJhV9x5LiE5vCbZtXEHAuhcmUZUdZ4WrFpUBfNalr2OkAJI5AcKEQF+Lebw==}
588
+
'@internationalized/number@3.6.4':
589
+
resolution: {integrity: sha512-P+/h+RDaiX8EGt3shB9AYM1+QgkvHmJ5rKi4/59k4sg9g58k9rqsRW0WxRO7jCoHyvVbFRRFKmVTdFYdehrxHg==}
590
590
591
-
'@jridgewell/gen-mapping@0.3.12':
592
-
resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==}
591
+
'@jridgewell/gen-mapping@0.3.13':
592
+
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
593
593
594
594
'@jridgewell/resolve-uri@3.1.2':
595
595
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
596
596
engines: {node: '>=6.0.0'}
597
597
598
-
'@jridgewell/source-map@0.3.10':
599
-
resolution: {integrity: sha512-0pPkgz9dY+bijgistcTTJ5mR+ocqRXLuhXHYdzoMmmoJ2C9S46RCm2GMUbatPEUK9Yjy26IrAy8D/M00lLkv+Q==}
598
+
'@jridgewell/source-map@0.3.11':
599
+
resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
600
600
601
-
'@jridgewell/sourcemap-codec@1.5.4':
602
-
resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==}
601
+
'@jridgewell/sourcemap-codec@1.5.5':
602
+
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
603
603
604
-
'@jridgewell/trace-mapping@0.3.29':
605
-
resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==}
604
+
'@jridgewell/trace-mapping@0.3.30':
605
+
resolution: {integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==}
606
606
607
-
'@libsql/client@0.15.10':
608
-
resolution: {integrity: sha512-J9cJQwrgH92JlPBYjUGxPIH5G9z3j/V/aPnQvcmmCgjatdVb/f7bzK3yNq15Phc+gVuKMwox3toXL+58qUMylg==}
607
+
'@libsql/client@0.15.12':
608
+
resolution: {integrity: sha512-JIqB0XsNrqYqBQZuhcgZdTcQoNOoQ5AMF+1yxc7vcZrLtm42QJwRazmTuBfyDwtWASEmVgjxeaLF4NT1iyVX8g==}
609
609
610
-
'@libsql/core@0.15.10':
611
-
resolution: {integrity: sha512-fAMD+GnGQNdZ9zxeNC8AiExpKnou/97GJWkiDDZbTRHj3c9dvF1y4jsRQ0WE72m/CqTdbMGyU98yL0SJ9hQVeg==}
610
+
'@libsql/core@0.15.12':
611
+
resolution: {integrity: sha512-S3tF6885ZizVjfym7f8SevL2VId/+DzxiKmP5zFbrhA8oMLh2XH8bYXChmhab7o9qUSHx+XjK4jCFpUwR5g+Ig==}
612
612
613
-
'@libsql/darwin-arm64@0.5.15':
614
-
resolution: {integrity: sha512-BD4c4WHUu988PmJCtF1WNKoSmY4nAg4T6ZRaigt6fKY2qlS/+9uSB8LSqIIq3WwqxQm9SuJijMGMKDoH6dEFdA==}
613
+
'@libsql/darwin-arm64@0.5.17':
614
+
resolution: {integrity: sha512-WTYG2skZsUnZmfZ2v7WFj7s3/5s2PfrYBZOWBKOnxHA8g4XCDc/4bFDaqob9Q2e88+GC7cWeJ8VNkVBFpD2Xxg==}
615
615
cpu: [arm64]
616
616
os: [darwin]
617
617
618
-
'@libsql/darwin-x64@0.5.15':
619
-
resolution: {integrity: sha512-mw5rRffZQIU0RqmP3KS6HsV+ZuThfX3fxlAbytSmWe1PPrDZgSm1BWmWt0OmYC656TGgAGqTsFnEkV5Dmzv3Jw==}
618
+
'@libsql/darwin-x64@0.5.17':
619
+
resolution: {integrity: sha512-ab0RlTR4KYrxgjNrZhAhY/10GibKoq6G0W4oi0kdm+eYiAv/Ip8GDMpSaZdAcoKA4T+iKR/ehczKHnMEB8MFxA==}
620
620
cpu: [x64]
621
621
os: [darwin]
622
622
···
630
630
'@libsql/isomorphic-ws@0.1.5':
631
631
resolution: {integrity: sha512-DtLWIH29onUYR00i0GlQ3UdcTRC6EP4u9w/h9LxpUZJWRMARk6dQwZ6Jkd+QdwVpuAOrdxt18v0K2uIYR3fwFg==}
632
632
633
-
'@libsql/linux-arm-gnueabihf@0.5.15':
634
-
resolution: {integrity: sha512-FPIh8ppymZqV+y8AUNtzzIXGwRH3LEpsFtvp7fuQU+OWOn0INjB7MdlCqyCSyHPFipC5i7Eg9BhSAyRhrvCptQ==}
633
+
'@libsql/linux-arm-gnueabihf@0.5.17':
634
+
resolution: {integrity: sha512-PcASh4k47RqC+kMWAbLUKf1y6Do0q8vnUGi0yhKY4ghJcimMExViBimjbjYRSa+WIb/zh3QxNoXOhQAXx3tiuw==}
635
635
cpu: [arm]
636
636
os: [linux]
637
637
638
-
'@libsql/linux-arm-musleabihf@0.5.15':
639
-
resolution: {integrity: sha512-mPiQ/Vah0cIZ2vMtrbEmQQywIdLCaZJsnWIM5OvBDlRj1QrEsfdHCNH0D0Z+e1+TJIap8+oQZrCmPiBQNHEXlQ==}
638
+
'@libsql/linux-arm-musleabihf@0.5.17':
639
+
resolution: {integrity: sha512-vxOkSLG9Wspit+SNle84nuIzMtr2G2qaxFzW7BhsZBjlZ8+kErf9RXcT2YJQdJYxmBYRbsOrc91gg0jLEQVCqg==}
640
640
cpu: [arm]
641
641
os: [linux]
642
642
643
-
'@libsql/linux-arm64-gnu@0.5.15':
644
-
resolution: {integrity: sha512-ckyquyUTjCrZlYJw8ijG2XwU3y9xvUtz3kjN4Y1XJxz8dbmH6kYZS+L8RYmOk5E6fe+2CuMZ9XBF8YqOTSJr2w==}
643
+
'@libsql/linux-arm64-gnu@0.5.17':
644
+
resolution: {integrity: sha512-L8jnaN01TxjBJlDuDTX2W2BKzBkAOhcnKfCOf3xzvvygblxnDOK0whkYwIXeTfwtd/rr4jN/d6dZD/bcHiDxEQ==}
645
645
cpu: [arm64]
646
646
os: [linux]
647
647
648
-
'@libsql/linux-arm64-musl@0.5.15':
649
-
resolution: {integrity: sha512-P0NWPCogDNig489dOCuQQOSOYS+040yo5nDtPERtsee9mgHL9Qc7QZdmJ/2F8UHumyhW4ETnA9I2dB6CQxUwPA==}
648
+
'@libsql/linux-arm64-musl@0.5.17':
649
+
resolution: {integrity: sha512-HfFD7TzQtmmTwyQsuiHhWZdMRtdNpKJ1p4tbMMTMRECk+971NFHrj69D64cc2ClVTAmn7fA9XibKPil7WN/Q7w==}
650
650
cpu: [arm64]
651
651
os: [linux]
652
652
653
-
'@libsql/linux-x64-gnu@0.5.15':
654
-
resolution: {integrity: sha512-4/IFOhqwdm8Un3Y14GJNZKgFyRf8ejmrN+tSu5XBGAtDOv2AM3xBrGO5UCd8DUTyUVUI6G6dGEIFwzE8NCXsfg==}
653
+
'@libsql/linux-x64-gnu@0.5.17':
654
+
resolution: {integrity: sha512-5l3XxWqUPVFrtX0xnZaXwqsXs0BFbP4w6ahRFTPSdXU50YBfUOajFznJRB6bJTMsCvraDSD0IkHhjSNfrE1CuQ==}
655
655
cpu: [x64]
656
656
os: [linux]
657
657
658
-
'@libsql/linux-x64-musl@0.5.15':
659
-
resolution: {integrity: sha512-f0Fm7I55ruVtUuGX0Sq8VfcD/MuD8Rag/v8bDlBa5L3cVbjD069SsRy8Nq3Sw9smctC4Zsul7APf09mGLlu/tQ==}
658
+
'@libsql/linux-x64-musl@0.5.17':
659
+
resolution: {integrity: sha512-FvSpWlwc+dIeYIFYlsSv+UdQ/NiZWr+SstwVji+QZ//8NnvzwWQU9cgP+Vpps6Qiq4jyYQm9chJhTYOVT9Y3BA==}
660
660
cpu: [x64]
661
661
os: [linux]
662
662
663
-
'@libsql/win32-x64-msvc@0.5.15':
664
-
resolution: {integrity: sha512-uAmRXE2tZV+9gg51m54NEvjfP9AKuoZeQLmzTnBylsHxy4VZviWCBz1i4tHSyk75rVOefmfWapBJ5ZdLegmpGg==}
663
+
'@libsql/win32-x64-msvc@0.5.17':
664
+
resolution: {integrity: sha512-f5bGH8+3A5sn6Lrqg8FsQ09a1pYXPnKGXGTFiAYlfQXVst1tUTxDTugnuWcJYKXyzDe/T7ccxyIZXeSmPOhq8A==}
665
665
cpu: [x64]
666
666
os: [win32]
667
667
···
690
690
'@rtsao/scc@1.1.0':
691
691
resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==}
692
692
693
-
'@scalar/code-highlight@0.1.8':
694
-
resolution: {integrity: sha512-SH7gqBVGotf9Hw2srAKd/s854Wjf5lpR4FgAf/l3AlCYC5QXJ4hbj+fk1/3tvzeRFm+wvS6/ah4FuiIzvDPOug==}
693
+
'@scalar/code-highlight@0.1.9':
694
+
resolution: {integrity: sha512-WUUVDd1Wk7QJVKWXl/Zdn/VINc2pc1NlWW8VJFYZRm3/hKJwBhi0on7+HjVQNKgUaRy7+zluru5Ckl1gcTHHEg==}
695
695
engines: {node: '>=20'}
696
696
697
-
'@scalar/components@0.14.20':
698
-
resolution: {integrity: sha512-wGHsxz3R6l+u7KASwvm4Y9d7byD2HjfWBbCVXAb+qQIDemaMDBNARjRCbXLpRB9UvYLxtgP/8fzdW+R0LEf4/A==}
697
+
'@scalar/components@0.14.23':
698
+
resolution: {integrity: sha512-rmIMRrlqOWlXAJaVbr9DArrKKp95P2fllNM69VrEAHtwMReambBRKuC02cQPwOZcbZCtPx4dZsv2aUB5QdtecQ==}
699
699
engines: {node: '>=20'}
700
700
701
-
'@scalar/core@0.3.10':
702
-
resolution: {integrity: sha512-WKLaZk5zj65CbS0Ox0BMZ1GX9gFrVdwgV/cdRjT2Av8H5CizOSirXk4PwdsU8V8Q4gAltVy9cnt6yKc2ZnRY+w==}
701
+
'@scalar/core@0.3.11':
702
+
resolution: {integrity: sha512-4O3mC29k2STz4quBHrpsl6czxi94F3dy8Ej/OPbELS2myKO4GoxromT0BiKSLPAThCnmJ0rqMZ7k9NsgzVjEgA==}
703
703
engines: {node: '>=20'}
704
704
705
-
'@scalar/helpers@0.0.6':
706
-
resolution: {integrity: sha512-VrkpJmEq3zLu0lYFVRplNLA54rZ9rBkiahEI8laVpLnzGl1QilIn2EhxBT9lK7/2jbPprCbTfgnZZv+zHgGYTw==}
705
+
'@scalar/helpers@0.0.7':
706
+
resolution: {integrity: sha512-ieexJgofs0PPAp3yxz+0S2tI/GWvo9btxplHE5KxUiWwq2bksYnrhrt+gwe4DoGPRaajzutzJuD1u4VnJd9bNA==}
707
707
engines: {node: '>=20'}
708
708
709
-
'@scalar/hono-api-reference@0.9.12':
710
-
resolution: {integrity: sha512-ygbQsh+5QaRyAx851utApy12FW+wSRLuOBTpL2U5RVzDjvN6vMBZs119mqH1BmY6ltVn8k7DvS2Ooyx0ttah/A==}
709
+
'@scalar/hono-api-reference@0.9.13':
710
+
resolution: {integrity: sha512-79Gs+/2/FcqwZ3Lp0lsv3pFKHY1qBF2ONkfgh/gxRsd8Z+RZRTDBZafe7OConj+c4tHm0Zz3bKTKEV0OMQi/aA==}
711
711
engines: {node: '>=20'}
712
712
peerDependencies:
713
713
hono: ^4.0.0
···
716
716
resolution: {integrity: sha512-ho9ee29Ik+Jv17bSaQEXvGn1e2ydNEyc7Sv8A8hqPq084aIOiTBtVFISPPt+k/O6z0SIRayfL8FEZqr93GyZPg==}
717
717
engines: {node: '>=20'}
718
718
719
-
'@scalar/json-diff@0.0.4':
720
-
resolution: {integrity: sha512-4u2gtyhA119T+HdQ4dVKYzQOCOos5Iaj08C1H2Hi6WW64sTNJaZuh9hpVtY94e0I9feRiCyNEtWvmbOjOAxbTw==}
719
+
'@scalar/json-magic@0.1.0':
720
+
resolution: {integrity: sha512-Slq3nheaAzbhLMdjgKHsJBNyEYv2ekDnWaOagOflo6K5XOx6UTmCLclaj26z89ihpTgWWtQJIRDC8bsRIJwpAg==}
721
721
engines: {node: '>=20'}
722
722
723
-
'@scalar/oas-utils@0.4.15':
724
-
resolution: {integrity: sha512-C2kGex6fwHxmBQhyiAmuVJHlIOP/rYoojuROfWvUQSrfLELkIjE5ZTyh4fj9PhwhGbS9iWWVaaOytjeT+8n8AQ==}
723
+
'@scalar/oas-utils@0.4.18':
724
+
resolution: {integrity: sha512-1VsTZLIEThZ7vwa3Fych4Ks1VTf8JetCuP8LA1VlamAhl/+qpLn9mgvxKSAdTyiLzM8ST5jtDi/Pg/2qWbTlzw==}
725
725
engines: {node: '>=20'}
726
726
727
-
'@scalar/object-utils@1.2.2':
728
-
resolution: {integrity: sha512-dnH/JeXLudjBfEISpYvnMrH3bLjpc06vWVx7UQmtNNWIIonJ+bDMg1ATnYon7q6m+V8aJZ9/To8SwYsunYRL9g==}
727
+
'@scalar/object-utils@1.2.3':
728
+
resolution: {integrity: sha512-1LW2pHs2jp5ixyK+NdpAyuUlOL+iJ8wQ0P2EgV45vLJ8YeZo5DtxQbKuFyqoaviTYjg2MWs1exavYP/qAaSqyQ==}
729
729
engines: {node: '>=20'}
730
730
731
-
'@scalar/openapi-parser@0.18.2':
732
-
resolution: {integrity: sha512-Mb0rRgnn8QgrwcsOcZY3g4uDr49cSuYcmh87oT7gDuV9IPFg5Wc71fjXNx0HdTRy5k21ugS/lDSl8sL+YBudOw==}
731
+
'@scalar/openapi-parser@0.19.0':
732
+
resolution: {integrity: sha512-U1FDug4NFK+o1ib93L2MerW13s61sEDPDgrmO14mp5qAV5iYkC2l0KqKQLMIbt3sWw6fDy900eXNKIgUuge4BA==}
733
733
engines: {node: '>=20'}
734
734
735
-
'@scalar/openapi-to-markdown@0.2.23':
736
-
resolution: {integrity: sha512-j47K57Q0pDT3C1kAHmewV4kIBInQTjlvG+y4W5QgJkE64mzb8n5aZuMqzSCpyEItX4BsMEasIPMDWBCIhiicpw==}
735
+
'@scalar/openapi-to-markdown@0.2.26':
736
+
resolution: {integrity: sha512-GqA1aItKQoTz6r36ClCSPqLCPHFDvMT4f7oNeg0mdzcNzN7/EE9DdMqNQFihkg5OPtl32nQFxL+r/XFwgGXDlQ==}
737
737
engines: {node: '>=20'}
738
738
739
-
'@scalar/openapi-types@0.3.6':
740
-
resolution: {integrity: sha512-hkLIgDIQxSgZNYCqNkty2p/V8hjeMf711uT8IKIjNw8oaT/cjT1HC/3V0FVhJ6x2eaufir+WXt5Zqv/iVk5pyQ==}
739
+
'@scalar/openapi-types@0.3.7':
740
+
resolution: {integrity: sha512-QHSvHBVDze3+dUwAhIGq6l1iOev4jdoqdBK7QpfeN1Q4h+6qpVEw3EEqBiH0AXUSh/iWwObBv4uMgfIx0aNZ5g==}
741
741
engines: {node: '>=20'}
742
742
743
-
'@scalar/snippetz@0.4.3':
744
-
resolution: {integrity: sha512-OcYI4uvz/SbIkGupa3SNS403+lCsp4RoPJRTP1Rd59lRX9Kyc8xXo8ZuJis06GYtlBP5rqshI+jFCIP/Ap+dFw==}
743
+
'@scalar/snippetz@0.4.4':
744
+
resolution: {integrity: sha512-Vml82Jhzr10lLj4bUrwZAcn4ym63pzfH+fOkrJ0Ig/dM9dP1bAHmwHkEDaUQkiGM6x2KIhe2eMsJtO7Y+VgHOQ==}
745
745
engines: {node: '>=20'}
746
746
747
-
'@scalar/themes@0.13.11':
748
-
resolution: {integrity: sha512-9rdNfVDbDFUr6Pi9IHt6OKs7Ui6TtrH7tR+ymga+I+jw8Xsnm4dbD1G2TFk1wUaYLVYdiqyQcj+JT15OJEGlkw==}
747
+
'@scalar/themes@0.13.12':
748
+
resolution: {integrity: sha512-fM010t8npZ8XqGle7ZjoAFGEfzkJ1XjEk1W3OJ5nLzSLq3hXXp72f4wHp6eaKoDWw8rFq+ZeOZk1GP7PgSr/Jw==}
749
749
engines: {node: '>=20'}
750
750
751
-
'@scalar/types@0.2.10':
752
-
resolution: {integrity: sha512-ZlOzYoYzzGRnMr6RufAnjksv94MyL4s4HElg9mdo9gQXPch24lNiE0pE0k6vxdB+ncgbGWZ1T6qCC/lJXMLL1Q==}
751
+
'@scalar/types@0.2.11':
752
+
resolution: {integrity: sha512-SUZzGmoisWsYv33LmmT/ajvSlcl9ZDj9d5RncJ+wB9ZQ2l018xlfpDIH9Kdfo+6KCKQOe3LYLXfH4Lzm891Mag==}
753
753
engines: {node: '>=20'}
754
754
755
755
'@scalar/use-hooks@0.2.4':
···
760
760
resolution: {integrity: sha512-u+o77cdTNZ5ePqHPu8ZcFw1BLlISv+cthN0bR1zJHXmqBjvanFTy2kL+Gmv3eW9HxZiHdqycKVETlYd0mWiqJQ==}
761
761
engines: {node: '>=20'}
762
762
763
-
'@scalar/workspace-store@0.10.2':
764
-
resolution: {integrity: sha512-p4aDfAsZIFBBQPk2CcD96PMc2HFLOtGi2XMRNp86cqpQMncIIAqDTYCydzcsYvMPysmckIAAyuztdKDOPnry7g==}
763
+
'@scalar/workspace-store@0.12.0':
764
+
resolution: {integrity: sha512-e0OMEYTrQ6D/8gg4lAIim5lL5utK+8zLH5mdriYY34L9UszLTbzGTesZBfNA15Eao1mo7f3hbyRJPPBydwo0rw==}
765
765
engines: {node: '>=18'}
766
766
767
767
'@sinclair/typebox@0.34.37':
···
805
805
'@types/ms@2.1.0':
806
806
resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
807
807
808
-
'@types/node@22.16.5':
809
-
resolution: {integrity: sha512-bJFoMATwIGaxxx8VJPeM8TonI8t579oRvgAuT8zFugJsJZgzqv0Fu8Mhp68iecjzG7cnN3mO2dJQ5uUM2EFrgQ==}
808
+
'@types/node@22.17.2':
809
+
resolution: {integrity: sha512-gL6z5N9Jm9mhY+U2KXZpteb+09zyffliRkZyZOHODGATyC5B1Jt/7TzuuiLkFsSUMLbS1OLmlj/E+/3KF4Q/4w==}
810
810
811
-
'@types/node@24.0.15':
812
-
resolution: {integrity: sha512-oaeTSbCef7U/z7rDeJA138xpG3NuKc64/rZ2qmUFkFJmnMsAPaluIifqyWd8hSSMxyP9oie3dLAqYPblag9KgA==}
811
+
'@types/node@24.3.0':
812
+
resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==}
813
813
814
814
'@types/triple-beam@1.3.5':
815
815
resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==}
···
823
823
'@types/ws@8.18.1':
824
824
resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
825
825
826
-
'@typescript-eslint/eslint-plugin@8.38.0':
827
-
resolution: {integrity: sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==}
826
+
'@typescript-eslint/eslint-plugin@8.40.0':
827
+
resolution: {integrity: sha512-w/EboPlBwnmOBtRbiOvzjD+wdiZdgFeo17lkltrtn7X37vagKKWJABvyfsJXTlHe6XBzugmYgd4A4nW+k8Mixw==}
828
828
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
829
829
peerDependencies:
830
-
'@typescript-eslint/parser': ^8.38.0
830
+
'@typescript-eslint/parser': ^8.40.0
831
831
eslint: ^8.57.0 || ^9.0.0
832
-
typescript: '>=4.8.4 <5.9.0'
832
+
typescript: '>=4.8.4 <6.0.0'
833
833
834
-
'@typescript-eslint/parser@8.38.0':
835
-
resolution: {integrity: sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==}
834
+
'@typescript-eslint/parser@8.40.0':
835
+
resolution: {integrity: sha512-jCNyAuXx8dr5KJMkecGmZ8KI61KBUhkCob+SD+C+I5+Y1FWI2Y3QmY4/cxMCC5WAsZqoEtEETVhUiUMIGCf6Bw==}
836
836
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
837
837
peerDependencies:
838
838
eslint: ^8.57.0 || ^9.0.0
839
-
typescript: '>=4.8.4 <5.9.0'
839
+
typescript: '>=4.8.4 <6.0.0'
840
840
841
-
'@typescript-eslint/project-service@8.38.0':
842
-
resolution: {integrity: sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==}
841
+
'@typescript-eslint/project-service@8.40.0':
842
+
resolution: {integrity: sha512-/A89vz7Wf5DEXsGVvcGdYKbVM9F7DyFXj52lNYUDS1L9yJfqjW/fIp5PgMuEJL/KeqVTe2QSbXAGUZljDUpArw==}
843
843
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
844
844
peerDependencies:
845
-
typescript: '>=4.8.4 <5.9.0'
845
+
typescript: '>=4.8.4 <6.0.0'
846
846
847
-
'@typescript-eslint/scope-manager@8.38.0':
848
-
resolution: {integrity: sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==}
847
+
'@typescript-eslint/scope-manager@8.40.0':
848
+
resolution: {integrity: sha512-y9ObStCcdCiZKzwqsE8CcpyuVMwRouJbbSrNuThDpv16dFAj429IkM6LNb1dZ2m7hK5fHyzNcErZf7CEeKXR4w==}
849
849
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
850
850
851
-
'@typescript-eslint/tsconfig-utils@8.38.0':
852
-
resolution: {integrity: sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==}
851
+
'@typescript-eslint/tsconfig-utils@8.40.0':
852
+
resolution: {integrity: sha512-jtMytmUaG9d/9kqSl/W3E3xaWESo4hFDxAIHGVW/WKKtQhesnRIJSAJO6XckluuJ6KDB5woD1EiqknriCtAmcw==}
853
853
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
854
854
peerDependencies:
855
-
typescript: '>=4.8.4 <5.9.0'
855
+
typescript: '>=4.8.4 <6.0.0'
856
856
857
-
'@typescript-eslint/type-utils@8.38.0':
858
-
resolution: {integrity: sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==}
857
+
'@typescript-eslint/type-utils@8.40.0':
858
+
resolution: {integrity: sha512-eE60cK4KzAc6ZrzlJnflXdrMqOBaugeukWICO2rB0KNvwdIMaEaYiywwHMzA1qFpTxrLhN9Lp4E/00EgWcD3Ow==}
859
859
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
860
860
peerDependencies:
861
861
eslint: ^8.57.0 || ^9.0.0
862
-
typescript: '>=4.8.4 <5.9.0'
862
+
typescript: '>=4.8.4 <6.0.0'
863
863
864
-
'@typescript-eslint/types@8.38.0':
865
-
resolution: {integrity: sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==}
864
+
'@typescript-eslint/types@8.40.0':
865
+
resolution: {integrity: sha512-ETdbFlgbAmXHyFPwqUIYrfc12ArvpBhEVgGAxVYSwli26dn8Ko+lIo4Su9vI9ykTZdJn+vJprs/0eZU0YMAEQg==}
866
866
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
867
867
868
-
'@typescript-eslint/typescript-estree@8.38.0':
869
-
resolution: {integrity: sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==}
868
+
'@typescript-eslint/typescript-estree@8.40.0':
869
+
resolution: {integrity: sha512-k1z9+GJReVVOkc1WfVKs1vBrR5MIKKbdAjDTPvIK3L8De6KbFfPFt6BKpdkdk7rZS2GtC/m6yI5MYX+UsuvVYQ==}
870
870
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
871
871
peerDependencies:
872
-
typescript: '>=4.8.4 <5.9.0'
872
+
typescript: '>=4.8.4 <6.0.0'
873
873
874
-
'@typescript-eslint/utils@8.38.0':
875
-
resolution: {integrity: sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==}
874
+
'@typescript-eslint/utils@8.40.0':
875
+
resolution: {integrity: sha512-Cgzi2MXSZyAUOY+BFwGs17s7ad/7L+gKt6Y8rAVVWS+7o6wrjeFN4nVfTpbE25MNcxyJ+iYUXflbs2xR9h4UBg==}
876
876
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
877
877
peerDependencies:
878
878
eslint: ^8.57.0 || ^9.0.0
879
-
typescript: '>=4.8.4 <5.9.0'
879
+
typescript: '>=4.8.4 <6.0.0'
880
880
881
-
'@typescript-eslint/visitor-keys@8.38.0':
882
-
resolution: {integrity: sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==}
881
+
'@typescript-eslint/visitor-keys@8.40.0':
882
+
resolution: {integrity: sha512-8CZ47QwalyRjsypfwnbI3hKy5gJDPmrkLjkgMxhi0+DZZ2QNx2naS6/hWoVYUHU7LU2zleF68V9miaVZvhFfTA==}
883
883
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
884
884
885
885
'@ungap/structured-clone@1.3.0':
886
886
resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
887
887
888
-
'@vue/compiler-core@3.5.17':
889
-
resolution: {integrity: sha512-Xe+AittLbAyV0pabcN7cP7/BenRBNcteM4aSDCtRvGw0d9OL+HG1u/XHLY/kt1q4fyMeZYXyIYrsHuPSiDPosA==}
888
+
'@vue/compiler-core@3.5.18':
889
+
resolution: {integrity: sha512-3slwjQrrV1TO8MoXgy3aynDQ7lslj5UqDxuHnrzHtpON5CBinhWjJETciPngpin/T3OuW3tXUf86tEurusnztw==}
890
890
891
-
'@vue/compiler-dom@3.5.17':
892
-
resolution: {integrity: sha512-+2UgfLKoaNLhgfhV5Ihnk6wB4ljyW1/7wUIog2puUqajiC29Lp5R/IKDdkebh9jTbTogTbsgB+OY9cEWzG95JQ==}
891
+
'@vue/compiler-dom@3.5.18':
892
+
resolution: {integrity: sha512-RMbU6NTU70++B1JyVJbNbeFkK+A+Q7y9XKE2EM4NLGm2WFR8x9MbAtWxPPLdm0wUkuZv9trpwfSlL6tjdIa1+A==}
893
893
894
-
'@vue/compiler-sfc@3.5.17':
895
-
resolution: {integrity: sha512-rQQxbRJMgTqwRugtjw0cnyQv9cP4/4BxWfTdRBkqsTfLOHWykLzbOc3C4GGzAmdMDxhzU/1Ija5bTjMVrddqww==}
894
+
'@vue/compiler-sfc@3.5.18':
895
+
resolution: {integrity: sha512-5aBjvGqsWs+MoxswZPoTB9nSDb3dhd1x30xrrltKujlCxo48j8HGDNj3QPhF4VIS0VQDUrA1xUfp2hEa+FNyXA==}
896
896
897
-
'@vue/compiler-ssr@3.5.17':
898
-
resolution: {integrity: sha512-hkDbA0Q20ZzGgpj5uZjb9rBzQtIHLS78mMilwrlpWk2Ep37DYntUz0PonQ6kr113vfOEdM+zTBuJDaceNIW0tQ==}
897
+
'@vue/compiler-ssr@3.5.18':
898
+
resolution: {integrity: sha512-xM16Ak7rSWHkM3m22NlmcdIM+K4BMyFARAfV9hYFl+SFuRzrZ3uGMNW05kA5pmeMa0X9X963Kgou7ufdbpOP9g==}
899
899
900
-
'@vue/reactivity@3.5.17':
901
-
resolution: {integrity: sha512-l/rmw2STIscWi7SNJp708FK4Kofs97zc/5aEPQh4bOsReD/8ICuBcEmS7KGwDj5ODQLYWVN2lNibKJL1z5b+Lw==}
900
+
'@vue/reactivity@3.5.18':
901
+
resolution: {integrity: sha512-x0vPO5Imw+3sChLM5Y+B6G1zPjwdOri9e8V21NnTnlEvkxatHEH5B5KEAJcjuzQ7BsjGrKtfzuQ5eQwXh8HXBg==}
902
902
903
-
'@vue/runtime-core@3.5.17':
904
-
resolution: {integrity: sha512-QQLXa20dHg1R0ri4bjKeGFKEkJA7MMBxrKo2G+gJikmumRS7PTD4BOU9FKrDQWMKowz7frJJGqBffYMgQYS96Q==}
903
+
'@vue/runtime-core@3.5.18':
904
+
resolution: {integrity: sha512-DUpHa1HpeOQEt6+3nheUfqVXRog2kivkXHUhoqJiKR33SO4x+a5uNOMkV487WPerQkL0vUuRvq/7JhRgLW3S+w==}
905
905
906
-
'@vue/runtime-dom@3.5.17':
907
-
resolution: {integrity: sha512-8El0M60TcwZ1QMz4/os2MdlQECgGoVHPuLnQBU3m9h3gdNRW9xRmI8iLS4t/22OQlOE6aJvNNlBiCzPHur4H9g==}
906
+
'@vue/runtime-dom@3.5.18':
907
+
resolution: {integrity: sha512-YwDj71iV05j4RnzZnZtGaXwPoUWeRsqinblgVJwR8XTXYZ9D5PbahHQgsbmzUvCWNF6x7siQ89HgnX5eWkr3mw==}
908
908
909
-
'@vue/server-renderer@3.5.17':
910
-
resolution: {integrity: sha512-BOHhm8HalujY6lmC3DbqF6uXN/K00uWiEeF22LfEsm9Q93XeJ/plHTepGwf6tqFcF7GA5oGSSAAUock3VvzaCA==}
909
+
'@vue/server-renderer@3.5.18':
910
+
resolution: {integrity: sha512-PvIHLUoWgSbDG7zLHqSqaCoZvHi6NNmfVFOqO+OnwvqMz/tqQr3FuGWS8ufluNddk7ZLBJYMrjcw1c6XzR12mA==}
911
911
peerDependencies:
912
-
vue: 3.5.17
912
+
vue: 3.5.18
913
913
914
-
'@vue/shared@3.5.17':
915
-
resolution: {integrity: sha512-CabR+UN630VnsJO/jHWYBC1YVXyMq94KKp6iF5MQgZJs5I8cmjw6oVMO1oDbtBkENSHSSn/UadWlW/OAgdmKrg==}
914
+
'@vue/shared@3.5.18':
915
+
resolution: {integrity: sha512-cZy8Dq+uuIXbxCZpuLd2GJdeSO/lIzIspC2WtkqIpje5QyFbvLaI5wZtdUjLHjGZrlVX6GilejatWwVYYRc8tA==}
916
916
917
917
'@vueuse/core@10.11.1':
918
918
resolution: {integrity: sha512-guoy26JQktXPcz+0n3GukWIy/JDNKti9v6VEMu6kV2sYBsWuGiTU8OWdg+ADfUbHg3/3DlqySDe7JmdHrktiww==}
919
+
920
+
'@vueuse/core@11.3.0':
921
+
resolution: {integrity: sha512-7OC4Rl1f9G8IT6rUfi9JrKiXy4bfmHhZ5x2Ceojy0jnd3mHNEvV4JaRygH362ror6/NZ+Nl+n13LPzGiPN8cKA==}
919
922
920
923
'@vueuse/metadata@10.11.1':
921
924
resolution: {integrity: sha512-IGa5FXd003Ug1qAZmyE8wF3sJ81xGLSqTqtQ6jaVfkeZ4i5kS2mwQF61yhVqojRnenVew5PldLyRgvdl4YYuSw==}
922
925
926
+
'@vueuse/metadata@11.3.0':
927
+
resolution: {integrity: sha512-pwDnDspTqtTo2HwfLw4Rp6yywuuBdYnPYDq+mO38ZYKGebCUQC/nVj/PXSiK9HX5otxLz8Fn7ECPbjiRz2CC3g==}
928
+
923
929
'@vueuse/shared@10.11.1':
924
930
resolution: {integrity: sha512-LHpC8711VFZlDaYUXEBbFBCQ7GS3dVU9mjOhhMhXP6txTV4EhYQg/KGnQuvt/sPAtoUKq7VVUnL6mVtFoL42sA==}
931
+
932
+
'@vueuse/shared@11.3.0':
933
+
resolution: {integrity: sha512-P8gSSWQeucH5821ek2mn/ciCk+MS/zoRKqdQIM3bHq6p7GXDAJLmnRRKmF5F65sAVJIfzQlwR3aDzwCn10s8hA==}
925
934
926
935
acorn-jsx@5.3.2:
927
936
resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
···
1049
1058
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
1050
1059
engines: {node: '>=10'}
1051
1060
1052
-
chalk@5.4.1:
1053
-
resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==}
1061
+
chalk@5.6.0:
1062
+
resolution: {integrity: sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ==}
1054
1063
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
1055
1064
1056
1065
character-entities-html4@2.1.0:
···
1202
1211
resolution: {integrity: sha512-tCPWVZWZqWVx2XUsVpJRnH9Mx0ClVOf5YUHerZ5so1OKSlqww4zy1R5ksEdGRcO3tM3zj0PYN6V48TbQCL1RfA==}
1203
1212
hasBin: true
1204
1213
1205
-
drizzle-orm@0.44.3:
1206
-
resolution: {integrity: sha512-8nIiYQxOpgUicEL04YFojJmvC4DNO4KoyXsEIqN44+g6gNBr6hmVpWk3uyAt4CaTiRGDwoU+alfqNNeonLAFOQ==}
1214
+
drizzle-orm@0.44.4:
1215
+
resolution: {integrity: sha512-ZyzKFpTC/Ut3fIqc2c0dPZ6nhchQXriTsqTNs4ayRgl6sZcFlMs9QZKPSHXK4bdOf41GHGWf+FrpcDDYwW+W6Q==}
1207
1216
peerDependencies:
1208
1217
'@aws-sdk/client-rds-data': '>=3'
1209
1218
'@cloudflare/workers-types': '>=4'
···
1347
1356
engines: {node: '>=12'}
1348
1357
hasBin: true
1349
1358
1350
-
esbuild@0.25.8:
1351
-
resolution: {integrity: sha512-vVC0USHGtMi8+R4Kz8rt6JhEWLxsv9Rnu/lGYbPR8u47B+DCBksq9JarW0zOO7bs37hyOK1l2/oqtbciutL5+Q==}
1359
+
esbuild@0.25.9:
1360
+
resolution: {integrity: sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==}
1352
1361
engines: {node: '>=18'}
1353
1362
hasBin: true
1354
1363
···
1405
1414
'@typescript-eslint/parser':
1406
1415
optional: true
1407
1416
1408
-
eslint-plugin-prettier@5.5.3:
1409
-
resolution: {integrity: sha512-NAdMYww51ehKfDyDhv59/eIItUVzU0Io9H2E8nHNGKEeeqlnci+1gCvrHib6EmZdf6GxF+LCV5K7UC65Ezvw7w==}
1417
+
eslint-plugin-prettier@5.5.4:
1418
+
resolution: {integrity: sha512-swNtI95SToIz05YINMA6Ox5R057IMAmWZ26GqPxusAp1TZzj+IdY9tXNWWD3vkF/wEqydCONcwjTFpxybBqZsg==}
1410
1419
engines: {node: ^14.18.0 || >=16.0.0}
1411
1420
peerDependencies:
1412
1421
'@types/eslint': '>=8.0.0'
···
1431
1440
resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
1432
1441
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1433
1442
1434
-
eslint@9.31.0:
1435
-
resolution: {integrity: sha512-QldCVh/ztyKJJZLr4jXNUByx3gR+TDYZCRXEktiZoUR3PGy4qCmSbkxcIle8GEwGpb5JBZazlaJ/CxLidXdEbQ==}
1443
+
eslint@9.33.0:
1444
+
resolution: {integrity: sha512-TS9bTNIryDzStCpJN93aC5VRSW3uTx9sClUn4B87pwiCaJh220otoI0X8mJKr+VcPtniMdN8GKjlwgWGUv5ZKA==}
1436
1445
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
1437
1446
hasBin: true
1438
1447
peerDependencies:
···
1687
1696
highlightjs-vue@1.0.0:
1688
1697
resolution: {integrity: sha512-PDEfEF102G23vHmPhLyPboFCD+BkMGu+GuJe2d9/eH4FsCwvgBpnc9n0pGE+ffKdph38s6foEZiEjdgHdzp+IA==}
1689
1698
1690
-
hono@4.8.5:
1691
-
resolution: {integrity: sha512-Up2cQbtNz1s111qpnnECdTGqSIUIhZJMLikdKkshebQSEBcoUKq6XJayLGqSZWidiH0zfHRCJqFu062Mz5UuRA==}
1699
+
hono@4.9.2:
1700
+
resolution: {integrity: sha512-UG2jXGS/gkLH42l/1uROnwXpkjvvxkl3kpopL3LBo27NuaDPI6xHNfuUSilIHcrBkPfl4y0z6y2ByI455TjNRw==}
1692
1701
engines: {node: '>=16.9.0'}
1693
1702
1694
1703
html-minifier-terser@7.2.0:
···
1854
1863
isexe@2.0.0:
1855
1864
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
1856
1865
1857
-
jiti@2.4.2:
1858
-
resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==}
1866
+
jiti@2.5.1:
1867
+
resolution: {integrity: sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==}
1859
1868
hasBin: true
1860
1869
1861
-
js-base64@3.7.7:
1862
-
resolution: {integrity: sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==}
1870
+
js-base64@3.7.8:
1871
+
resolution: {integrity: sha512-hNngCeKxIUQiEUN3GPJOkz4wF/YvdUdbNL9hsBcMQTkKzboD7T/q3OYOuuPZLUE6dBxSGpwhk5mwuDud7JVAow==}
1863
1872
1864
1873
js-yaml@4.1.0:
1865
1874
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
···
1909
1918
resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
1910
1919
engines: {node: '>= 0.8.0'}
1911
1920
1912
-
libsql@0.5.15:
1913
-
resolution: {integrity: sha512-N1ZhjpTadoxDW8UNssgJyZz+cAX/gi9OxOFHapH8AY6p7Qk/6umTC5UwQ+6bPnACDcxqbzhRlbLO+Mk60owFRA==}
1921
+
libsql@0.5.17:
1922
+
resolution: {integrity: sha512-RRlj5XQI9+Wq+/5UY8EnugSWfRmHEw4hn3DKlPrkUgZONsge1PwTtHcpStP6MSNi8ohcbsRgEHJaymA33a8cBw==}
1914
1923
cpu: [x64, arm64, wasm32, arm]
1915
1924
os: [darwin, linux, win32]
1916
1925
···
2169
2178
parse5@7.3.0:
2170
2179
resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==}
2171
2180
2172
-
partysocket@1.1.4:
2173
-
resolution: {integrity: sha512-jXP7PFj2h5/v4UjDS8P7MZy6NJUQ7sspiFyxL4uc/+oKOL+KdtXzHnTV8INPGxBrLTXgalyG3kd12Qm7WrYc3A==}
2181
+
partysocket@1.1.5:
2182
+
resolution: {integrity: sha512-8uw9foq9bij4sKLCtTSHvyqMrMTQ5FJjrHc7BjoM2s95Vu7xYCN63ABpI7OZHC7ZMP5xaom/A+SsoFPXmTV6ZQ==}
2174
2183
2175
2184
pascal-case@3.1.2:
2176
2185
resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==}
···
2497
2506
tslib@2.8.1:
2498
2507
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
2499
2508
2500
-
tsx@4.20.3:
2501
-
resolution: {integrity: sha512-qjbnuR9Tr+FJOMBqJCW5ehvIo/buZq7vH7qD7JziU98h6l3qGy0a/yPFjwO+y0/T7GFpNgNAvEcPPVfyT8rrPQ==}
2509
+
tsx@4.20.4:
2510
+
resolution: {integrity: sha512-yyxBKfORQ7LuRt/BQKBXrpcq59ZvSW0XxwfjAt3w2/8PmdxaFzijtMhTawprSHhpzeM5BgU2hXHG3lklIERZXg==}
2502
2511
engines: {node: '>=18.0.0'}
2503
2512
hasBin: true
2504
2513
···
2526
2535
resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==}
2527
2536
engines: {node: '>= 0.4'}
2528
2537
2529
-
typescript-eslint@8.38.0:
2530
-
resolution: {integrity: sha512-FsZlrYK6bPDGoLeZRuvx2v6qrM03I0U0SnfCLPs/XCCPCFD80xU9Pg09H/K+XFa68uJuZo7l/Xhs+eDRg2l3hg==}
2538
+
typescript-eslint@8.40.0:
2539
+
resolution: {integrity: sha512-Xvd2l+ZmFDPEt4oj1QEXzA4A2uUK6opvKu3eGN9aGjB8au02lIVcLyi375w94hHyejTOmzIU77L8ol2sRg9n7Q==}
2531
2540
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
2532
2541
peerDependencies:
2533
2542
eslint: ^8.57.0 || ^9.0.0
2534
-
typescript: '>=4.8.4 <5.9.0'
2543
+
typescript: '>=4.8.4 <6.0.0'
2535
2544
2536
-
typescript@5.8.3:
2537
-
resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==}
2545
+
typescript@5.9.2:
2546
+
resolution: {integrity: sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==}
2538
2547
engines: {node: '>=14.17'}
2539
2548
hasBin: true
2540
2549
···
2545
2554
undici-types@6.21.0:
2546
2555
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
2547
2556
2548
-
undici-types@7.8.0:
2549
-
resolution: {integrity: sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==}
2557
+
undici-types@7.10.0:
2558
+
resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==}
2550
2559
2551
2560
unified@11.0.5:
2552
2561
resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==}
···
2582
2591
vfile-location@5.0.3:
2583
2592
resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==}
2584
2593
2585
-
vfile-message@4.0.2:
2586
-
resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
2594
+
vfile-message@4.0.3:
2595
+
resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==}
2587
2596
2588
2597
vfile@6.0.3:
2589
2598
resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==}
2599
+
2600
+
vue-component-type-helpers@3.0.5:
2601
+
resolution: {integrity: sha512-uoNZaJ+a1/zppa/Vgmi8zIOP2PHXDN2rT8NyF+zQRK6ZG94lNB9prcV0GdLJbY9i9lrD47JOVIH92SaiA7oJ1A==}
2590
2602
2591
2603
vue-demi@0.14.10:
2592
2604
resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
···
2602
2614
vue-sonner@1.3.2:
2603
2615
resolution: {integrity: sha512-UbZ48E9VIya3ToiRHAZUbodKute/z/M1iT8/3fU8zEbwBRE11AKuHikssv18LMk2gTTr6eMQT4qf6JoLHWuj/A==}
2604
2616
2605
-
vue@3.5.17:
2606
-
resolution: {integrity: sha512-LbHV3xPN9BeljML+Xctq4lbz2lVHCR6DtbpTf5XIO6gugpXUN49j2QQPcMj086r9+AkJ0FfUT8xjulKKBkkr9g==}
2617
+
vue@3.5.18:
2618
+
resolution: {integrity: sha512-7W4Y4ZbMiQ3SEo+m9lnoNpV9xG7QVMLa+/0RFwwiAVkeYoyGXqWE85jabU4pllJNUzqfLShJ5YLptewhCWUgNA==}
2607
2619
peerDependencies:
2608
2620
typescript: '*'
2609
2621
peerDependenciesMeta:
···
2686
2698
dependencies:
2687
2699
'@atcute/lexicons': 1.1.0
2688
2700
2689
-
'@atcute/bluesky@3.1.5':
2701
+
'@atcute/bluesky@3.2.0':
2690
2702
dependencies:
2691
2703
'@atcute/atproto': 3.1.1
2692
2704
'@atcute/lexicons': 1.1.0
···
2701
2713
'@atcute/identity': 1.0.3
2702
2714
'@atcute/lexicons': 1.1.0
2703
2715
'@atcute/util-fetch': 1.0.1
2704
-
'@badrap/valita': 0.4.5
2716
+
'@badrap/valita': 0.4.6
2705
2717
2706
2718
'@atcute/identity@1.0.3':
2707
2719
dependencies:
2708
2720
'@atcute/lexicons': 1.1.0
2709
-
'@badrap/valita': 0.4.5
2721
+
'@badrap/valita': 0.4.6
2710
2722
2711
2723
'@atcute/lex-cli@2.1.1':
2712
2724
dependencies:
2713
2725
'@atcute/lexicon-doc': 1.0.3
2714
-
'@badrap/valita': 0.4.5
2715
-
'@externdefs/collider': 0.3.0(@badrap/valita@0.4.5)
2726
+
'@badrap/valita': 0.4.6
2727
+
'@externdefs/collider': 0.3.0(@badrap/valita@0.4.6)
2716
2728
picocolors: 1.1.1
2717
2729
prettier: 3.6.2
2718
2730
2719
2731
'@atcute/lexicon-doc@1.0.3':
2720
2732
dependencies:
2721
-
'@badrap/valita': 0.4.5
2733
+
'@badrap/valita': 0.4.6
2722
2734
2723
2735
'@atcute/lexicons@1.1.0':
2724
2736
dependencies:
···
2726
2738
2727
2739
'@atcute/util-fetch@1.0.1':
2728
2740
dependencies:
2729
-
'@badrap/valita': 0.4.5
2741
+
'@badrap/valita': 0.4.6
2730
2742
2731
2743
'@babel/helper-string-parser@7.27.1': {}
2732
2744
2733
2745
'@babel/helper-validator-identifier@7.27.1': {}
2734
2746
2735
-
'@babel/parser@7.28.0':
2747
+
'@babel/parser@7.28.3':
2736
2748
dependencies:
2737
-
'@babel/types': 7.28.1
2749
+
'@babel/types': 7.28.2
2738
2750
2739
-
'@babel/types@7.28.1':
2751
+
'@babel/types@7.28.2':
2740
2752
dependencies:
2741
2753
'@babel/helper-string-parser': 7.27.1
2742
2754
'@babel/helper-validator-identifier': 7.27.1
2743
2755
2744
-
'@badrap/valita@0.4.5': {}
2756
+
'@badrap/valita@0.4.6': {}
2745
2757
2746
-
'@clipprjs/lexicons@1.0.1':
2758
+
'@clipprjs/lexicons@1.0.2':
2747
2759
dependencies:
2748
2760
'@atcute/atproto': 3.1.1
2749
2761
'@atcute/lexicons': 1.1.0
···
2768
2780
'@esbuild-kit/core-utils': 3.3.2
2769
2781
get-tsconfig: 4.10.1
2770
2782
2771
-
'@esbuild/aix-ppc64@0.25.8':
2783
+
'@esbuild/aix-ppc64@0.25.9':
2772
2784
optional: true
2773
2785
2774
2786
'@esbuild/android-arm64@0.18.20':
2775
2787
optional: true
2776
2788
2777
-
'@esbuild/android-arm64@0.25.8':
2789
+
'@esbuild/android-arm64@0.25.9':
2778
2790
optional: true
2779
2791
2780
2792
'@esbuild/android-arm@0.18.20':
2781
2793
optional: true
2782
2794
2783
-
'@esbuild/android-arm@0.25.8':
2795
+
'@esbuild/android-arm@0.25.9':
2784
2796
optional: true
2785
2797
2786
2798
'@esbuild/android-x64@0.18.20':
2787
2799
optional: true
2788
2800
2789
-
'@esbuild/android-x64@0.25.8':
2801
+
'@esbuild/android-x64@0.25.9':
2790
2802
optional: true
2791
2803
2792
2804
'@esbuild/darwin-arm64@0.18.20':
2793
2805
optional: true
2794
2806
2795
-
'@esbuild/darwin-arm64@0.25.8':
2807
+
'@esbuild/darwin-arm64@0.25.9':
2796
2808
optional: true
2797
2809
2798
2810
'@esbuild/darwin-x64@0.18.20':
2799
2811
optional: true
2800
2812
2801
-
'@esbuild/darwin-x64@0.25.8':
2813
+
'@esbuild/darwin-x64@0.25.9':
2802
2814
optional: true
2803
2815
2804
2816
'@esbuild/freebsd-arm64@0.18.20':
2805
2817
optional: true
2806
2818
2807
-
'@esbuild/freebsd-arm64@0.25.8':
2819
+
'@esbuild/freebsd-arm64@0.25.9':
2808
2820
optional: true
2809
2821
2810
2822
'@esbuild/freebsd-x64@0.18.20':
2811
2823
optional: true
2812
2824
2813
-
'@esbuild/freebsd-x64@0.25.8':
2825
+
'@esbuild/freebsd-x64@0.25.9':
2814
2826
optional: true
2815
2827
2816
2828
'@esbuild/linux-arm64@0.18.20':
2817
2829
optional: true
2818
2830
2819
-
'@esbuild/linux-arm64@0.25.8':
2831
+
'@esbuild/linux-arm64@0.25.9':
2820
2832
optional: true
2821
2833
2822
2834
'@esbuild/linux-arm@0.18.20':
2823
2835
optional: true
2824
2836
2825
-
'@esbuild/linux-arm@0.25.8':
2837
+
'@esbuild/linux-arm@0.25.9':
2826
2838
optional: true
2827
2839
2828
2840
'@esbuild/linux-ia32@0.18.20':
2829
2841
optional: true
2830
2842
2831
-
'@esbuild/linux-ia32@0.25.8':
2843
+
'@esbuild/linux-ia32@0.25.9':
2832
2844
optional: true
2833
2845
2834
2846
'@esbuild/linux-loong64@0.18.20':
2835
2847
optional: true
2836
2848
2837
-
'@esbuild/linux-loong64@0.25.8':
2849
+
'@esbuild/linux-loong64@0.25.9':
2838
2850
optional: true
2839
2851
2840
2852
'@esbuild/linux-mips64el@0.18.20':
2841
2853
optional: true
2842
2854
2843
-
'@esbuild/linux-mips64el@0.25.8':
2855
+
'@esbuild/linux-mips64el@0.25.9':
2844
2856
optional: true
2845
2857
2846
2858
'@esbuild/linux-ppc64@0.18.20':
2847
2859
optional: true
2848
2860
2849
-
'@esbuild/linux-ppc64@0.25.8':
2861
+
'@esbuild/linux-ppc64@0.25.9':
2850
2862
optional: true
2851
2863
2852
2864
'@esbuild/linux-riscv64@0.18.20':
2853
2865
optional: true
2854
2866
2855
-
'@esbuild/linux-riscv64@0.25.8':
2867
+
'@esbuild/linux-riscv64@0.25.9':
2856
2868
optional: true
2857
2869
2858
2870
'@esbuild/linux-s390x@0.18.20':
2859
2871
optional: true
2860
2872
2861
-
'@esbuild/linux-s390x@0.25.8':
2873
+
'@esbuild/linux-s390x@0.25.9':
2862
2874
optional: true
2863
2875
2864
2876
'@esbuild/linux-x64@0.18.20':
2865
2877
optional: true
2866
2878
2867
-
'@esbuild/linux-x64@0.25.8':
2879
+
'@esbuild/linux-x64@0.25.9':
2868
2880
optional: true
2869
2881
2870
-
'@esbuild/netbsd-arm64@0.25.8':
2882
+
'@esbuild/netbsd-arm64@0.25.9':
2871
2883
optional: true
2872
2884
2873
2885
'@esbuild/netbsd-x64@0.18.20':
2874
2886
optional: true
2875
2887
2876
-
'@esbuild/netbsd-x64@0.25.8':
2888
+
'@esbuild/netbsd-x64@0.25.9':
2877
2889
optional: true
2878
2890
2879
-
'@esbuild/openbsd-arm64@0.25.8':
2891
+
'@esbuild/openbsd-arm64@0.25.9':
2880
2892
optional: true
2881
2893
2882
2894
'@esbuild/openbsd-x64@0.18.20':
2883
2895
optional: true
2884
2896
2885
-
'@esbuild/openbsd-x64@0.25.8':
2897
+
'@esbuild/openbsd-x64@0.25.9':
2886
2898
optional: true
2887
2899
2888
-
'@esbuild/openharmony-arm64@0.25.8':
2900
+
'@esbuild/openharmony-arm64@0.25.9':
2889
2901
optional: true
2890
2902
2891
2903
'@esbuild/sunos-x64@0.18.20':
2892
2904
optional: true
2893
2905
2894
-
'@esbuild/sunos-x64@0.25.8':
2906
+
'@esbuild/sunos-x64@0.25.9':
2895
2907
optional: true
2896
2908
2897
2909
'@esbuild/win32-arm64@0.18.20':
2898
2910
optional: true
2899
2911
2900
-
'@esbuild/win32-arm64@0.25.8':
2912
+
'@esbuild/win32-arm64@0.25.9':
2901
2913
optional: true
2902
2914
2903
2915
'@esbuild/win32-ia32@0.18.20':
2904
2916
optional: true
2905
2917
2906
-
'@esbuild/win32-ia32@0.25.8':
2918
+
'@esbuild/win32-ia32@0.25.9':
2907
2919
optional: true
2908
2920
2909
2921
'@esbuild/win32-x64@0.18.20':
2910
2922
optional: true
2911
2923
2912
-
'@esbuild/win32-x64@0.25.8':
2924
+
'@esbuild/win32-x64@0.25.9':
2913
2925
optional: true
2914
2926
2915
-
'@eslint-community/eslint-utils@4.7.0(eslint@9.31.0(jiti@2.4.2))':
2927
+
'@eslint-community/eslint-utils@4.7.0(eslint@9.33.0(jiti@2.5.1))':
2916
2928
dependencies:
2917
-
eslint: 9.31.0(jiti@2.4.2)
2929
+
eslint: 9.33.0(jiti@2.5.1)
2918
2930
eslint-visitor-keys: 3.4.3
2919
2931
2920
2932
'@eslint-community/regexpp@4.12.1': {}
···
2927
2939
transitivePeerDependencies:
2928
2940
- supports-color
2929
2941
2930
-
'@eslint/config-helpers@0.3.0': {}
2942
+
'@eslint/config-helpers@0.3.1': {}
2931
2943
2932
-
'@eslint/core@0.15.1':
2944
+
'@eslint/core@0.15.2':
2933
2945
dependencies:
2934
2946
'@types/json-schema': 7.0.15
2935
2947
···
2947
2959
transitivePeerDependencies:
2948
2960
- supports-color
2949
2961
2950
-
'@eslint/js@9.31.0': {}
2962
+
'@eslint/js@9.33.0': {}
2951
2963
2952
2964
'@eslint/object-schema@2.1.6': {}
2953
2965
2954
-
'@eslint/plugin-kit@0.3.4':
2966
+
'@eslint/plugin-kit@0.3.5':
2955
2967
dependencies:
2956
-
'@eslint/core': 0.15.1
2968
+
'@eslint/core': 0.15.2
2957
2969
levn: 0.4.1
2958
2970
2959
-
'@externdefs/collider@0.3.0(@badrap/valita@0.4.5)':
2971
+
'@externdefs/collider@0.3.0(@badrap/valita@0.4.6)':
2960
2972
dependencies:
2961
-
'@badrap/valita': 0.4.5
2973
+
'@badrap/valita': 0.4.6
2962
2974
2963
-
'@floating-ui/core@1.7.2':
2975
+
'@floating-ui/core@1.7.3':
2964
2976
dependencies:
2965
2977
'@floating-ui/utils': 0.2.10
2966
2978
2967
-
'@floating-ui/dom@1.7.2':
2979
+
'@floating-ui/dom@1.7.3':
2968
2980
dependencies:
2969
-
'@floating-ui/core': 1.7.2
2981
+
'@floating-ui/core': 1.7.3
2970
2982
'@floating-ui/utils': 0.2.10
2971
2983
2972
2984
'@floating-ui/utils@0.2.10': {}
2973
2985
2974
-
'@floating-ui/vue@1.1.7(vue@3.5.17(typescript@5.8.3))':
2986
+
'@floating-ui/vue@1.1.8(vue@3.5.18(typescript@5.9.2))':
2975
2987
dependencies:
2976
-
'@floating-ui/dom': 1.7.2
2988
+
'@floating-ui/dom': 1.7.3
2977
2989
'@floating-ui/utils': 0.2.10
2978
-
vue-demi: 0.14.10(vue@3.5.17(typescript@5.8.3))
2990
+
vue-demi: 0.14.10(vue@3.5.18(typescript@5.9.2))
2979
2991
transitivePeerDependencies:
2980
2992
- '@vue/composition-api'
2981
2993
- vue
2982
2994
2983
-
'@headlessui/vue@1.7.23(vue@3.5.17(typescript@5.8.3))':
2995
+
'@headlessui/vue@1.7.23(vue@3.5.18(typescript@5.9.2))':
2984
2996
dependencies:
2985
-
'@tanstack/vue-virtual': 3.13.12(vue@3.5.17(typescript@5.8.3))
2986
-
vue: 3.5.17(typescript@5.8.3)
2997
+
'@tanstack/vue-virtual': 3.13.12(vue@3.5.18(typescript@5.9.2))
2998
+
vue: 3.5.18(typescript@5.9.2)
2987
2999
2988
-
'@hono/node-server@1.17.1(hono@4.8.5)':
3000
+
'@hono/node-server@1.19.0(hono@4.9.2)':
2989
3001
dependencies:
2990
-
hono: 4.8.5
3002
+
hono: 4.9.2
2991
3003
2992
3004
'@humanfs/core@0.19.1': {}
2993
3005
···
3030
3042
dependencies:
3031
3043
'@swc/helpers': 0.5.17
3032
3044
3033
-
'@internationalized/number@3.6.3':
3045
+
'@internationalized/number@3.6.4':
3034
3046
dependencies:
3035
3047
'@swc/helpers': 0.5.17
3036
3048
3037
-
'@jridgewell/gen-mapping@0.3.12':
3049
+
'@jridgewell/gen-mapping@0.3.13':
3038
3050
dependencies:
3039
-
'@jridgewell/sourcemap-codec': 1.5.4
3040
-
'@jridgewell/trace-mapping': 0.3.29
3051
+
'@jridgewell/sourcemap-codec': 1.5.5
3052
+
'@jridgewell/trace-mapping': 0.3.30
3041
3053
3042
3054
'@jridgewell/resolve-uri@3.1.2': {}
3043
3055
3044
-
'@jridgewell/source-map@0.3.10':
3056
+
'@jridgewell/source-map@0.3.11':
3045
3057
dependencies:
3046
-
'@jridgewell/gen-mapping': 0.3.12
3047
-
'@jridgewell/trace-mapping': 0.3.29
3058
+
'@jridgewell/gen-mapping': 0.3.13
3059
+
'@jridgewell/trace-mapping': 0.3.30
3048
3060
3049
-
'@jridgewell/sourcemap-codec@1.5.4': {}
3061
+
'@jridgewell/sourcemap-codec@1.5.5': {}
3050
3062
3051
-
'@jridgewell/trace-mapping@0.3.29':
3063
+
'@jridgewell/trace-mapping@0.3.30':
3052
3064
dependencies:
3053
3065
'@jridgewell/resolve-uri': 3.1.2
3054
-
'@jridgewell/sourcemap-codec': 1.5.4
3066
+
'@jridgewell/sourcemap-codec': 1.5.5
3055
3067
3056
-
'@libsql/client@0.15.10':
3068
+
'@libsql/client@0.15.12':
3057
3069
dependencies:
3058
-
'@libsql/core': 0.15.10
3070
+
'@libsql/core': 0.15.12
3059
3071
'@libsql/hrana-client': 0.7.0
3060
-
js-base64: 3.7.7
3061
-
libsql: 0.5.15
3072
+
js-base64: 3.7.8
3073
+
libsql: 0.5.17
3062
3074
promise-limit: 2.7.0
3063
3075
transitivePeerDependencies:
3064
3076
- bufferutil
3065
3077
- utf-8-validate
3066
3078
3067
-
'@libsql/core@0.15.10':
3079
+
'@libsql/core@0.15.12':
3068
3080
dependencies:
3069
-
js-base64: 3.7.7
3081
+
js-base64: 3.7.8
3070
3082
3071
-
'@libsql/darwin-arm64@0.5.15':
3083
+
'@libsql/darwin-arm64@0.5.17':
3072
3084
optional: true
3073
3085
3074
-
'@libsql/darwin-x64@0.5.15':
3086
+
'@libsql/darwin-x64@0.5.17':
3075
3087
optional: true
3076
3088
3077
3089
'@libsql/hrana-client@0.7.0':
3078
3090
dependencies:
3079
3091
'@libsql/isomorphic-fetch': 0.3.1
3080
3092
'@libsql/isomorphic-ws': 0.1.5
3081
-
js-base64: 3.7.7
3093
+
js-base64: 3.7.8
3082
3094
node-fetch: 3.3.2
3083
3095
transitivePeerDependencies:
3084
3096
- bufferutil
···
3094
3106
- bufferutil
3095
3107
- utf-8-validate
3096
3108
3097
-
'@libsql/linux-arm-gnueabihf@0.5.15':
3109
+
'@libsql/linux-arm-gnueabihf@0.5.17':
3098
3110
optional: true
3099
3111
3100
-
'@libsql/linux-arm-musleabihf@0.5.15':
3112
+
'@libsql/linux-arm-musleabihf@0.5.17':
3101
3113
optional: true
3102
3114
3103
-
'@libsql/linux-arm64-gnu@0.5.15':
3115
+
'@libsql/linux-arm64-gnu@0.5.17':
3104
3116
optional: true
3105
3117
3106
-
'@libsql/linux-arm64-musl@0.5.15':
3118
+
'@libsql/linux-arm64-musl@0.5.17':
3107
3119
optional: true
3108
3120
3109
-
'@libsql/linux-x64-gnu@0.5.15':
3121
+
'@libsql/linux-x64-gnu@0.5.17':
3110
3122
optional: true
3111
3123
3112
-
'@libsql/linux-x64-musl@0.5.15':
3124
+
'@libsql/linux-x64-musl@0.5.17':
3113
3125
optional: true
3114
3126
3115
-
'@libsql/win32-x64-msvc@0.5.15':
3127
+
'@libsql/win32-x64-msvc@0.5.17':
3116
3128
optional: true
3117
3129
3118
3130
'@neon-rs/load@0.0.4': {}
···
3135
3147
3136
3148
'@rtsao/scc@1.1.0': {}
3137
3149
3138
-
'@scalar/code-highlight@0.1.8':
3150
+
'@scalar/code-highlight@0.1.9':
3139
3151
dependencies:
3140
3152
hast-util-to-text: 4.0.2
3141
3153
highlight.js: 11.11.1
···
3157
3169
transitivePeerDependencies:
3158
3170
- supports-color
3159
3171
3160
-
'@scalar/components@0.14.20(typescript@5.8.3)':
3172
+
'@scalar/components@0.14.23(typescript@5.9.2)':
3161
3173
dependencies:
3162
3174
'@floating-ui/utils': 0.2.10
3163
-
'@floating-ui/vue': 1.1.7(vue@3.5.17(typescript@5.8.3))
3164
-
'@headlessui/vue': 1.7.23(vue@3.5.17(typescript@5.8.3))
3165
-
'@scalar/code-highlight': 0.1.8
3166
-
'@scalar/icons': 0.4.6(typescript@5.8.3)
3167
-
'@scalar/oas-utils': 0.4.15(typescript@5.8.3)
3168
-
'@scalar/themes': 0.13.11
3169
-
'@scalar/use-hooks': 0.2.4(typescript@5.8.3)
3170
-
'@scalar/use-toasts': 0.8.0(typescript@5.8.3)
3171
-
'@vueuse/core': 10.11.1(vue@3.5.17(typescript@5.8.3))
3172
-
cva: 1.0.0-beta.2(typescript@5.8.3)
3175
+
'@floating-ui/vue': 1.1.8(vue@3.5.18(typescript@5.9.2))
3176
+
'@headlessui/vue': 1.7.23(vue@3.5.18(typescript@5.9.2))
3177
+
'@scalar/code-highlight': 0.1.9
3178
+
'@scalar/icons': 0.4.6(typescript@5.9.2)
3179
+
'@scalar/oas-utils': 0.4.18(typescript@5.9.2)
3180
+
'@scalar/themes': 0.13.12
3181
+
'@scalar/use-hooks': 0.2.4(typescript@5.9.2)
3182
+
'@scalar/use-toasts': 0.8.0(typescript@5.9.2)
3183
+
'@vueuse/core': 11.3.0(vue@3.5.18(typescript@5.9.2))
3184
+
cva: 1.0.0-beta.2(typescript@5.9.2)
3173
3185
nanoid: 5.1.5
3174
3186
pretty-bytes: 6.1.1
3175
-
radix-vue: 1.9.17(vue@3.5.17(typescript@5.8.3))
3176
-
vue: 3.5.17(typescript@5.8.3)
3187
+
radix-vue: 1.9.17(vue@3.5.18(typescript@5.9.2))
3188
+
vue: 3.5.18(typescript@5.9.2)
3189
+
vue-component-type-helpers: 3.0.5
3177
3190
transitivePeerDependencies:
3178
3191
- '@vue/composition-api'
3179
3192
- supports-color
3180
3193
- typescript
3181
3194
3182
-
'@scalar/core@0.3.10':
3195
+
'@scalar/core@0.3.11':
3183
3196
dependencies:
3184
-
'@scalar/types': 0.2.10
3197
+
'@scalar/types': 0.2.11
3185
3198
3186
-
'@scalar/helpers@0.0.6': {}
3199
+
'@scalar/helpers@0.0.7': {}
3187
3200
3188
-
'@scalar/hono-api-reference@0.9.12(hono@4.8.5)':
3201
+
'@scalar/hono-api-reference@0.9.13(hono@4.9.2)':
3189
3202
dependencies:
3190
-
'@scalar/core': 0.3.10
3191
-
hono: 4.8.5
3203
+
'@scalar/core': 0.3.11
3204
+
hono: 4.9.2
3192
3205
3193
-
'@scalar/icons@0.4.6(typescript@5.8.3)':
3206
+
'@scalar/icons@0.4.6(typescript@5.9.2)':
3194
3207
dependencies:
3195
3208
'@phosphor-icons/core': 2.1.1
3196
-
'@types/node': 22.16.5
3197
-
chalk: 5.4.1
3198
-
vue: 3.5.17(typescript@5.8.3)
3209
+
'@types/node': 22.17.2
3210
+
chalk: 5.6.0
3211
+
vue: 3.5.18(typescript@5.9.2)
3199
3212
transitivePeerDependencies:
3200
3213
- typescript
3201
3214
3202
-
'@scalar/json-diff@0.0.4': {}
3215
+
'@scalar/json-magic@0.1.0(typescript@5.9.2)':
3216
+
dependencies:
3217
+
vue: 3.5.18(typescript@5.9.2)
3218
+
yaml: 2.8.0
3219
+
transitivePeerDependencies:
3220
+
- typescript
3203
3221
3204
-
'@scalar/oas-utils@0.4.15(typescript@5.8.3)':
3222
+
'@scalar/oas-utils@0.4.18(typescript@5.9.2)':
3205
3223
dependencies:
3206
3224
'@hyperjump/browser': 1.3.1
3207
3225
'@hyperjump/json-schema': 1.16.2(@hyperjump/browser@1.3.1)
3208
-
'@scalar/helpers': 0.0.6
3209
-
'@scalar/object-utils': 1.2.2
3210
-
'@scalar/openapi-types': 0.3.6
3211
-
'@scalar/themes': 0.13.11
3212
-
'@scalar/types': 0.2.10
3213
-
'@scalar/workspace-store': 0.10.2(typescript@5.8.3)
3226
+
'@scalar/helpers': 0.0.7
3227
+
'@scalar/object-utils': 1.2.3
3228
+
'@scalar/openapi-types': 0.3.7
3229
+
'@scalar/themes': 0.13.12
3230
+
'@scalar/types': 0.2.11
3231
+
'@scalar/workspace-store': 0.12.0(typescript@5.9.2)
3214
3232
'@types/har-format': 1.2.16
3215
3233
flatted: 3.3.3
3216
3234
microdiff: 1.5.0
···
3222
3240
- supports-color
3223
3241
- typescript
3224
3242
3225
-
'@scalar/object-utils@1.2.2':
3243
+
'@scalar/object-utils@1.2.3':
3226
3244
dependencies:
3245
+
'@scalar/helpers': 0.0.7
3227
3246
flatted: 3.3.3
3228
3247
just-clone: 6.2.0
3229
3248
ts-deepmerge: 7.0.3
3230
3249
type-fest: 4.41.0
3231
3250
3232
-
'@scalar/openapi-parser@0.18.2':
3251
+
'@scalar/openapi-parser@0.19.0':
3233
3252
dependencies:
3253
+
'@scalar/openapi-types': 0.3.7
3234
3254
ajv: 8.17.1
3235
3255
ajv-draft-04: 1.0.0(ajv@8.17.1)
3236
3256
ajv-formats: 3.0.1(ajv@8.17.1)
···
3238
3258
leven: 4.0.0
3239
3259
yaml: 2.8.0
3240
3260
3241
-
'@scalar/openapi-to-markdown@0.2.23(typescript@5.8.3)':
3261
+
'@scalar/openapi-to-markdown@0.2.26(typescript@5.9.2)':
3242
3262
dependencies:
3243
-
'@scalar/components': 0.14.20(typescript@5.8.3)
3244
-
'@scalar/oas-utils': 0.4.15(typescript@5.8.3)
3245
-
'@scalar/openapi-parser': 0.18.2
3246
-
'@scalar/openapi-types': 0.3.6
3247
-
'@scalar/snippetz': 0.4.3
3248
-
'@scalar/types': 0.2.10
3263
+
'@scalar/components': 0.14.23(typescript@5.9.2)
3264
+
'@scalar/oas-utils': 0.4.18(typescript@5.9.2)
3265
+
'@scalar/openapi-parser': 0.19.0
3266
+
'@scalar/openapi-types': 0.3.7
3267
+
'@scalar/snippetz': 0.4.4
3268
+
'@scalar/types': 0.2.11
3249
3269
html-minifier-terser: 7.2.0
3250
3270
object-to-xml: 2.0.0
3251
3271
rehype-parse: 9.0.1
···
3255
3275
remark-gfm: 4.0.1
3256
3276
remark-stringify: 11.0.0
3257
3277
unified: 11.0.5
3258
-
vue: 3.5.17(typescript@5.8.3)
3278
+
vue: 3.5.18(typescript@5.9.2)
3259
3279
transitivePeerDependencies:
3260
3280
- '@vue/composition-api'
3261
3281
- supports-color
3262
3282
- typescript
3263
3283
3264
-
'@scalar/openapi-types@0.3.6':
3284
+
'@scalar/openapi-types@0.3.7':
3265
3285
dependencies:
3266
3286
zod: 3.24.1
3267
3287
3268
-
'@scalar/snippetz@0.4.3':
3288
+
'@scalar/snippetz@0.4.4':
3269
3289
dependencies:
3270
-
'@scalar/types': 0.2.10
3290
+
'@scalar/types': 0.2.11
3271
3291
stringify-object: 5.0.0
3272
3292
3273
-
'@scalar/themes@0.13.11':
3293
+
'@scalar/themes@0.13.12':
3274
3294
dependencies:
3275
-
'@scalar/types': 0.2.10
3295
+
'@scalar/types': 0.2.11
3276
3296
nanoid: 5.1.5
3277
3297
3278
-
'@scalar/types@0.2.10':
3298
+
'@scalar/types@0.2.11':
3279
3299
dependencies:
3280
-
'@scalar/openapi-types': 0.3.6
3300
+
'@scalar/openapi-types': 0.3.7
3281
3301
nanoid: 5.1.5
3282
3302
zod: 3.24.1
3283
3303
3284
-
'@scalar/use-hooks@0.2.4(typescript@5.8.3)':
3304
+
'@scalar/use-hooks@0.2.4(typescript@5.9.2)':
3285
3305
dependencies:
3286
-
'@scalar/use-toasts': 0.8.0(typescript@5.8.3)
3287
-
'@vueuse/core': 10.11.1(vue@3.5.17(typescript@5.8.3))
3288
-
cva: 1.0.0-beta.2(typescript@5.8.3)
3306
+
'@scalar/use-toasts': 0.8.0(typescript@5.9.2)
3307
+
'@vueuse/core': 10.11.1(vue@3.5.18(typescript@5.9.2))
3308
+
cva: 1.0.0-beta.2(typescript@5.9.2)
3289
3309
tailwind-merge: 2.6.0
3290
-
vue: 3.5.17(typescript@5.8.3)
3310
+
vue: 3.5.18(typescript@5.9.2)
3291
3311
zod: 3.24.1
3292
3312
transitivePeerDependencies:
3293
3313
- '@vue/composition-api'
3294
3314
- typescript
3295
3315
3296
-
'@scalar/use-toasts@0.8.0(typescript@5.8.3)':
3316
+
'@scalar/use-toasts@0.8.0(typescript@5.9.2)':
3297
3317
dependencies:
3298
3318
nanoid: 5.1.5
3299
-
vue: 3.5.17(typescript@5.8.3)
3319
+
vue: 3.5.18(typescript@5.9.2)
3300
3320
vue-sonner: 1.3.2
3301
3321
transitivePeerDependencies:
3302
3322
- typescript
3303
3323
3304
-
'@scalar/workspace-store@0.10.2(typescript@5.8.3)':
3324
+
'@scalar/workspace-store@0.12.0(typescript@5.9.2)':
3305
3325
dependencies:
3306
-
'@scalar/code-highlight': 0.1.8
3307
-
'@scalar/helpers': 0.0.6
3308
-
'@scalar/json-diff': 0.0.4
3309
-
'@scalar/openapi-parser': 0.18.2
3310
-
'@scalar/openapi-types': 0.3.6
3311
-
'@scalar/types': 0.2.10
3326
+
'@scalar/code-highlight': 0.1.9
3327
+
'@scalar/helpers': 0.0.7
3328
+
'@scalar/json-magic': 0.1.0(typescript@5.9.2)
3329
+
'@scalar/openapi-parser': 0.19.0
3330
+
'@scalar/types': 0.2.11
3312
3331
'@sinclair/typebox': 0.34.37
3313
3332
github-slugger: 2.0.0
3314
-
vue: 3.5.17(typescript@5.8.3)
3333
+
vue: 3.5.18(typescript@5.9.2)
3315
3334
yaml: 2.8.0
3316
3335
transitivePeerDependencies:
3317
3336
- supports-color
···
3322
3341
'@skyware/jetstream@0.2.5':
3323
3342
dependencies:
3324
3343
'@atcute/atproto': 3.1.1
3325
-
'@atcute/bluesky': 3.1.5
3344
+
'@atcute/bluesky': 3.2.0
3326
3345
'@atcute/lexicons': 1.1.0
3327
-
partysocket: 1.1.4
3346
+
partysocket: 1.1.5
3328
3347
tiny-emitter: 2.1.0
3329
3348
3330
3349
'@swc/helpers@0.5.17':
···
3333
3352
3334
3353
'@tanstack/virtual-core@3.13.12': {}
3335
3354
3336
-
'@tanstack/vue-virtual@3.13.12(vue@3.5.17(typescript@5.8.3))':
3355
+
'@tanstack/vue-virtual@3.13.12(vue@3.5.18(typescript@5.9.2))':
3337
3356
dependencies:
3338
3357
'@tanstack/virtual-core': 3.13.12
3339
-
vue: 3.5.17(typescript@5.8.3)
3358
+
vue: 3.5.18(typescript@5.9.2)
3340
3359
3341
3360
'@types/debug@4.1.12':
3342
3361
dependencies:
···
3360
3379
3361
3380
'@types/ms@2.1.0': {}
3362
3381
3363
-
'@types/node@22.16.5':
3382
+
'@types/node@22.17.2':
3364
3383
dependencies:
3365
3384
undici-types: 6.21.0
3366
3385
3367
-
'@types/node@24.0.15':
3386
+
'@types/node@24.3.0':
3368
3387
dependencies:
3369
-
undici-types: 7.8.0
3388
+
undici-types: 7.10.0
3370
3389
3371
3390
'@types/triple-beam@1.3.5': {}
3372
3391
···
3376
3395
3377
3396
'@types/ws@8.18.1':
3378
3397
dependencies:
3379
-
'@types/node': 24.0.15
3398
+
'@types/node': 24.3.0
3380
3399
3381
-
'@typescript-eslint/eslint-plugin@8.38.0(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
3400
+
'@typescript-eslint/eslint-plugin@8.40.0(@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)':
3382
3401
dependencies:
3383
3402
'@eslint-community/regexpp': 4.12.1
3384
-
'@typescript-eslint/parser': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
3385
-
'@typescript-eslint/scope-manager': 8.38.0
3386
-
'@typescript-eslint/type-utils': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
3387
-
'@typescript-eslint/utils': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
3388
-
'@typescript-eslint/visitor-keys': 8.38.0
3389
-
eslint: 9.31.0(jiti@2.4.2)
3403
+
'@typescript-eslint/parser': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
3404
+
'@typescript-eslint/scope-manager': 8.40.0
3405
+
'@typescript-eslint/type-utils': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
3406
+
'@typescript-eslint/utils': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
3407
+
'@typescript-eslint/visitor-keys': 8.40.0
3408
+
eslint: 9.33.0(jiti@2.5.1)
3390
3409
graphemer: 1.4.0
3391
3410
ignore: 7.0.5
3392
3411
natural-compare: 1.4.0
3393
-
ts-api-utils: 2.1.0(typescript@5.8.3)
3394
-
typescript: 5.8.3
3412
+
ts-api-utils: 2.1.0(typescript@5.9.2)
3413
+
typescript: 5.9.2
3395
3414
transitivePeerDependencies:
3396
3415
- supports-color
3397
3416
3398
-
'@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
3417
+
'@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)':
3399
3418
dependencies:
3400
-
'@typescript-eslint/scope-manager': 8.38.0
3401
-
'@typescript-eslint/types': 8.38.0
3402
-
'@typescript-eslint/typescript-estree': 8.38.0(typescript@5.8.3)
3403
-
'@typescript-eslint/visitor-keys': 8.38.0
3419
+
'@typescript-eslint/scope-manager': 8.40.0
3420
+
'@typescript-eslint/types': 8.40.0
3421
+
'@typescript-eslint/typescript-estree': 8.40.0(typescript@5.9.2)
3422
+
'@typescript-eslint/visitor-keys': 8.40.0
3404
3423
debug: 4.4.1
3405
-
eslint: 9.31.0(jiti@2.4.2)
3406
-
typescript: 5.8.3
3424
+
eslint: 9.33.0(jiti@2.5.1)
3425
+
typescript: 5.9.2
3407
3426
transitivePeerDependencies:
3408
3427
- supports-color
3409
3428
3410
-
'@typescript-eslint/project-service@8.38.0(typescript@5.8.3)':
3429
+
'@typescript-eslint/project-service@8.40.0(typescript@5.9.2)':
3411
3430
dependencies:
3412
-
'@typescript-eslint/tsconfig-utils': 8.38.0(typescript@5.8.3)
3413
-
'@typescript-eslint/types': 8.38.0
3431
+
'@typescript-eslint/tsconfig-utils': 8.40.0(typescript@5.9.2)
3432
+
'@typescript-eslint/types': 8.40.0
3414
3433
debug: 4.4.1
3415
-
typescript: 5.8.3
3434
+
typescript: 5.9.2
3416
3435
transitivePeerDependencies:
3417
3436
- supports-color
3418
3437
3419
-
'@typescript-eslint/scope-manager@8.38.0':
3438
+
'@typescript-eslint/scope-manager@8.40.0':
3420
3439
dependencies:
3421
-
'@typescript-eslint/types': 8.38.0
3422
-
'@typescript-eslint/visitor-keys': 8.38.0
3440
+
'@typescript-eslint/types': 8.40.0
3441
+
'@typescript-eslint/visitor-keys': 8.40.0
3423
3442
3424
-
'@typescript-eslint/tsconfig-utils@8.38.0(typescript@5.8.3)':
3443
+
'@typescript-eslint/tsconfig-utils@8.40.0(typescript@5.9.2)':
3425
3444
dependencies:
3426
-
typescript: 5.8.3
3445
+
typescript: 5.9.2
3427
3446
3428
-
'@typescript-eslint/type-utils@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
3447
+
'@typescript-eslint/type-utils@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)':
3429
3448
dependencies:
3430
-
'@typescript-eslint/types': 8.38.0
3431
-
'@typescript-eslint/typescript-estree': 8.38.0(typescript@5.8.3)
3432
-
'@typescript-eslint/utils': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
3449
+
'@typescript-eslint/types': 8.40.0
3450
+
'@typescript-eslint/typescript-estree': 8.40.0(typescript@5.9.2)
3451
+
'@typescript-eslint/utils': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
3433
3452
debug: 4.4.1
3434
-
eslint: 9.31.0(jiti@2.4.2)
3435
-
ts-api-utils: 2.1.0(typescript@5.8.3)
3436
-
typescript: 5.8.3
3453
+
eslint: 9.33.0(jiti@2.5.1)
3454
+
ts-api-utils: 2.1.0(typescript@5.9.2)
3455
+
typescript: 5.9.2
3437
3456
transitivePeerDependencies:
3438
3457
- supports-color
3439
3458
3440
-
'@typescript-eslint/types@8.38.0': {}
3459
+
'@typescript-eslint/types@8.40.0': {}
3441
3460
3442
-
'@typescript-eslint/typescript-estree@8.38.0(typescript@5.8.3)':
3461
+
'@typescript-eslint/typescript-estree@8.40.0(typescript@5.9.2)':
3443
3462
dependencies:
3444
-
'@typescript-eslint/project-service': 8.38.0(typescript@5.8.3)
3445
-
'@typescript-eslint/tsconfig-utils': 8.38.0(typescript@5.8.3)
3446
-
'@typescript-eslint/types': 8.38.0
3447
-
'@typescript-eslint/visitor-keys': 8.38.0
3463
+
'@typescript-eslint/project-service': 8.40.0(typescript@5.9.2)
3464
+
'@typescript-eslint/tsconfig-utils': 8.40.0(typescript@5.9.2)
3465
+
'@typescript-eslint/types': 8.40.0
3466
+
'@typescript-eslint/visitor-keys': 8.40.0
3448
3467
debug: 4.4.1
3449
3468
fast-glob: 3.3.3
3450
3469
is-glob: 4.0.3
3451
3470
minimatch: 9.0.5
3452
3471
semver: 7.7.2
3453
-
ts-api-utils: 2.1.0(typescript@5.8.3)
3454
-
typescript: 5.8.3
3472
+
ts-api-utils: 2.1.0(typescript@5.9.2)
3473
+
typescript: 5.9.2
3455
3474
transitivePeerDependencies:
3456
3475
- supports-color
3457
3476
3458
-
'@typescript-eslint/utils@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)':
3477
+
'@typescript-eslint/utils@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)':
3459
3478
dependencies:
3460
-
'@eslint-community/eslint-utils': 4.7.0(eslint@9.31.0(jiti@2.4.2))
3461
-
'@typescript-eslint/scope-manager': 8.38.0
3462
-
'@typescript-eslint/types': 8.38.0
3463
-
'@typescript-eslint/typescript-estree': 8.38.0(typescript@5.8.3)
3464
-
eslint: 9.31.0(jiti@2.4.2)
3465
-
typescript: 5.8.3
3479
+
'@eslint-community/eslint-utils': 4.7.0(eslint@9.33.0(jiti@2.5.1))
3480
+
'@typescript-eslint/scope-manager': 8.40.0
3481
+
'@typescript-eslint/types': 8.40.0
3482
+
'@typescript-eslint/typescript-estree': 8.40.0(typescript@5.9.2)
3483
+
eslint: 9.33.0(jiti@2.5.1)
3484
+
typescript: 5.9.2
3466
3485
transitivePeerDependencies:
3467
3486
- supports-color
3468
3487
3469
-
'@typescript-eslint/visitor-keys@8.38.0':
3488
+
'@typescript-eslint/visitor-keys@8.40.0':
3470
3489
dependencies:
3471
-
'@typescript-eslint/types': 8.38.0
3490
+
'@typescript-eslint/types': 8.40.0
3472
3491
eslint-visitor-keys: 4.2.1
3473
3492
3474
3493
'@ungap/structured-clone@1.3.0': {}
3475
3494
3476
-
'@vue/compiler-core@3.5.17':
3495
+
'@vue/compiler-core@3.5.18':
3477
3496
dependencies:
3478
-
'@babel/parser': 7.28.0
3479
-
'@vue/shared': 3.5.17
3497
+
'@babel/parser': 7.28.3
3498
+
'@vue/shared': 3.5.18
3480
3499
entities: 4.5.0
3481
3500
estree-walker: 2.0.2
3482
3501
source-map-js: 1.2.1
3483
3502
3484
-
'@vue/compiler-dom@3.5.17':
3503
+
'@vue/compiler-dom@3.5.18':
3485
3504
dependencies:
3486
-
'@vue/compiler-core': 3.5.17
3487
-
'@vue/shared': 3.5.17
3505
+
'@vue/compiler-core': 3.5.18
3506
+
'@vue/shared': 3.5.18
3488
3507
3489
-
'@vue/compiler-sfc@3.5.17':
3508
+
'@vue/compiler-sfc@3.5.18':
3490
3509
dependencies:
3491
-
'@babel/parser': 7.28.0
3492
-
'@vue/compiler-core': 3.5.17
3493
-
'@vue/compiler-dom': 3.5.17
3494
-
'@vue/compiler-ssr': 3.5.17
3495
-
'@vue/shared': 3.5.17
3510
+
'@babel/parser': 7.28.3
3511
+
'@vue/compiler-core': 3.5.18
3512
+
'@vue/compiler-dom': 3.5.18
3513
+
'@vue/compiler-ssr': 3.5.18
3514
+
'@vue/shared': 3.5.18
3496
3515
estree-walker: 2.0.2
3497
3516
magic-string: 0.30.17
3498
3517
postcss: 8.5.6
3499
3518
source-map-js: 1.2.1
3500
3519
3501
-
'@vue/compiler-ssr@3.5.17':
3520
+
'@vue/compiler-ssr@3.5.18':
3502
3521
dependencies:
3503
-
'@vue/compiler-dom': 3.5.17
3504
-
'@vue/shared': 3.5.17
3522
+
'@vue/compiler-dom': 3.5.18
3523
+
'@vue/shared': 3.5.18
3505
3524
3506
-
'@vue/reactivity@3.5.17':
3525
+
'@vue/reactivity@3.5.18':
3507
3526
dependencies:
3508
-
'@vue/shared': 3.5.17
3527
+
'@vue/shared': 3.5.18
3509
3528
3510
-
'@vue/runtime-core@3.5.17':
3529
+
'@vue/runtime-core@3.5.18':
3511
3530
dependencies:
3512
-
'@vue/reactivity': 3.5.17
3513
-
'@vue/shared': 3.5.17
3531
+
'@vue/reactivity': 3.5.18
3532
+
'@vue/shared': 3.5.18
3514
3533
3515
-
'@vue/runtime-dom@3.5.17':
3534
+
'@vue/runtime-dom@3.5.18':
3516
3535
dependencies:
3517
-
'@vue/reactivity': 3.5.17
3518
-
'@vue/runtime-core': 3.5.17
3519
-
'@vue/shared': 3.5.17
3536
+
'@vue/reactivity': 3.5.18
3537
+
'@vue/runtime-core': 3.5.18
3538
+
'@vue/shared': 3.5.18
3520
3539
csstype: 3.1.3
3521
3540
3522
-
'@vue/server-renderer@3.5.17(vue@3.5.17(typescript@5.8.3))':
3541
+
'@vue/server-renderer@3.5.18(vue@3.5.18(typescript@5.9.2))':
3523
3542
dependencies:
3524
-
'@vue/compiler-ssr': 3.5.17
3525
-
'@vue/shared': 3.5.17
3526
-
vue: 3.5.17(typescript@5.8.3)
3543
+
'@vue/compiler-ssr': 3.5.18
3544
+
'@vue/shared': 3.5.18
3545
+
vue: 3.5.18(typescript@5.9.2)
3527
3546
3528
-
'@vue/shared@3.5.17': {}
3547
+
'@vue/shared@3.5.18': {}
3529
3548
3530
-
'@vueuse/core@10.11.1(vue@3.5.17(typescript@5.8.3))':
3549
+
'@vueuse/core@10.11.1(vue@3.5.18(typescript@5.9.2))':
3531
3550
dependencies:
3532
3551
'@types/web-bluetooth': 0.0.20
3533
3552
'@vueuse/metadata': 10.11.1
3534
-
'@vueuse/shared': 10.11.1(vue@3.5.17(typescript@5.8.3))
3535
-
vue-demi: 0.14.10(vue@3.5.17(typescript@5.8.3))
3553
+
'@vueuse/shared': 10.11.1(vue@3.5.18(typescript@5.9.2))
3554
+
vue-demi: 0.14.10(vue@3.5.18(typescript@5.9.2))
3555
+
transitivePeerDependencies:
3556
+
- '@vue/composition-api'
3557
+
- vue
3558
+
3559
+
'@vueuse/core@11.3.0(vue@3.5.18(typescript@5.9.2))':
3560
+
dependencies:
3561
+
'@types/web-bluetooth': 0.0.20
3562
+
'@vueuse/metadata': 11.3.0
3563
+
'@vueuse/shared': 11.3.0(vue@3.5.18(typescript@5.9.2))
3564
+
vue-demi: 0.14.10(vue@3.5.18(typescript@5.9.2))
3536
3565
transitivePeerDependencies:
3537
3566
- '@vue/composition-api'
3538
3567
- vue
3539
3568
3540
3569
'@vueuse/metadata@10.11.1': {}
3541
3570
3542
-
'@vueuse/shared@10.11.1(vue@3.5.17(typescript@5.8.3))':
3571
+
'@vueuse/metadata@11.3.0': {}
3572
+
3573
+
'@vueuse/shared@10.11.1(vue@3.5.18(typescript@5.9.2))':
3543
3574
dependencies:
3544
-
vue-demi: 0.14.10(vue@3.5.17(typescript@5.8.3))
3575
+
vue-demi: 0.14.10(vue@3.5.18(typescript@5.9.2))
3576
+
transitivePeerDependencies:
3577
+
- '@vue/composition-api'
3578
+
- vue
3579
+
3580
+
'@vueuse/shared@11.3.0(vue@3.5.18(typescript@5.9.2))':
3581
+
dependencies:
3582
+
vue-demi: 0.14.10(vue@3.5.18(typescript@5.9.2))
3545
3583
transitivePeerDependencies:
3546
3584
- '@vue/composition-api'
3547
3585
- vue
···
3663
3701
3664
3702
bun-types@1.2.17:
3665
3703
dependencies:
3666
-
'@types/node': 24.0.15
3704
+
'@types/node': 24.3.0
3667
3705
optional: true
3668
3706
3669
3707
call-bind-apply-helpers@1.0.2:
···
3697
3735
ansi-styles: 4.3.0
3698
3736
supports-color: 7.2.0
3699
3737
3700
-
chalk@5.4.1: {}
3738
+
chalk@5.6.0: {}
3701
3739
3702
3740
character-entities-html4@2.1.0: {}
3703
3741
···
3756
3794
3757
3795
csstype@3.1.3: {}
3758
3796
3759
-
cva@1.0.0-beta.2(typescript@5.8.3):
3797
+
cva@1.0.0-beta.2(typescript@5.9.2):
3760
3798
dependencies:
3761
3799
clsx: 2.1.1
3762
3800
optionalDependencies:
3763
-
typescript: 5.8.3
3801
+
typescript: 5.9.2
3764
3802
3765
3803
dank-each@1.0.0: {}
3766
3804
···
3835
3873
dependencies:
3836
3874
'@drizzle-team/brocli': 0.10.2
3837
3875
'@esbuild-kit/esm-loader': 2.6.5
3838
-
esbuild: 0.25.8
3839
-
esbuild-register: 3.6.0(esbuild@0.25.8)
3876
+
esbuild: 0.25.9
3877
+
esbuild-register: 3.6.0(esbuild@0.25.9)
3840
3878
transitivePeerDependencies:
3841
3879
- supports-color
3842
3880
3843
-
drizzle-orm@0.44.3(@libsql/client@0.15.10)(bun-types@1.2.17):
3881
+
drizzle-orm@0.44.4(@libsql/client@0.15.12)(bun-types@1.2.17):
3844
3882
optionalDependencies:
3845
-
'@libsql/client': 0.15.10
3883
+
'@libsql/client': 0.15.12
3846
3884
bun-types: 1.2.17
3847
3885
3848
3886
dunder-proto@1.0.1:
···
3939
3977
is-date-object: 1.1.0
3940
3978
is-symbol: 1.1.1
3941
3979
3942
-
esbuild-register@3.6.0(esbuild@0.25.8):
3980
+
esbuild-register@3.6.0(esbuild@0.25.9):
3943
3981
dependencies:
3944
3982
debug: 4.4.1
3945
-
esbuild: 0.25.8
3983
+
esbuild: 0.25.9
3946
3984
transitivePeerDependencies:
3947
3985
- supports-color
3948
3986
···
3971
4009
'@esbuild/win32-ia32': 0.18.20
3972
4010
'@esbuild/win32-x64': 0.18.20
3973
4011
3974
-
esbuild@0.25.8:
4012
+
esbuild@0.25.9:
3975
4013
optionalDependencies:
3976
-
'@esbuild/aix-ppc64': 0.25.8
3977
-
'@esbuild/android-arm': 0.25.8
3978
-
'@esbuild/android-arm64': 0.25.8
3979
-
'@esbuild/android-x64': 0.25.8
3980
-
'@esbuild/darwin-arm64': 0.25.8
3981
-
'@esbuild/darwin-x64': 0.25.8
3982
-
'@esbuild/freebsd-arm64': 0.25.8
3983
-
'@esbuild/freebsd-x64': 0.25.8
3984
-
'@esbuild/linux-arm': 0.25.8
3985
-
'@esbuild/linux-arm64': 0.25.8
3986
-
'@esbuild/linux-ia32': 0.25.8
3987
-
'@esbuild/linux-loong64': 0.25.8
3988
-
'@esbuild/linux-mips64el': 0.25.8
3989
-
'@esbuild/linux-ppc64': 0.25.8
3990
-
'@esbuild/linux-riscv64': 0.25.8
3991
-
'@esbuild/linux-s390x': 0.25.8
3992
-
'@esbuild/linux-x64': 0.25.8
3993
-
'@esbuild/netbsd-arm64': 0.25.8
3994
-
'@esbuild/netbsd-x64': 0.25.8
3995
-
'@esbuild/openbsd-arm64': 0.25.8
3996
-
'@esbuild/openbsd-x64': 0.25.8
3997
-
'@esbuild/openharmony-arm64': 0.25.8
3998
-
'@esbuild/sunos-x64': 0.25.8
3999
-
'@esbuild/win32-arm64': 0.25.8
4000
-
'@esbuild/win32-ia32': 0.25.8
4001
-
'@esbuild/win32-x64': 0.25.8
4014
+
'@esbuild/aix-ppc64': 0.25.9
4015
+
'@esbuild/android-arm': 0.25.9
4016
+
'@esbuild/android-arm64': 0.25.9
4017
+
'@esbuild/android-x64': 0.25.9
4018
+
'@esbuild/darwin-arm64': 0.25.9
4019
+
'@esbuild/darwin-x64': 0.25.9
4020
+
'@esbuild/freebsd-arm64': 0.25.9
4021
+
'@esbuild/freebsd-x64': 0.25.9
4022
+
'@esbuild/linux-arm': 0.25.9
4023
+
'@esbuild/linux-arm64': 0.25.9
4024
+
'@esbuild/linux-ia32': 0.25.9
4025
+
'@esbuild/linux-loong64': 0.25.9
4026
+
'@esbuild/linux-mips64el': 0.25.9
4027
+
'@esbuild/linux-ppc64': 0.25.9
4028
+
'@esbuild/linux-riscv64': 0.25.9
4029
+
'@esbuild/linux-s390x': 0.25.9
4030
+
'@esbuild/linux-x64': 0.25.9
4031
+
'@esbuild/netbsd-arm64': 0.25.9
4032
+
'@esbuild/netbsd-x64': 0.25.9
4033
+
'@esbuild/openbsd-arm64': 0.25.9
4034
+
'@esbuild/openbsd-x64': 0.25.9
4035
+
'@esbuild/openharmony-arm64': 0.25.9
4036
+
'@esbuild/sunos-x64': 0.25.9
4037
+
'@esbuild/win32-arm64': 0.25.9
4038
+
'@esbuild/win32-ia32': 0.25.9
4039
+
'@esbuild/win32-x64': 0.25.9
4002
4040
4003
4041
escape-string-regexp@4.0.0: {}
4004
4042
4005
4043
escape-string-regexp@5.0.0: {}
4006
4044
4007
-
eslint-config-prettier@10.1.8(eslint@9.31.0(jiti@2.4.2)):
4045
+
eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)):
4008
4046
dependencies:
4009
-
eslint: 9.31.0(jiti@2.4.2)
4047
+
eslint: 9.33.0(jiti@2.5.1)
4010
4048
4011
4049
eslint-import-resolver-node@0.3.9:
4012
4050
dependencies:
···
4016
4054
transitivePeerDependencies:
4017
4055
- supports-color
4018
4056
4019
-
eslint-module-utils@2.12.1(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint@9.31.0(jiti@2.4.2)):
4057
+
eslint-module-utils@2.12.1(@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint@9.33.0(jiti@2.5.1)):
4020
4058
dependencies:
4021
4059
debug: 3.2.7
4022
4060
optionalDependencies:
4023
-
'@typescript-eslint/parser': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
4024
-
eslint: 9.31.0(jiti@2.4.2)
4061
+
'@typescript-eslint/parser': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
4062
+
eslint: 9.33.0(jiti@2.5.1)
4025
4063
eslint-import-resolver-node: 0.3.9
4026
4064
transitivePeerDependencies:
4027
4065
- supports-color
4028
4066
4029
-
eslint-plugin-drizzle@0.2.3(eslint@9.31.0(jiti@2.4.2)):
4067
+
eslint-plugin-drizzle@0.2.3(eslint@9.33.0(jiti@2.5.1)):
4030
4068
dependencies:
4031
-
eslint: 9.31.0(jiti@2.4.2)
4069
+
eslint: 9.33.0(jiti@2.5.1)
4032
4070
4033
-
eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2)):
4071
+
eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.33.0(jiti@2.5.1)):
4034
4072
dependencies:
4035
4073
'@rtsao/scc': 1.1.0
4036
4074
array-includes: 3.1.9
···
4039
4077
array.prototype.flatmap: 1.3.3
4040
4078
debug: 3.2.7
4041
4079
doctrine: 2.1.0
4042
-
eslint: 9.31.0(jiti@2.4.2)
4080
+
eslint: 9.33.0(jiti@2.5.1)
4043
4081
eslint-import-resolver-node: 0.3.9
4044
-
eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint@9.31.0(jiti@2.4.2))
4082
+
eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint@9.33.0(jiti@2.5.1))
4045
4083
hasown: 2.0.2
4046
4084
is-core-module: 2.16.1
4047
4085
is-glob: 4.0.3
···
4053
4091
string.prototype.trimend: 1.0.9
4054
4092
tsconfig-paths: 3.15.0
4055
4093
optionalDependencies:
4056
-
'@typescript-eslint/parser': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
4094
+
'@typescript-eslint/parser': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
4057
4095
transitivePeerDependencies:
4058
4096
- eslint-import-resolver-typescript
4059
4097
- eslint-import-resolver-webpack
4060
4098
- supports-color
4061
4099
4062
-
eslint-plugin-prettier@5.5.3(eslint-config-prettier@10.1.8(eslint@9.31.0(jiti@2.4.2)))(eslint@9.31.0(jiti@2.4.2))(prettier@3.6.2):
4100
+
eslint-plugin-prettier@5.5.4(eslint-config-prettier@10.1.8(eslint@9.33.0(jiti@2.5.1)))(eslint@9.33.0(jiti@2.5.1))(prettier@3.6.2):
4063
4101
dependencies:
4064
-
eslint: 9.31.0(jiti@2.4.2)
4102
+
eslint: 9.33.0(jiti@2.5.1)
4065
4103
prettier: 3.6.2
4066
4104
prettier-linter-helpers: 1.0.0
4067
4105
synckit: 0.11.11
4068
4106
optionalDependencies:
4069
-
eslint-config-prettier: 10.1.8(eslint@9.31.0(jiti@2.4.2))
4107
+
eslint-config-prettier: 10.1.8(eslint@9.33.0(jiti@2.5.1))
4070
4108
4071
4109
eslint-scope@8.4.0:
4072
4110
dependencies:
···
4077
4115
4078
4116
eslint-visitor-keys@4.2.1: {}
4079
4117
4080
-
eslint@9.31.0(jiti@2.4.2):
4118
+
eslint@9.33.0(jiti@2.5.1):
4081
4119
dependencies:
4082
-
'@eslint-community/eslint-utils': 4.7.0(eslint@9.31.0(jiti@2.4.2))
4120
+
'@eslint-community/eslint-utils': 4.7.0(eslint@9.33.0(jiti@2.5.1))
4083
4121
'@eslint-community/regexpp': 4.12.1
4084
4122
'@eslint/config-array': 0.21.0
4085
-
'@eslint/config-helpers': 0.3.0
4086
-
'@eslint/core': 0.15.1
4123
+
'@eslint/config-helpers': 0.3.1
4124
+
'@eslint/core': 0.15.2
4087
4125
'@eslint/eslintrc': 3.3.1
4088
-
'@eslint/js': 9.31.0
4089
-
'@eslint/plugin-kit': 0.3.4
4126
+
'@eslint/js': 9.33.0
4127
+
'@eslint/plugin-kit': 0.3.5
4090
4128
'@humanfs/node': 0.16.6
4091
4129
'@humanwhocodes/module-importer': 1.0.1
4092
4130
'@humanwhocodes/retry': 0.4.3
···
4115
4153
natural-compare: 1.4.0
4116
4154
optionator: 0.9.4
4117
4155
optionalDependencies:
4118
-
jiti: 2.4.2
4156
+
jiti: 2.5.1
4119
4157
transitivePeerDependencies:
4120
4158
- supports-color
4121
4159
···
4317
4355
hast-util-from-parse5: 8.0.3
4318
4356
parse5: 7.3.0
4319
4357
vfile: 6.0.3
4320
-
vfile-message: 4.0.2
4358
+
vfile-message: 4.0.3
4321
4359
4322
4360
hast-util-from-parse5@8.0.3:
4323
4361
dependencies:
···
4450
4488
4451
4489
highlightjs-vue@1.0.0: {}
4452
4490
4453
-
hono@4.8.5: {}
4491
+
hono@4.9.2: {}
4454
4492
4455
4493
html-minifier-terser@7.2.0:
4456
4494
dependencies:
···
4608
4646
4609
4647
isexe@2.0.0: {}
4610
4648
4611
-
jiti@2.4.2: {}
4649
+
jiti@2.5.1: {}
4612
4650
4613
-
js-base64@3.7.7: {}
4651
+
js-base64@3.7.8: {}
4614
4652
4615
4653
js-yaml@4.1.0:
4616
4654
dependencies:
···
4649
4687
prelude-ls: 1.2.1
4650
4688
type-check: 0.4.0
4651
4689
4652
-
libsql@0.5.15:
4690
+
libsql@0.5.17:
4653
4691
dependencies:
4654
4692
'@neon-rs/load': 0.0.4
4655
4693
detect-libc: 2.0.2
4656
4694
optionalDependencies:
4657
-
'@libsql/darwin-arm64': 0.5.15
4658
-
'@libsql/darwin-x64': 0.5.15
4659
-
'@libsql/linux-arm-gnueabihf': 0.5.15
4660
-
'@libsql/linux-arm-musleabihf': 0.5.15
4661
-
'@libsql/linux-arm64-gnu': 0.5.15
4662
-
'@libsql/linux-arm64-musl': 0.5.15
4663
-
'@libsql/linux-x64-gnu': 0.5.15
4664
-
'@libsql/linux-x64-musl': 0.5.15
4665
-
'@libsql/win32-x64-msvc': 0.5.15
4695
+
'@libsql/darwin-arm64': 0.5.17
4696
+
'@libsql/darwin-x64': 0.5.17
4697
+
'@libsql/linux-arm-gnueabihf': 0.5.17
4698
+
'@libsql/linux-arm-musleabihf': 0.5.17
4699
+
'@libsql/linux-arm64-gnu': 0.5.17
4700
+
'@libsql/linux-arm64-musl': 0.5.17
4701
+
'@libsql/linux-x64-gnu': 0.5.17
4702
+
'@libsql/linux-x64-musl': 0.5.17
4703
+
'@libsql/win32-x64-msvc': 0.5.17
4666
4704
4667
4705
locate-path@6.0.0:
4668
4706
dependencies:
···
4693
4731
4694
4732
magic-string@0.30.17:
4695
4733
dependencies:
4696
-
'@jridgewell/sourcemap-codec': 1.5.4
4734
+
'@jridgewell/sourcemap-codec': 1.5.5
4697
4735
4698
4736
markdown-table@3.0.4: {}
4699
4737
···
5123
5161
dependencies:
5124
5162
entities: 6.0.1
5125
5163
5126
-
partysocket@1.1.4:
5164
+
partysocket@1.1.5:
5127
5165
dependencies:
5128
5166
event-target-polyfill: 0.0.4
5129
5167
···
5170
5208
5171
5209
queue-microtask@1.2.3: {}
5172
5210
5173
-
radix-vue@1.9.17(vue@3.5.17(typescript@5.8.3)):
5211
+
radix-vue@1.9.17(vue@3.5.18(typescript@5.9.2)):
5174
5212
dependencies:
5175
-
'@floating-ui/dom': 1.7.2
5176
-
'@floating-ui/vue': 1.1.7(vue@3.5.17(typescript@5.8.3))
5213
+
'@floating-ui/dom': 1.7.3
5214
+
'@floating-ui/vue': 1.1.8(vue@3.5.18(typescript@5.9.2))
5177
5215
'@internationalized/date': 3.8.2
5178
-
'@internationalized/number': 3.6.3
5179
-
'@tanstack/vue-virtual': 3.13.12(vue@3.5.17(typescript@5.8.3))
5180
-
'@vueuse/core': 10.11.1(vue@3.5.17(typescript@5.8.3))
5181
-
'@vueuse/shared': 10.11.1(vue@3.5.17(typescript@5.8.3))
5216
+
'@internationalized/number': 3.6.4
5217
+
'@tanstack/vue-virtual': 3.13.12(vue@3.5.18(typescript@5.9.2))
5218
+
'@vueuse/core': 10.11.1(vue@3.5.18(typescript@5.9.2))
5219
+
'@vueuse/shared': 10.11.1(vue@3.5.18(typescript@5.9.2))
5182
5220
aria-hidden: 1.2.6
5183
5221
defu: 6.1.4
5184
5222
fast-deep-equal: 3.1.3
5185
5223
nanoid: 5.1.5
5186
-
vue: 3.5.17(typescript@5.8.3)
5224
+
vue: 3.5.18(typescript@5.9.2)
5187
5225
transitivePeerDependencies:
5188
5226
- '@vue/composition-api'
5189
5227
···
5480
5518
5481
5519
terser@5.43.1:
5482
5520
dependencies:
5483
-
'@jridgewell/source-map': 0.3.10
5521
+
'@jridgewell/source-map': 0.3.11
5484
5522
acorn: 8.15.0
5485
5523
commander: 2.20.3
5486
5524
source-map-support: 0.5.21
···
5503
5541
5504
5542
trough@2.2.0: {}
5505
5543
5506
-
ts-api-utils@2.1.0(typescript@5.8.3):
5544
+
ts-api-utils@2.1.0(typescript@5.9.2):
5507
5545
dependencies:
5508
-
typescript: 5.8.3
5546
+
typescript: 5.9.2
5509
5547
5510
5548
ts-deepmerge@7.0.3: {}
5511
5549
···
5518
5556
5519
5557
tslib@2.8.1: {}
5520
5558
5521
-
tsx@4.20.3:
5559
+
tsx@4.20.4:
5522
5560
dependencies:
5523
-
esbuild: 0.25.8
5561
+
esbuild: 0.25.9
5524
5562
get-tsconfig: 4.10.1
5525
5563
optionalDependencies:
5526
5564
fsevents: 2.3.3
···
5564
5602
possible-typed-array-names: 1.1.0
5565
5603
reflect.getprototypeof: 1.0.10
5566
5604
5567
-
typescript-eslint@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3):
5605
+
typescript-eslint@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2):
5568
5606
dependencies:
5569
-
'@typescript-eslint/eslint-plugin': 8.38.0(@typescript-eslint/parser@8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
5570
-
'@typescript-eslint/parser': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
5571
-
'@typescript-eslint/typescript-estree': 8.38.0(typescript@5.8.3)
5572
-
'@typescript-eslint/utils': 8.38.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)
5573
-
eslint: 9.31.0(jiti@2.4.2)
5574
-
typescript: 5.8.3
5607
+
'@typescript-eslint/eslint-plugin': 8.40.0(@typescript-eslint/parser@8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
5608
+
'@typescript-eslint/parser': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
5609
+
'@typescript-eslint/typescript-estree': 8.40.0(typescript@5.9.2)
5610
+
'@typescript-eslint/utils': 8.40.0(eslint@9.33.0(jiti@2.5.1))(typescript@5.9.2)
5611
+
eslint: 9.33.0(jiti@2.5.1)
5612
+
typescript: 5.9.2
5575
5613
transitivePeerDependencies:
5576
5614
- supports-color
5577
5615
5578
-
typescript@5.8.3: {}
5616
+
typescript@5.9.2: {}
5579
5617
5580
5618
unbox-primitive@1.1.0:
5581
5619
dependencies:
···
5586
5624
5587
5625
undici-types@6.21.0: {}
5588
5626
5589
-
undici-types@7.8.0: {}
5627
+
undici-types@7.10.0: {}
5590
5628
5591
5629
unified@11.0.5:
5592
5630
dependencies:
···
5639
5677
'@types/unist': 3.0.3
5640
5678
vfile: 6.0.3
5641
5679
5642
-
vfile-message@4.0.2:
5680
+
vfile-message@4.0.3:
5643
5681
dependencies:
5644
5682
'@types/unist': 3.0.3
5645
5683
unist-util-stringify-position: 4.0.0
···
5647
5685
vfile@6.0.3:
5648
5686
dependencies:
5649
5687
'@types/unist': 3.0.3
5650
-
vfile-message: 4.0.2
5688
+
vfile-message: 4.0.3
5651
5689
5652
-
vue-demi@0.14.10(vue@3.5.17(typescript@5.8.3)):
5690
+
vue-component-type-helpers@3.0.5: {}
5691
+
5692
+
vue-demi@0.14.10(vue@3.5.18(typescript@5.9.2)):
5653
5693
dependencies:
5654
-
vue: 3.5.17(typescript@5.8.3)
5694
+
vue: 3.5.18(typescript@5.9.2)
5655
5695
5656
5696
vue-sonner@1.3.2: {}
5657
5697
5658
-
vue@3.5.17(typescript@5.8.3):
5698
+
vue@3.5.18(typescript@5.9.2):
5659
5699
dependencies:
5660
-
'@vue/compiler-dom': 3.5.17
5661
-
'@vue/compiler-sfc': 3.5.17
5662
-
'@vue/runtime-dom': 3.5.17
5663
-
'@vue/server-renderer': 3.5.17(vue@3.5.17(typescript@5.8.3))
5664
-
'@vue/shared': 3.5.17
5700
+
'@vue/compiler-dom': 3.5.18
5701
+
'@vue/compiler-sfc': 3.5.18
5702
+
'@vue/runtime-dom': 3.5.18
5703
+
'@vue/server-renderer': 3.5.18(vue@3.5.18(typescript@5.9.2))
5704
+
'@vue/shared': 3.5.18
5665
5705
optionalDependencies:
5666
-
typescript: 5.8.3
5706
+
typescript: 5.9.2
5667
5707
5668
5708
web-namespaces@2.0.1: {}
5669
5709
+123
backend/src/api/feed.ts
+123
backend/src/api/feed.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import {
8
+
SocialClipprActorDefs,
9
+
SocialClipprFeedClip,
10
+
SocialClipprFeedDefs,
11
+
} from "@clipprjs/lexicons";
12
+
import type { ClipViewQuery, ErrorResponse, TagRef } from "./types.js";
13
+
import { getHandleFromDid } from "../network/converters.js";
14
+
import { Database } from "../db/database.js";
15
+
import { clipsTable } from "../db/schema.js";
16
+
import { and, eq } from "drizzle-orm";
17
+
import { createProfileView } from "./profile.js";
18
+
import { is } from "@atcute/lexicons";
19
+
import { validateHash } from "../hasher.js";
20
+
21
+
const db = Database.getInstance().getDb();
22
+
23
+
export async function createClipView(
24
+
query: ClipViewQuery,
25
+
): Promise<SocialClipprFeedDefs.ClipView | ErrorResponse> {
26
+
if (!query.did.startsWith("did:")) {
27
+
let did;
28
+
try {
29
+
did = await getHandleFromDid(query.did);
30
+
} catch (e: unknown) {
31
+
if (e instanceof Error) {
32
+
return {
33
+
error: "InvalidRequest",
34
+
message: `Error: A queried URI does not have a valid DID or handle: ${e.message}`,
35
+
};
36
+
} else {
37
+
return {
38
+
error: "InvalidRequest",
39
+
message:
40
+
"Error: A queried URI does not have a valid DID or handle: unknown error",
41
+
};
42
+
}
43
+
}
44
+
query.did = did;
45
+
}
46
+
47
+
if (query.collection !== "social.clippr.feed.clip") {
48
+
return {
49
+
error: "InvalidRequest",
50
+
message: "Error: A queried URI is not a proper clip",
51
+
};
52
+
}
53
+
54
+
const dbQuery = await db
55
+
.selectDistinct()
56
+
.from(clipsTable)
57
+
.where(
58
+
and(
59
+
eq(clipsTable.did, query.did),
60
+
eq(clipsTable.recordKey, query.recordKey),
61
+
),
62
+
);
63
+
64
+
if (dbQuery.length === 0) {
65
+
return {
66
+
error: "InvalidRequest",
67
+
message: "Could not find a given URI",
68
+
};
69
+
}
70
+
71
+
// Yes, the array thing is not ideal.
72
+
if (!dbQuery[0]?.cid) {
73
+
return {
74
+
error: "InvalidRequest",
75
+
message: "Could not find a given URI",
76
+
};
77
+
}
78
+
79
+
if (!(await validateHash(dbQuery[0]?.url, query.recordKey))) {
80
+
return {
81
+
error: "InvalidRequest",
82
+
message: "Could not find a given URI",
83
+
};
84
+
}
85
+
86
+
const authorView: ErrorResponse | SocialClipprActorDefs.ProfileView =
87
+
await createProfileView(query.did);
88
+
89
+
if (!is(SocialClipprActorDefs.profileViewSchema, authorView)) {
90
+
console.log(authorView);
91
+
return {
92
+
error: "InvalidRequest",
93
+
message: "Could not validate profile view", // I can't get the error message, it seems to always assume the type is the ProfileView
94
+
} as ErrorResponse;
95
+
}
96
+
97
+
let clipTags: TagRef[] | undefined;
98
+
99
+
if (dbQuery[0]?.tags === null) {
100
+
clipTags = undefined;
101
+
}
102
+
103
+
const clipRecord: SocialClipprFeedClip.Main = {
104
+
$type: "social.clippr.feed.clip",
105
+
url: dbQuery[0]?.url as `${string}:${string}`,
106
+
title: dbQuery[0]?.title,
107
+
description: dbQuery[0]?.description,
108
+
tags: clipTags || undefined,
109
+
unlisted: dbQuery[0]?.unlisted,
110
+
unread: dbQuery[0]?.unread || undefined,
111
+
notes: dbQuery[0]?.notes || undefined,
112
+
languages: dbQuery[0]?.languages || undefined,
113
+
createdAt: dbQuery[0]?.createdAt.toISOString(),
114
+
};
115
+
116
+
return {
117
+
cid: dbQuery[0]?.cid,
118
+
uri: `at://${query.did}/${query.collection}/${query.recordKey}`,
119
+
author: authorView,
120
+
record: clipRecord,
121
+
indexedAt: dbQuery[0]?.indexedAt.toISOString(),
122
+
};
123
+
}
+101
backend/src/api/profile.ts
+101
backend/src/api/profile.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { SocialClipprActorDefs } from "@clipprjs/lexicons";
8
+
import type { ErrorResponse } from "./types.js";
9
+
import { getDidFromHandle, getHandleFromDid } from "../network/converters.js";
10
+
import { Database } from "../db/database.js";
11
+
import { usersTable } from "../db/schema.js";
12
+
import { eq } from "drizzle-orm";
13
+
14
+
const db = Database.getInstance().getDb();
15
+
16
+
// TODO: Stop leeching off the Bluesky CDN and get the blob directly from the user's PDS
17
+
//
18
+
// Get a CDN URI from a blob's CID
19
+
export async function createAvatarLink(
20
+
did: string,
21
+
cid: string,
22
+
): Promise<string> {
23
+
return `https://cdn.bsky.app/img/avatar/plain/${did}/${cid}`;
24
+
}
25
+
26
+
export async function createProfileView(
27
+
actor: string,
28
+
): Promise<SocialClipprActorDefs.ProfileView | ErrorResponse> {
29
+
let viewHandle;
30
+
let viewDid;
31
+
32
+
if (actor.startsWith("did:")) {
33
+
viewDid = actor;
34
+
try {
35
+
viewHandle = await getHandleFromDid(viewDid);
36
+
viewHandle = viewHandle.replace("at://", "");
37
+
} catch (e: unknown) {
38
+
if (e instanceof Error) {
39
+
return {
40
+
error: "InvalidRequest",
41
+
message: `Error: A queried URI does not have a valid DID or handle: ${e.message}`,
42
+
};
43
+
} else {
44
+
return {
45
+
error: "InvalidRequest",
46
+
message:
47
+
"Error: A queried URI does not have a valid DID or handle: unknown error",
48
+
};
49
+
}
50
+
}
51
+
} else {
52
+
viewHandle = actor;
53
+
viewHandle = viewHandle.replace("at://", "");
54
+
try {
55
+
viewDid = await getDidFromHandle(viewHandle);
56
+
} catch (e: unknown) {
57
+
if (e instanceof Error) {
58
+
return {
59
+
error: "InvalidRequest",
60
+
message: `Error: A queried URI does not have a valid DID or handle: ${e.message}`,
61
+
};
62
+
} else {
63
+
return {
64
+
error: "InvalidRequest",
65
+
message:
66
+
"Error: A queried URI does not have a valid DID or handle: unknown error",
67
+
};
68
+
}
69
+
}
70
+
}
71
+
72
+
const dbQuery = await db
73
+
.selectDistinct()
74
+
.from(usersTable)
75
+
.where(eq(usersTable.did, viewDid));
76
+
77
+
if (dbQuery.length === 0) {
78
+
return {
79
+
error: "InvalidRequest",
80
+
message: "Could not find a queried URI's profile",
81
+
} as ErrorResponse;
82
+
}
83
+
84
+
const avatarCid = dbQuery[0]?.avatar;
85
+
86
+
let viewAvatar;
87
+
88
+
if (avatarCid === undefined || avatarCid === null) {
89
+
viewAvatar = "https://missing.avatar";
90
+
} else viewAvatar = await createAvatarLink(viewDid, avatarCid);
91
+
92
+
return {
93
+
$type: "social.clippr.actor.defs#profileView",
94
+
did: viewDid as `did:${string}:${string}`,
95
+
handle: viewHandle as `${string}.${string}`,
96
+
avatar: (viewAvatar as `${string}:${string}`) || undefined,
97
+
createdAt: dbQuery[0]?.createdAt.toISOString(),
98
+
description: dbQuery[0]?.description || undefined,
99
+
displayName: dbQuery[0]?.displayName || viewHandle,
100
+
};
101
+
}
+38
backend/src/api/types.ts
+38
backend/src/api/types.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import type { ResourceUri } from "@atcute/lexicons";
8
+
9
+
export interface ErrorResponse {
10
+
error: string;
11
+
message: string;
12
+
}
13
+
14
+
export interface ProfileViewQuery {
15
+
actor: string;
16
+
}
17
+
18
+
export interface ClipViewQuery {
19
+
did: string;
20
+
collection: string;
21
+
recordKey: string;
22
+
}
23
+
24
+
export const isClipViewQuery = (query: unknown): query is ClipViewQuery => {
25
+
return typeof query === "object" && query !== null && "did" in query;
26
+
};
27
+
28
+
export interface TagRef {
29
+
$type: "com.atproto.repo.strongRef";
30
+
cid: string;
31
+
uri: ResourceUri;
32
+
}
33
+
34
+
export interface TagViewQuery {
35
+
did: string;
36
+
collection: string;
37
+
recordKey: string;
38
+
}
+3
-2
backend/src/db/schema.ts
+3
-2
backend/src/db/schema.ts
···
6
6
7
7
import { int, sqliteTable, text } from "drizzle-orm/sqlite-core";
8
8
import { sql } from "drizzle-orm";
9
+
import type { TagRef } from "../api/types.js";
9
10
10
11
// WebStorm keeps throwing errors with the default statements as it wants
11
12
// an actual SQLite query, despite being valid. Sucks.
···
23
24
unlisted: int("unlisted", { mode: "boolean" }).notNull(),
24
25
notes: text("notes"),
25
26
tags: text("tags", { mode: "json" })
26
-
.$type<string[]>()
27
+
.$type<TagRef[]>()
27
28
.default(sql`'[]'`),
28
29
unread: int("unread", { mode: "boolean" }),
29
30
languages: text("languages", { mode: "json" })
···
63
64
.default(sql`(unixepoch() * 1000)`),
64
65
did: text("did").notNull().unique(),
65
66
cid: text("cid").notNull(),
66
-
displayName: text("displayName"),
67
+
displayName: text("displayName").notNull(),
67
68
description: text("description"),
68
69
avatar: text("avatar"),
69
70
createdAt: int("createdAt", { mode: "timestamp_ms" })
+21
backend/src/hasher.ts
+21
backend/src/hasher.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import xxhash from "xxhash-wasm";
8
+
9
+
/// Hash a given string into a hexadecimal xxh64 string.
10
+
export async function hashString(data: string): Promise<string> {
11
+
const { h64 } = await xxhash();
12
+
return h64(data).toString(16);
13
+
}
14
+
15
+
/// Check if a string is equivalent to a given hash.
16
+
export async function validateHash(
17
+
data: string,
18
+
hash: string,
19
+
): Promise<boolean> {
20
+
return hash === (await hashString(data));
21
+
}
+25
-5
backend/src/network/commit.ts
+25
-5
backend/src/network/commit.ts
···
16
16
import Logger from "../logger.js";
17
17
import { isBlob } from "@atcute/lexicons/interfaces";
18
18
import { validateClip, validateProfile, validateTag } from "./validator.js";
19
-
import xxhash from "xxhash-wasm";
20
19
import { convertDidToString } from "./converters.js";
20
+
import { hashString } from "../hasher.js";
21
+
import { eq } from "drizzle-orm";
21
22
22
23
const db = Database.getInstance().getDb();
23
24
···
65
66
};
66
67
67
68
// xxh64, NOT xxh3 learned that the hard way
68
-
const { h64 } = await xxhash();
69
-
const urlHash = h64(record.url).toString(16);
69
+
const urlHash: string = await hashString(record.url);
70
70
71
71
if (urlHash !== event.commit.rkey) {
72
72
Logger.verbose(
···
166
166
export async function handleProfile(
167
167
event: CommitEvent<`social.clippr.${string}`>,
168
168
): Promise<void> {
169
-
if (event.commit.operation !== "create") {
169
+
if (event.commit.operation === "delete") {
170
170
Logger.warn(
171
171
`Operation '${event.commit.operation}' for ${event.commit.collection} not supported. Ignoring.`,
172
172
);
173
173
return;
174
-
} // We currently do not handle these.
174
+
} // We currently do not handle deletes.
175
175
176
176
if (event.commit.record.$type !== "social.clippr.actor.profile") {
177
177
Logger.verbose(
···
242
242
243
243
// Independent validations
244
244
if (!(await validateProfile(record))) {
245
+
return;
246
+
}
247
+
248
+
if (event.commit.operation === "update") {
249
+
await db
250
+
.update(usersTable)
251
+
.set({
252
+
did: convertDidToString(event.did),
253
+
cid: event.commit.cid,
254
+
timestamp: convertMicroToDate(event.time_us),
255
+
createdAt: new Date(record.createdAt),
256
+
displayName: record.displayName,
257
+
avatar: record.avatar?.ref.$link,
258
+
description: record.description,
259
+
})
260
+
.where(eq(usersTable.did, convertDidToString(event.did)))
261
+
.execute();
262
+
263
+
Logger.verbose(`Updated profile: ${convertDidToString(event.did)}`, event);
264
+
245
265
return;
246
266
}
247
267
-9
backend/src/network/converters.ts
-9
backend/src/network/converters.ts
···
31
31
}
32
32
}
33
33
34
-
// TODO: Stop leeching off the Bluesky CDN and get the blob directly from the user's PDS
35
-
// Get a CDN URI from a blob's CID
36
-
export async function getUriFromBlobCid(
37
-
did: string,
38
-
cid: string,
39
-
): Promise<string> {
40
-
return `https://cdn.bsky.app/img/avatar/plain/${did}/${cid}`;
41
-
}
42
-
43
34
// Get a user's handle from their DID. DID method agnostic.
44
35
export async function getHandleFromDid(did: string): Promise<string> {
45
36
const docResolver = new CompositeDidDocumentResolver({
+114
-6
backend/src/routes/xrpc.ts
+114
-6
backend/src/routes/xrpc.ts
···
8
8
import { Database } from "../db/database.js";
9
9
import { usersTable } from "../db/schema.js";
10
10
import { eq } from "drizzle-orm";
11
-
import {
12
-
getDidFromHandle,
13
-
getHandleFromDid,
14
-
getUriFromBlobCid,
15
-
} from "../network/converters.js";
11
+
import { getDidFromHandle, getHandleFromDid } from "../network/converters.js";
12
+
import { createClipView } from "../api/feed.js";
13
+
import { type ClipViewQuery, type ErrorResponse } from "../api/types.js";
14
+
import { createAvatarLink } from "../api/profile.js";
15
+
import { SocialClipprFeedDefs } from "@clipprjs/lexicons";
16
+
import { is } from "@atcute/lexicons";
16
17
17
18
const app = new Hono();
18
19
const db = Database.getInstance().getDb();
···
101
102
} else actorHandle = actor;
102
103
103
104
// TODO: Add placeholder avatar
105
+
// This is a mess and should be replaced with a real solution!
104
106
const avatarCid: string =
105
107
profileSearch[0]?.avatar || "https://missing.avatar";
106
108
let actorAvatar;
107
109
if (avatarCid !== "https://missing.avatar") {
108
-
actorAvatar = await getUriFromBlobCid(actorDid, avatarCid);
110
+
actorAvatar = await createAvatarLink(actorDid, avatarCid);
109
111
} else actorAvatar = avatarCid;
110
112
111
113
// Right now we don't do de-duplication in the database, so we just take the
···
118
120
description: profileSearch[0]?.description || null,
119
121
createdAt: profileSearch[0]?.createdAt,
120
122
});
123
+
});
124
+
125
+
app.get("/social.clippr.feed.getClips", async (c) => {
126
+
const uris = c.req.query("uris");
127
+
if (uris === undefined || uris.trim().length === 0) {
128
+
return c.json(
129
+
{
130
+
error: "InvalidRequest",
131
+
message: "Error: Parameters must have the uris property included",
132
+
},
133
+
400,
134
+
);
135
+
}
136
+
137
+
const rawUriArray: string[] = uris.split(",");
138
+
139
+
if (rawUriArray.length > 25) {
140
+
return c.json(
141
+
{
142
+
error: "InvalidRequest",
143
+
message: "Error: More than 25 URIs have been provided",
144
+
},
145
+
400,
146
+
);
147
+
}
148
+
149
+
if (
150
+
rawUriArray.some((value) => {
151
+
return !value.startsWith("at://");
152
+
})
153
+
) {
154
+
return c.json(
155
+
{
156
+
error: "InvalidRequest",
157
+
message: "Error: A queried URI is missing the at:// identifier",
158
+
},
159
+
400,
160
+
);
161
+
}
162
+
163
+
const parsedUriArray: object[] = [];
164
+
165
+
for (let value of rawUriArray) {
166
+
value = value.replace("at://", "");
167
+
const splitUri: string[] = value.split("/");
168
+
169
+
if (splitUri.length !== 3) {
170
+
c.json(
171
+
{
172
+
error: "InvalidRequest",
173
+
message: "Error: A queried URI is not a proper clip",
174
+
},
175
+
400,
176
+
);
177
+
}
178
+
179
+
let splitUriObject: ClipViewQuery = {
180
+
did: "",
181
+
collection: "",
182
+
recordKey: "",
183
+
};
184
+
185
+
// validate type
186
+
if (
187
+
!splitUri[0] ||
188
+
!splitUri[1] ||
189
+
!splitUri[2] ||
190
+
typeof splitUri[0] !== "string" ||
191
+
typeof splitUri[1] !== "string" ||
192
+
typeof splitUri[2] !== "string"
193
+
) {
194
+
c.json(
195
+
{
196
+
error: "InvalidRequest",
197
+
message: "Error: A queried URI is not a proper clip",
198
+
},
199
+
400,
200
+
);
201
+
} else {
202
+
splitUriObject = {
203
+
did: splitUri[0],
204
+
collection: splitUri[1],
205
+
recordKey: splitUri[2],
206
+
};
207
+
}
208
+
209
+
const clipView = await createClipView(splitUriObject);
210
+
211
+
if (!is(SocialClipprFeedDefs.clipViewSchema, value)) {
212
+
c.json(clipView, 400);
213
+
}
214
+
215
+
parsedUriArray.push(clipView);
216
+
}
217
+
218
+
if (parsedUriArray.length === 0) {
219
+
return c.json(
220
+
{
221
+
error: "InvalidRequest",
222
+
message: "No queried URIs exist",
223
+
} as ErrorResponse,
224
+
400,
225
+
);
226
+
}
227
+
228
+
return c.json(parsedUriArray, 200);
121
229
});
122
230
123
231
app.get("/_health", async (c) => {
+2
backend/src/server.ts
+2
backend/src/server.ts
···
10
10
import Logger from "./logger.js";
11
11
import { logger } from "hono/logger";
12
12
import openapi from "./routes/openapi.js";
13
+
import { cors } from "hono/cors";
13
14
14
15
export function winstonLogger(message: string, ...rest: unknown[]) {
15
16
Logger.http(message, ...rest);
···
17
18
18
19
const app = new Hono();
19
20
app.use(logger(winstonLogger));
21
+
app.use(cors());
20
22
21
23
// Link all routes up
22
24
app.route("/", misc);
+1226
-1290
backend/static/api.json
+1226
-1290
backend/static/api.json
···
1
1
{
2
-
"openapi": "3.1.1",
3
-
"info": {
4
-
"title": "Clippr AppView API",
5
-
"version": "1.0.1",
6
-
"description": "API reference documentation for Clippr's backend.",
7
-
"license": {
8
-
"name": "GNU Affero General Public License v3.0 only",
9
-
"identifier": "AGPL-3.0-only"
10
-
}
11
-
},
12
-
"servers": [
13
-
{
14
-
"url": "http://localhost:9090",
15
-
"description": "Development server"
16
-
},
17
-
{
18
-
"url": "https://api.clippr.social",
19
-
"description": "Production server"
20
-
}
21
-
],
22
-
"tags": [
23
-
{
24
-
"name": "Clips",
25
-
"description": "API paths that relate to user bookmarks, or 'clips'."
26
-
},
27
-
{
28
-
"name": "Tags",
29
-
"description": "API paths that relate to user tags."
30
-
},
31
-
{
32
-
"name": "Profile",
33
-
"description": "API paths that relate to user profiles."
34
-
},
35
-
{
36
-
"name": "Misc",
37
-
"description": "API paths that don't fit into any other category."
38
-
}
39
-
],
40
-
"paths": {
41
-
"/xrpc/social.clippr.actor.getPreferences": {
42
-
"get": {
43
-
"tags": [
44
-
"Profile"
45
-
],
46
-
"summary": "Get a user's preferences",
47
-
"operationId": "social.clippr.actor.getPreferences",
48
-
"description": "Get a user's private preferences. Requires authentication.",
49
-
"security": [
50
-
{
51
-
"Bearer": []
52
-
}
53
-
],
54
-
"responses": {
55
-
"200": {
56
-
"description": "OK",
57
-
"content": {
58
-
"application/json": {
59
-
"schema": {
60
-
"$ref": "#/components/schemas/social.clippr.actor.defs.preferences"
61
-
}
62
-
}
63
-
}
64
-
},
65
-
"400": {
66
-
"description": "Bad Request",
67
-
"content": {
68
-
"application/json": {
69
-
"schema": {
70
-
"type": "object",
71
-
"properties": {
72
-
"error": {
73
-
"type": "string",
74
-
"description": "A general error code",
75
-
"oneOf": [
76
-
{
77
-
"const": "InvalidRequest"
78
-
},
79
-
{
80
-
"const": "ExpiredToken"
81
-
},
82
-
{
83
-
"const": "InvalidToken"
84
-
}
85
-
]
86
-
},
87
-
"message": {
88
-
"type": "string",
89
-
"description": "A detailed description of the error"
90
-
}
91
-
}
92
-
}
93
-
}
94
-
}
95
-
},
96
-
"401": {
97
-
"description": "Unauthorized",
98
-
"content": {
99
-
"application/json": {
100
-
"schema": {
101
-
"type": "object",
102
-
"properties": {
103
-
"error": {
104
-
"type": "string",
105
-
"description": "A general error code",
106
-
"oneOf": [
107
-
{
108
-
"const": "AuthMissing"
109
-
}
110
-
]
111
-
},
112
-
"message": {
113
-
"type": "string",
114
-
"description": "A detailed description of the error"
115
-
}
116
-
}
117
-
}
118
-
}
119
-
}
120
-
}
121
-
}
122
-
}
123
-
},
124
-
"/xrpc/social.clippr.actor.getProfile": {
125
-
"get": {
126
-
"tags": [
127
-
"Profile"
128
-
],
129
-
"summary": "Get a profile",
130
-
"operationId": "social.clippr.actor.getProfile",
131
-
"description": "Get a user's profile based on a given DID or handle.",
132
-
"parameters": [
133
-
{
134
-
"name": "actor",
135
-
"in": "query",
136
-
"description": "Handle or DID of account to fetch profile of",
137
-
"required": true,
138
-
"content": {
139
-
"schema": {
140
-
"type": "string",
141
-
"description": "Handle or DID of account to fetch profile of",
142
-
"format": "at-identifier"
143
-
}
144
-
},
145
-
"deprecated": false,
146
-
"allowEmptyValue": false
147
-
}
148
-
],
149
-
"responses": {
150
-
"200": {
151
-
"description": "OK",
152
-
"content": {
153
-
"application/json": {
154
-
"schema": {
155
-
"type": "object",
156
-
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
157
-
}
158
-
}
159
-
}
160
-
},
161
-
"400": {
162
-
"description": "Bad Request",
163
-
"content": {
164
-
"application/json": {
165
-
"schema": {
166
-
"type": "object",
167
-
"properties": {
168
-
"error": {
169
-
"type": "string",
170
-
"description": "A general error code",
171
-
"oneOf": [
172
-
{
173
-
"const": "InvalidRequest"
174
-
}
175
-
]
176
-
},
177
-
"message": {
178
-
"type": "string",
179
-
"description": "A detailed description of the error"
180
-
}
181
-
}
182
-
}
183
-
}
184
-
}
185
-
}
186
-
}
187
-
}
188
-
},
189
-
"/xrpc/social.clippr.actor.putPreferences": {
190
-
"post": {
191
-
"tags": [
192
-
"Profile"
193
-
],
194
-
"summary": "Set a user's preferences",
195
-
"operationId": "social.clippr.actor.putPreferences",
196
-
"description": "Sets the private preferences attached to the account. Requires authentication.",
197
-
"security": [
198
-
{
199
-
"Bearer": []
200
-
}
201
-
],
202
-
"requestBody": {
203
-
"required": true,
204
-
"content": {
205
-
"application/json": {
206
-
"schema": {
207
-
"type": "object",
208
-
"properties": {
209
-
"preferences": {
210
-
"$ref": "#/components/schemas/social.clippr.actor.defs.preferences"
211
-
}
212
-
}
213
-
}
214
-
}
215
-
}
216
-
},
217
-
"responses": {
218
-
"200": {
219
-
"description": "OK"
220
-
},
221
-
"400": {
222
-
"description": "Bad Request",
223
-
"content": {
224
-
"application/json": {
225
-
"schema": {
226
-
"type": "object",
227
-
"properties": {
228
-
"error": {
229
-
"type": "string",
230
-
"oneOf": [
231
-
{
232
-
"const": "InvalidRequest"
233
-
},
234
-
{
235
-
"const": "ExpiredToken"
236
-
},
237
-
{
238
-
"const": "InvalidToken"
239
-
}
240
-
],
241
-
"description": "A general error code"
242
-
},
243
-
"message": {
244
-
"type": "string",
245
-
"description": "A detailed description of the error"
246
-
}
247
-
}
248
-
}
249
-
}
250
-
}
251
-
},
252
-
"401": {
253
-
"description": "Unauthorized",
254
-
"content": {
255
-
"application/json": {
256
-
"schema": {
257
-
"type": "object",
258
-
"properties": {
259
-
"error": {
260
-
"type": "string",
261
-
"description": "A general error code",
262
-
"oneOf": [
263
-
{
264
-
"const": "AuthMissing"
265
-
}
266
-
]
267
-
},
268
-
"message": {
269
-
"type": "string",
270
-
"description": "A detailed description of the error"
271
-
}
272
-
}
273
-
}
274
-
}
275
-
}
276
-
}
277
-
}
278
-
}
279
-
},
280
-
"/xrpc/social.clippr.actor.searchClips": {
281
-
"get": {
282
-
"tags": [
283
-
"Clips"
284
-
],
285
-
"summary": "Search clips",
286
-
"operationId": "social.clippr.actor.searchClips",
287
-
"description": "Find clips matching search criteria.",
288
-
"parameters": [
289
-
{
290
-
"name": "q",
291
-
"in": "query",
292
-
"description": "Search query string",
293
-
"required": true,
294
-
"schema": {
295
-
"type": "string",
296
-
"description": "Search query string"
297
-
}
298
-
},
299
-
{
300
-
"name": "limit",
301
-
"in": "query",
302
-
"description": "How many clips to return in the query output",
303
-
"required": false,
304
-
"schema": {
305
-
"type": "integer",
306
-
"minimum": 1,
307
-
"maximum": 100,
308
-
"default": 25
309
-
}
310
-
},
311
-
{
312
-
"name": "actor",
313
-
"in": "query",
314
-
"description": "An actor to filter results to",
315
-
"required": false,
316
-
"schema": {
317
-
"type": "string",
318
-
"description": "An actor to filter results to",
319
-
"format": "at-identifier"
320
-
}
321
-
},
322
-
{
323
-
"name": "cursor",
324
-
"in": "query",
325
-
"description": "A parameter to paginate results",
326
-
"required": false,
327
-
"schema": {
328
-
"type": "string",
329
-
"description": "A parameter to paginate results"
330
-
}
331
-
}
332
-
],
333
-
"responses": {
334
-
"200": {
335
-
"description": "OK",
336
-
"content": {
337
-
"application/json": {
338
-
"schema": {
339
-
"type": "object",
340
-
"properties": {
341
-
"cursor": {
342
-
"type": "string",
343
-
"description": "A parameter to paginate results"
344
-
},
345
-
"clips": {
346
-
"type": "array",
347
-
"items": {
348
-
"$ref": "#/components/schemas/social.clippr.feed.defs.clipView"
349
-
}
350
-
}
351
-
}
352
-
}
353
-
}
354
-
}
355
-
},
356
-
"400": {
357
-
"description": "Bad Request",
358
-
"content": {
359
-
"application/json": {
360
-
"schema": {
361
-
"type": "object",
362
-
"properties": {
363
-
"error": {
364
-
"type": "string",
365
-
"description": "A general error code",
366
-
"oneOf": [
367
-
{
368
-
"const": "InvalidRequest"
369
-
}
370
-
]
371
-
},
372
-
"message": {
373
-
"type": "string",
374
-
"description": "A detailed description of the error"
375
-
}
376
-
}
377
-
}
378
-
}
379
-
}
380
-
}
381
-
}
382
-
}
383
-
},
384
-
"/xrpc/social.clippr.actor.searchProfiles": {
385
-
"get": {
386
-
"tags": [
387
-
"Profile"
388
-
],
389
-
"summary": "Search profiles",
390
-
"operationId": "social.clippr.actor.searchProfiles",
391
-
"description": "Find profiles matching search criteria.",
392
-
"parameters": [
393
-
{
394
-
"name": "q",
395
-
"in": "query",
396
-
"description": "Search query string",
397
-
"required": false,
398
-
"schema": {
399
-
"type": "string",
400
-
"description": "Search query string"
401
-
}
402
-
},
403
-
{
404
-
"name": "limit",
405
-
"in": "query",
406
-
"description": "The number of profiles to be returned in the query",
407
-
"required": false,
408
-
"schema": {
409
-
"type": "integer",
410
-
"minimum": 1,
411
-
"maximum": 100,
412
-
"default": 25
413
-
}
414
-
},
415
-
{
416
-
"name": "cursor",
417
-
"in": "query",
418
-
"description": "A parameter used for pagination",
419
-
"required": false,
420
-
"schema": {
421
-
"type": "string",
422
-
"description": "A parameter used for pagination"
423
-
}
424
-
}
425
-
],
426
-
"responses": {
427
-
"200": {
428
-
"description": "OK",
429
-
"content": {
430
-
"application/json": {
431
-
"schema": {
432
-
"type": "object",
433
-
"properties": {
434
-
"cursor": {
435
-
"type": "string",
436
-
"description": "A parameter used for pagination"
437
-
},
438
-
"actors": {
439
-
"type": "array",
440
-
"items": {
441
-
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
442
-
}
443
-
}
444
-
}
445
-
}
446
-
}
447
-
}
448
-
},
449
-
"400": {
450
-
"description": "Bad Request",
451
-
"content": {
452
-
"application/json": {
453
-
"schema": {
454
-
"type": "object",
455
-
"properties": {
456
-
"error": {
457
-
"type": "string",
458
-
"description": "A general error code",
459
-
"oneOf": [
460
-
{
461
-
"const": "InvalidRequest"
462
-
}
463
-
]
464
-
},
465
-
"message": {
466
-
"type": "string",
467
-
"description": "A detailed description of the error"
468
-
}
469
-
}
470
-
}
471
-
}
472
-
}
473
-
}
474
-
}
475
-
}
476
-
},
477
-
"/xrpc/social.clippr.actor.searchTags": {
478
-
"get": {
479
-
"tags": [
480
-
"Tags"
481
-
],
482
-
"summary": "Search tags",
483
-
"operationId": "social.clippr.actor.searchTags",
484
-
"description": "Find tags matching search criteria.",
485
-
"parameters": [
486
-
{
487
-
"name": "q",
488
-
"in": "query",
489
-
"description": "Search query string",
490
-
"required": true,
491
-
"schema": {
492
-
"type": "string",
493
-
"description": "Search query string"
494
-
}
495
-
},
496
-
{
497
-
"name": "limit",
498
-
"in": "query",
499
-
"description": "How many tags to return in the query output",
500
-
"required": false,
501
-
"schema": {
502
-
"type": "integer",
503
-
"minimum": 1,
504
-
"maximum": 100,
505
-
"default": 25
506
-
}
507
-
},
508
-
{
509
-
"name": "actor",
510
-
"in": "query",
511
-
"description": "An actor to filter results to",
512
-
"required": false,
513
-
"schema": {
514
-
"type": "string",
515
-
"description": "An actor to filter results to",
516
-
"format": "at-identifier"
517
-
}
518
-
},
519
-
{
520
-
"name": "cursor",
521
-
"in": "query",
522
-
"description": "A parameter to paginate results",
523
-
"required": false,
524
-
"schema": {
525
-
"type": "string",
526
-
"description": "A parameter to paginate results"
527
-
}
528
-
}
529
-
],
530
-
"responses": {
531
-
"200": {
532
-
"description": "OK",
533
-
"content": {
534
-
"application/json": {
535
-
"schema": {
536
-
"type": "object",
537
-
"properties": {
538
-
"cursor": {
539
-
"type": "string",
540
-
"description": "A parameter to paginate results"
541
-
},
542
-
"tags": {
543
-
"type": "array",
544
-
"items": {
545
-
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
546
-
}
547
-
}
548
-
}
549
-
}
550
-
}
551
-
}
552
-
},
553
-
"400": {
554
-
"description": "Bad Request",
555
-
"content": {
556
-
"application/json": {
557
-
"schema": {
558
-
"type": "object",
559
-
"properties": {
560
-
"error": {
561
-
"type": "string",
562
-
"description": "A general error code",
563
-
"oneOf": [
564
-
{
565
-
"const": "InvalidRequest"
566
-
}
567
-
]
568
-
},
569
-
"message": {
570
-
"type": "string",
571
-
"description": "A detailed description of the error"
572
-
}
573
-
}
574
-
}
575
-
}
576
-
}
577
-
}
578
-
}
579
-
}
580
-
},
581
-
"/xrpc/social.clippr.feed.getClips": {
582
-
"get": {
583
-
"tags": [
584
-
"Clips"
585
-
],
586
-
"summary": "Get clips",
587
-
"operationId": "social.clippr.feed.getClips",
588
-
"description": "Get the hydrated views of a list of clips from their AT URIs.",
589
-
"parameters": [
590
-
{
591
-
"name": "uris",
592
-
"in": "query",
593
-
"description": "List of tag AT-URIs to return hydrated views for",
594
-
"required": true,
595
-
"schema": {
596
-
"type": "array",
597
-
"items": {
598
-
"type": "string",
599
-
"format": "at-uri"
600
-
},
601
-
"maxItems": 25
602
-
}
603
-
}
604
-
],
605
-
"responses": {
606
-
"200": {
607
-
"description": "OK",
608
-
"content": {
609
-
"application/json": {
610
-
"schema": {
611
-
"type": "array",
612
-
"items": {
613
-
"$ref": "#/components/schemas/social.clippr.feed.defs.clipView"
614
-
}
615
-
}
616
-
}
617
-
}
618
-
},
619
-
"400": {
620
-
"description": "Bad Request",
621
-
"content": {
622
-
"application/json": {
623
-
"schema": {
624
-
"type": "object",
625
-
"properties": {
626
-
"error": {
627
-
"type": "string",
628
-
"description": "A general error code",
629
-
"oneOf": [
630
-
{
631
-
"const": "InvalidRequest"
632
-
}
633
-
]
634
-
},
635
-
"message": {
636
-
"type": "string",
637
-
"description": "A detailed description of the error"
638
-
}
639
-
}
640
-
}
641
-
}
642
-
}
643
-
}
644
-
}
645
-
}
646
-
},
647
-
"/xrpc/social.clippr.feed.getTags": {
648
-
"get": {
649
-
"tags": [
650
-
"Tags"
651
-
],
652
-
"summary": "Get tags",
653
-
"operationId": "social.clippr.feed.getTags",
654
-
"description": "Get a the hydrated views of a list of tags from their AT URIs.",
655
-
"parameters": [
656
-
{
657
-
"name": "uris",
658
-
"in": "query",
659
-
"description": "List of tag AT-URIs to return hydrated views for",
660
-
"required": true,
661
-
"schema": {
662
-
"type": "array",
663
-
"items": {
664
-
"type": "string",
665
-
"format": "at-uri"
666
-
},
667
-
"maxItems": 25
668
-
}
669
-
}
670
-
],
671
-
"responses": {
672
-
"200": {
673
-
"description": "OK",
674
-
"content": {
675
-
"application/json": {
676
-
"schema": {
677
-
"type": "array",
678
-
"items": {
679
-
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
680
-
}
681
-
}
682
-
}
683
-
}
684
-
},
685
-
"400": {
686
-
"description": "Bad Request",
687
-
"content": {
688
-
"application/json": {
689
-
"schema": {
690
-
"type": "object",
691
-
"properties": {
692
-
"error": {
693
-
"type": "string",
694
-
"description": "A general error code",
695
-
"oneOf": [
696
-
{
697
-
"const": "InvalidRequest"
698
-
}
699
-
]
700
-
},
701
-
"message": {
702
-
"type": "string",
703
-
"description": "A detailed description of the error"
704
-
}
705
-
}
706
-
}
707
-
}
708
-
}
709
-
}
710
-
}
711
-
}
712
-
},
713
-
"/xrpc/social.clippr.feed.getProfileClips": {
714
-
"get": {
715
-
"tags": [
716
-
"Clips"
717
-
],
718
-
"summary": "Get a profile's clip feed",
719
-
"operationId": "social.clippr.feed.getProfileClips",
720
-
"description": "Get a view of a profile's reverse-chronological clips feed.",
721
-
"parameters": [
722
-
{
723
-
"name": "actor",
724
-
"in": "query",
725
-
"description": "An actor to get feed data from",
726
-
"required": true,
727
-
"schema": {
728
-
"type": "string",
729
-
"description": "An actor to get feed data from",
730
-
"format": "at-identifier"
731
-
}
732
-
},
733
-
{
734
-
"name": "limit",
735
-
"in": "query",
736
-
"description": "How many results to return with the query",
737
-
"required": false,
738
-
"schema": {
739
-
"type": "integer",
740
-
"minimum": 1,
741
-
"maximum": 100,
742
-
"default": 50
743
-
}
744
-
},
745
-
{
746
-
"name": "cursor",
747
-
"in": "query",
748
-
"description": "A parameter to paginate results",
749
-
"required": false,
750
-
"schema": {
751
-
"type": "string",
752
-
"description": "A parameter to paginate results"
753
-
}
754
-
},
755
-
{
756
-
"name": "filter",
757
-
"in": "query",
758
-
"description": "What types to include in response",
759
-
"required": false,
760
-
"schema": {
761
-
"type": "string",
762
-
"description": "What types of clips to include in response",
763
-
"default": "all_clips",
764
-
"enum": [
765
-
"all_clips",
766
-
"tagged_clips",
767
-
"untagged_clips"
768
-
]
769
-
}
770
-
}
771
-
],
772
-
"responses": {
773
-
"200": {
774
-
"description": "OK",
775
-
"content": {
776
-
"application/json": {
777
-
"schema": {
778
-
"type": "object",
779
-
"properties": {
780
-
"cursor": {
781
-
"type": "string"
782
-
},
783
-
"feed": {
784
-
"type": "array",
785
-
"items": {
786
-
"$ref": "#/components/schemas/social.clippr.feed.defs.clipView"
787
-
}
788
-
}
789
-
}
790
-
}
791
-
}
792
-
}
793
-
},
794
-
"400": {
795
-
"description": "Bad Request",
796
-
"content": {
797
-
"application/json": {
798
-
"schema": {
799
-
"type": "object",
800
-
"properties": {
801
-
"error": {
802
-
"type": "string",
803
-
"description": "A general error code",
804
-
"oneOf": [
805
-
{
806
-
"const": "InvalidRequest"
807
-
}
808
-
]
809
-
},
810
-
"message": {
811
-
"type": "string",
812
-
"description": "A detailed description of the error"
813
-
}
814
-
}
815
-
}
816
-
}
817
-
}
818
-
}
819
-
}
820
-
}
821
-
},
822
-
"/xrpc/social.clippr.feed.getProfileTags": {
823
-
"get": {
824
-
"tags": [
825
-
"Tags"
826
-
],
827
-
"summary": "Get a profile's tag feed",
828
-
"operationId": "social.clippr.feed.getProfileTags",
829
-
"description": "Get a view of a profile's reverse-chronological clips feed.",
830
-
"parameters": [
831
-
{
832
-
"name": "actor",
833
-
"in": "query",
834
-
"description": "An actor to get feed data from",
835
-
"required": true,
836
-
"schema": {
837
-
"type": "string",
838
-
"description": "An actor to get feed data from",
839
-
"format": "at-identifier"
840
-
}
841
-
},
842
-
{
843
-
"name": "limit",
844
-
"in": "query",
845
-
"description": "How many results to return with the query",
846
-
"required": false,
847
-
"schema": {
848
-
"type": "integer",
849
-
"minimum": 1,
850
-
"maximum": 100,
851
-
"default": 50
852
-
}
853
-
},
854
-
{
855
-
"name": "cursor",
856
-
"in": "query",
857
-
"description": "A parameter to paginate results",
858
-
"required": false,
859
-
"schema": {
860
-
"type": "string",
861
-
"description": "A parameter to paginate results"
862
-
}
863
-
}
864
-
],
865
-
"responses": {
866
-
"200": {
867
-
"description": "OK",
868
-
"content": {
869
-
"application/json": {
870
-
"schema": {
871
-
"type": "object",
872
-
"properties": {
873
-
"cursor": {
874
-
"type": "string"
875
-
},
876
-
"feed": {
877
-
"type": "array",
878
-
"items": {
879
-
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
880
-
}
881
-
}
882
-
}
883
-
}
884
-
}
885
-
}
886
-
},
887
-
"400": {
888
-
"description": "Bad Request",
889
-
"content": {
890
-
"application/json": {
891
-
"schema": {
892
-
"type": "object",
893
-
"properties": {
894
-
"error": {
895
-
"type": "string",
896
-
"description": "A general error code",
897
-
"oneOf": [
898
-
{
899
-
"const": "InvalidRequest"
900
-
}
901
-
]
902
-
},
903
-
"message": {
904
-
"type": "string",
905
-
"description": "A detailed description of the error"
906
-
}
907
-
}
908
-
}
909
-
}
910
-
}
911
-
}
912
-
}
913
-
}
914
-
},
915
-
"/xrpc/social.clippr.feed.getTagList": {
916
-
"get": {
917
-
"tags": [
918
-
"Tags"
919
-
],
920
-
"summary": "Get a profile's tag list",
921
-
"operationId": "social.clippr.feed.getProfileTags",
922
-
"description": "Get a profile's complete list of tags.",
923
-
"parameters": [
924
-
{
925
-
"name": "actor",
926
-
"in": "query",
927
-
"description": "An actor to fetch the tag list from",
928
-
"required": false,
929
-
"schema": {
930
-
"type": "string",
931
-
"description": "An actor to fetch the tag list from",
932
-
"format": "at-identifier"
933
-
}
934
-
}
935
-
],
936
-
"responses": {
937
-
"200": {
938
-
"description": "OK",
939
-
"content": {
940
-
"application/json": {
941
-
"schema": {
942
-
"type": "object",
943
-
"properties": {
944
-
"tags": {
945
-
"type": "array",
946
-
"items": {
947
-
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
948
-
}
949
-
}
950
-
}
951
-
}
952
-
}
953
-
}
954
-
},
955
-
"400": {
956
-
"description": "Bad Request",
957
-
"content": {
958
-
"application/json": {
959
-
"schema": {
960
-
"type": "object",
961
-
"properties": {
962
-
"error": {
963
-
"type": "string",
964
-
"description": "A general error code",
965
-
"oneOf": [
966
-
{
967
-
"error": "InvalidRequest"
968
-
}
969
-
]
970
-
},
971
-
"message": {
972
-
"type": "string",
973
-
"description": "A detailed description of the error"
974
-
}
975
-
}
976
-
}
977
-
}
978
-
}
979
-
}
980
-
}
981
-
}
982
-
},
983
-
"/xrpc/_health": {
984
-
"get": {
985
-
"summary": "Health check",
986
-
"description": "Check the health of the server. If it is functioning properly, you will receive the server's version number.",
987
-
"responses": {
988
-
"200": {
989
-
"description": "OK",
990
-
"content": {
991
-
"application/json": {
992
-
"schema": {
993
-
"type": "object",
994
-
"properties": {
995
-
"version": {
996
-
"type": "string",
997
-
"description": "The version number of the AppView."
998
-
}
999
-
}
1000
-
}
1001
-
}
1002
-
}
1003
-
}
1004
-
},
1005
-
"tags": [
1006
-
"Misc"
1007
-
]
1008
-
}
1009
-
}
1010
-
},
1011
-
"components": {
1012
-
"schemas": {
1013
-
"com.atproto.repo.strongRef": {
1014
-
"type": "object",
1015
-
"required": [
1016
-
"uri",
1017
-
"cid"
1018
-
],
1019
-
"properties": {
1020
-
"uri": {
1021
-
"type": "string",
1022
-
"format": "at-uri"
1023
-
},
1024
-
"cid": {
1025
-
"type": "string",
1026
-
"format": "cid"
1027
-
}
1028
-
}
1029
-
},
1030
-
"social.clippr.actor.defs.profileView": {
1031
-
"type": "object",
1032
-
"description": "A view of an actor's profile",
1033
-
"required": [
1034
-
"did",
1035
-
"handle",
1036
-
"displayName"
1037
-
],
1038
-
"properties": {
1039
-
"did": {
1040
-
"type": "string",
1041
-
"description": "The DID of the profile",
1042
-
"format": "did"
1043
-
},
1044
-
"handle": {
1045
-
"type": "string",
1046
-
"description": "The handle of the profile",
1047
-
"format": "handle"
1048
-
},
1049
-
"displayName": {
1050
-
"type": "string",
1051
-
"description": "The display name associated to the profile",
1052
-
"maxLength": 64
1053
-
},
1054
-
"description": {
1055
-
"type": "string",
1056
-
"description": "The biography associated to the profile",
1057
-
"maxLength": 500
1058
-
},
1059
-
"avatar": {
1060
-
"type": "string",
1061
-
"description": "A link to the profile's avatar",
1062
-
"format": "uri"
1063
-
},
1064
-
"createdAt": {
1065
-
"type": "string",
1066
-
"description": "When the profile record was first created",
1067
-
"format": "date-time"
1068
-
}
1069
-
}
1070
-
},
1071
-
"social.clippr.actor.defs.preferences": {
1072
-
"type": "array",
1073
-
"items": {
1074
-
"oneOf": [
1075
-
{
1076
-
"$ref": "#/components/schemas/social.clippr.actor.defs.publishingScopesPref"
1077
-
}
1078
-
]
1079
-
}
1080
-
},
1081
-
"social.clippr.actor.defs.publishingScopesPref": {
1082
-
"type": "object",
1083
-
"description": "Preferences for a user's publishing scopes",
1084
-
"required": [
1085
-
"defaultScope"
1086
-
],
1087
-
"properties": {
1088
-
"defaultScope": {
1089
-
"type": "string",
1090
-
"description": "What publishing scope to mark a clip as by default",
1091
-
"enum": [
1092
-
"public",
1093
-
"unlisted"
1094
-
]
1095
-
}
1096
-
}
1097
-
},
1098
-
"social.clippr.feed.defs.clipView": {
1099
-
"type": "object",
1100
-
"description": "A view of a single bookmark (or 'clip')",
1101
-
"required": [
1102
-
"uri",
1103
-
"cid",
1104
-
"author",
1105
-
"record",
1106
-
"indexedAt"
1107
-
],
1108
-
"properties": {
1109
-
"uri": {
1110
-
"type": "string",
1111
-
"description": "The AT-URI of the clip",
1112
-
"format": "at-uri"
1113
-
},
1114
-
"cid": {
1115
-
"type": "string",
1116
-
"description": "The CID of the clip",
1117
-
"format": "cid"
1118
-
},
1119
-
"author": {
1120
-
"description": "A reference to the actor's profile",
1121
-
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
1122
-
},
1123
-
"record": {
1124
-
"type": "object",
1125
-
"description": "The raw record of the clip"
1126
-
},
1127
-
"indexedAt": {
1128
-
"type": "string",
1129
-
"description": "The time in which the clip's record was indexed by the AppView",
1130
-
"format": "date-time"
1131
-
}
1132
-
}
1133
-
},
1134
-
"social.clippr.feed.defs.tagView": {
1135
-
"type": "object",
1136
-
"description": "A view of a single tag",
1137
-
"required": [
1138
-
"uri",
1139
-
"cid",
1140
-
"author",
1141
-
"record",
1142
-
"indexedAt"
1143
-
],
1144
-
"properties": {
1145
-
"uri": {
1146
-
"type": "string",
1147
-
"description": "The AT-URI to the tag",
1148
-
"format": "at-uri"
1149
-
},
1150
-
"cid": {
1151
-
"type": "string",
1152
-
"description": "The CID of the tag",
1153
-
"format": "cid"
1154
-
},
1155
-
"author": {
1156
-
"description": "A reference to the actor's profile",
1157
-
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
1158
-
},
1159
-
"record": {
1160
-
"type": "object",
1161
-
"description": "The raw record of the clip"
1162
-
},
1163
-
"indexedAt": {
1164
-
"type": "string",
1165
-
"description": "The time in which the tag's record was indexed by the AppView",
1166
-
"format": "date-time"
1167
-
}
1168
-
}
1169
-
},
1170
-
"social.clippr.actor.profile": {
1171
-
"type": "object",
1172
-
"required": [
1173
-
"createdAt",
1174
-
"displayName"
1175
-
],
1176
-
"properties": {
1177
-
"displayName": {
1178
-
"type": "string",
1179
-
"description": "A display name to be shown on a profile",
1180
-
"maxLength": 64
1181
-
},
1182
-
"description": {
1183
-
"type": "string",
1184
-
"description": "Text for user to describe themselves",
1185
-
"maxLength": 500
1186
-
},
1187
-
"avatar": {
1188
-
"type": "blob",
1189
-
"maxSize": 1000000,
1190
-
"description": "Image to show on user's profiles"
1191
-
},
1192
-
"createdAt": {
1193
-
"type": "string",
1194
-
"description": "The creation date of the profile",
1195
-
"format": "date-time"
1196
-
}
1197
-
}
1198
-
},
1199
-
"social.clippr.feed.clip": {
1200
-
"type": "object",
1201
-
"required": [
1202
-
"url",
1203
-
"title",
1204
-
"description",
1205
-
"unlisted",
1206
-
"createdAt"
1207
-
],
1208
-
"properties": {
1209
-
"url": {
1210
-
"type": "string",
1211
-
"description": "The URL of the bookmark. Cannot be left empty or be modified after creation.",
1212
-
"format": "uri",
1213
-
"maxLength": 2000
1214
-
},
1215
-
"title": {
1216
-
"type": "string",
1217
-
"description": "The title of the bookmark. If left empty, reuse the URL.",
1218
-
"maxLength": 2048
1219
-
},
1220
-
"description": {
1221
-
"type": "string",
1222
-
"description": "A description of the bookmark's content. This should be ripped from the URL metadata and be static for all records using the URL.",
1223
-
"maxLength": 4096
1224
-
},
1225
-
"notes": {
1226
-
"type": "string",
1227
-
"description": "User-written notes for the bookmark. Public and personal.",
1228
-
"maxLength": 10000
1229
-
},
1230
-
"tags": {
1231
-
"type": "array",
1232
-
"description": "An array of tags. A format of solely alphanumeric characters and dashes should be used.",
1233
-
"items": {
1234
-
"$ref": "#/components/schemas/com.atproto.repo.strongRef"
1235
-
}
1236
-
},
1237
-
"unlisted": {
1238
-
"type": "boolean",
1239
-
"description": "Whether the bookmark can be used for feed indexing and aggregation"
1240
-
},
1241
-
"unread": {
1242
-
"type": "boolean",
1243
-
"description": "Whether the bookmark has been read by the user",
1244
-
"default": true
1245
-
},
1246
-
"languages": {
1247
-
"type": "array",
1248
-
"items": {
1249
-
"type": "string",
1250
-
"format": "language"
1251
-
},
1252
-
"maxItems": 5
1253
-
},
1254
-
"createdAt": {
1255
-
"type": "string",
1256
-
"description": "Client-declared timestamp when the bookmark is created",
1257
-
"format": "date-time"
1258
-
}
1259
-
}
1260
-
},
1261
-
"social.clippr.feed.tag": {
1262
-
"type": "object",
1263
-
"required": [
1264
-
"name",
1265
-
"createdAt"
1266
-
],
1267
-
"properties": {
1268
-
"name": {
1269
-
"type": "string",
1270
-
"description": "A de-duplicated string containing the name of the tag",
1271
-
"maxLength": 64
1272
-
},
1273
-
"color": {
1274
-
"type": "string",
1275
-
"description": "A hexadecimal color code",
1276
-
"maxLength": 7
1277
-
},
1278
-
"description": {
1279
-
"type": "string",
1280
-
"description": "A description of the tag for additional context",
1281
-
"maxLength": 5000
1282
-
},
1283
-
"createdAt": {
1284
-
"type": "string",
1285
-
"description": "A client-defined timestamp for the creation of the tag",
1286
-
"format": "date-time"
1287
-
}
1288
-
}
1289
-
}
1290
-
}
1291
-
}
2
+
"openapi": "3.1.1",
3
+
"info": {
4
+
"title": "Clippr AppView API",
5
+
"version": "1.0.1",
6
+
"description": "API reference documentation for Clippr's backend.",
7
+
"license": {
8
+
"name": "GNU Affero General Public License v3.0 only",
9
+
"identifier": "AGPL-3.0-only"
10
+
}
11
+
},
12
+
"servers": [
13
+
{
14
+
"url": "http://localhost:9090",
15
+
"description": "Development server"
16
+
},
17
+
{
18
+
"url": "https://api.clippr.social",
19
+
"description": "Production server"
20
+
}
21
+
],
22
+
"tags": [
23
+
{
24
+
"name": "Clips",
25
+
"description": "API paths that relate to user bookmarks, or 'clips'."
26
+
},
27
+
{
28
+
"name": "Tags",
29
+
"description": "API paths that relate to user tags."
30
+
},
31
+
{
32
+
"name": "Profile",
33
+
"description": "API paths that relate to user profiles."
34
+
},
35
+
{
36
+
"name": "Misc",
37
+
"description": "API paths that don't fit into any other category."
38
+
}
39
+
],
40
+
"paths": {
41
+
"/xrpc/social.clippr.actor.getPreferences": {
42
+
"get": {
43
+
"tags": ["Profile"],
44
+
"summary": "Get a user's preferences",
45
+
"operationId": "social.clippr.actor.getPreferences",
46
+
"description": "Get a user's private preferences. Requires authentication.",
47
+
"security": [
48
+
{
49
+
"Bearer": []
50
+
}
51
+
],
52
+
"responses": {
53
+
"200": {
54
+
"description": "OK",
55
+
"content": {
56
+
"application/json": {
57
+
"schema": {
58
+
"$ref": "#/components/schemas/social.clippr.actor.defs.preferences"
59
+
}
60
+
}
61
+
}
62
+
},
63
+
"400": {
64
+
"description": "Bad Request",
65
+
"content": {
66
+
"application/json": {
67
+
"schema": {
68
+
"type": "object",
69
+
"properties": {
70
+
"error": {
71
+
"type": "string",
72
+
"description": "A general error code",
73
+
"oneOf": [
74
+
{
75
+
"const": "InvalidRequest"
76
+
},
77
+
{
78
+
"const": "ExpiredToken"
79
+
},
80
+
{
81
+
"const": "InvalidToken"
82
+
}
83
+
]
84
+
},
85
+
"message": {
86
+
"type": "string",
87
+
"description": "A detailed description of the error"
88
+
}
89
+
}
90
+
}
91
+
}
92
+
}
93
+
},
94
+
"401": {
95
+
"description": "Unauthorized",
96
+
"content": {
97
+
"application/json": {
98
+
"schema": {
99
+
"type": "object",
100
+
"properties": {
101
+
"error": {
102
+
"type": "string",
103
+
"description": "A general error code",
104
+
"oneOf": [
105
+
{
106
+
"const": "AuthMissing"
107
+
}
108
+
]
109
+
},
110
+
"message": {
111
+
"type": "string",
112
+
"description": "A detailed description of the error"
113
+
}
114
+
}
115
+
}
116
+
}
117
+
}
118
+
}
119
+
}
120
+
}
121
+
},
122
+
"/xrpc/social.clippr.actor.getProfile": {
123
+
"get": {
124
+
"tags": ["Profile"],
125
+
"summary": "Get a profile",
126
+
"operationId": "social.clippr.actor.getProfile",
127
+
"description": "Get a user's profile based on a given DID or handle.",
128
+
"parameters": [
129
+
{
130
+
"name": "actor",
131
+
"in": "query",
132
+
"description": "Handle or DID of account to fetch profile of",
133
+
"required": true,
134
+
"content": {
135
+
"schema": {
136
+
"type": "string",
137
+
"description": "Handle or DID of account to fetch profile of",
138
+
"format": "at-identifier"
139
+
}
140
+
},
141
+
"deprecated": false,
142
+
"allowEmptyValue": false
143
+
}
144
+
],
145
+
"responses": {
146
+
"200": {
147
+
"description": "OK",
148
+
"content": {
149
+
"application/json": {
150
+
"schema": {
151
+
"type": "object",
152
+
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
153
+
}
154
+
}
155
+
}
156
+
},
157
+
"400": {
158
+
"description": "Bad Request",
159
+
"content": {
160
+
"application/json": {
161
+
"schema": {
162
+
"type": "object",
163
+
"properties": {
164
+
"error": {
165
+
"type": "string",
166
+
"description": "A general error code",
167
+
"oneOf": [
168
+
{
169
+
"const": "InvalidRequest"
170
+
}
171
+
]
172
+
},
173
+
"message": {
174
+
"type": "string",
175
+
"description": "A detailed description of the error"
176
+
}
177
+
}
178
+
}
179
+
}
180
+
}
181
+
}
182
+
}
183
+
}
184
+
},
185
+
"/xrpc/social.clippr.actor.putPreferences": {
186
+
"post": {
187
+
"tags": ["Profile"],
188
+
"summary": "Set a user's preferences",
189
+
"operationId": "social.clippr.actor.putPreferences",
190
+
"description": "Sets the private preferences attached to the account. Requires authentication.",
191
+
"security": [
192
+
{
193
+
"Bearer": []
194
+
}
195
+
],
196
+
"requestBody": {
197
+
"required": true,
198
+
"content": {
199
+
"application/json": {
200
+
"schema": {
201
+
"type": "object",
202
+
"properties": {
203
+
"preferences": {
204
+
"$ref": "#/components/schemas/social.clippr.actor.defs.preferences"
205
+
}
206
+
}
207
+
}
208
+
}
209
+
}
210
+
},
211
+
"responses": {
212
+
"200": {
213
+
"description": "OK"
214
+
},
215
+
"400": {
216
+
"description": "Bad Request",
217
+
"content": {
218
+
"application/json": {
219
+
"schema": {
220
+
"type": "object",
221
+
"properties": {
222
+
"error": {
223
+
"type": "string",
224
+
"oneOf": [
225
+
{
226
+
"const": "InvalidRequest"
227
+
},
228
+
{
229
+
"const": "ExpiredToken"
230
+
},
231
+
{
232
+
"const": "InvalidToken"
233
+
}
234
+
],
235
+
"description": "A general error code"
236
+
},
237
+
"message": {
238
+
"type": "string",
239
+
"description": "A detailed description of the error"
240
+
}
241
+
}
242
+
}
243
+
}
244
+
}
245
+
},
246
+
"401": {
247
+
"description": "Unauthorized",
248
+
"content": {
249
+
"application/json": {
250
+
"schema": {
251
+
"type": "object",
252
+
"properties": {
253
+
"error": {
254
+
"type": "string",
255
+
"description": "A general error code",
256
+
"oneOf": [
257
+
{
258
+
"const": "AuthMissing"
259
+
}
260
+
]
261
+
},
262
+
"message": {
263
+
"type": "string",
264
+
"description": "A detailed description of the error"
265
+
}
266
+
}
267
+
}
268
+
}
269
+
}
270
+
}
271
+
}
272
+
}
273
+
},
274
+
"/xrpc/social.clippr.actor.searchClips": {
275
+
"get": {
276
+
"tags": ["Clips"],
277
+
"summary": "Search clips",
278
+
"operationId": "social.clippr.actor.searchClips",
279
+
"description": "Find clips matching search criteria.",
280
+
"parameters": [
281
+
{
282
+
"name": "q",
283
+
"in": "query",
284
+
"description": "Search query string",
285
+
"required": true,
286
+
"schema": {
287
+
"type": "string",
288
+
"description": "Search query string"
289
+
}
290
+
},
291
+
{
292
+
"name": "limit",
293
+
"in": "query",
294
+
"description": "How many clips to return in the query output",
295
+
"required": false,
296
+
"schema": {
297
+
"type": "integer",
298
+
"minimum": 1,
299
+
"maximum": 100,
300
+
"default": 25
301
+
}
302
+
},
303
+
{
304
+
"name": "actor",
305
+
"in": "query",
306
+
"description": "An actor to filter results to",
307
+
"required": false,
308
+
"schema": {
309
+
"type": "string",
310
+
"description": "An actor to filter results to",
311
+
"format": "at-identifier"
312
+
}
313
+
},
314
+
{
315
+
"name": "cursor",
316
+
"in": "query",
317
+
"description": "A parameter to paginate results",
318
+
"required": false,
319
+
"schema": {
320
+
"type": "string",
321
+
"description": "A parameter to paginate results"
322
+
}
323
+
}
324
+
],
325
+
"responses": {
326
+
"200": {
327
+
"description": "OK",
328
+
"content": {
329
+
"application/json": {
330
+
"schema": {
331
+
"type": "object",
332
+
"properties": {
333
+
"cursor": {
334
+
"type": "string",
335
+
"description": "A parameter to paginate results"
336
+
},
337
+
"clips": {
338
+
"type": "array",
339
+
"items": {
340
+
"$ref": "#/components/schemas/social.clippr.feed.defs.clipView"
341
+
}
342
+
}
343
+
}
344
+
}
345
+
}
346
+
}
347
+
},
348
+
"400": {
349
+
"description": "Bad Request",
350
+
"content": {
351
+
"application/json": {
352
+
"schema": {
353
+
"type": "object",
354
+
"properties": {
355
+
"error": {
356
+
"type": "string",
357
+
"description": "A general error code",
358
+
"oneOf": [
359
+
{
360
+
"const": "InvalidRequest"
361
+
}
362
+
]
363
+
},
364
+
"message": {
365
+
"type": "string",
366
+
"description": "A detailed description of the error"
367
+
}
368
+
}
369
+
}
370
+
}
371
+
}
372
+
}
373
+
}
374
+
}
375
+
},
376
+
"/xrpc/social.clippr.actor.searchProfiles": {
377
+
"get": {
378
+
"tags": ["Profile"],
379
+
"summary": "Search profiles",
380
+
"operationId": "social.clippr.actor.searchProfiles",
381
+
"description": "Find profiles matching search criteria.",
382
+
"parameters": [
383
+
{
384
+
"name": "q",
385
+
"in": "query",
386
+
"description": "Search query string",
387
+
"required": false,
388
+
"schema": {
389
+
"type": "string",
390
+
"description": "Search query string"
391
+
}
392
+
},
393
+
{
394
+
"name": "limit",
395
+
"in": "query",
396
+
"description": "The number of profiles to be returned in the query",
397
+
"required": false,
398
+
"schema": {
399
+
"type": "integer",
400
+
"minimum": 1,
401
+
"maximum": 100,
402
+
"default": 25
403
+
}
404
+
},
405
+
{
406
+
"name": "cursor",
407
+
"in": "query",
408
+
"description": "A parameter used for pagination",
409
+
"required": false,
410
+
"schema": {
411
+
"type": "string",
412
+
"description": "A parameter used for pagination"
413
+
}
414
+
}
415
+
],
416
+
"responses": {
417
+
"200": {
418
+
"description": "OK",
419
+
"content": {
420
+
"application/json": {
421
+
"schema": {
422
+
"type": "object",
423
+
"properties": {
424
+
"cursor": {
425
+
"type": "string",
426
+
"description": "A parameter used for pagination"
427
+
},
428
+
"actors": {
429
+
"type": "array",
430
+
"items": {
431
+
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
432
+
}
433
+
}
434
+
}
435
+
}
436
+
}
437
+
}
438
+
},
439
+
"400": {
440
+
"description": "Bad Request",
441
+
"content": {
442
+
"application/json": {
443
+
"schema": {
444
+
"type": "object",
445
+
"properties": {
446
+
"error": {
447
+
"type": "string",
448
+
"description": "A general error code",
449
+
"oneOf": [
450
+
{
451
+
"const": "InvalidRequest"
452
+
}
453
+
]
454
+
},
455
+
"message": {
456
+
"type": "string",
457
+
"description": "A detailed description of the error"
458
+
}
459
+
}
460
+
}
461
+
}
462
+
}
463
+
}
464
+
}
465
+
}
466
+
},
467
+
"/xrpc/social.clippr.actor.searchTags": {
468
+
"get": {
469
+
"tags": ["Tags"],
470
+
"summary": "Search tags",
471
+
"operationId": "social.clippr.actor.searchTags",
472
+
"description": "Find tags matching search criteria.",
473
+
"parameters": [
474
+
{
475
+
"name": "q",
476
+
"in": "query",
477
+
"description": "Search query string",
478
+
"required": true,
479
+
"schema": {
480
+
"type": "string",
481
+
"description": "Search query string"
482
+
}
483
+
},
484
+
{
485
+
"name": "limit",
486
+
"in": "query",
487
+
"description": "How many tags to return in the query output",
488
+
"required": false,
489
+
"schema": {
490
+
"type": "integer",
491
+
"minimum": 1,
492
+
"maximum": 100,
493
+
"default": 25
494
+
}
495
+
},
496
+
{
497
+
"name": "actor",
498
+
"in": "query",
499
+
"description": "An actor to filter results to",
500
+
"required": false,
501
+
"schema": {
502
+
"type": "string",
503
+
"description": "An actor to filter results to",
504
+
"format": "at-identifier"
505
+
}
506
+
},
507
+
{
508
+
"name": "cursor",
509
+
"in": "query",
510
+
"description": "A parameter to paginate results",
511
+
"required": false,
512
+
"schema": {
513
+
"type": "string",
514
+
"description": "A parameter to paginate results"
515
+
}
516
+
}
517
+
],
518
+
"responses": {
519
+
"200": {
520
+
"description": "OK",
521
+
"content": {
522
+
"application/json": {
523
+
"schema": {
524
+
"type": "object",
525
+
"properties": {
526
+
"cursor": {
527
+
"type": "string",
528
+
"description": "A parameter to paginate results"
529
+
},
530
+
"tags": {
531
+
"type": "array",
532
+
"items": {
533
+
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
534
+
}
535
+
}
536
+
}
537
+
}
538
+
}
539
+
}
540
+
},
541
+
"400": {
542
+
"description": "Bad Request",
543
+
"content": {
544
+
"application/json": {
545
+
"schema": {
546
+
"type": "object",
547
+
"properties": {
548
+
"error": {
549
+
"type": "string",
550
+
"description": "A general error code",
551
+
"oneOf": [
552
+
{
553
+
"const": "InvalidRequest"
554
+
}
555
+
]
556
+
},
557
+
"message": {
558
+
"type": "string",
559
+
"description": "A detailed description of the error"
560
+
}
561
+
}
562
+
}
563
+
}
564
+
}
565
+
}
566
+
}
567
+
}
568
+
},
569
+
"/xrpc/social.clippr.feed.getClips": {
570
+
"get": {
571
+
"tags": ["Clips"],
572
+
"summary": "Get clips",
573
+
"operationId": "social.clippr.feed.getClips",
574
+
"description": "Get the hydrated views of a list of clips from their AT URIs.",
575
+
"parameters": [
576
+
{
577
+
"name": "uris",
578
+
"in": "query",
579
+
"description": "List of tag AT-URIs to return hydrated views for",
580
+
"required": true,
581
+
"schema": {
582
+
"type": "array",
583
+
"items": {
584
+
"type": "string",
585
+
"format": "at-uri"
586
+
},
587
+
"maxItems": 25
588
+
}
589
+
}
590
+
],
591
+
"responses": {
592
+
"200": {
593
+
"description": "OK",
594
+
"content": {
595
+
"application/json": {
596
+
"schema": {
597
+
"type": "array",
598
+
"items": {
599
+
"$ref": "#/components/schemas/social.clippr.feed.defs.clipView"
600
+
}
601
+
}
602
+
}
603
+
}
604
+
},
605
+
"400": {
606
+
"description": "Bad Request",
607
+
"content": {
608
+
"application/json": {
609
+
"schema": {
610
+
"type": "object",
611
+
"properties": {
612
+
"error": {
613
+
"type": "string",
614
+
"description": "A general error code",
615
+
"oneOf": [
616
+
{
617
+
"const": "InvalidRequest"
618
+
}
619
+
]
620
+
},
621
+
"message": {
622
+
"type": "string",
623
+
"description": "A detailed description of the error"
624
+
}
625
+
}
626
+
}
627
+
}
628
+
}
629
+
}
630
+
}
631
+
}
632
+
},
633
+
"/xrpc/social.clippr.feed.getTags": {
634
+
"get": {
635
+
"tags": ["Tags"],
636
+
"summary": "Get tags",
637
+
"operationId": "social.clippr.feed.getTags",
638
+
"description": "Get a the hydrated views of a list of tags from their AT URIs.",
639
+
"parameters": [
640
+
{
641
+
"name": "uris",
642
+
"in": "query",
643
+
"description": "List of tag AT-URIs to return hydrated views for",
644
+
"required": true,
645
+
"schema": {
646
+
"type": "array",
647
+
"items": {
648
+
"type": "string",
649
+
"format": "at-uri"
650
+
},
651
+
"maxItems": 25
652
+
}
653
+
}
654
+
],
655
+
"responses": {
656
+
"200": {
657
+
"description": "OK",
658
+
"content": {
659
+
"application/json": {
660
+
"schema": {
661
+
"type": "array",
662
+
"items": {
663
+
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
664
+
}
665
+
}
666
+
}
667
+
}
668
+
},
669
+
"400": {
670
+
"description": "Bad Request",
671
+
"content": {
672
+
"application/json": {
673
+
"schema": {
674
+
"type": "object",
675
+
"properties": {
676
+
"error": {
677
+
"type": "string",
678
+
"description": "A general error code",
679
+
"oneOf": [
680
+
{
681
+
"const": "InvalidRequest"
682
+
}
683
+
]
684
+
},
685
+
"message": {
686
+
"type": "string",
687
+
"description": "A detailed description of the error"
688
+
}
689
+
}
690
+
}
691
+
}
692
+
}
693
+
}
694
+
}
695
+
}
696
+
},
697
+
"/xrpc/social.clippr.feed.getProfileClips": {
698
+
"get": {
699
+
"tags": ["Clips"],
700
+
"summary": "Get a profile's clip feed",
701
+
"operationId": "social.clippr.feed.getProfileClips",
702
+
"description": "Get a view of a profile's reverse-chronological clips feed.",
703
+
"parameters": [
704
+
{
705
+
"name": "actor",
706
+
"in": "query",
707
+
"description": "An actor to get feed data from",
708
+
"required": true,
709
+
"schema": {
710
+
"type": "string",
711
+
"description": "An actor to get feed data from",
712
+
"format": "at-identifier"
713
+
}
714
+
},
715
+
{
716
+
"name": "limit",
717
+
"in": "query",
718
+
"description": "How many results to return with the query",
719
+
"required": false,
720
+
"schema": {
721
+
"type": "integer",
722
+
"minimum": 1,
723
+
"maximum": 100,
724
+
"default": 50
725
+
}
726
+
},
727
+
{
728
+
"name": "cursor",
729
+
"in": "query",
730
+
"description": "A parameter to paginate results",
731
+
"required": false,
732
+
"schema": {
733
+
"type": "string",
734
+
"description": "A parameter to paginate results"
735
+
}
736
+
},
737
+
{
738
+
"name": "filter",
739
+
"in": "query",
740
+
"description": "What types to include in response",
741
+
"required": false,
742
+
"schema": {
743
+
"type": "string",
744
+
"description": "What types of clips to include in response",
745
+
"default": "all_clips",
746
+
"enum": ["all_clips", "tagged_clips", "untagged_clips"]
747
+
}
748
+
}
749
+
],
750
+
"responses": {
751
+
"200": {
752
+
"description": "OK",
753
+
"content": {
754
+
"application/json": {
755
+
"schema": {
756
+
"type": "object",
757
+
"properties": {
758
+
"cursor": {
759
+
"type": "string"
760
+
},
761
+
"feed": {
762
+
"type": "array",
763
+
"items": {
764
+
"$ref": "#/components/schemas/social.clippr.feed.defs.clipView"
765
+
}
766
+
}
767
+
}
768
+
}
769
+
}
770
+
}
771
+
},
772
+
"400": {
773
+
"description": "Bad Request",
774
+
"content": {
775
+
"application/json": {
776
+
"schema": {
777
+
"type": "object",
778
+
"properties": {
779
+
"error": {
780
+
"type": "string",
781
+
"description": "A general error code",
782
+
"oneOf": [
783
+
{
784
+
"const": "InvalidRequest"
785
+
}
786
+
]
787
+
},
788
+
"message": {
789
+
"type": "string",
790
+
"description": "A detailed description of the error"
791
+
}
792
+
}
793
+
}
794
+
}
795
+
}
796
+
}
797
+
}
798
+
}
799
+
},
800
+
"/xrpc/social.clippr.feed.getProfileTags": {
801
+
"get": {
802
+
"tags": ["Tags"],
803
+
"summary": "Get a profile's tag feed",
804
+
"operationId": "social.clippr.feed.getProfileTags",
805
+
"description": "Get a view of a profile's reverse-chronological clips feed.",
806
+
"parameters": [
807
+
{
808
+
"name": "actor",
809
+
"in": "query",
810
+
"description": "An actor to get feed data from",
811
+
"required": true,
812
+
"schema": {
813
+
"type": "string",
814
+
"description": "An actor to get feed data from",
815
+
"format": "at-identifier"
816
+
}
817
+
},
818
+
{
819
+
"name": "limit",
820
+
"in": "query",
821
+
"description": "How many results to return with the query",
822
+
"required": false,
823
+
"schema": {
824
+
"type": "integer",
825
+
"minimum": 1,
826
+
"maximum": 100,
827
+
"default": 50
828
+
}
829
+
},
830
+
{
831
+
"name": "cursor",
832
+
"in": "query",
833
+
"description": "A parameter to paginate results",
834
+
"required": false,
835
+
"schema": {
836
+
"type": "string",
837
+
"description": "A parameter to paginate results"
838
+
}
839
+
}
840
+
],
841
+
"responses": {
842
+
"200": {
843
+
"description": "OK",
844
+
"content": {
845
+
"application/json": {
846
+
"schema": {
847
+
"type": "object",
848
+
"properties": {
849
+
"cursor": {
850
+
"type": "string"
851
+
},
852
+
"feed": {
853
+
"type": "array",
854
+
"items": {
855
+
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
856
+
}
857
+
}
858
+
}
859
+
}
860
+
}
861
+
}
862
+
},
863
+
"400": {
864
+
"description": "Bad Request",
865
+
"content": {
866
+
"application/json": {
867
+
"schema": {
868
+
"type": "object",
869
+
"properties": {
870
+
"error": {
871
+
"type": "string",
872
+
"description": "A general error code",
873
+
"oneOf": [
874
+
{
875
+
"const": "InvalidRequest"
876
+
}
877
+
]
878
+
},
879
+
"message": {
880
+
"type": "string",
881
+
"description": "A detailed description of the error"
882
+
}
883
+
}
884
+
}
885
+
}
886
+
}
887
+
}
888
+
}
889
+
}
890
+
},
891
+
"/xrpc/social.clippr.feed.getTagList": {
892
+
"get": {
893
+
"tags": ["Tags"],
894
+
"summary": "Get a profile's tag list",
895
+
"operationId": "social.clippr.feed.getProfileTags",
896
+
"description": "Get a profile's complete list of tags.",
897
+
"parameters": [
898
+
{
899
+
"name": "actor",
900
+
"in": "query",
901
+
"description": "An actor to fetch the tag list from",
902
+
"required": false,
903
+
"schema": {
904
+
"type": "string",
905
+
"description": "An actor to fetch the tag list from",
906
+
"format": "at-identifier"
907
+
}
908
+
}
909
+
],
910
+
"responses": {
911
+
"200": {
912
+
"description": "OK",
913
+
"content": {
914
+
"application/json": {
915
+
"schema": {
916
+
"type": "object",
917
+
"properties": {
918
+
"tags": {
919
+
"type": "array",
920
+
"items": {
921
+
"$ref": "#/components/schemas/social.clippr.feed.defs.tagView"
922
+
}
923
+
}
924
+
}
925
+
}
926
+
}
927
+
}
928
+
},
929
+
"400": {
930
+
"description": "Bad Request",
931
+
"content": {
932
+
"application/json": {
933
+
"schema": {
934
+
"type": "object",
935
+
"properties": {
936
+
"error": {
937
+
"type": "string",
938
+
"description": "A general error code",
939
+
"oneOf": [
940
+
{
941
+
"error": "InvalidRequest"
942
+
}
943
+
]
944
+
},
945
+
"message": {
946
+
"type": "string",
947
+
"description": "A detailed description of the error"
948
+
}
949
+
}
950
+
}
951
+
}
952
+
}
953
+
}
954
+
}
955
+
}
956
+
},
957
+
"/xrpc/_health": {
958
+
"get": {
959
+
"summary": "Health check",
960
+
"description": "Check the health of the server. If it is functioning properly, you will receive the server's version number.",
961
+
"responses": {
962
+
"200": {
963
+
"description": "OK",
964
+
"content": {
965
+
"application/json": {
966
+
"schema": {
967
+
"type": "object",
968
+
"properties": {
969
+
"version": {
970
+
"type": "string",
971
+
"description": "The version number of the AppView."
972
+
}
973
+
}
974
+
}
975
+
}
976
+
}
977
+
}
978
+
},
979
+
"tags": ["Misc"]
980
+
}
981
+
}
982
+
},
983
+
"components": {
984
+
"schemas": {
985
+
"com.atproto.repo.strongRef": {
986
+
"type": "object",
987
+
"required": ["uri", "cid"],
988
+
"properties": {
989
+
"uri": {
990
+
"type": "string",
991
+
"format": "at-uri"
992
+
},
993
+
"cid": {
994
+
"type": "string",
995
+
"format": "cid"
996
+
}
997
+
}
998
+
},
999
+
"social.clippr.actor.defs.profileView": {
1000
+
"type": "object",
1001
+
"description": "A view of an actor's profile",
1002
+
"required": ["did", "handle", "displayName"],
1003
+
"properties": {
1004
+
"did": {
1005
+
"type": "string",
1006
+
"description": "The DID of the profile",
1007
+
"format": "did"
1008
+
},
1009
+
"handle": {
1010
+
"type": "string",
1011
+
"description": "The handle of the profile",
1012
+
"format": "handle"
1013
+
},
1014
+
"displayName": {
1015
+
"type": "string",
1016
+
"description": "The display name associated to the profile",
1017
+
"maxLength": 64
1018
+
},
1019
+
"description": {
1020
+
"type": "string",
1021
+
"description": "The biography associated to the profile",
1022
+
"maxLength": 500
1023
+
},
1024
+
"avatar": {
1025
+
"type": "string",
1026
+
"description": "A link to the profile's avatar",
1027
+
"format": "uri"
1028
+
},
1029
+
"createdAt": {
1030
+
"type": "string",
1031
+
"description": "When the profile record was first created",
1032
+
"format": "date-time"
1033
+
}
1034
+
}
1035
+
},
1036
+
"social.clippr.actor.defs.preferences": {
1037
+
"type": "array",
1038
+
"items": {
1039
+
"oneOf": [
1040
+
{
1041
+
"$ref": "#/components/schemas/social.clippr.actor.defs.publishingScopesPref"
1042
+
}
1043
+
]
1044
+
}
1045
+
},
1046
+
"social.clippr.actor.defs.publishingScopesPref": {
1047
+
"type": "object",
1048
+
"description": "Preferences for a user's publishing scopes",
1049
+
"required": ["defaultScope"],
1050
+
"properties": {
1051
+
"defaultScope": {
1052
+
"type": "string",
1053
+
"description": "What publishing scope to mark a clip as by default",
1054
+
"enum": ["public", "unlisted"]
1055
+
}
1056
+
}
1057
+
},
1058
+
"social.clippr.feed.defs.clipView": {
1059
+
"type": "object",
1060
+
"description": "A view of a single bookmark (or 'clip')",
1061
+
"required": ["uri", "cid", "author", "record", "indexedAt"],
1062
+
"properties": {
1063
+
"uri": {
1064
+
"type": "string",
1065
+
"description": "The AT-URI of the clip",
1066
+
"format": "at-uri"
1067
+
},
1068
+
"cid": {
1069
+
"type": "string",
1070
+
"description": "The CID of the clip",
1071
+
"format": "cid"
1072
+
},
1073
+
"author": {
1074
+
"description": "A reference to the actor's profile",
1075
+
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
1076
+
},
1077
+
"record": {
1078
+
"type": "object",
1079
+
"description": "The raw record of the clip"
1080
+
},
1081
+
"indexedAt": {
1082
+
"type": "string",
1083
+
"description": "The time in which the clip's record was indexed by the AppView",
1084
+
"format": "date-time"
1085
+
}
1086
+
}
1087
+
},
1088
+
"social.clippr.feed.defs.tagView": {
1089
+
"type": "object",
1090
+
"description": "A view of a single tag",
1091
+
"required": ["uri", "cid", "author", "record", "indexedAt"],
1092
+
"properties": {
1093
+
"uri": {
1094
+
"type": "string",
1095
+
"description": "The AT-URI to the tag",
1096
+
"format": "at-uri"
1097
+
},
1098
+
"cid": {
1099
+
"type": "string",
1100
+
"description": "The CID of the tag",
1101
+
"format": "cid"
1102
+
},
1103
+
"author": {
1104
+
"description": "A reference to the actor's profile",
1105
+
"$ref": "#/components/schemas/social.clippr.actor.defs.profileView"
1106
+
},
1107
+
"record": {
1108
+
"type": "object",
1109
+
"description": "The raw record of the clip"
1110
+
},
1111
+
"indexedAt": {
1112
+
"type": "string",
1113
+
"description": "The time in which the tag's record was indexed by the AppView",
1114
+
"format": "date-time"
1115
+
}
1116
+
}
1117
+
},
1118
+
"social.clippr.actor.profile": {
1119
+
"type": "object",
1120
+
"required": ["createdAt", "displayName"],
1121
+
"properties": {
1122
+
"displayName": {
1123
+
"type": "string",
1124
+
"description": "A display name to be shown on a profile",
1125
+
"maxLength": 64
1126
+
},
1127
+
"description": {
1128
+
"type": "string",
1129
+
"description": "Text for user to describe themselves",
1130
+
"maxLength": 500
1131
+
},
1132
+
"avatar": {
1133
+
"type": "blob",
1134
+
"maxSize": 1000000,
1135
+
"description": "Image to show on user's profiles"
1136
+
},
1137
+
"createdAt": {
1138
+
"type": "string",
1139
+
"description": "The creation date of the profile",
1140
+
"format": "date-time"
1141
+
}
1142
+
}
1143
+
},
1144
+
"social.clippr.feed.clip": {
1145
+
"type": "object",
1146
+
"required": ["url", "title", "description", "unlisted", "createdAt"],
1147
+
"properties": {
1148
+
"url": {
1149
+
"type": "string",
1150
+
"description": "The URL of the bookmark. Cannot be left empty or be modified after creation.",
1151
+
"format": "uri",
1152
+
"maxLength": 2000
1153
+
},
1154
+
"title": {
1155
+
"type": "string",
1156
+
"description": "The title of the bookmark. If left empty, reuse the URL.",
1157
+
"maxLength": 2048
1158
+
},
1159
+
"description": {
1160
+
"type": "string",
1161
+
"description": "A description of the bookmark's content. This should be ripped from the URL metadata and be static for all records using the URL.",
1162
+
"maxLength": 4096
1163
+
},
1164
+
"notes": {
1165
+
"type": "string",
1166
+
"description": "User-written notes for the bookmark. Public and personal.",
1167
+
"maxLength": 10000
1168
+
},
1169
+
"tags": {
1170
+
"type": "array",
1171
+
"description": "An array of tags. A format of solely alphanumeric characters and dashes should be used.",
1172
+
"items": {
1173
+
"$ref": "#/components/schemas/com.atproto.repo.strongRef"
1174
+
}
1175
+
},
1176
+
"unlisted": {
1177
+
"type": "boolean",
1178
+
"description": "Whether the bookmark can be used for feed indexing and aggregation"
1179
+
},
1180
+
"unread": {
1181
+
"type": "boolean",
1182
+
"description": "Whether the bookmark has been read by the user",
1183
+
"default": true
1184
+
},
1185
+
"languages": {
1186
+
"type": "array",
1187
+
"items": {
1188
+
"type": "string",
1189
+
"format": "language"
1190
+
},
1191
+
"maxItems": 5
1192
+
},
1193
+
"createdAt": {
1194
+
"type": "string",
1195
+
"description": "Client-declared timestamp when the bookmark is created",
1196
+
"format": "date-time"
1197
+
}
1198
+
}
1199
+
},
1200
+
"social.clippr.feed.tag": {
1201
+
"type": "object",
1202
+
"required": ["name", "createdAt"],
1203
+
"properties": {
1204
+
"name": {
1205
+
"type": "string",
1206
+
"description": "A de-duplicated string containing the name of the tag",
1207
+
"maxLength": 64
1208
+
},
1209
+
"color": {
1210
+
"type": "string",
1211
+
"description": "A hexadecimal color code",
1212
+
"maxLength": 7
1213
+
},
1214
+
"description": {
1215
+
"type": "string",
1216
+
"description": "A description of the tag for additional context",
1217
+
"maxLength": 5000
1218
+
},
1219
+
"createdAt": {
1220
+
"type": "string",
1221
+
"description": "A client-defined timestamp for the creation of the tag",
1222
+
"format": "date-time"
1223
+
}
1224
+
}
1225
+
}
1226
+
}
1227
+
}
1292
1228
}
+2
-23
frontend/.gitignore
+2
-23
frontend/.gitignore
···
1
-
# build output
1
+
node_modules/
2
2
dist/
3
-
# generated types
4
-
.astro/
5
-
6
-
# dependencies
7
-
node_modules/
8
-
9
-
# logs
10
-
npm-debug.log*
11
-
yarn-debug.log*
12
-
yarn-error.log*
13
-
pnpm-debug.log*
14
-
15
-
16
-
# environment variables
17
-
.env
18
-
.env.production
19
-
20
-
# macOS-specific files
21
-
.DS_Store
22
-
23
-
# jetbrains setting folder
24
-
.idea/
3
+
did.json
+24
frontend/.prettierrc
+24
frontend/.prettierrc
···
1
+
{
2
+
"trailingComma": "all",
3
+
"useTabs": true,
4
+
"tabWidth": 2,
5
+
"printWidth": 80,
6
+
"semi": true,
7
+
"singleQuote": false,
8
+
"bracketSpacing": true,
9
+
"overrides": [
10
+
{
11
+
"files": ["tsconfig.json", "jsconfig.json"],
12
+
"options": {
13
+
"parser": "jsonc"
14
+
}
15
+
},
16
+
{
17
+
"files": ["*.md"],
18
+
"options": {
19
+
"printWidth": 100,
20
+
"proseWrap": "always"
21
+
}
22
+
}
23
+
]
24
+
}
-4
frontend/.vscode/extensions.json
-4
frontend/.vscode/extensions.json
-11
frontend/.vscode/launch.json
-11
frontend/.vscode/launch.json
+13
-5
frontend/README.md
+13
-5
frontend/README.md
···
1
1
# @clipprjs/client
2
-
astro-based reference frontend for clippr, meant to use as little javascript as possible
2
+
3
+
This is a reference implementation for the Clippr frontend using Solid.
4
+
5
+
## development
3
6
4
-
## run
5
-
```bash
7
+
```shell
6
8
pnpm install
9
+
cp .env.example .env # Modify this if necessary
7
10
pnpm run dev
8
-
# pnpm run build
9
-
```
11
+
```
12
+
13
+
## deployment
14
+
15
+
```shell
16
+
pnpm run build
17
+
```
-11
frontend/astro.config.mts
-11
frontend/astro.config.mts
···
1
-
/*
2
-
* clippr: a social bookmarking service for the AT Protocol
3
-
* Copyright (c) 2025 clippr contributors.
4
-
* SPDX-License-Identifier: AGPL-3.0-only
5
-
*/
6
-
7
-
// @ts-check
8
-
import { defineConfig } from 'astro/config';
9
-
10
-
// https://astro.build/config
11
-
export default defineConfig({});
+34
frontend/index.html
+34
frontend/index.html
···
1
+
<!--
2
+
~ clippr: a social bookmarking service for the AT Protocol
3
+
~ Copyright (c) 2025 clippr contributors.
4
+
~ SPDX-License-Identifier: AGPL-3.0-only
5
+
-->
6
+
7
+
<!doctype html>
8
+
<html lang="en">
9
+
<head>
10
+
<meta charset="utf-8" />
11
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
12
+
<link rel="icon" type="image/ico" href="src/assets/favicon.ico" />
13
+
<link rel="stylesheet" href="src/styles/index.css" />
14
+
<meta property="og:title" content="clippr" />
15
+
<meta property="og:type" content="website" />
16
+
<meta property="og:url" content="https://clippr.social" />
17
+
<meta
18
+
property="og:description"
19
+
content="A social bookmarking service for the AT Protocol."
20
+
/>
21
+
<meta
22
+
property="description"
23
+
content="A social bookmarking service for the AT Protocol."
24
+
/>
25
+
<title>clippr</title>
26
+
<script src="src/index.tsx" type="module"></script>
27
+
</head>
28
+
<body id="root">
29
+
<noscript
30
+
>You need to enable JavaScript to run this app. Yes, we know this is
31
+
inconvenient.</noscript
32
+
>
33
+
</body>
34
+
</html>
+30
-13
frontend/package.json
+30
-13
frontend/package.json
···
1
1
{
2
-
"name": "@clipprjs/client",
3
-
"type": "module",
4
-
"version": "0.1.0",
5
-
"scripts": {
6
-
"dev": "astro dev",
7
-
"build": "astro build",
8
-
"preview": "astro preview",
9
-
"astro": "astro"
10
-
},
11
-
"dependencies": {
12
-
"astro": "^5.9.1"
13
-
}
14
-
}
2
+
"name": "@clipprjs/client",
3
+
"version": "0.1.0",
4
+
"description": "Reference implementation frontend for Clippr",
5
+
"type": "module",
6
+
"scripts": {
7
+
"start": "vite",
8
+
"dev": "vite",
9
+
"build": "vite build",
10
+
"serve": "vite preview",
11
+
"fmt": "pnpm exec prettier --write ."
12
+
},
13
+
"license": "AGPL-3.0-only",
14
+
"devDependencies": {
15
+
"@types/node": "^24.3.0",
16
+
"prettier": "^3.6.2",
17
+
"solid-devtools": "^0.34.3",
18
+
"typescript": "^5.9.2",
19
+
"vite": "^6.3.5",
20
+
"vite-plugin-solid": "^2.11.8"
21
+
},
22
+
"dependencies": {
23
+
"@atcute/client": "^4.0.3",
24
+
"@atcute/identity-resolver": "^1.1.3",
25
+
"@atcute/lexicons": "^1.1.0",
26
+
"@atcute/oauth-browser-client": "^1.0.26",
27
+
"@mary/exif-rm": "jsr:^0.2.2",
28
+
"@solidjs/router": "^0.15.3",
29
+
"solid-js": "^1.9.9"
30
+
}
31
+
}
+844
-2472
frontend/pnpm-lock.yaml
+844
-2472
frontend/pnpm-lock.yaml
···
8
8
9
9
.:
10
10
dependencies:
11
-
astro:
12
-
specifier: ^5.9.1
13
-
version: 5.9.1(@types/node@22.15.30)(rollup@4.42.0)(typescript@5.8.3)
11
+
'@atcute/client':
12
+
specifier: ^4.0.3
13
+
version: 4.0.3
14
+
'@atcute/identity-resolver':
15
+
specifier: ^1.1.3
16
+
version: 1.1.3(@atcute/identity@1.0.3)
17
+
'@atcute/lexicons':
18
+
specifier: ^1.1.0
19
+
version: 1.1.0
20
+
'@atcute/oauth-browser-client':
21
+
specifier: ^1.0.26
22
+
version: 1.0.26
23
+
'@mary/exif-rm':
24
+
specifier: jsr:^0.2.2
25
+
version: '@jsr/mary__exif-rm@0.2.2'
26
+
'@solidjs/router':
27
+
specifier: ^0.15.3
28
+
version: 0.15.3(solid-js@1.9.9)
29
+
solid-js:
30
+
specifier: ^1.9.9
31
+
version: 1.9.9
32
+
devDependencies:
33
+
'@types/node':
34
+
specifier: ^24.3.0
35
+
version: 24.3.0
36
+
prettier:
37
+
specifier: ^3.6.2
38
+
version: 3.6.2
39
+
solid-devtools:
40
+
specifier: ^0.34.3
41
+
version: 0.34.3(solid-js@1.9.9)(vite@6.3.5(@types/node@24.3.0))
42
+
typescript:
43
+
specifier: ^5.9.2
44
+
version: 5.9.2
45
+
vite:
46
+
specifier: ^6.3.5
47
+
version: 6.3.5(@types/node@24.3.0)
48
+
vite-plugin-solid:
49
+
specifier: ^2.11.8
50
+
version: 2.11.8(solid-js@1.9.9)(vite@6.3.5(@types/node@24.3.0))
14
51
15
52
packages:
16
53
17
-
'@astrojs/compiler@2.12.1':
18
-
resolution: {integrity: sha512-WDSyVIiz7sNcJcCJxJFITu6XjfGhJ50Z0auyaWsrM+xb07IlhBLFtQuDkNy0caVHWNcKTM2LISAaHhgkRqGAVg==}
54
+
'@ampproject/remapping@2.3.0':
55
+
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
56
+
engines: {node: '>=6.0.0'}
19
57
20
-
'@astrojs/internal-helpers@0.6.1':
21
-
resolution: {integrity: sha512-l5Pqf6uZu31aG+3Lv8nl/3s4DbUzdlxTWDof4pEpto6GUJNhhCbelVi9dEyurOVyqaelwmS9oSyOWOENSfgo9A==}
58
+
'@atcute/client@4.0.3':
59
+
resolution: {integrity: sha512-RIOZWFVLca/HiPAAUDqQPOdOreCxTbL5cb+WUf5yqQOKIu5yEAP3eksinmlLmgIrlr5qVOE7brazUUzaskFCfw==}
22
60
23
-
'@astrojs/markdown-remark@6.3.2':
24
-
resolution: {integrity: sha512-bO35JbWpVvyKRl7cmSJD822e8YA8ThR/YbUsciWNA7yTcqpIAL2hJDToWP5KcZBWxGT6IOdOkHSXARSNZc4l/Q==}
61
+
'@atcute/identity-resolver@1.1.3':
62
+
resolution: {integrity: sha512-KZgGgg99CWaV7Df3+h3X/WMrDzTPQVfsaoIVbTNLx2B56BvCL2EmaxPSVw/7BFUJMZHlVU4rtoEB4lyvNyMswA==}
63
+
peerDependencies:
64
+
'@atcute/identity': ^1.0.0
25
65
26
-
'@astrojs/prism@3.3.0':
27
-
resolution: {integrity: sha512-q8VwfU/fDZNoDOf+r7jUnMC2//H2l0TuQ6FkGJL8vD8nw/q5KiL3DS1KKBI3QhI9UQhpJ5dc7AtqfbXWuOgLCQ==}
28
-
engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0}
66
+
'@atcute/identity@1.0.3':
67
+
resolution: {integrity: sha512-mNMxbKHFGys03A8JXKk0KfMBzdd0vrYMzZZWjpw1nYTs0+ea6bo5S1hwqVUZxHdo1gFHSe/t63jxQIF4yL9aKw==}
29
68
30
-
'@astrojs/telemetry@3.3.0':
31
-
resolution: {integrity: sha512-UFBgfeldP06qu6khs/yY+q1cDAaArM2/7AEIqQ9Cuvf7B1hNLq0xDrZkct+QoIGyjq56y8IaE2I3CTvG99mlhQ==}
32
-
engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0}
69
+
'@atcute/lexicons@1.1.0':
70
+
resolution: {integrity: sha512-LFqwnria78xLYb62Ri/+WwQpUTgZp2DuyolNGIIOV1dpiKhFFFh//nscHMA6IExFLQRqWDs3tTjy7zv0h3sf1Q==}
71
+
72
+
'@atcute/multibase@1.1.4':
73
+
resolution: {integrity: sha512-NUf5AeeSOmuZHGU+4GAaMtISJoG+ZHtW/vUVA4lK/YDt/7LODAW0Fd0NNIIUPVUoW0xJS6zSEIWvwLLuxmEHhA==}
74
+
75
+
'@atcute/oauth-browser-client@1.0.26':
76
+
resolution: {integrity: sha512-z8VUmwRO1sFu5Dq1qYQOQLenkTSNaOyzlUZhVwFR41ru+AP84MS5UHHW/NsdC1xJAq1v6mlLySJ+pjxdDW8IYA==}
77
+
78
+
'@atcute/uint8array@1.0.3':
79
+
resolution: {integrity: sha512-M/K+ihiVW8Pl2PFLzaC4E3l4JaZ1IH05Q0AbPWUC4cVHnd/gZ/1kAF5ngdtGvJeDMirHZ2VAy7OmAsPwR/2nlA==}
80
+
81
+
'@atcute/util-fetch@1.0.1':
82
+
resolution: {integrity: sha512-Clc0E/5ufyGBVfYBUwWNlHONlZCoblSr4Ho50l1LhmRPGB1Wu/AQ9Sz+rsBg7fdaW/auve8ulmwhRhnX2cGRow==}
83
+
84
+
'@babel/code-frame@7.27.1':
85
+
resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==}
86
+
engines: {node: '>=6.9.0'}
87
+
88
+
'@babel/compat-data@7.28.0':
89
+
resolution: {integrity: sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==}
90
+
engines: {node: '>=6.9.0'}
91
+
92
+
'@babel/core@7.28.3':
93
+
resolution: {integrity: sha512-yDBHV9kQNcr2/sUr9jghVyz9C3Y5G2zUM2H2lo+9mKv4sFgbA8s8Z9t8D1jiTkGoO/NoIfKMyKWr4s6CN23ZwQ==}
94
+
engines: {node: '>=6.9.0'}
95
+
96
+
'@babel/generator@7.28.3':
97
+
resolution: {integrity: sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==}
98
+
engines: {node: '>=6.9.0'}
99
+
100
+
'@babel/helper-compilation-targets@7.27.2':
101
+
resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==}
102
+
engines: {node: '>=6.9.0'}
103
+
104
+
'@babel/helper-globals@7.28.0':
105
+
resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==}
106
+
engines: {node: '>=6.9.0'}
107
+
108
+
'@babel/helper-module-imports@7.18.6':
109
+
resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==}
110
+
engines: {node: '>=6.9.0'}
111
+
112
+
'@babel/helper-module-imports@7.27.1':
113
+
resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==}
114
+
engines: {node: '>=6.9.0'}
115
+
116
+
'@babel/helper-module-transforms@7.28.3':
117
+
resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==}
118
+
engines: {node: '>=6.9.0'}
119
+
peerDependencies:
120
+
'@babel/core': ^7.0.0
121
+
122
+
'@babel/helper-plugin-utils@7.27.1':
123
+
resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==}
124
+
engines: {node: '>=6.9.0'}
33
125
34
126
'@babel/helper-string-parser@7.27.1':
35
127
resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
···
39
131
resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==}
40
132
engines: {node: '>=6.9.0'}
41
133
42
-
'@babel/parser@7.27.5':
43
-
resolution: {integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==}
134
+
'@babel/helper-validator-option@7.27.1':
135
+
resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==}
136
+
engines: {node: '>=6.9.0'}
137
+
138
+
'@babel/helpers@7.28.3':
139
+
resolution: {integrity: sha512-PTNtvUQihsAsDHMOP5pfobP8C6CM4JWXmP8DrEIt46c3r2bf87Ua1zoqevsMo9g+tWDwgWrFP5EIxuBx5RudAw==}
140
+
engines: {node: '>=6.9.0'}
141
+
142
+
'@babel/parser@7.28.3':
143
+
resolution: {integrity: sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==}
44
144
engines: {node: '>=6.0.0'}
45
145
hasBin: true
46
146
47
-
'@babel/types@7.27.6':
48
-
resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==}
147
+
'@babel/plugin-syntax-jsx@7.27.1':
148
+
resolution: {integrity: sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==}
49
149
engines: {node: '>=6.9.0'}
150
+
peerDependencies:
151
+
'@babel/core': ^7.0.0-0
50
152
51
-
'@capsizecss/unpack@2.4.0':
52
-
resolution: {integrity: sha512-GrSU71meACqcmIUxPYOJvGKF0yryjN/L1aCuE9DViCTJI7bfkjgYDPD1zbNDcINJwSSP6UaBZY9GAbYDO7re0Q==}
153
+
'@babel/plugin-syntax-typescript@7.27.1':
154
+
resolution: {integrity: sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==}
155
+
engines: {node: '>=6.9.0'}
156
+
peerDependencies:
157
+
'@babel/core': ^7.0.0-0
53
158
54
-
'@emnapi/runtime@1.4.3':
55
-
resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==}
159
+
'@babel/template@7.27.2':
160
+
resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==}
161
+
engines: {node: '>=6.9.0'}
56
162
57
-
'@esbuild/aix-ppc64@0.25.5':
58
-
resolution: {integrity: sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==}
163
+
'@babel/traverse@7.28.3':
164
+
resolution: {integrity: sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==}
165
+
engines: {node: '>=6.9.0'}
166
+
167
+
'@babel/types@7.28.2':
168
+
resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==}
169
+
engines: {node: '>=6.9.0'}
170
+
171
+
'@badrap/valita@0.4.6':
172
+
resolution: {integrity: sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==}
173
+
engines: {node: '>= 18'}
174
+
175
+
'@esbuild/aix-ppc64@0.25.9':
176
+
resolution: {integrity: sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==}
59
177
engines: {node: '>=18'}
60
178
cpu: [ppc64]
61
179
os: [aix]
62
180
63
-
'@esbuild/android-arm64@0.25.5':
64
-
resolution: {integrity: sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==}
181
+
'@esbuild/android-arm64@0.25.9':
182
+
resolution: {integrity: sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==}
65
183
engines: {node: '>=18'}
66
184
cpu: [arm64]
67
185
os: [android]
68
186
69
-
'@esbuild/android-arm@0.25.5':
70
-
resolution: {integrity: sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==}
187
+
'@esbuild/android-arm@0.25.9':
188
+
resolution: {integrity: sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==}
71
189
engines: {node: '>=18'}
72
190
cpu: [arm]
73
191
os: [android]
74
192
75
-
'@esbuild/android-x64@0.25.5':
76
-
resolution: {integrity: sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==}
193
+
'@esbuild/android-x64@0.25.9':
194
+
resolution: {integrity: sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==}
77
195
engines: {node: '>=18'}
78
196
cpu: [x64]
79
197
os: [android]
80
198
81
-
'@esbuild/darwin-arm64@0.25.5':
82
-
resolution: {integrity: sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==}
199
+
'@esbuild/darwin-arm64@0.25.9':
200
+
resolution: {integrity: sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==}
83
201
engines: {node: '>=18'}
84
202
cpu: [arm64]
85
203
os: [darwin]
86
204
87
-
'@esbuild/darwin-x64@0.25.5':
88
-
resolution: {integrity: sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==}
205
+
'@esbuild/darwin-x64@0.25.9':
206
+
resolution: {integrity: sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==}
89
207
engines: {node: '>=18'}
90
208
cpu: [x64]
91
209
os: [darwin]
92
210
93
-
'@esbuild/freebsd-arm64@0.25.5':
94
-
resolution: {integrity: sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==}
211
+
'@esbuild/freebsd-arm64@0.25.9':
212
+
resolution: {integrity: sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==}
95
213
engines: {node: '>=18'}
96
214
cpu: [arm64]
97
215
os: [freebsd]
98
216
99
-
'@esbuild/freebsd-x64@0.25.5':
100
-
resolution: {integrity: sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==}
217
+
'@esbuild/freebsd-x64@0.25.9':
218
+
resolution: {integrity: sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==}
101
219
engines: {node: '>=18'}
102
220
cpu: [x64]
103
221
os: [freebsd]
104
222
105
-
'@esbuild/linux-arm64@0.25.5':
106
-
resolution: {integrity: sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==}
223
+
'@esbuild/linux-arm64@0.25.9':
224
+
resolution: {integrity: sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==}
107
225
engines: {node: '>=18'}
108
226
cpu: [arm64]
109
227
os: [linux]
110
228
111
-
'@esbuild/linux-arm@0.25.5':
112
-
resolution: {integrity: sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==}
229
+
'@esbuild/linux-arm@0.25.9':
230
+
resolution: {integrity: sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==}
113
231
engines: {node: '>=18'}
114
232
cpu: [arm]
115
233
os: [linux]
116
234
117
-
'@esbuild/linux-ia32@0.25.5':
118
-
resolution: {integrity: sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==}
235
+
'@esbuild/linux-ia32@0.25.9':
236
+
resolution: {integrity: sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==}
119
237
engines: {node: '>=18'}
120
238
cpu: [ia32]
121
239
os: [linux]
122
240
123
-
'@esbuild/linux-loong64@0.25.5':
124
-
resolution: {integrity: sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==}
241
+
'@esbuild/linux-loong64@0.25.9':
242
+
resolution: {integrity: sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==}
125
243
engines: {node: '>=18'}
126
244
cpu: [loong64]
127
245
os: [linux]
128
246
129
-
'@esbuild/linux-mips64el@0.25.5':
130
-
resolution: {integrity: sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==}
247
+
'@esbuild/linux-mips64el@0.25.9':
248
+
resolution: {integrity: sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==}
131
249
engines: {node: '>=18'}
132
250
cpu: [mips64el]
133
251
os: [linux]
134
252
135
-
'@esbuild/linux-ppc64@0.25.5':
136
-
resolution: {integrity: sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==}
253
+
'@esbuild/linux-ppc64@0.25.9':
254
+
resolution: {integrity: sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==}
137
255
engines: {node: '>=18'}
138
256
cpu: [ppc64]
139
257
os: [linux]
140
258
141
-
'@esbuild/linux-riscv64@0.25.5':
142
-
resolution: {integrity: sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==}
259
+
'@esbuild/linux-riscv64@0.25.9':
260
+
resolution: {integrity: sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==}
143
261
engines: {node: '>=18'}
144
262
cpu: [riscv64]
145
263
os: [linux]
146
264
147
-
'@esbuild/linux-s390x@0.25.5':
148
-
resolution: {integrity: sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==}
265
+
'@esbuild/linux-s390x@0.25.9':
266
+
resolution: {integrity: sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==}
149
267
engines: {node: '>=18'}
150
268
cpu: [s390x]
151
269
os: [linux]
152
270
153
-
'@esbuild/linux-x64@0.25.5':
154
-
resolution: {integrity: sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==}
271
+
'@esbuild/linux-x64@0.25.9':
272
+
resolution: {integrity: sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==}
155
273
engines: {node: '>=18'}
156
274
cpu: [x64]
157
275
os: [linux]
158
276
159
-
'@esbuild/netbsd-arm64@0.25.5':
160
-
resolution: {integrity: sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==}
277
+
'@esbuild/netbsd-arm64@0.25.9':
278
+
resolution: {integrity: sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==}
161
279
engines: {node: '>=18'}
162
280
cpu: [arm64]
163
281
os: [netbsd]
164
282
165
-
'@esbuild/netbsd-x64@0.25.5':
166
-
resolution: {integrity: sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==}
283
+
'@esbuild/netbsd-x64@0.25.9':
284
+
resolution: {integrity: sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==}
167
285
engines: {node: '>=18'}
168
286
cpu: [x64]
169
287
os: [netbsd]
170
288
171
-
'@esbuild/openbsd-arm64@0.25.5':
172
-
resolution: {integrity: sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==}
289
+
'@esbuild/openbsd-arm64@0.25.9':
290
+
resolution: {integrity: sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==}
173
291
engines: {node: '>=18'}
174
292
cpu: [arm64]
175
293
os: [openbsd]
176
294
177
-
'@esbuild/openbsd-x64@0.25.5':
178
-
resolution: {integrity: sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==}
295
+
'@esbuild/openbsd-x64@0.25.9':
296
+
resolution: {integrity: sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==}
179
297
engines: {node: '>=18'}
180
298
cpu: [x64]
181
299
os: [openbsd]
182
300
183
-
'@esbuild/sunos-x64@0.25.5':
184
-
resolution: {integrity: sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==}
301
+
'@esbuild/openharmony-arm64@0.25.9':
302
+
resolution: {integrity: sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==}
303
+
engines: {node: '>=18'}
304
+
cpu: [arm64]
305
+
os: [openharmony]
306
+
307
+
'@esbuild/sunos-x64@0.25.9':
308
+
resolution: {integrity: sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==}
185
309
engines: {node: '>=18'}
186
310
cpu: [x64]
187
311
os: [sunos]
188
312
189
-
'@esbuild/win32-arm64@0.25.5':
190
-
resolution: {integrity: sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==}
313
+
'@esbuild/win32-arm64@0.25.9':
314
+
resolution: {integrity: sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==}
191
315
engines: {node: '>=18'}
192
316
cpu: [arm64]
193
317
os: [win32]
194
318
195
-
'@esbuild/win32-ia32@0.25.5':
196
-
resolution: {integrity: sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==}
319
+
'@esbuild/win32-ia32@0.25.9':
320
+
resolution: {integrity: sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==}
197
321
engines: {node: '>=18'}
198
322
cpu: [ia32]
199
323
os: [win32]
200
324
201
-
'@esbuild/win32-x64@0.25.5':
202
-
resolution: {integrity: sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==}
325
+
'@esbuild/win32-x64@0.25.9':
326
+
resolution: {integrity: sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==}
203
327
engines: {node: '>=18'}
204
328
cpu: [x64]
205
329
os: [win32]
206
330
207
-
'@img/sharp-darwin-arm64@0.33.5':
208
-
resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==}
209
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
210
-
cpu: [arm64]
211
-
os: [darwin]
331
+
'@jridgewell/gen-mapping@0.3.13':
332
+
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
212
333
213
-
'@img/sharp-darwin-x64@0.33.5':
214
-
resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==}
215
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
216
-
cpu: [x64]
217
-
os: [darwin]
334
+
'@jridgewell/resolve-uri@3.1.2':
335
+
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
336
+
engines: {node: '>=6.0.0'}
218
337
219
-
'@img/sharp-libvips-darwin-arm64@1.0.4':
220
-
resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==}
221
-
cpu: [arm64]
222
-
os: [darwin]
338
+
'@jridgewell/sourcemap-codec@1.5.5':
339
+
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
223
340
224
-
'@img/sharp-libvips-darwin-x64@1.0.4':
225
-
resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==}
226
-
cpu: [x64]
227
-
os: [darwin]
341
+
'@jridgewell/trace-mapping@0.3.30':
342
+
resolution: {integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==}
228
343
229
-
'@img/sharp-libvips-linux-arm64@1.0.4':
230
-
resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==}
231
-
cpu: [arm64]
232
-
os: [linux]
344
+
'@jsr/mary__exif-rm@0.2.2':
345
+
resolution: {integrity: sha512-+ZpLaC+1CyqWhH608Sqd6/yTG0pOlokn2tCXha7s1SMQ+GLKo4Nn/PskTeeP9Pt+6gNYSu6ednoSlRvXb2ZGxg==, tarball: https://npm.jsr.io/~/11/@jsr/mary__exif-rm/0.2.2.tgz}
233
346
234
-
'@img/sharp-libvips-linux-arm@1.0.5':
235
-
resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==}
236
-
cpu: [arm]
237
-
os: [linux]
347
+
'@nothing-but/utils@0.17.0':
348
+
resolution: {integrity: sha512-TuCHcHLOqDL0SnaAxACfuRHBNRgNJcNn9X0GiH5H3YSDBVquCr3qEIG3FOQAuMyZCbu9w8nk2CHhOsn7IvhIwQ==}
238
349
239
-
'@img/sharp-libvips-linux-s390x@1.0.4':
240
-
resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==}
241
-
cpu: [s390x]
242
-
os: [linux]
243
-
244
-
'@img/sharp-libvips-linux-x64@1.0.4':
245
-
resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==}
246
-
cpu: [x64]
247
-
os: [linux]
248
-
249
-
'@img/sharp-libvips-linuxmusl-arm64@1.0.4':
250
-
resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==}
251
-
cpu: [arm64]
252
-
os: [linux]
253
-
254
-
'@img/sharp-libvips-linuxmusl-x64@1.0.4':
255
-
resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==}
256
-
cpu: [x64]
257
-
os: [linux]
258
-
259
-
'@img/sharp-linux-arm64@0.33.5':
260
-
resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==}
261
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
262
-
cpu: [arm64]
263
-
os: [linux]
264
-
265
-
'@img/sharp-linux-arm@0.33.5':
266
-
resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==}
267
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
268
-
cpu: [arm]
269
-
os: [linux]
270
-
271
-
'@img/sharp-linux-s390x@0.33.5':
272
-
resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==}
273
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
274
-
cpu: [s390x]
275
-
os: [linux]
276
-
277
-
'@img/sharp-linux-x64@0.33.5':
278
-
resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==}
279
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
280
-
cpu: [x64]
281
-
os: [linux]
282
-
283
-
'@img/sharp-linuxmusl-arm64@0.33.5':
284
-
resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==}
285
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
286
-
cpu: [arm64]
287
-
os: [linux]
288
-
289
-
'@img/sharp-linuxmusl-x64@0.33.5':
290
-
resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==}
291
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
292
-
cpu: [x64]
293
-
os: [linux]
294
-
295
-
'@img/sharp-wasm32@0.33.5':
296
-
resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==}
297
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
298
-
cpu: [wasm32]
299
-
300
-
'@img/sharp-win32-ia32@0.33.5':
301
-
resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==}
302
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
303
-
cpu: [ia32]
304
-
os: [win32]
305
-
306
-
'@img/sharp-win32-x64@0.33.5':
307
-
resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==}
308
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
309
-
cpu: [x64]
310
-
os: [win32]
311
-
312
-
'@jridgewell/sourcemap-codec@1.5.0':
313
-
resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
314
-
315
-
'@oslojs/encoding@1.1.0':
316
-
resolution: {integrity: sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==}
317
-
318
-
'@rollup/pluginutils@5.1.4':
319
-
resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==}
320
-
engines: {node: '>=14.0.0'}
321
-
peerDependencies:
322
-
rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
323
-
peerDependenciesMeta:
324
-
rollup:
325
-
optional: true
326
-
327
-
'@rollup/rollup-android-arm-eabi@4.42.0':
328
-
resolution: {integrity: sha512-gldmAyS9hpj+H6LpRNlcjQWbuKUtb94lodB9uCz71Jm+7BxK1VIOo7y62tZZwxhA7j1ylv/yQz080L5WkS+LoQ==}
350
+
'@rollup/rollup-android-arm-eabi@4.46.3':
351
+
resolution: {integrity: sha512-UmTdvXnLlqQNOCJnyksjPs1G4GqXNGW1LrzCe8+8QoaLhhDeTXYBgJ3k6x61WIhlHX2U+VzEJ55TtIjR/HTySA==}
329
352
cpu: [arm]
330
353
os: [android]
331
354
332
-
'@rollup/rollup-android-arm64@4.42.0':
333
-
resolution: {integrity: sha512-bpRipfTgmGFdCZDFLRvIkSNO1/3RGS74aWkJJTFJBH7h3MRV4UijkaEUeOMbi9wxtxYmtAbVcnMtHTPBhLEkaw==}
355
+
'@rollup/rollup-android-arm64@4.46.3':
356
+
resolution: {integrity: sha512-8NoxqLpXm7VyeI0ocidh335D6OKT0UJ6fHdnIxf3+6oOerZZc+O7r+UhvROji6OspyPm+rrIdb1gTXtVIqn+Sg==}
334
357
cpu: [arm64]
335
358
os: [android]
336
359
337
-
'@rollup/rollup-darwin-arm64@4.42.0':
338
-
resolution: {integrity: sha512-JxHtA081izPBVCHLKnl6GEA0w3920mlJPLh89NojpU2GsBSB6ypu4erFg/Wx1qbpUbepn0jY4dVWMGZM8gplgA==}
360
+
'@rollup/rollup-darwin-arm64@4.46.3':
361
+
resolution: {integrity: sha512-csnNavqZVs1+7/hUKtgjMECsNG2cdB8F7XBHP6FfQjqhjF8rzMzb3SLyy/1BG7YSfQ+bG75Ph7DyedbUqwq1rA==}
339
362
cpu: [arm64]
340
363
os: [darwin]
341
364
342
-
'@rollup/rollup-darwin-x64@4.42.0':
343
-
resolution: {integrity: sha512-rv5UZaWVIJTDMyQ3dCEK+m0SAn6G7H3PRc2AZmExvbDvtaDc+qXkei0knQWcI3+c9tEs7iL/4I4pTQoPbNL2SA==}
365
+
'@rollup/rollup-darwin-x64@4.46.3':
366
+
resolution: {integrity: sha512-r2MXNjbuYabSIX5yQqnT8SGSQ26XQc8fmp6UhlYJd95PZJkQD1u82fWP7HqvGUf33IsOC6qsiV+vcuD4SDP6iw==}
344
367
cpu: [x64]
345
368
os: [darwin]
346
369
347
-
'@rollup/rollup-freebsd-arm64@4.42.0':
348
-
resolution: {integrity: sha512-fJcN4uSGPWdpVmvLuMtALUFwCHgb2XiQjuECkHT3lWLZhSQ3MBQ9pq+WoWeJq2PrNxr9rPM1Qx+IjyGj8/c6zQ==}
370
+
'@rollup/rollup-freebsd-arm64@4.46.3':
371
+
resolution: {integrity: sha512-uluObTmgPJDuJh9xqxyr7MV61Imq+0IvVsAlWyvxAaBSNzCcmZlhfYcRhCdMaCsy46ccZa7vtDDripgs9Jkqsw==}
349
372
cpu: [arm64]
350
373
os: [freebsd]
351
374
352
-
'@rollup/rollup-freebsd-x64@4.42.0':
353
-
resolution: {integrity: sha512-CziHfyzpp8hJpCVE/ZdTizw58gr+m7Y2Xq5VOuCSrZR++th2xWAz4Nqk52MoIIrV3JHtVBhbBsJcAxs6NammOQ==}
375
+
'@rollup/rollup-freebsd-x64@4.46.3':
376
+
resolution: {integrity: sha512-AVJXEq9RVHQnejdbFvh1eWEoobohUYN3nqJIPI4mNTMpsyYN01VvcAClxflyk2HIxvLpRcRggpX1m9hkXkpC/A==}
354
377
cpu: [x64]
355
378
os: [freebsd]
356
379
357
-
'@rollup/rollup-linux-arm-gnueabihf@4.42.0':
358
-
resolution: {integrity: sha512-UsQD5fyLWm2Fe5CDM7VPYAo+UC7+2Px4Y+N3AcPh/LdZu23YcuGPegQly++XEVaC8XUTFVPscl5y5Cl1twEI4A==}
380
+
'@rollup/rollup-linux-arm-gnueabihf@4.46.3':
381
+
resolution: {integrity: sha512-byyflM+huiwHlKi7VHLAYTKr67X199+V+mt1iRgJenAI594vcmGGddWlu6eHujmcdl6TqSNnvqaXJqZdnEWRGA==}
359
382
cpu: [arm]
360
383
os: [linux]
361
384
362
-
'@rollup/rollup-linux-arm-musleabihf@4.42.0':
363
-
resolution: {integrity: sha512-/i8NIrlgc/+4n1lnoWl1zgH7Uo0XK5xK3EDqVTf38KvyYgCU/Rm04+o1VvvzJZnVS5/cWSd07owkzcVasgfIkQ==}
385
+
'@rollup/rollup-linux-arm-musleabihf@4.46.3':
386
+
resolution: {integrity: sha512-aLm3NMIjr4Y9LklrH5cu7yybBqoVCdr4Nvnm8WB7PKCn34fMCGypVNpGK0JQWdPAzR/FnoEoFtlRqZbBBLhVoQ==}
364
387
cpu: [arm]
365
388
os: [linux]
366
389
367
-
'@rollup/rollup-linux-arm64-gnu@4.42.0':
368
-
resolution: {integrity: sha512-eoujJFOvoIBjZEi9hJnXAbWg+Vo1Ov8n/0IKZZcPZ7JhBzxh2A+2NFyeMZIRkY9iwBvSjloKgcvnjTbGKHE44Q==}
390
+
'@rollup/rollup-linux-arm64-gnu@4.46.3':
391
+
resolution: {integrity: sha512-VtilE6eznJRDIoFOzaagQodUksTEfLIsvXymS+UdJiSXrPW7Ai+WG4uapAc3F7Hgs791TwdGh4xyOzbuzIZrnw==}
369
392
cpu: [arm64]
370
393
os: [linux]
371
394
372
-
'@rollup/rollup-linux-arm64-musl@4.42.0':
373
-
resolution: {integrity: sha512-/3NrcOWFSR7RQUQIuZQChLND36aTU9IYE4j+TB40VU78S+RA0IiqHR30oSh6P1S9f9/wVOenHQnacs/Byb824g==}
395
+
'@rollup/rollup-linux-arm64-musl@4.46.3':
396
+
resolution: {integrity: sha512-dG3JuS6+cRAL0GQ925Vppafi0qwZnkHdPeuZIxIPXqkCLP02l7ka+OCyBoDEv8S+nKHxfjvjW4OZ7hTdHkx8/w==}
374
397
cpu: [arm64]
375
398
os: [linux]
376
399
377
-
'@rollup/rollup-linux-loongarch64-gnu@4.42.0':
378
-
resolution: {integrity: sha512-O8AplvIeavK5ABmZlKBq9/STdZlnQo7Sle0LLhVA7QT+CiGpNVe197/t8Aph9bhJqbDVGCHpY2i7QyfEDDStDg==}
400
+
'@rollup/rollup-linux-loongarch64-gnu@4.46.3':
401
+
resolution: {integrity: sha512-iU8DxnxEKJptf8Vcx4XvAUdpkZfaz0KWfRrnIRrOndL0SvzEte+MTM7nDH4A2Now4FvTZ01yFAgj6TX/mZl8hQ==}
379
402
cpu: [loong64]
380
403
os: [linux]
381
404
382
-
'@rollup/rollup-linux-powerpc64le-gnu@4.42.0':
383
-
resolution: {integrity: sha512-6Qb66tbKVN7VyQrekhEzbHRxXXFFD8QKiFAwX5v9Xt6FiJ3BnCVBuyBxa2fkFGqxOCSGGYNejxd8ht+q5SnmtA==}
405
+
'@rollup/rollup-linux-ppc64-gnu@4.46.3':
406
+
resolution: {integrity: sha512-VrQZp9tkk0yozJoQvQcqlWiqaPnLM6uY1qPYXvukKePb0fqaiQtOdMJSxNFUZFsGw5oA5vvVokjHrx8a9Qsz2A==}
384
407
cpu: [ppc64]
385
408
os: [linux]
386
409
387
-
'@rollup/rollup-linux-riscv64-gnu@4.42.0':
388
-
resolution: {integrity: sha512-KQETDSEBamQFvg/d8jajtRwLNBlGc3aKpaGiP/LvEbnmVUKlFta1vqJqTrvPtsYsfbE/DLg5CC9zyXRX3fnBiA==}
410
+
'@rollup/rollup-linux-riscv64-gnu@4.46.3':
411
+
resolution: {integrity: sha512-uf2eucWSUb+M7b0poZ/08LsbcRgaDYL8NCGjUeFMwCWFwOuFcZ8D9ayPl25P3pl+D2FH45EbHdfyUesQ2Lt9wA==}
389
412
cpu: [riscv64]
390
413
os: [linux]
391
414
392
-
'@rollup/rollup-linux-riscv64-musl@4.42.0':
393
-
resolution: {integrity: sha512-qMvnyjcU37sCo/tuC+JqeDKSuukGAd+pVlRl/oyDbkvPJ3awk6G6ua7tyum02O3lI+fio+eM5wsVd66X0jQtxw==}
415
+
'@rollup/rollup-linux-riscv64-musl@4.46.3':
416
+
resolution: {integrity: sha512-7tnUcDvN8DHm/9ra+/nF7lLzYHDeODKKKrh6JmZejbh1FnCNZS8zMkZY5J4sEipy2OW1d1Ncc4gNHUd0DLqkSg==}
394
417
cpu: [riscv64]
395
418
os: [linux]
396
419
397
-
'@rollup/rollup-linux-s390x-gnu@4.42.0':
398
-
resolution: {integrity: sha512-I2Y1ZUgTgU2RLddUHXTIgyrdOwljjkmcZ/VilvaEumtS3Fkuhbw4p4hgHc39Ypwvo2o7sBFNl2MquNvGCa55Iw==}
420
+
'@rollup/rollup-linux-s390x-gnu@4.46.3':
421
+
resolution: {integrity: sha512-MUpAOallJim8CsJK+4Lc9tQzlfPbHxWDrGXZm2z6biaadNpvh3a5ewcdat478W+tXDoUiHwErX/dOql7ETcLqg==}
399
422
cpu: [s390x]
400
423
os: [linux]
401
424
402
-
'@rollup/rollup-linux-x64-gnu@4.42.0':
403
-
resolution: {integrity: sha512-Gfm6cV6mj3hCUY8TqWa63DB8Mx3NADoFwiJrMpoZ1uESbK8FQV3LXkhfry+8bOniq9pqY1OdsjFWNsSbfjPugw==}
425
+
'@rollup/rollup-linux-x64-gnu@4.46.3':
426
+
resolution: {integrity: sha512-F42IgZI4JicE2vM2PWCe0N5mR5vR0gIdORPqhGQ32/u1S1v3kLtbZ0C/mi9FFk7C5T0PgdeyWEPajPjaUpyoKg==}
404
427
cpu: [x64]
405
428
os: [linux]
406
429
407
-
'@rollup/rollup-linux-x64-musl@4.42.0':
408
-
resolution: {integrity: sha512-g86PF8YZ9GRqkdi0VoGlcDUb4rYtQKyTD1IVtxxN4Hpe7YqLBShA7oHMKU6oKTCi3uxwW4VkIGnOaH/El8de3w==}
430
+
'@rollup/rollup-linux-x64-musl@4.46.3':
431
+
resolution: {integrity: sha512-oLc+JrwwvbimJUInzx56Q3ujL3Kkhxehg7O1gWAYzm8hImCd5ld1F2Gry5YDjR21MNb5WCKhC9hXgU7rRlyegQ==}
409
432
cpu: [x64]
410
433
os: [linux]
411
434
412
-
'@rollup/rollup-win32-arm64-msvc@4.42.0':
413
-
resolution: {integrity: sha512-+axkdyDGSp6hjyzQ5m1pgcvQScfHnMCcsXkx8pTgy/6qBmWVhtRVlgxjWwDp67wEXXUr0x+vD6tp5W4x6V7u1A==}
435
+
'@rollup/rollup-win32-arm64-msvc@4.46.3':
436
+
resolution: {integrity: sha512-lOrQ+BVRstruD1fkWg9yjmumhowR0oLAAzavB7yFSaGltY8klttmZtCLvOXCmGE9mLIn8IBV/IFrQOWz5xbFPg==}
414
437
cpu: [arm64]
415
438
os: [win32]
416
439
417
-
'@rollup/rollup-win32-ia32-msvc@4.42.0':
418
-
resolution: {integrity: sha512-F+5J9pelstXKwRSDq92J0TEBXn2nfUrQGg+HK1+Tk7VOL09e0gBqUHugZv7SW4MGrYj41oNCUe3IKCDGVlis2g==}
440
+
'@rollup/rollup-win32-ia32-msvc@4.46.3':
441
+
resolution: {integrity: sha512-vvrVKPRS4GduGR7VMH8EylCBqsDcw6U+/0nPDuIjXQRbHJc6xOBj+frx8ksfZAh6+Fptw5wHrN7etlMmQnPQVg==}
419
442
cpu: [ia32]
420
443
os: [win32]
421
444
422
-
'@rollup/rollup-win32-x64-msvc@4.42.0':
423
-
resolution: {integrity: sha512-LpHiJRwkaVz/LqjHjK8LCi8osq7elmpwujwbXKNW88bM8eeGxavJIKKjkjpMHAh/2xfnrt1ZSnhTv41WYUHYmA==}
445
+
'@rollup/rollup-win32-x64-msvc@4.46.3':
446
+
resolution: {integrity: sha512-fi3cPxCnu3ZeM3EwKZPgXbWoGzm2XHgB/WShKI81uj8wG0+laobmqy5wbgEwzstlbLu4MyO8C19FyhhWseYKNQ==}
424
447
cpu: [x64]
425
448
os: [win32]
426
449
427
-
'@shikijs/core@3.6.0':
428
-
resolution: {integrity: sha512-9By7Xb3olEX0o6UeJyPLI1PE1scC4d3wcVepvtv2xbuN9/IThYN4Wcwh24rcFeASzPam11MCq8yQpwwzCgSBRw==}
450
+
'@solid-devtools/debugger@0.28.1':
451
+
resolution: {integrity: sha512-6qIUI6VYkXoRnL8oF5bvh2KgH71qlJ18hNw/mwSyY6v48eb80ZR48/5PDXufUa3q+MBSuYa1uqTMwLewpay9eg==}
452
+
peerDependencies:
453
+
solid-js: ^1.9.0
429
454
430
-
'@shikijs/engine-javascript@3.6.0':
431
-
resolution: {integrity: sha512-7YnLhZG/TU05IHMG14QaLvTW/9WiK8SEYafceccHUSXs2Qr5vJibUwsDfXDLmRi0zHdzsxrGKpSX6hnqe0k8nA==}
455
+
'@solid-devtools/shared@0.20.0':
456
+
resolution: {integrity: sha512-o5TACmUOQsxpzpOKCjbQqGk8wL8PMi+frXG9WNu4Lh3PQVUB6hs95Kl/S8xc++zwcMguUKZJn8h5URUiMOca6Q==}
457
+
peerDependencies:
458
+
solid-js: ^1.9.0
432
459
433
-
'@shikijs/engine-oniguruma@3.6.0':
434
-
resolution: {integrity: sha512-nmOhIZ9yT3Grd+2plmW/d8+vZ2pcQmo/UnVwXMUXAKTXdi+LK0S08Ancrz5tQQPkxvjBalpMW2aKvwXfelauvA==}
460
+
'@solid-primitives/bounds@0.1.3':
461
+
resolution: {integrity: sha512-UbiyKMdSPmtijcEDnYLQL3zzaejpwWDAJJ4Gt5P0hgVs6A72piov0GyNw7V2SroH7NZFwxlYS22YmOr8A5xc1Q==}
462
+
peerDependencies:
463
+
solid-js: ^1.6.12
435
464
436
-
'@shikijs/langs@3.6.0':
437
-
resolution: {integrity: sha512-IdZkQJaLBu1LCYCwkr30hNuSDfllOT8RWYVZK1tD2J03DkiagYKRxj/pDSl8Didml3xxuyzUjgtioInwEQM/TA==}
465
+
'@solid-primitives/event-listener@2.4.3':
466
+
resolution: {integrity: sha512-h4VqkYFv6Gf+L7SQj+Y6puigL/5DIi7x5q07VZET7AWcS+9/G3WfIE9WheniHWJs51OEkRB43w6lDys5YeFceg==}
467
+
peerDependencies:
468
+
solid-js: ^1.6.12
438
469
439
-
'@shikijs/themes@3.6.0':
440
-
resolution: {integrity: sha512-Fq2j4nWr1DF4drvmhqKq8x5vVQ27VncF8XZMBuHuQMZvUSS3NBgpqfwz/FoGe36+W6PvniZ1yDlg2d4kmYDU6w==}
470
+
'@solid-primitives/keyboard@1.3.3':
471
+
resolution: {integrity: sha512-9dQHTTgLBqyAI7aavtO+HnpTVJgWQA1ghBSrmLtMu1SMxLPDuLfuNr+Tk5udb4AL4Ojg7h9JrKOGEEDqsJXWJA==}
472
+
peerDependencies:
473
+
solid-js: ^1.6.12
441
474
442
-
'@shikijs/types@3.6.0':
443
-
resolution: {integrity: sha512-cLWFiToxYu0aAzJqhXTQsFiJRTFDAGl93IrMSBNaGSzs7ixkLfdG6pH11HipuWFGW5vyx4X47W8HDQ7eSrmBUg==}
475
+
'@solid-primitives/media@2.3.3':
476
+
resolution: {integrity: sha512-hQ4hLOGvfbugQi5Eu1BFWAIJGIAzztq9x0h02xgBGl2l0Jaa3h7tg6bz5tV1NSuNYVGio4rPoa7zVQQLkkx9dA==}
477
+
peerDependencies:
478
+
solid-js: ^1.6.12
444
479
445
-
'@shikijs/vscode-textmate@10.0.2':
446
-
resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==}
480
+
'@solid-primitives/refs@1.1.2':
481
+
resolution: {integrity: sha512-K7tf2thy7L+YJjdqXspXOg5xvNEOH8tgEWsp0+1mQk3obHBRD6hEjYZk7p7FlJphSZImS35je3UfmWuD7MhDfg==}
482
+
peerDependencies:
483
+
solid-js: ^1.6.12
447
484
448
-
'@swc/helpers@0.5.17':
449
-
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
485
+
'@solid-primitives/resize-observer@2.1.3':
486
+
resolution: {integrity: sha512-zBLje5E06TgOg93S7rGPldmhDnouNGhvfZVKOp+oG2XU8snA+GoCSSCz1M+jpNAg5Ek2EakU5UVQqL152WmdXQ==}
487
+
peerDependencies:
488
+
solid-js: ^1.6.12
450
489
451
-
'@types/debug@4.1.12':
452
-
resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
490
+
'@solid-primitives/rootless@1.5.2':
491
+
resolution: {integrity: sha512-9HULb0QAzL2r47CCad0M+NKFtQ+LrGGNHZfteX/ThdGvKIg2o2GYhBooZubTCd/RTu2l2+Nw4s+dEfiDGvdrrQ==}
492
+
peerDependencies:
493
+
solid-js: ^1.6.12
453
494
454
-
'@types/estree@1.0.7':
455
-
resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==}
495
+
'@solid-primitives/scheduled@1.5.2':
496
+
resolution: {integrity: sha512-/j2igE0xyNaHhj6kMfcUQn5rAVSTLbAX+CDEBm25hSNBmNiHLu2lM7Usj2kJJ5j36D67bE8wR1hBNA8hjtvsQA==}
497
+
peerDependencies:
498
+
solid-js: ^1.6.12
456
499
457
-
'@types/estree@1.0.8':
458
-
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
500
+
'@solid-primitives/static-store@0.1.2':
501
+
resolution: {integrity: sha512-ReK+5O38lJ7fT+L6mUFvUr6igFwHBESZF+2Ug842s7fvlVeBdIVEdTCErygff6w7uR6+jrr7J8jQo+cYrEq4Iw==}
502
+
peerDependencies:
503
+
solid-js: ^1.6.12
459
504
460
-
'@types/fontkit@2.0.8':
461
-
resolution: {integrity: sha512-wN+8bYxIpJf+5oZdrdtaX04qUuWHcKxcDEgRS9Qm9ZClSHjzEn13SxUC+5eRM+4yXIeTYk8mTzLAWGF64847ew==}
505
+
'@solid-primitives/styles@0.1.2':
506
+
resolution: {integrity: sha512-7iX5K+J5b1PRrbgw3Ki92uvU2LgQ0Kd/QMsrAZxDg5dpUBwMyTijZkA3bbs1ikZsT1oQhS41bTyKbjrXeU0Awg==}
507
+
peerDependencies:
508
+
solid-js: ^1.6.12
462
509
463
-
'@types/hast@3.0.4':
464
-
resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
510
+
'@solid-primitives/utils@6.3.2':
511
+
resolution: {integrity: sha512-hZ/M/qr25QOCcwDPOHtGjxTD8w2mNyVAYvcfgwzBHq2RwNqHNdDNsMZYap20+ruRwW4A3Cdkczyoz0TSxLCAPQ==}
512
+
peerDependencies:
513
+
solid-js: ^1.6.12
465
514
466
-
'@types/mdast@4.0.4':
467
-
resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
515
+
'@solidjs/router@0.15.3':
516
+
resolution: {integrity: sha512-iEbW8UKok2Oio7o6Y4VTzLj+KFCmQPGEpm1fS3xixwFBdclFVBvaQVeibl1jys4cujfAK5Kn6+uG2uBm3lxOMw==}
517
+
peerDependencies:
518
+
solid-js: ^1.8.6
468
519
469
-
'@types/ms@2.1.0':
470
-
resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
520
+
'@types/babel__core@7.20.5':
521
+
resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
471
522
472
-
'@types/nlcst@2.0.3':
473
-
resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==}
523
+
'@types/babel__generator@7.27.0':
524
+
resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==}
474
525
475
-
'@types/node@22.15.30':
476
-
resolution: {integrity: sha512-6Q7lr06bEHdlfplU6YRbgG1SFBdlsfNC4/lX+SkhiTs0cpJkOElmWls8PxDFv4yY/xKb8Y6SO0OmSX4wgqTZbA==}
526
+
'@types/babel__template@7.4.4':
527
+
resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
477
528
478
-
'@types/unist@3.0.3':
479
-
resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
529
+
'@types/babel__traverse@7.28.0':
530
+
resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==}
480
531
481
-
'@ungap/structured-clone@1.3.0':
482
-
resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
532
+
'@types/estree@1.0.8':
533
+
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
483
534
484
-
acorn@8.15.0:
485
-
resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
486
-
engines: {node: '>=0.4.0'}
487
-
hasBin: true
535
+
'@types/node@24.3.0':
536
+
resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==}
488
537
489
-
ansi-align@3.0.1:
490
-
resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==}
538
+
babel-plugin-jsx-dom-expressions@0.40.1:
539
+
resolution: {integrity: sha512-b4iHuirqK7RgaMzB2Lsl7MqrlDgQtVRSSazyrmx7wB3T759ggGjod5Rkok5MfHjQXhR7tRPmdwoeGPqBnW2KfA==}
540
+
peerDependencies:
541
+
'@babel/core': ^7.20.12
491
542
492
-
ansi-regex@5.0.1:
493
-
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
494
-
engines: {node: '>=8'}
495
-
496
-
ansi-regex@6.1.0:
497
-
resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==}
498
-
engines: {node: '>=12'}
499
-
500
-
ansi-styles@6.2.1:
501
-
resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
502
-
engines: {node: '>=12'}
503
-
504
-
anymatch@3.1.3:
505
-
resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
506
-
engines: {node: '>= 8'}
507
-
508
-
argparse@2.0.1:
509
-
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
510
-
511
-
aria-query@5.3.2:
512
-
resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
513
-
engines: {node: '>= 0.4'}
514
-
515
-
array-iterate@2.0.1:
516
-
resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==}
543
+
babel-preset-solid@1.9.9:
544
+
resolution: {integrity: sha512-pCnxWrciluXCeli/dj5PIEHgbNzim3evtTn12snjqqg8QZWJNMjH1AWIp4iG/tbVjqQ72aBEymMSagvmgxubXw==}
545
+
peerDependencies:
546
+
'@babel/core': ^7.0.0
547
+
solid-js: ^1.9.8
548
+
peerDependenciesMeta:
549
+
solid-js:
550
+
optional: true
517
551
518
-
astro@5.9.1:
519
-
resolution: {integrity: sha512-wxoJcTbuDZNFSv6EaL0PAlrp0Wx6VnOAULCXvy0scsV70oWMeUkdxuBxfO54JxO5Qgyvwj9h99y6E0elqOpGtA==}
520
-
engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'}
552
+
browserslist@4.25.3:
553
+
resolution: {integrity: sha512-cDGv1kkDI4/0e5yON9yM5G/0A5u8sf5TnmdX5C9qHzI9PPu++sQ9zjm1k9NiOrf3riY4OkK0zSGqfvJyJsgCBQ==}
554
+
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
521
555
hasBin: true
522
556
523
-
axobject-query@4.1.0:
524
-
resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
525
-
engines: {node: '>= 0.4'}
526
-
527
-
bail@2.0.2:
528
-
resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
529
-
530
-
base-64@1.0.0:
531
-
resolution: {integrity: sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==}
532
-
533
-
base64-js@1.5.1:
534
-
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
535
-
536
-
blob-to-buffer@1.2.9:
537
-
resolution: {integrity: sha512-BF033y5fN6OCofD3vgHmNtwZWRcq9NLyyxyILx9hfMy1sXYy4ojFl765hJ2lP0YaN2fuxPaLO2Vzzoxy0FLFFA==}
538
-
539
-
boxen@8.0.1:
540
-
resolution: {integrity: sha512-F3PH5k5juxom4xktynS7MoFY+NUWH5LC4CnH11YB8NPew+HLpmBLCybSAEyb2F+4pRXhuhWqFesoQd6DAyc2hw==}
541
-
engines: {node: '>=18'}
542
-
543
-
brotli@1.3.3:
544
-
resolution: {integrity: sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==}
545
-
546
-
camelcase@8.0.0:
547
-
resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==}
548
-
engines: {node: '>=16'}
549
-
550
-
ccount@2.0.1:
551
-
resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
552
-
553
-
chalk@5.4.1:
554
-
resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==}
555
-
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
556
-
557
-
character-entities-html4@2.1.0:
558
-
resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
559
-
560
-
character-entities-legacy@3.0.0:
561
-
resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
562
-
563
-
character-entities@2.0.2:
564
-
resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
565
-
566
-
chokidar@4.0.3:
567
-
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
568
-
engines: {node: '>= 14.16.0'}
569
-
570
-
ci-info@4.2.0:
571
-
resolution: {integrity: sha512-cYY9mypksY8NRqgDB1XD1RiJL338v/551niynFTGkZOO2LHuB2OmOYxDIe/ttN9AHwrqdum1360G3ald0W9kCg==}
572
-
engines: {node: '>=8'}
573
-
574
-
cli-boxes@3.0.0:
575
-
resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
576
-
engines: {node: '>=10'}
577
-
578
-
clone@2.1.2:
579
-
resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}
580
-
engines: {node: '>=0.8'}
581
-
582
-
clsx@2.1.1:
583
-
resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
584
-
engines: {node: '>=6'}
585
-
586
-
color-convert@2.0.1:
587
-
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
588
-
engines: {node: '>=7.0.0'}
589
-
590
-
color-name@1.1.4:
591
-
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
592
-
593
-
color-string@1.9.1:
594
-
resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==}
595
-
596
-
color@4.2.3:
597
-
resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==}
598
-
engines: {node: '>=12.5.0'}
599
-
600
-
comma-separated-tokens@2.0.3:
601
-
resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
602
-
603
-
common-ancestor-path@1.0.1:
604
-
resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==}
557
+
caniuse-lite@1.0.30001735:
558
+
resolution: {integrity: sha512-EV/laoX7Wq2J9TQlyIXRxTJqIw4sxfXS4OYgudGxBYRuTv0q7AM6yMEpU/Vo1I94thg9U6EZ2NfZx9GJq83u7w==}
605
559
606
-
cookie-es@1.2.2:
607
-
resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==}
560
+
convert-source-map@2.0.0:
561
+
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
608
562
609
-
cookie@1.0.2:
610
-
resolution: {integrity: sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==}
611
-
engines: {node: '>=18'}
612
-
613
-
cross-fetch@3.2.0:
614
-
resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==}
615
-
616
-
crossws@0.3.5:
617
-
resolution: {integrity: sha512-ojKiDvcmByhwa8YYqbQI/hg7MEU0NC03+pSdEq4ZUnZR9xXpwk7E43SMNGkn+JxJGPFtNvQ48+vV2p+P1ml5PA==}
618
-
619
-
css-tree@3.1.0:
620
-
resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==}
621
-
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
622
-
623
-
cssesc@3.0.0:
624
-
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
625
-
engines: {node: '>=4'}
626
-
hasBin: true
563
+
csstype@3.1.3:
564
+
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
627
565
628
566
debug@4.4.1:
629
567
resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==}
···
634
572
supports-color:
635
573
optional: true
636
574
637
-
decode-named-character-reference@1.1.0:
638
-
resolution: {integrity: sha512-Wy+JTSbFThEOXQIR2L6mxJvEs+veIzpmqD7ynWxMXGpnk3smkHQOp6forLdHsKpAMW9iJpaBBIxz285t1n1C3w==}
639
-
640
-
defu@6.1.4:
641
-
resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
642
-
643
-
dequal@2.0.3:
644
-
resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
645
-
engines: {node: '>=6'}
646
-
647
-
destr@2.0.5:
648
-
resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==}
649
-
650
-
detect-libc@2.0.4:
651
-
resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==}
652
-
engines: {node: '>=8'}
653
-
654
-
deterministic-object-hash@2.0.2:
655
-
resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==}
656
-
engines: {node: '>=18'}
657
-
658
-
devalue@5.1.1:
659
-
resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==}
660
-
661
-
devlop@1.1.0:
662
-
resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
663
-
664
-
dfa@1.2.0:
665
-
resolution: {integrity: sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==}
666
-
667
-
diff@5.2.0:
668
-
resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==}
669
-
engines: {node: '>=0.3.1'}
670
-
671
-
dlv@1.1.3:
672
-
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
673
-
674
-
dset@3.1.4:
675
-
resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==}
676
-
engines: {node: '>=4'}
677
-
678
-
emoji-regex@10.4.0:
679
-
resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==}
680
-
681
-
emoji-regex@8.0.0:
682
-
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
575
+
electron-to-chromium@1.5.207:
576
+
resolution: {integrity: sha512-mryFrrL/GXDTmAtIVMVf+eIXM09BBPlO5IQ7lUyKmK8d+A4VpRGG+M3ofoVef6qyF8s60rJei8ymlJxjUA8Faw==}
683
577
684
578
entities@6.0.1:
685
579
resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==}
686
580
engines: {node: '>=0.12'}
687
581
688
-
es-module-lexer@1.7.0:
689
-
resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==}
690
-
691
-
esbuild@0.25.5:
692
-
resolution: {integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==}
582
+
esbuild@0.25.9:
583
+
resolution: {integrity: sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==}
693
584
engines: {node: '>=18'}
694
585
hasBin: true
695
586
696
-
escape-string-regexp@5.0.0:
697
-
resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
698
-
engines: {node: '>=12'}
587
+
escalade@3.2.0:
588
+
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
589
+
engines: {node: '>=6'}
699
590
700
-
estree-walker@2.0.2:
701
-
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
591
+
esm-env@1.2.2:
592
+
resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==}
702
593
703
-
estree-walker@3.0.3:
704
-
resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
705
-
706
-
eventemitter3@5.0.1:
707
-
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
708
-
709
-
extend@3.0.2:
710
-
resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
711
-
712
-
fast-deep-equal@3.1.3:
713
-
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
714
-
715
-
fdir@6.4.5:
716
-
resolution: {integrity: sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==}
594
+
fdir@6.5.0:
595
+
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
596
+
engines: {node: '>=12.0.0'}
717
597
peerDependencies:
718
598
picomatch: ^3 || ^4
719
599
peerDependenciesMeta:
720
600
picomatch:
721
601
optional: true
722
602
723
-
flattie@1.1.1:
724
-
resolution: {integrity: sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==}
725
-
engines: {node: '>=8'}
726
-
727
-
fontace@0.3.0:
728
-
resolution: {integrity: sha512-czoqATrcnxgWb/nAkfyIrRp6Q8biYj7nGnL6zfhTcX+JKKpWHFBnb8uNMw/kZr7u++3Y3wYSYoZgHkCcsuBpBg==}
729
-
730
-
fontkit@2.0.4:
731
-
resolution: {integrity: sha512-syetQadaUEDNdxdugga9CpEYVaQIxOwk7GlwZWWZ19//qW4zE5bknOKeMBDYAASwnpaSHKJITRLMF9m1fp3s6g==}
732
-
733
603
fsevents@2.3.3:
734
604
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
735
605
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
736
606
os: [darwin]
737
607
738
-
get-east-asian-width@1.3.0:
739
-
resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==}
740
-
engines: {node: '>=18'}
741
-
742
-
github-slugger@2.0.0:
743
-
resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==}
744
-
745
-
h3@1.15.3:
746
-
resolution: {integrity: sha512-z6GknHqyX0h9aQaTx22VZDf6QyZn+0Nh+Ym8O/u0SGSkyF5cuTJYKlc8MkzW3Nzf9LE1ivcpmYC3FUGpywhuUQ==}
747
-
748
-
hast-util-from-html@2.0.3:
749
-
resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==}
750
-
751
-
hast-util-from-parse5@8.0.3:
752
-
resolution: {integrity: sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==}
753
-
754
-
hast-util-is-element@3.0.0:
755
-
resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==}
756
-
757
-
hast-util-parse-selector@4.0.0:
758
-
resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==}
759
-
760
-
hast-util-raw@9.1.0:
761
-
resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==}
762
-
763
-
hast-util-to-html@9.0.5:
764
-
resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==}
765
-
766
-
hast-util-to-parse5@8.0.0:
767
-
resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==}
768
-
769
-
hast-util-to-text@4.0.2:
770
-
resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==}
771
-
772
-
hast-util-whitespace@3.0.0:
773
-
resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
774
-
775
-
hastscript@9.0.1:
776
-
resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==}
777
-
778
-
html-escaper@3.0.3:
779
-
resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==}
780
-
781
-
html-void-elements@3.0.0:
782
-
resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
783
-
784
-
http-cache-semantics@4.2.0:
785
-
resolution: {integrity: sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==}
786
-
787
-
import-meta-resolve@4.1.0:
788
-
resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==}
789
-
790
-
iron-webcrypto@1.2.1:
791
-
resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==}
792
-
793
-
is-arrayish@0.3.2:
794
-
resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==}
795
-
796
-
is-docker@3.0.0:
797
-
resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
798
-
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
799
-
hasBin: true
800
-
801
-
is-fullwidth-code-point@3.0.0:
802
-
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
803
-
engines: {node: '>=8'}
608
+
gensync@1.0.0-beta.2:
609
+
resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
610
+
engines: {node: '>=6.9.0'}
804
611
805
-
is-inside-container@1.0.0:
806
-
resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
807
-
engines: {node: '>=14.16'}
808
-
hasBin: true
809
-
810
-
is-plain-obj@4.1.0:
811
-
resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
812
-
engines: {node: '>=12'}
612
+
html-entities@2.3.3:
613
+
resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==}
813
614
814
-
is-wsl@3.1.0:
815
-
resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==}
816
-
engines: {node: '>=16'}
615
+
is-what@4.1.16:
616
+
resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==}
617
+
engines: {node: '>=12.13'}
817
618
818
-
js-yaml@4.1.0:
819
-
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
820
-
hasBin: true
619
+
js-tokens@4.0.0:
620
+
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
821
621
822
-
kleur@3.0.3:
823
-
resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
622
+
jsesc@3.1.0:
623
+
resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
824
624
engines: {node: '>=6'}
625
+
hasBin: true
825
626
826
-
kleur@4.1.5:
827
-
resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
627
+
json5@2.2.3:
628
+
resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
828
629
engines: {node: '>=6'}
829
-
830
-
longest-streak@3.1.0:
831
-
resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
832
-
833
-
lru-cache@10.4.3:
834
-
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
835
-
836
-
magic-string@0.30.17:
837
-
resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
838
-
839
-
magicast@0.3.5:
840
-
resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==}
841
-
842
-
markdown-table@3.0.4:
843
-
resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==}
844
-
845
-
mdast-util-definitions@6.0.0:
846
-
resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==}
847
-
848
-
mdast-util-find-and-replace@3.0.2:
849
-
resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==}
850
-
851
-
mdast-util-from-markdown@2.0.2:
852
-
resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==}
853
-
854
-
mdast-util-gfm-autolink-literal@2.0.1:
855
-
resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==}
856
-
857
-
mdast-util-gfm-footnote@2.1.0:
858
-
resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==}
859
-
860
-
mdast-util-gfm-strikethrough@2.0.0:
861
-
resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
862
-
863
-
mdast-util-gfm-table@2.0.0:
864
-
resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
865
-
866
-
mdast-util-gfm-task-list-item@2.0.0:
867
-
resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
868
-
869
-
mdast-util-gfm@3.1.0:
870
-
resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==}
871
-
872
-
mdast-util-phrasing@4.1.0:
873
-
resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
874
-
875
-
mdast-util-to-hast@13.2.0:
876
-
resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==}
877
-
878
-
mdast-util-to-markdown@2.1.2:
879
-
resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==}
880
-
881
-
mdast-util-to-string@4.0.0:
882
-
resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
883
-
884
-
mdn-data@2.12.2:
885
-
resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==}
886
-
887
-
micromark-core-commonmark@2.0.3:
888
-
resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==}
889
-
890
-
micromark-extension-gfm-autolink-literal@2.1.0:
891
-
resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
892
-
893
-
micromark-extension-gfm-footnote@2.1.0:
894
-
resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
895
-
896
-
micromark-extension-gfm-strikethrough@2.1.0:
897
-
resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
898
-
899
-
micromark-extension-gfm-table@2.1.1:
900
-
resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==}
901
-
902
-
micromark-extension-gfm-tagfilter@2.0.0:
903
-
resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
904
-
905
-
micromark-extension-gfm-task-list-item@2.1.0:
906
-
resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
907
-
908
-
micromark-extension-gfm@3.0.0:
909
-
resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
910
-
911
-
micromark-factory-destination@2.0.1:
912
-
resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==}
913
-
914
-
micromark-factory-label@2.0.1:
915
-
resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==}
916
-
917
-
micromark-factory-space@2.0.1:
918
-
resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==}
919
-
920
-
micromark-factory-title@2.0.1:
921
-
resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==}
630
+
hasBin: true
922
631
923
-
micromark-factory-whitespace@2.0.1:
924
-
resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==}
632
+
lru-cache@5.1.1:
633
+
resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
925
634
926
-
micromark-util-character@2.1.1:
927
-
resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==}
928
-
929
-
micromark-util-chunked@2.0.1:
930
-
resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==}
931
-
932
-
micromark-util-classify-character@2.0.1:
933
-
resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==}
934
-
935
-
micromark-util-combine-extensions@2.0.1:
936
-
resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==}
937
-
938
-
micromark-util-decode-numeric-character-reference@2.0.2:
939
-
resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==}
940
-
941
-
micromark-util-decode-string@2.0.1:
942
-
resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==}
943
-
944
-
micromark-util-encode@2.0.1:
945
-
resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==}
946
-
947
-
micromark-util-html-tag-name@2.0.1:
948
-
resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==}
949
-
950
-
micromark-util-normalize-identifier@2.0.1:
951
-
resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==}
952
-
953
-
micromark-util-resolve-all@2.0.1:
954
-
resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==}
955
-
956
-
micromark-util-sanitize-uri@2.0.1:
957
-
resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==}
958
-
959
-
micromark-util-subtokenize@2.1.0:
960
-
resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==}
961
-
962
-
micromark-util-symbol@2.0.1:
963
-
resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==}
964
-
965
-
micromark-util-types@2.0.2:
966
-
resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==}
967
-
968
-
micromark@4.0.2:
969
-
resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==}
970
-
971
-
mrmime@2.0.1:
972
-
resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
973
-
engines: {node: '>=10'}
635
+
merge-anything@5.1.7:
636
+
resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==}
637
+
engines: {node: '>=12.13'}
974
638
975
639
ms@2.1.3:
976
640
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
···
980
644
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
981
645
hasBin: true
982
646
983
-
neotraverse@0.6.18:
984
-
resolution: {integrity: sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA==}
985
-
engines: {node: '>= 10'}
986
-
987
-
nlcst-to-string@4.0.0:
988
-
resolution: {integrity: sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==}
989
-
990
-
node-fetch-native@1.6.6:
991
-
resolution: {integrity: sha512-8Mc2HhqPdlIfedsuZoc3yioPuzp6b+L5jRCRY1QzuWZh2EGJVQrGppC6V6cF0bLdbW0+O2YpqCA25aF/1lvipQ==}
992
-
993
-
node-fetch@2.7.0:
994
-
resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
995
-
engines: {node: 4.x || >=6.0.0}
996
-
peerDependencies:
997
-
encoding: ^0.1.0
998
-
peerDependenciesMeta:
999
-
encoding:
1000
-
optional: true
1001
-
1002
-
node-mock-http@1.0.0:
1003
-
resolution: {integrity: sha512-0uGYQ1WQL1M5kKvGRXWQ3uZCHtLTO8hln3oBjIusM75WoesZ909uQJs/Hb946i2SS+Gsrhkaa6iAO17jRIv6DQ==}
1004
-
1005
-
normalize-path@3.0.0:
1006
-
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
1007
-
engines: {node: '>=0.10.0'}
1008
-
1009
-
ofetch@1.4.1:
1010
-
resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==}
1011
-
1012
-
ohash@2.0.11:
1013
-
resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==}
1014
-
1015
-
oniguruma-parser@0.12.1:
1016
-
resolution: {integrity: sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==}
1017
-
1018
-
oniguruma-to-es@4.3.3:
1019
-
resolution: {integrity: sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg==}
1020
-
1021
-
p-limit@6.2.0:
1022
-
resolution: {integrity: sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA==}
1023
-
engines: {node: '>=18'}
1024
-
1025
-
p-queue@8.1.0:
1026
-
resolution: {integrity: sha512-mxLDbbGIBEXTJL0zEx8JIylaj3xQ7Z/7eEVjcF9fJX4DBiH9oqe+oahYnlKKxm0Ci9TlWTyhSHgygxMxjIB2jw==}
1027
-
engines: {node: '>=18'}
1028
-
1029
-
p-timeout@6.1.4:
1030
-
resolution: {integrity: sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg==}
1031
-
engines: {node: '>=14.16'}
647
+
nanoid@5.1.5:
648
+
resolution: {integrity: sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==}
649
+
engines: {node: ^18 || >=20}
650
+
hasBin: true
1032
651
1033
-
package-manager-detector@1.3.0:
1034
-
resolution: {integrity: sha512-ZsEbbZORsyHuO00lY1kV3/t72yp6Ysay6Pd17ZAlNGuGwmWDLCJxFpRs0IzfXfj1o4icJOkUEioexFHzyPurSQ==}
1035
-
1036
-
pako@0.2.9:
1037
-
resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==}
1038
-
1039
-
parse-latin@7.0.0:
1040
-
resolution: {integrity: sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==}
652
+
node-releases@2.0.19:
653
+
resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
1041
654
1042
655
parse5@7.3.0:
1043
656
resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==}
···
1045
658
picocolors@1.1.1:
1046
659
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
1047
660
1048
-
picomatch@2.3.1:
1049
-
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1050
-
engines: {node: '>=8.6'}
1051
-
1052
-
picomatch@4.0.2:
1053
-
resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
661
+
picomatch@4.0.3:
662
+
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
1054
663
engines: {node: '>=12'}
1055
664
1056
-
postcss@8.5.4:
1057
-
resolution: {integrity: sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==}
665
+
postcss@8.5.6:
666
+
resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
1058
667
engines: {node: ^10 || ^12 || >=14}
1059
668
1060
-
prismjs@1.30.0:
1061
-
resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==}
1062
-
engines: {node: '>=6'}
1063
-
1064
-
prompts@2.4.2:
1065
-
resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
1066
-
engines: {node: '>= 6'}
1067
-
1068
-
property-information@6.5.0:
1069
-
resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==}
1070
-
1071
-
property-information@7.1.0:
1072
-
resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==}
1073
-
1074
-
radix3@1.1.2:
1075
-
resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==}
1076
-
1077
-
readdirp@4.1.2:
1078
-
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
1079
-
engines: {node: '>= 14.18.0'}
1080
-
1081
-
regex-recursion@6.0.2:
1082
-
resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==}
1083
-
1084
-
regex-utilities@2.3.0:
1085
-
resolution: {integrity: sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==}
669
+
prettier@3.6.2:
670
+
resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==}
671
+
engines: {node: '>=14'}
672
+
hasBin: true
1086
673
1087
-
regex@6.0.1:
1088
-
resolution: {integrity: sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==}
1089
-
1090
-
rehype-parse@9.0.1:
1091
-
resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==}
1092
-
1093
-
rehype-raw@7.0.0:
1094
-
resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==}
1095
-
1096
-
rehype-stringify@10.0.1:
1097
-
resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==}
1098
-
1099
-
rehype@13.0.2:
1100
-
resolution: {integrity: sha512-j31mdaRFrwFRUIlxGeuPXXKWQxet52RBQRvCmzl5eCefn/KGbomK5GMHNMsOJf55fgo3qw5tST5neDuarDYR2A==}
1101
-
1102
-
remark-gfm@4.0.1:
1103
-
resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==}
1104
-
1105
-
remark-parse@11.0.0:
1106
-
resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==}
1107
-
1108
-
remark-rehype@11.1.2:
1109
-
resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==}
1110
-
1111
-
remark-smartypants@3.0.2:
1112
-
resolution: {integrity: sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==}
1113
-
engines: {node: '>=16.0.0'}
1114
-
1115
-
remark-stringify@11.0.0:
1116
-
resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==}
1117
-
1118
-
restructure@3.0.2:
1119
-
resolution: {integrity: sha512-gSfoiOEA0VPE6Tukkrr7I0RBdE0s7H1eFCDBk05l1KIQT1UIKNc5JZy6jdyW6eYH3aR3g5b3PuL77rq0hvwtAw==}
1120
-
1121
-
retext-latin@4.0.0:
1122
-
resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==}
1123
-
1124
-
retext-smartypants@6.2.0:
1125
-
resolution: {integrity: sha512-kk0jOU7+zGv//kfjXEBjdIryL1Acl4i9XNkHxtM7Tm5lFiCog576fjNC9hjoR7LTKQ0DsPWy09JummSsH1uqfQ==}
1126
-
1127
-
retext-stringify@4.0.0:
1128
-
resolution: {integrity: sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==}
1129
-
1130
-
retext@9.0.0:
1131
-
resolution: {integrity: sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==}
1132
-
1133
-
rollup@4.42.0:
1134
-
resolution: {integrity: sha512-LW+Vse3BJPyGJGAJt1j8pWDKPd73QM8cRXYK1IxOBgL2AGLu7Xd2YOW0M2sLUBCkF5MshXXtMApyEAEzMVMsnw==}
674
+
rollup@4.46.3:
675
+
resolution: {integrity: sha512-RZn2XTjXb8t5g13f5YclGoilU/kwT696DIkY3sywjdZidNSi3+vseaQov7D7BZXVJCPv3pDWUN69C78GGbXsKw==}
1135
676
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
1136
677
hasBin: true
1137
678
1138
-
semver@7.7.2:
1139
-
resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==}
1140
-
engines: {node: '>=10'}
679
+
semver@6.3.1:
680
+
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
1141
681
hasBin: true
1142
682
1143
-
sharp@0.33.5:
1144
-
resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==}
1145
-
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
683
+
seroval-plugins@1.3.2:
684
+
resolution: {integrity: sha512-0QvCV2lM3aj/U3YozDiVwx9zpH0q8A60CTWIv4Jszj/givcudPb48B+rkU5D51NJ0pTpweGMttHjboPa9/zoIQ==}
685
+
engines: {node: '>=10'}
686
+
peerDependencies:
687
+
seroval: ^1.0
1146
688
1147
-
shiki@3.6.0:
1148
-
resolution: {integrity: sha512-tKn/Y0MGBTffQoklaATXmTqDU02zx8NYBGQ+F6gy87/YjKbizcLd+Cybh/0ZtOBX9r1NEnAy/GTRDKtOsc1L9w==}
689
+
seroval@1.3.2:
690
+
resolution: {integrity: sha512-RbcPH1n5cfwKrru7v7+zrZvjLurgHhGyso3HTyGtRivGWgYjbOmGuivCQaORNELjNONoK35nj28EoWul9sb1zQ==}
691
+
engines: {node: '>=10'}
1149
692
1150
-
simple-swizzle@0.2.2:
1151
-
resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==}
693
+
solid-devtools@0.34.3:
694
+
resolution: {integrity: sha512-ZQua959n+Zu3sLbm9g0IRjYUb1YYlYbu83PWLRoKbSsq0a3ItQNhnS2OBU7rQNmOKZiMexNo9Z3izas9BcOKDg==}
695
+
peerDependencies:
696
+
solid-js: ^1.9.0
697
+
vite: ^2.2.3 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0
698
+
peerDependenciesMeta:
699
+
vite:
700
+
optional: true
1152
701
1153
-
sisteransi@1.0.5:
1154
-
resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
702
+
solid-js@1.9.9:
703
+
resolution: {integrity: sha512-A0ZBPJQldAeGCTW0YRYJmt7RCeh5rbFfPZ2aOttgYnctHE7HgKeHCBB/PVc2P7eOfmNXqMFFFoYYdm3S4dcbkA==}
1155
704
1156
-
smol-toml@1.3.4:
1157
-
resolution: {integrity: sha512-UOPtVuYkzYGee0Bd2Szz8d2G3RfMfJ2t3qVdZUAozZyAk+a0Sxa+QKix0YCwjL/A1RR0ar44nCxaoN9FxdJGwA==}
1158
-
engines: {node: '>= 18'}
705
+
solid-refresh@0.6.3:
706
+
resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==}
707
+
peerDependencies:
708
+
solid-js: ^1.3
1159
709
1160
710
source-map-js@1.2.1:
1161
711
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
1162
712
engines: {node: '>=0.10.0'}
1163
713
1164
-
space-separated-tokens@2.0.2:
1165
-
resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
1166
-
1167
-
string-width@4.2.3:
1168
-
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
1169
-
engines: {node: '>=8'}
1170
-
1171
-
string-width@7.2.0:
1172
-
resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
1173
-
engines: {node: '>=18'}
1174
-
1175
-
stringify-entities@4.0.4:
1176
-
resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
1177
-
1178
-
strip-ansi@6.0.1:
1179
-
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1180
-
engines: {node: '>=8'}
1181
-
1182
-
strip-ansi@7.1.0:
1183
-
resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
1184
-
engines: {node: '>=12'}
1185
-
1186
-
tiny-inflate@1.0.3:
1187
-
resolution: {integrity: sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==}
1188
-
1189
-
tinyexec@0.3.2:
1190
-
resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
1191
-
1192
714
tinyglobby@0.2.14:
1193
715
resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==}
1194
716
engines: {node: '>=12.0.0'}
1195
717
1196
-
tr46@0.0.3:
1197
-
resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
1198
-
1199
-
trim-lines@3.0.1:
1200
-
resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
1201
-
1202
-
trough@2.2.0:
1203
-
resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
1204
-
1205
-
tsconfck@3.1.6:
1206
-
resolution: {integrity: sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==}
1207
-
engines: {node: ^18 || >=20}
718
+
typescript@5.9.2:
719
+
resolution: {integrity: sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==}
720
+
engines: {node: '>=14.17'}
1208
721
hasBin: true
1209
-
peerDependencies:
1210
-
typescript: ^5.0.0
1211
-
peerDependenciesMeta:
1212
-
typescript:
1213
-
optional: true
1214
722
1215
-
tslib@2.8.1:
1216
-
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
723
+
undici-types@7.10.0:
724
+
resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==}
1217
725
1218
-
type-fest@4.41.0:
1219
-
resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==}
1220
-
engines: {node: '>=16'}
1221
-
1222
-
typescript@5.8.3:
1223
-
resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==}
1224
-
engines: {node: '>=14.17'}
726
+
update-browserslist-db@1.1.3:
727
+
resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
1225
728
hasBin: true
729
+
peerDependencies:
730
+
browserslist: '>= 4.21.0'
1226
731
1227
-
ufo@1.6.1:
1228
-
resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==}
732
+
validate-html-nesting@1.2.3:
733
+
resolution: {integrity: sha512-kdkWdCl6eCeLlRShJKbjVOU2kFKxMF8Ghu50n+crEoyx+VKm3FxAxF9z4DCy6+bbTOqNW0+jcIYRnjoIRzigRw==}
1229
734
1230
-
ultrahtml@1.6.0:
1231
-
resolution: {integrity: sha512-R9fBn90VTJrqqLDwyMph+HGne8eqY1iPfYhPzZrvKpIfwkWZbcYlfpsb8B9dTvBfpy1/hqAD7Wi8EKfP9e8zdw==}
1232
-
1233
-
uncrypto@0.1.3:
1234
-
resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
1235
-
1236
-
undici-types@6.21.0:
1237
-
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
1238
-
1239
-
unicode-properties@1.4.1:
1240
-
resolution: {integrity: sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==}
1241
-
1242
-
unicode-trie@2.0.0:
1243
-
resolution: {integrity: sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==}
1244
-
1245
-
unified@11.0.5:
1246
-
resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==}
1247
-
1248
-
unifont@0.5.0:
1249
-
resolution: {integrity: sha512-4DueXMP5Hy4n607sh+vJ+rajoLu778aU3GzqeTCqsD/EaUcvqZT9wPC8kgK6Vjh22ZskrxyRCR71FwNOaYn6jA==}
1250
-
1251
-
unist-util-find-after@5.0.0:
1252
-
resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==}
1253
-
1254
-
unist-util-is@6.0.0:
1255
-
resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
1256
-
1257
-
unist-util-modify-children@4.0.0:
1258
-
resolution: {integrity: sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==}
1259
-
1260
-
unist-util-position@5.0.0:
1261
-
resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
1262
-
1263
-
unist-util-remove-position@5.0.0:
1264
-
resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==}
1265
-
1266
-
unist-util-stringify-position@4.0.0:
1267
-
resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
1268
-
1269
-
unist-util-visit-children@3.0.0:
1270
-
resolution: {integrity: sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==}
1271
-
1272
-
unist-util-visit-parents@6.0.1:
1273
-
resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
1274
-
1275
-
unist-util-visit@5.0.0:
1276
-
resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
1277
-
1278
-
unstorage@1.16.0:
1279
-
resolution: {integrity: sha512-WQ37/H5A7LcRPWfYOrDa1Ys02xAbpPJq6q5GkO88FBXVSQzHd7+BjEwfRqyaSWCv9MbsJy058GWjjPjcJ16GGA==}
735
+
vite-plugin-solid@2.11.8:
736
+
resolution: {integrity: sha512-hFrCxBfv3B1BmFqnJF4JOCYpjrmi/zwyeKjcomQ0khh8HFyQ8SbuBWQ7zGojfrz6HUOBFrJBNySDi/JgAHytWg==}
1280
737
peerDependencies:
1281
-
'@azure/app-configuration': ^1.8.0
1282
-
'@azure/cosmos': ^4.2.0
1283
-
'@azure/data-tables': ^13.3.0
1284
-
'@azure/identity': ^4.6.0
1285
-
'@azure/keyvault-secrets': ^4.9.0
1286
-
'@azure/storage-blob': ^12.26.0
1287
-
'@capacitor/preferences': ^6.0.3 || ^7.0.0
1288
-
'@deno/kv': '>=0.9.0'
1289
-
'@netlify/blobs': ^6.5.0 || ^7.0.0 || ^8.1.0
1290
-
'@planetscale/database': ^1.19.0
1291
-
'@upstash/redis': ^1.34.3
1292
-
'@vercel/blob': '>=0.27.1'
1293
-
'@vercel/kv': ^1.0.1
1294
-
aws4fetch: ^1.0.20
1295
-
db0: '>=0.2.1'
1296
-
idb-keyval: ^6.2.1
1297
-
ioredis: ^5.4.2
1298
-
uploadthing: ^7.4.4
738
+
'@testing-library/jest-dom': ^5.16.6 || ^5.17.0 || ^6.*
739
+
solid-js: ^1.7.2
740
+
vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0
1299
741
peerDependenciesMeta:
1300
-
'@azure/app-configuration':
1301
-
optional: true
1302
-
'@azure/cosmos':
1303
-
optional: true
1304
-
'@azure/data-tables':
1305
-
optional: true
1306
-
'@azure/identity':
1307
-
optional: true
1308
-
'@azure/keyvault-secrets':
1309
-
optional: true
1310
-
'@azure/storage-blob':
1311
-
optional: true
1312
-
'@capacitor/preferences':
1313
-
optional: true
1314
-
'@deno/kv':
1315
-
optional: true
1316
-
'@netlify/blobs':
1317
-
optional: true
1318
-
'@planetscale/database':
1319
-
optional: true
1320
-
'@upstash/redis':
1321
-
optional: true
1322
-
'@vercel/blob':
1323
-
optional: true
1324
-
'@vercel/kv':
1325
-
optional: true
1326
-
aws4fetch:
1327
-
optional: true
1328
-
db0:
1329
-
optional: true
1330
-
idb-keyval:
1331
-
optional: true
1332
-
ioredis:
1333
-
optional: true
1334
-
uploadthing:
742
+
'@testing-library/jest-dom':
1335
743
optional: true
1336
744
1337
-
vfile-location@5.0.3:
1338
-
resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==}
1339
-
1340
-
vfile-message@4.0.2:
1341
-
resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
1342
-
1343
-
vfile@6.0.3:
1344
-
resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==}
1345
-
1346
745
vite@6.3.5:
1347
746
resolution: {integrity: sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==}
1348
747
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
···
1383
782
yaml:
1384
783
optional: true
1385
784
1386
-
vitefu@1.0.6:
1387
-
resolution: {integrity: sha512-+Rex1GlappUyNN6UfwbVZne/9cYC4+R2XDk9xkNXBKMw6HQagdX9PgZ8V2v1WUSK1wfBLp7qbI1+XSNIlB1xmA==}
785
+
vitefu@1.1.1:
786
+
resolution: {integrity: sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ==}
1388
787
peerDependencies:
1389
-
vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0
788
+
vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0
1390
789
peerDependenciesMeta:
1391
790
vite:
1392
791
optional: true
1393
792
1394
-
web-namespaces@2.0.1:
1395
-
resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==}
793
+
yallist@3.1.1:
794
+
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
1396
795
1397
-
webidl-conversions@3.0.1:
1398
-
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
796
+
snapshots:
1399
797
1400
-
whatwg-url@5.0.0:
1401
-
resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
798
+
'@ampproject/remapping@2.3.0':
799
+
dependencies:
800
+
'@jridgewell/gen-mapping': 0.3.13
801
+
'@jridgewell/trace-mapping': 0.3.30
1402
802
1403
-
which-pm-runs@1.1.0:
1404
-
resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==}
1405
-
engines: {node: '>=4'}
803
+
'@atcute/client@4.0.3':
804
+
dependencies:
805
+
'@atcute/identity': 1.0.3
806
+
'@atcute/lexicons': 1.1.0
1406
807
1407
-
widest-line@5.0.0:
1408
-
resolution: {integrity: sha512-c9bZp7b5YtRj2wOe6dlj32MK+Bx/M/d+9VB2SHM1OtsUHR0aV0tdP6DWh/iMt0kWi1t5g1Iudu6hQRNd1A4PVA==}
1409
-
engines: {node: '>=18'}
808
+
'@atcute/identity-resolver@1.1.3(@atcute/identity@1.0.3)':
809
+
dependencies:
810
+
'@atcute/identity': 1.0.3
811
+
'@atcute/lexicons': 1.1.0
812
+
'@atcute/util-fetch': 1.0.1
813
+
'@badrap/valita': 0.4.6
1410
814
1411
-
wrap-ansi@9.0.0:
1412
-
resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==}
1413
-
engines: {node: '>=18'}
815
+
'@atcute/identity@1.0.3':
816
+
dependencies:
817
+
'@atcute/lexicons': 1.1.0
818
+
'@badrap/valita': 0.4.6
1414
819
1415
-
xxhash-wasm@1.1.0:
1416
-
resolution: {integrity: sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==}
820
+
'@atcute/lexicons@1.1.0':
821
+
dependencies:
822
+
esm-env: 1.2.2
1417
823
1418
-
yargs-parser@21.1.1:
1419
-
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
1420
-
engines: {node: '>=12'}
824
+
'@atcute/multibase@1.1.4':
825
+
dependencies:
826
+
'@atcute/uint8array': 1.0.3
1421
827
1422
-
yocto-queue@1.2.1:
1423
-
resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==}
1424
-
engines: {node: '>=12.20'}
828
+
'@atcute/oauth-browser-client@1.0.26':
829
+
dependencies:
830
+
'@atcute/client': 4.0.3
831
+
'@atcute/identity': 1.0.3
832
+
'@atcute/lexicons': 1.1.0
833
+
'@atcute/multibase': 1.1.4
834
+
'@atcute/uint8array': 1.0.3
835
+
nanoid: 5.1.5
1425
836
1426
-
yocto-spinner@0.2.3:
1427
-
resolution: {integrity: sha512-sqBChb33loEnkoXte1bLg45bEBsOP9N1kzQh5JZNKj/0rik4zAPTNSAVPj3uQAdc6slYJ0Ksc403G2XgxsJQFQ==}
1428
-
engines: {node: '>=18.19'}
837
+
'@atcute/uint8array@1.0.3': {}
1429
838
1430
-
yoctocolors@2.1.1:
1431
-
resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==}
1432
-
engines: {node: '>=18'}
839
+
'@atcute/util-fetch@1.0.1':
840
+
dependencies:
841
+
'@badrap/valita': 0.4.6
1433
842
1434
-
zod-to-json-schema@3.24.5:
1435
-
resolution: {integrity: sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g==}
1436
-
peerDependencies:
1437
-
zod: ^3.24.1
843
+
'@babel/code-frame@7.27.1':
844
+
dependencies:
845
+
'@babel/helper-validator-identifier': 7.27.1
846
+
js-tokens: 4.0.0
847
+
picocolors: 1.1.1
1438
848
1439
-
zod-to-ts@1.2.0:
1440
-
resolution: {integrity: sha512-x30XE43V+InwGpvTySRNz9kB7qFU8DlyEy7BsSTCHPH1R0QasMmHWZDCzYm6bVXtj/9NNJAZF3jW8rzFvH5OFA==}
1441
-
peerDependencies:
1442
-
typescript: ^4.9.4 || ^5.0.2
1443
-
zod: ^3
849
+
'@babel/compat-data@7.28.0': {}
1444
850
1445
-
zod@3.25.56:
1446
-
resolution: {integrity: sha512-rd6eEF3BTNvQnR2e2wwolfTmUTnp70aUTqr0oaGbHifzC3BKJsoV+Gat8vxUMR1hwOKBs6El+qWehrHbCpW6SQ==}
851
+
'@babel/core@7.28.3':
852
+
dependencies:
853
+
'@ampproject/remapping': 2.3.0
854
+
'@babel/code-frame': 7.27.1
855
+
'@babel/generator': 7.28.3
856
+
'@babel/helper-compilation-targets': 7.27.2
857
+
'@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.3)
858
+
'@babel/helpers': 7.28.3
859
+
'@babel/parser': 7.28.3
860
+
'@babel/template': 7.27.2
861
+
'@babel/traverse': 7.28.3
862
+
'@babel/types': 7.28.2
863
+
convert-source-map: 2.0.0
864
+
debug: 4.4.1
865
+
gensync: 1.0.0-beta.2
866
+
json5: 2.2.3
867
+
semver: 6.3.1
868
+
transitivePeerDependencies:
869
+
- supports-color
1447
870
1448
-
zwitch@2.0.4:
1449
-
resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
871
+
'@babel/generator@7.28.3':
872
+
dependencies:
873
+
'@babel/parser': 7.28.3
874
+
'@babel/types': 7.28.2
875
+
'@jridgewell/gen-mapping': 0.3.13
876
+
'@jridgewell/trace-mapping': 0.3.30
877
+
jsesc: 3.1.0
1450
878
1451
-
snapshots:
879
+
'@babel/helper-compilation-targets@7.27.2':
880
+
dependencies:
881
+
'@babel/compat-data': 7.28.0
882
+
'@babel/helper-validator-option': 7.27.1
883
+
browserslist: 4.25.3
884
+
lru-cache: 5.1.1
885
+
semver: 6.3.1
1452
886
1453
-
'@astrojs/compiler@2.12.1': {}
887
+
'@babel/helper-globals@7.28.0': {}
1454
888
1455
-
'@astrojs/internal-helpers@0.6.1': {}
889
+
'@babel/helper-module-imports@7.18.6':
890
+
dependencies:
891
+
'@babel/types': 7.28.2
1456
892
1457
-
'@astrojs/markdown-remark@6.3.2':
893
+
'@babel/helper-module-imports@7.27.1':
1458
894
dependencies:
1459
-
'@astrojs/internal-helpers': 0.6.1
1460
-
'@astrojs/prism': 3.3.0
1461
-
github-slugger: 2.0.0
1462
-
hast-util-from-html: 2.0.3
1463
-
hast-util-to-text: 4.0.2
1464
-
import-meta-resolve: 4.1.0
1465
-
js-yaml: 4.1.0
1466
-
mdast-util-definitions: 6.0.0
1467
-
rehype-raw: 7.0.0
1468
-
rehype-stringify: 10.0.1
1469
-
remark-gfm: 4.0.1
1470
-
remark-parse: 11.0.0
1471
-
remark-rehype: 11.1.2
1472
-
remark-smartypants: 3.0.2
1473
-
shiki: 3.6.0
1474
-
smol-toml: 1.3.4
1475
-
unified: 11.0.5
1476
-
unist-util-remove-position: 5.0.0
1477
-
unist-util-visit: 5.0.0
1478
-
unist-util-visit-parents: 6.0.1
1479
-
vfile: 6.0.3
895
+
'@babel/traverse': 7.28.3
896
+
'@babel/types': 7.28.2
1480
897
transitivePeerDependencies:
1481
898
- supports-color
1482
899
1483
-
'@astrojs/prism@3.3.0':
1484
-
dependencies:
1485
-
prismjs: 1.30.0
1486
-
1487
-
'@astrojs/telemetry@3.3.0':
900
+
'@babel/helper-module-transforms@7.28.3(@babel/core@7.28.3)':
1488
901
dependencies:
1489
-
ci-info: 4.2.0
1490
-
debug: 4.4.1
1491
-
dlv: 1.1.3
1492
-
dset: 3.1.4
1493
-
is-docker: 3.0.0
1494
-
is-wsl: 3.1.0
1495
-
which-pm-runs: 1.1.0
902
+
'@babel/core': 7.28.3
903
+
'@babel/helper-module-imports': 7.27.1
904
+
'@babel/helper-validator-identifier': 7.27.1
905
+
'@babel/traverse': 7.28.3
1496
906
transitivePeerDependencies:
1497
907
- supports-color
908
+
909
+
'@babel/helper-plugin-utils@7.27.1': {}
1498
910
1499
911
'@babel/helper-string-parser@7.27.1': {}
1500
912
1501
913
'@babel/helper-validator-identifier@7.27.1': {}
1502
914
1503
-
'@babel/parser@7.27.5':
1504
-
dependencies:
1505
-
'@babel/types': 7.27.6
915
+
'@babel/helper-validator-option@7.27.1': {}
1506
916
1507
-
'@babel/types@7.27.6':
917
+
'@babel/helpers@7.28.3':
1508
918
dependencies:
1509
-
'@babel/helper-string-parser': 7.27.1
1510
-
'@babel/helper-validator-identifier': 7.27.1
919
+
'@babel/template': 7.27.2
920
+
'@babel/types': 7.28.2
1511
921
1512
-
'@capsizecss/unpack@2.4.0':
922
+
'@babel/parser@7.28.3':
1513
923
dependencies:
1514
-
blob-to-buffer: 1.2.9
1515
-
cross-fetch: 3.2.0
1516
-
fontkit: 2.0.4
1517
-
transitivePeerDependencies:
1518
-
- encoding
924
+
'@babel/types': 7.28.2
1519
925
1520
-
'@emnapi/runtime@1.4.3':
926
+
'@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.3)':
1521
927
dependencies:
1522
-
tslib: 2.8.1
1523
-
optional: true
1524
-
1525
-
'@esbuild/aix-ppc64@0.25.5':
1526
-
optional: true
1527
-
1528
-
'@esbuild/android-arm64@0.25.5':
1529
-
optional: true
1530
-
1531
-
'@esbuild/android-arm@0.25.5':
1532
-
optional: true
1533
-
1534
-
'@esbuild/android-x64@0.25.5':
1535
-
optional: true
1536
-
1537
-
'@esbuild/darwin-arm64@0.25.5':
1538
-
optional: true
1539
-
1540
-
'@esbuild/darwin-x64@0.25.5':
1541
-
optional: true
1542
-
1543
-
'@esbuild/freebsd-arm64@0.25.5':
1544
-
optional: true
1545
-
1546
-
'@esbuild/freebsd-x64@0.25.5':
1547
-
optional: true
1548
-
1549
-
'@esbuild/linux-arm64@0.25.5':
1550
-
optional: true
928
+
'@babel/core': 7.28.3
929
+
'@babel/helper-plugin-utils': 7.27.1
1551
930
1552
-
'@esbuild/linux-arm@0.25.5':
1553
-
optional: true
931
+
'@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.28.3)':
932
+
dependencies:
933
+
'@babel/core': 7.28.3
934
+
'@babel/helper-plugin-utils': 7.27.1
1554
935
1555
-
'@esbuild/linux-ia32@0.25.5':
1556
-
optional: true
1557
-
1558
-
'@esbuild/linux-loong64@0.25.5':
1559
-
optional: true
936
+
'@babel/template@7.27.2':
937
+
dependencies:
938
+
'@babel/code-frame': 7.27.1
939
+
'@babel/parser': 7.28.3
940
+
'@babel/types': 7.28.2
1560
941
1561
-
'@esbuild/linux-mips64el@0.25.5':
1562
-
optional: true
942
+
'@babel/traverse@7.28.3':
943
+
dependencies:
944
+
'@babel/code-frame': 7.27.1
945
+
'@babel/generator': 7.28.3
946
+
'@babel/helper-globals': 7.28.0
947
+
'@babel/parser': 7.28.3
948
+
'@babel/template': 7.27.2
949
+
'@babel/types': 7.28.2
950
+
debug: 4.4.1
951
+
transitivePeerDependencies:
952
+
- supports-color
1563
953
1564
-
'@esbuild/linux-ppc64@0.25.5':
1565
-
optional: true
954
+
'@babel/types@7.28.2':
955
+
dependencies:
956
+
'@babel/helper-string-parser': 7.27.1
957
+
'@babel/helper-validator-identifier': 7.27.1
1566
958
1567
-
'@esbuild/linux-riscv64@0.25.5':
1568
-
optional: true
959
+
'@badrap/valita@0.4.6': {}
1569
960
1570
-
'@esbuild/linux-s390x@0.25.5':
961
+
'@esbuild/aix-ppc64@0.25.9':
1571
962
optional: true
1572
963
1573
-
'@esbuild/linux-x64@0.25.5':
964
+
'@esbuild/android-arm64@0.25.9':
1574
965
optional: true
1575
966
1576
-
'@esbuild/netbsd-arm64@0.25.5':
967
+
'@esbuild/android-arm@0.25.9':
1577
968
optional: true
1578
969
1579
-
'@esbuild/netbsd-x64@0.25.5':
970
+
'@esbuild/android-x64@0.25.9':
1580
971
optional: true
1581
972
1582
-
'@esbuild/openbsd-arm64@0.25.5':
973
+
'@esbuild/darwin-arm64@0.25.9':
1583
974
optional: true
1584
975
1585
-
'@esbuild/openbsd-x64@0.25.5':
976
+
'@esbuild/darwin-x64@0.25.9':
1586
977
optional: true
1587
978
1588
-
'@esbuild/sunos-x64@0.25.5':
979
+
'@esbuild/freebsd-arm64@0.25.9':
1589
980
optional: true
1590
981
1591
-
'@esbuild/win32-arm64@0.25.5':
982
+
'@esbuild/freebsd-x64@0.25.9':
1592
983
optional: true
1593
984
1594
-
'@esbuild/win32-ia32@0.25.5':
985
+
'@esbuild/linux-arm64@0.25.9':
1595
986
optional: true
1596
987
1597
-
'@esbuild/win32-x64@0.25.5':
988
+
'@esbuild/linux-arm@0.25.9':
1598
989
optional: true
1599
990
1600
-
'@img/sharp-darwin-arm64@0.33.5':
1601
-
optionalDependencies:
1602
-
'@img/sharp-libvips-darwin-arm64': 1.0.4
991
+
'@esbuild/linux-ia32@0.25.9':
1603
992
optional: true
1604
993
1605
-
'@img/sharp-darwin-x64@0.33.5':
1606
-
optionalDependencies:
1607
-
'@img/sharp-libvips-darwin-x64': 1.0.4
994
+
'@esbuild/linux-loong64@0.25.9':
1608
995
optional: true
1609
996
1610
-
'@img/sharp-libvips-darwin-arm64@1.0.4':
997
+
'@esbuild/linux-mips64el@0.25.9':
1611
998
optional: true
1612
999
1613
-
'@img/sharp-libvips-darwin-x64@1.0.4':
1000
+
'@esbuild/linux-ppc64@0.25.9':
1614
1001
optional: true
1615
1002
1616
-
'@img/sharp-libvips-linux-arm64@1.0.4':
1003
+
'@esbuild/linux-riscv64@0.25.9':
1617
1004
optional: true
1618
1005
1619
-
'@img/sharp-libvips-linux-arm@1.0.5':
1006
+
'@esbuild/linux-s390x@0.25.9':
1620
1007
optional: true
1621
1008
1622
-
'@img/sharp-libvips-linux-s390x@1.0.4':
1009
+
'@esbuild/linux-x64@0.25.9':
1623
1010
optional: true
1624
1011
1625
-
'@img/sharp-libvips-linux-x64@1.0.4':
1012
+
'@esbuild/netbsd-arm64@0.25.9':
1626
1013
optional: true
1627
1014
1628
-
'@img/sharp-libvips-linuxmusl-arm64@1.0.4':
1015
+
'@esbuild/netbsd-x64@0.25.9':
1629
1016
optional: true
1630
1017
1631
-
'@img/sharp-libvips-linuxmusl-x64@1.0.4':
1018
+
'@esbuild/openbsd-arm64@0.25.9':
1632
1019
optional: true
1633
1020
1634
-
'@img/sharp-linux-arm64@0.33.5':
1635
-
optionalDependencies:
1636
-
'@img/sharp-libvips-linux-arm64': 1.0.4
1021
+
'@esbuild/openbsd-x64@0.25.9':
1637
1022
optional: true
1638
1023
1639
-
'@img/sharp-linux-arm@0.33.5':
1640
-
optionalDependencies:
1641
-
'@img/sharp-libvips-linux-arm': 1.0.5
1024
+
'@esbuild/openharmony-arm64@0.25.9':
1642
1025
optional: true
1643
1026
1644
-
'@img/sharp-linux-s390x@0.33.5':
1645
-
optionalDependencies:
1646
-
'@img/sharp-libvips-linux-s390x': 1.0.4
1027
+
'@esbuild/sunos-x64@0.25.9':
1647
1028
optional: true
1648
1029
1649
-
'@img/sharp-linux-x64@0.33.5':
1650
-
optionalDependencies:
1651
-
'@img/sharp-libvips-linux-x64': 1.0.4
1030
+
'@esbuild/win32-arm64@0.25.9':
1652
1031
optional: true
1653
1032
1654
-
'@img/sharp-linuxmusl-arm64@0.33.5':
1655
-
optionalDependencies:
1656
-
'@img/sharp-libvips-linuxmusl-arm64': 1.0.4
1033
+
'@esbuild/win32-ia32@0.25.9':
1657
1034
optional: true
1658
1035
1659
-
'@img/sharp-linuxmusl-x64@0.33.5':
1660
-
optionalDependencies:
1661
-
'@img/sharp-libvips-linuxmusl-x64': 1.0.4
1036
+
'@esbuild/win32-x64@0.25.9':
1662
1037
optional: true
1663
1038
1664
-
'@img/sharp-wasm32@0.33.5':
1039
+
'@jridgewell/gen-mapping@0.3.13':
1665
1040
dependencies:
1666
-
'@emnapi/runtime': 1.4.3
1667
-
optional: true
1041
+
'@jridgewell/sourcemap-codec': 1.5.5
1042
+
'@jridgewell/trace-mapping': 0.3.30
1668
1043
1669
-
'@img/sharp-win32-ia32@0.33.5':
1670
-
optional: true
1044
+
'@jridgewell/resolve-uri@3.1.2': {}
1671
1045
1672
-
'@img/sharp-win32-x64@0.33.5':
1673
-
optional: true
1046
+
'@jridgewell/sourcemap-codec@1.5.5': {}
1674
1047
1675
-
'@jridgewell/sourcemap-codec@1.5.0': {}
1048
+
'@jridgewell/trace-mapping@0.3.30':
1049
+
dependencies:
1050
+
'@jridgewell/resolve-uri': 3.1.2
1051
+
'@jridgewell/sourcemap-codec': 1.5.5
1676
1052
1677
-
'@oslojs/encoding@1.1.0': {}
1053
+
'@jsr/mary__exif-rm@0.2.2': {}
1678
1054
1679
-
'@rollup/pluginutils@5.1.4(rollup@4.42.0)':
1680
-
dependencies:
1681
-
'@types/estree': 1.0.8
1682
-
estree-walker: 2.0.2
1683
-
picomatch: 4.0.2
1684
-
optionalDependencies:
1685
-
rollup: 4.42.0
1055
+
'@nothing-but/utils@0.17.0': {}
1686
1056
1687
-
'@rollup/rollup-android-arm-eabi@4.42.0':
1057
+
'@rollup/rollup-android-arm-eabi@4.46.3':
1688
1058
optional: true
1689
1059
1690
-
'@rollup/rollup-android-arm64@4.42.0':
1060
+
'@rollup/rollup-android-arm64@4.46.3':
1691
1061
optional: true
1692
1062
1693
-
'@rollup/rollup-darwin-arm64@4.42.0':
1063
+
'@rollup/rollup-darwin-arm64@4.46.3':
1694
1064
optional: true
1695
1065
1696
-
'@rollup/rollup-darwin-x64@4.42.0':
1066
+
'@rollup/rollup-darwin-x64@4.46.3':
1697
1067
optional: true
1698
1068
1699
-
'@rollup/rollup-freebsd-arm64@4.42.0':
1069
+
'@rollup/rollup-freebsd-arm64@4.46.3':
1700
1070
optional: true
1701
1071
1702
-
'@rollup/rollup-freebsd-x64@4.42.0':
1072
+
'@rollup/rollup-freebsd-x64@4.46.3':
1703
1073
optional: true
1704
1074
1705
-
'@rollup/rollup-linux-arm-gnueabihf@4.42.0':
1075
+
'@rollup/rollup-linux-arm-gnueabihf@4.46.3':
1706
1076
optional: true
1707
1077
1708
-
'@rollup/rollup-linux-arm-musleabihf@4.42.0':
1078
+
'@rollup/rollup-linux-arm-musleabihf@4.46.3':
1709
1079
optional: true
1710
1080
1711
-
'@rollup/rollup-linux-arm64-gnu@4.42.0':
1081
+
'@rollup/rollup-linux-arm64-gnu@4.46.3':
1712
1082
optional: true
1713
1083
1714
-
'@rollup/rollup-linux-arm64-musl@4.42.0':
1084
+
'@rollup/rollup-linux-arm64-musl@4.46.3':
1715
1085
optional: true
1716
1086
1717
-
'@rollup/rollup-linux-loongarch64-gnu@4.42.0':
1087
+
'@rollup/rollup-linux-loongarch64-gnu@4.46.3':
1718
1088
optional: true
1719
1089
1720
-
'@rollup/rollup-linux-powerpc64le-gnu@4.42.0':
1090
+
'@rollup/rollup-linux-ppc64-gnu@4.46.3':
1721
1091
optional: true
1722
1092
1723
-
'@rollup/rollup-linux-riscv64-gnu@4.42.0':
1093
+
'@rollup/rollup-linux-riscv64-gnu@4.46.3':
1724
1094
optional: true
1725
1095
1726
-
'@rollup/rollup-linux-riscv64-musl@4.42.0':
1096
+
'@rollup/rollup-linux-riscv64-musl@4.46.3':
1727
1097
optional: true
1728
1098
1729
-
'@rollup/rollup-linux-s390x-gnu@4.42.0':
1099
+
'@rollup/rollup-linux-s390x-gnu@4.46.3':
1730
1100
optional: true
1731
1101
1732
-
'@rollup/rollup-linux-x64-gnu@4.42.0':
1102
+
'@rollup/rollup-linux-x64-gnu@4.46.3':
1733
1103
optional: true
1734
1104
1735
-
'@rollup/rollup-linux-x64-musl@4.42.0':
1105
+
'@rollup/rollup-linux-x64-musl@4.46.3':
1736
1106
optional: true
1737
1107
1738
-
'@rollup/rollup-win32-arm64-msvc@4.42.0':
1108
+
'@rollup/rollup-win32-arm64-msvc@4.46.3':
1739
1109
optional: true
1740
1110
1741
-
'@rollup/rollup-win32-ia32-msvc@4.42.0':
1111
+
'@rollup/rollup-win32-ia32-msvc@4.46.3':
1742
1112
optional: true
1743
1113
1744
-
'@rollup/rollup-win32-x64-msvc@4.42.0':
1114
+
'@rollup/rollup-win32-x64-msvc@4.46.3':
1745
1115
optional: true
1746
1116
1747
-
'@shikijs/core@3.6.0':
1117
+
'@solid-devtools/debugger@0.28.1(solid-js@1.9.9)':
1748
1118
dependencies:
1749
-
'@shikijs/types': 3.6.0
1750
-
'@shikijs/vscode-textmate': 10.0.2
1751
-
'@types/hast': 3.0.4
1752
-
hast-util-to-html: 9.0.5
1119
+
'@nothing-but/utils': 0.17.0
1120
+
'@solid-devtools/shared': 0.20.0(solid-js@1.9.9)
1121
+
'@solid-primitives/bounds': 0.1.3(solid-js@1.9.9)
1122
+
'@solid-primitives/event-listener': 2.4.3(solid-js@1.9.9)
1123
+
'@solid-primitives/keyboard': 1.3.3(solid-js@1.9.9)
1124
+
'@solid-primitives/rootless': 1.5.2(solid-js@1.9.9)
1125
+
'@solid-primitives/scheduled': 1.5.2(solid-js@1.9.9)
1126
+
'@solid-primitives/static-store': 0.1.2(solid-js@1.9.9)
1127
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1128
+
solid-js: 1.9.9
1753
1129
1754
-
'@shikijs/engine-javascript@3.6.0':
1130
+
'@solid-devtools/shared@0.20.0(solid-js@1.9.9)':
1755
1131
dependencies:
1756
-
'@shikijs/types': 3.6.0
1757
-
'@shikijs/vscode-textmate': 10.0.2
1758
-
oniguruma-to-es: 4.3.3
1132
+
'@nothing-but/utils': 0.17.0
1133
+
'@solid-primitives/event-listener': 2.4.3(solid-js@1.9.9)
1134
+
'@solid-primitives/media': 2.3.3(solid-js@1.9.9)
1135
+
'@solid-primitives/refs': 1.1.2(solid-js@1.9.9)
1136
+
'@solid-primitives/rootless': 1.5.2(solid-js@1.9.9)
1137
+
'@solid-primitives/scheduled': 1.5.2(solid-js@1.9.9)
1138
+
'@solid-primitives/static-store': 0.1.2(solid-js@1.9.9)
1139
+
'@solid-primitives/styles': 0.1.2(solid-js@1.9.9)
1140
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1141
+
solid-js: 1.9.9
1759
1142
1760
-
'@shikijs/engine-oniguruma@3.6.0':
1143
+
'@solid-primitives/bounds@0.1.3(solid-js@1.9.9)':
1761
1144
dependencies:
1762
-
'@shikijs/types': 3.6.0
1763
-
'@shikijs/vscode-textmate': 10.0.2
1145
+
'@solid-primitives/event-listener': 2.4.3(solid-js@1.9.9)
1146
+
'@solid-primitives/resize-observer': 2.1.3(solid-js@1.9.9)
1147
+
'@solid-primitives/static-store': 0.1.2(solid-js@1.9.9)
1148
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1149
+
solid-js: 1.9.9
1764
1150
1765
-
'@shikijs/langs@3.6.0':
1151
+
'@solid-primitives/event-listener@2.4.3(solid-js@1.9.9)':
1766
1152
dependencies:
1767
-
'@shikijs/types': 3.6.0
1153
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1154
+
solid-js: 1.9.9
1768
1155
1769
-
'@shikijs/themes@3.6.0':
1156
+
'@solid-primitives/keyboard@1.3.3(solid-js@1.9.9)':
1770
1157
dependencies:
1771
-
'@shikijs/types': 3.6.0
1158
+
'@solid-primitives/event-listener': 2.4.3(solid-js@1.9.9)
1159
+
'@solid-primitives/rootless': 1.5.2(solid-js@1.9.9)
1160
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1161
+
solid-js: 1.9.9
1772
1162
1773
-
'@shikijs/types@3.6.0':
1163
+
'@solid-primitives/media@2.3.3(solid-js@1.9.9)':
1774
1164
dependencies:
1775
-
'@shikijs/vscode-textmate': 10.0.2
1776
-
'@types/hast': 3.0.4
1777
-
1778
-
'@shikijs/vscode-textmate@10.0.2': {}
1165
+
'@solid-primitives/event-listener': 2.4.3(solid-js@1.9.9)
1166
+
'@solid-primitives/rootless': 1.5.2(solid-js@1.9.9)
1167
+
'@solid-primitives/static-store': 0.1.2(solid-js@1.9.9)
1168
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1169
+
solid-js: 1.9.9
1779
1170
1780
-
'@swc/helpers@0.5.17':
1171
+
'@solid-primitives/refs@1.1.2(solid-js@1.9.9)':
1781
1172
dependencies:
1782
-
tslib: 2.8.1
1173
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1174
+
solid-js: 1.9.9
1783
1175
1784
-
'@types/debug@4.1.12':
1176
+
'@solid-primitives/resize-observer@2.1.3(solid-js@1.9.9)':
1785
1177
dependencies:
1786
-
'@types/ms': 2.1.0
1178
+
'@solid-primitives/event-listener': 2.4.3(solid-js@1.9.9)
1179
+
'@solid-primitives/rootless': 1.5.2(solid-js@1.9.9)
1180
+
'@solid-primitives/static-store': 0.1.2(solid-js@1.9.9)
1181
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1182
+
solid-js: 1.9.9
1787
1183
1788
-
'@types/estree@1.0.7': {}
1789
-
1790
-
'@types/estree@1.0.8': {}
1791
-
1792
-
'@types/fontkit@2.0.8':
1184
+
'@solid-primitives/rootless@1.5.2(solid-js@1.9.9)':
1793
1185
dependencies:
1794
-
'@types/node': 22.15.30
1186
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1187
+
solid-js: 1.9.9
1795
1188
1796
-
'@types/hast@3.0.4':
1189
+
'@solid-primitives/scheduled@1.5.2(solid-js@1.9.9)':
1797
1190
dependencies:
1798
-
'@types/unist': 3.0.3
1191
+
solid-js: 1.9.9
1799
1192
1800
-
'@types/mdast@4.0.4':
1193
+
'@solid-primitives/static-store@0.1.2(solid-js@1.9.9)':
1801
1194
dependencies:
1802
-
'@types/unist': 3.0.3
1803
-
1804
-
'@types/ms@2.1.0': {}
1195
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1196
+
solid-js: 1.9.9
1805
1197
1806
-
'@types/nlcst@2.0.3':
1198
+
'@solid-primitives/styles@0.1.2(solid-js@1.9.9)':
1807
1199
dependencies:
1808
-
'@types/unist': 3.0.3
1200
+
'@solid-primitives/rootless': 1.5.2(solid-js@1.9.9)
1201
+
'@solid-primitives/utils': 6.3.2(solid-js@1.9.9)
1202
+
solid-js: 1.9.9
1809
1203
1810
-
'@types/node@22.15.30':
1204
+
'@solid-primitives/utils@6.3.2(solid-js@1.9.9)':
1811
1205
dependencies:
1812
-
undici-types: 6.21.0
1813
-
1814
-
'@types/unist@3.0.3': {}
1206
+
solid-js: 1.9.9
1815
1207
1816
-
'@ungap/structured-clone@1.3.0': {}
1817
-
1818
-
acorn@8.15.0: {}
1819
-
1820
-
ansi-align@3.0.1:
1208
+
'@solidjs/router@0.15.3(solid-js@1.9.9)':
1821
1209
dependencies:
1822
-
string-width: 4.2.3
1210
+
solid-js: 1.9.9
1823
1211
1824
-
ansi-regex@5.0.1: {}
1825
-
1826
-
ansi-regex@6.1.0: {}
1827
-
1828
-
ansi-styles@6.2.1: {}
1829
-
1830
-
anymatch@3.1.3:
1212
+
'@types/babel__core@7.20.5':
1831
1213
dependencies:
1832
-
normalize-path: 3.0.0
1833
-
picomatch: 2.3.1
1834
-
1835
-
argparse@2.0.1: {}
1836
-
1837
-
aria-query@5.3.2: {}
1838
-
1839
-
array-iterate@2.0.1: {}
1214
+
'@babel/parser': 7.28.3
1215
+
'@babel/types': 7.28.2
1216
+
'@types/babel__generator': 7.27.0
1217
+
'@types/babel__template': 7.4.4
1218
+
'@types/babel__traverse': 7.28.0
1840
1219
1841
-
astro@5.9.1(@types/node@22.15.30)(rollup@4.42.0)(typescript@5.8.3):
1220
+
'@types/babel__generator@7.27.0':
1842
1221
dependencies:
1843
-
'@astrojs/compiler': 2.12.1
1844
-
'@astrojs/internal-helpers': 0.6.1
1845
-
'@astrojs/markdown-remark': 6.3.2
1846
-
'@astrojs/telemetry': 3.3.0
1847
-
'@capsizecss/unpack': 2.4.0
1848
-
'@oslojs/encoding': 1.1.0
1849
-
'@rollup/pluginutils': 5.1.4(rollup@4.42.0)
1850
-
acorn: 8.15.0
1851
-
aria-query: 5.3.2
1852
-
axobject-query: 4.1.0
1853
-
boxen: 8.0.1
1854
-
ci-info: 4.2.0
1855
-
clsx: 2.1.1
1856
-
common-ancestor-path: 1.0.1
1857
-
cookie: 1.0.2
1858
-
cssesc: 3.0.0
1859
-
debug: 4.4.1
1860
-
deterministic-object-hash: 2.0.2
1861
-
devalue: 5.1.1
1862
-
diff: 5.2.0
1863
-
dlv: 1.1.3
1864
-
dset: 3.1.4
1865
-
es-module-lexer: 1.7.0
1866
-
esbuild: 0.25.5
1867
-
estree-walker: 3.0.3
1868
-
flattie: 1.1.1
1869
-
fontace: 0.3.0
1870
-
github-slugger: 2.0.0
1871
-
html-escaper: 3.0.3
1872
-
http-cache-semantics: 4.2.0
1873
-
import-meta-resolve: 4.1.0
1874
-
js-yaml: 4.1.0
1875
-
kleur: 4.1.5
1876
-
magic-string: 0.30.17
1877
-
magicast: 0.3.5
1878
-
mrmime: 2.0.1
1879
-
neotraverse: 0.6.18
1880
-
p-limit: 6.2.0
1881
-
p-queue: 8.1.0
1882
-
package-manager-detector: 1.3.0
1883
-
picomatch: 4.0.2
1884
-
prompts: 2.4.2
1885
-
rehype: 13.0.2
1886
-
semver: 7.7.2
1887
-
shiki: 3.6.0
1888
-
tinyexec: 0.3.2
1889
-
tinyglobby: 0.2.14
1890
-
tsconfck: 3.1.6(typescript@5.8.3)
1891
-
ultrahtml: 1.6.0
1892
-
unifont: 0.5.0
1893
-
unist-util-visit: 5.0.0
1894
-
unstorage: 1.16.0
1895
-
vfile: 6.0.3
1896
-
vite: 6.3.5(@types/node@22.15.30)
1897
-
vitefu: 1.0.6(vite@6.3.5(@types/node@22.15.30))
1898
-
xxhash-wasm: 1.1.0
1899
-
yargs-parser: 21.1.1
1900
-
yocto-spinner: 0.2.3
1901
-
zod: 3.25.56
1902
-
zod-to-json-schema: 3.24.5(zod@3.25.56)
1903
-
zod-to-ts: 1.2.0(typescript@5.8.3)(zod@3.25.56)
1904
-
optionalDependencies:
1905
-
sharp: 0.33.5
1906
-
transitivePeerDependencies:
1907
-
- '@azure/app-configuration'
1908
-
- '@azure/cosmos'
1909
-
- '@azure/data-tables'
1910
-
- '@azure/identity'
1911
-
- '@azure/keyvault-secrets'
1912
-
- '@azure/storage-blob'
1913
-
- '@capacitor/preferences'
1914
-
- '@deno/kv'
1915
-
- '@netlify/blobs'
1916
-
- '@planetscale/database'
1917
-
- '@types/node'
1918
-
- '@upstash/redis'
1919
-
- '@vercel/blob'
1920
-
- '@vercel/kv'
1921
-
- aws4fetch
1922
-
- db0
1923
-
- encoding
1924
-
- idb-keyval
1925
-
- ioredis
1926
-
- jiti
1927
-
- less
1928
-
- lightningcss
1929
-
- rollup
1930
-
- sass
1931
-
- sass-embedded
1932
-
- stylus
1933
-
- sugarss
1934
-
- supports-color
1935
-
- terser
1936
-
- tsx
1937
-
- typescript
1938
-
- uploadthing
1939
-
- yaml
1940
-
1941
-
axobject-query@4.1.0: {}
1222
+
'@babel/types': 7.28.2
1942
1223
1943
-
bail@2.0.2: {}
1944
-
1945
-
base-64@1.0.0: {}
1946
-
1947
-
base64-js@1.5.1: {}
1948
-
1949
-
blob-to-buffer@1.2.9: {}
1950
-
1951
-
boxen@8.0.1:
1224
+
'@types/babel__template@7.4.4':
1952
1225
dependencies:
1953
-
ansi-align: 3.0.1
1954
-
camelcase: 8.0.0
1955
-
chalk: 5.4.1
1956
-
cli-boxes: 3.0.0
1957
-
string-width: 7.2.0
1958
-
type-fest: 4.41.0
1959
-
widest-line: 5.0.0
1960
-
wrap-ansi: 9.0.0
1226
+
'@babel/parser': 7.28.3
1227
+
'@babel/types': 7.28.2
1961
1228
1962
-
brotli@1.3.3:
1229
+
'@types/babel__traverse@7.28.0':
1963
1230
dependencies:
1964
-
base64-js: 1.5.1
1965
-
1966
-
camelcase@8.0.0: {}
1967
-
1968
-
ccount@2.0.1: {}
1231
+
'@babel/types': 7.28.2
1969
1232
1970
-
chalk@5.4.1: {}
1233
+
'@types/estree@1.0.8': {}
1971
1234
1972
-
character-entities-html4@2.1.0: {}
1973
-
1974
-
character-entities-legacy@3.0.0: {}
1975
-
1976
-
character-entities@2.0.2: {}
1977
-
1978
-
chokidar@4.0.3:
1235
+
'@types/node@24.3.0':
1979
1236
dependencies:
1980
-
readdirp: 4.1.2
1981
-
1982
-
ci-info@4.2.0: {}
1237
+
undici-types: 7.10.0
1983
1238
1984
-
cli-boxes@3.0.0: {}
1985
-
1986
-
clone@2.1.2: {}
1987
-
1988
-
clsx@2.1.1: {}
1989
-
1990
-
color-convert@2.0.1:
1239
+
babel-plugin-jsx-dom-expressions@0.40.1(@babel/core@7.28.3):
1991
1240
dependencies:
1992
-
color-name: 1.1.4
1993
-
optional: true
1241
+
'@babel/core': 7.28.3
1242
+
'@babel/helper-module-imports': 7.18.6
1243
+
'@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.3)
1244
+
'@babel/types': 7.28.2
1245
+
html-entities: 2.3.3
1246
+
parse5: 7.3.0
1247
+
validate-html-nesting: 1.2.3
1994
1248
1995
-
color-name@1.1.4:
1996
-
optional: true
1997
-
1998
-
color-string@1.9.1:
1249
+
babel-preset-solid@1.9.9(@babel/core@7.28.3)(solid-js@1.9.9):
1999
1250
dependencies:
2000
-
color-name: 1.1.4
2001
-
simple-swizzle: 0.2.2
2002
-
optional: true
1251
+
'@babel/core': 7.28.3
1252
+
babel-plugin-jsx-dom-expressions: 0.40.1(@babel/core@7.28.3)
1253
+
optionalDependencies:
1254
+
solid-js: 1.9.9
2003
1255
2004
-
color@4.2.3:
1256
+
browserslist@4.25.3:
2005
1257
dependencies:
2006
-
color-convert: 2.0.1
2007
-
color-string: 1.9.1
2008
-
optional: true
1258
+
caniuse-lite: 1.0.30001735
1259
+
electron-to-chromium: 1.5.207
1260
+
node-releases: 2.0.19
1261
+
update-browserslist-db: 1.1.3(browserslist@4.25.3)
2009
1262
2010
-
comma-separated-tokens@2.0.3: {}
2011
-
2012
-
common-ancestor-path@1.0.1: {}
2013
-
2014
-
cookie-es@1.2.2: {}
2015
-
2016
-
cookie@1.0.2: {}
2017
-
2018
-
cross-fetch@3.2.0:
2019
-
dependencies:
2020
-
node-fetch: 2.7.0
2021
-
transitivePeerDependencies:
2022
-
- encoding
1263
+
caniuse-lite@1.0.30001735: {}
2023
1264
2024
-
crossws@0.3.5:
2025
-
dependencies:
2026
-
uncrypto: 0.1.3
1265
+
convert-source-map@2.0.0: {}
2027
1266
2028
-
css-tree@3.1.0:
2029
-
dependencies:
2030
-
mdn-data: 2.12.2
2031
-
source-map-js: 1.2.1
2032
-
2033
-
cssesc@3.0.0: {}
1267
+
csstype@3.1.3: {}
2034
1268
2035
1269
debug@4.4.1:
2036
1270
dependencies:
2037
1271
ms: 2.1.3
2038
1272
2039
-
decode-named-character-reference@1.1.0:
2040
-
dependencies:
2041
-
character-entities: 2.0.2
2042
-
2043
-
defu@6.1.4: {}
2044
-
2045
-
dequal@2.0.3: {}
2046
-
2047
-
destr@2.0.5: {}
2048
-
2049
-
detect-libc@2.0.4:
2050
-
optional: true
2051
-
2052
-
deterministic-object-hash@2.0.2:
2053
-
dependencies:
2054
-
base-64: 1.0.0
2055
-
2056
-
devalue@5.1.1: {}
2057
-
2058
-
devlop@1.1.0:
2059
-
dependencies:
2060
-
dequal: 2.0.3
2061
-
2062
-
dfa@1.2.0: {}
2063
-
2064
-
diff@5.2.0: {}
2065
-
2066
-
dlv@1.1.3: {}
2067
-
2068
-
dset@3.1.4: {}
2069
-
2070
-
emoji-regex@10.4.0: {}
2071
-
2072
-
emoji-regex@8.0.0: {}
1273
+
electron-to-chromium@1.5.207: {}
2073
1274
2074
1275
entities@6.0.1: {}
2075
1276
2076
-
es-module-lexer@1.7.0: {}
2077
-
2078
-
esbuild@0.25.5:
1277
+
esbuild@0.25.9:
2079
1278
optionalDependencies:
2080
-
'@esbuild/aix-ppc64': 0.25.5
2081
-
'@esbuild/android-arm': 0.25.5
2082
-
'@esbuild/android-arm64': 0.25.5
2083
-
'@esbuild/android-x64': 0.25.5
2084
-
'@esbuild/darwin-arm64': 0.25.5
2085
-
'@esbuild/darwin-x64': 0.25.5
2086
-
'@esbuild/freebsd-arm64': 0.25.5
2087
-
'@esbuild/freebsd-x64': 0.25.5
2088
-
'@esbuild/linux-arm': 0.25.5
2089
-
'@esbuild/linux-arm64': 0.25.5
2090
-
'@esbuild/linux-ia32': 0.25.5
2091
-
'@esbuild/linux-loong64': 0.25.5
2092
-
'@esbuild/linux-mips64el': 0.25.5
2093
-
'@esbuild/linux-ppc64': 0.25.5
2094
-
'@esbuild/linux-riscv64': 0.25.5
2095
-
'@esbuild/linux-s390x': 0.25.5
2096
-
'@esbuild/linux-x64': 0.25.5
2097
-
'@esbuild/netbsd-arm64': 0.25.5
2098
-
'@esbuild/netbsd-x64': 0.25.5
2099
-
'@esbuild/openbsd-arm64': 0.25.5
2100
-
'@esbuild/openbsd-x64': 0.25.5
2101
-
'@esbuild/sunos-x64': 0.25.5
2102
-
'@esbuild/win32-arm64': 0.25.5
2103
-
'@esbuild/win32-ia32': 0.25.5
2104
-
'@esbuild/win32-x64': 0.25.5
2105
-
2106
-
escape-string-regexp@5.0.0: {}
2107
-
2108
-
estree-walker@2.0.2: {}
2109
-
2110
-
estree-walker@3.0.3:
2111
-
dependencies:
2112
-
'@types/estree': 1.0.8
2113
-
2114
-
eventemitter3@5.0.1: {}
1279
+
'@esbuild/aix-ppc64': 0.25.9
1280
+
'@esbuild/android-arm': 0.25.9
1281
+
'@esbuild/android-arm64': 0.25.9
1282
+
'@esbuild/android-x64': 0.25.9
1283
+
'@esbuild/darwin-arm64': 0.25.9
1284
+
'@esbuild/darwin-x64': 0.25.9
1285
+
'@esbuild/freebsd-arm64': 0.25.9
1286
+
'@esbuild/freebsd-x64': 0.25.9
1287
+
'@esbuild/linux-arm': 0.25.9
1288
+
'@esbuild/linux-arm64': 0.25.9
1289
+
'@esbuild/linux-ia32': 0.25.9
1290
+
'@esbuild/linux-loong64': 0.25.9
1291
+
'@esbuild/linux-mips64el': 0.25.9
1292
+
'@esbuild/linux-ppc64': 0.25.9
1293
+
'@esbuild/linux-riscv64': 0.25.9
1294
+
'@esbuild/linux-s390x': 0.25.9
1295
+
'@esbuild/linux-x64': 0.25.9
1296
+
'@esbuild/netbsd-arm64': 0.25.9
1297
+
'@esbuild/netbsd-x64': 0.25.9
1298
+
'@esbuild/openbsd-arm64': 0.25.9
1299
+
'@esbuild/openbsd-x64': 0.25.9
1300
+
'@esbuild/openharmony-arm64': 0.25.9
1301
+
'@esbuild/sunos-x64': 0.25.9
1302
+
'@esbuild/win32-arm64': 0.25.9
1303
+
'@esbuild/win32-ia32': 0.25.9
1304
+
'@esbuild/win32-x64': 0.25.9
2115
1305
2116
-
extend@3.0.2: {}
1306
+
escalade@3.2.0: {}
2117
1307
2118
-
fast-deep-equal@3.1.3: {}
1308
+
esm-env@1.2.2: {}
2119
1309
2120
-
fdir@6.4.5(picomatch@4.0.2):
1310
+
fdir@6.5.0(picomatch@4.0.3):
2121
1311
optionalDependencies:
2122
-
picomatch: 4.0.2
2123
-
2124
-
flattie@1.1.1: {}
2125
-
2126
-
fontace@0.3.0:
2127
-
dependencies:
2128
-
'@types/fontkit': 2.0.8
2129
-
fontkit: 2.0.4
2130
-
2131
-
fontkit@2.0.4:
2132
-
dependencies:
2133
-
'@swc/helpers': 0.5.17
2134
-
brotli: 1.3.3
2135
-
clone: 2.1.2
2136
-
dfa: 1.2.0
2137
-
fast-deep-equal: 3.1.3
2138
-
restructure: 3.0.2
2139
-
tiny-inflate: 1.0.3
2140
-
unicode-properties: 1.4.1
2141
-
unicode-trie: 2.0.0
1312
+
picomatch: 4.0.3
2142
1313
2143
1314
fsevents@2.3.3:
2144
1315
optional: true
2145
1316
2146
-
get-east-asian-width@1.3.0: {}
2147
-
2148
-
github-slugger@2.0.0: {}
2149
-
2150
-
h3@1.15.3:
2151
-
dependencies:
2152
-
cookie-es: 1.2.2
2153
-
crossws: 0.3.5
2154
-
defu: 6.1.4
2155
-
destr: 2.0.5
2156
-
iron-webcrypto: 1.2.1
2157
-
node-mock-http: 1.0.0
2158
-
radix3: 1.1.2
2159
-
ufo: 1.6.1
2160
-
uncrypto: 0.1.3
2161
-
2162
-
hast-util-from-html@2.0.3:
2163
-
dependencies:
2164
-
'@types/hast': 3.0.4
2165
-
devlop: 1.1.0
2166
-
hast-util-from-parse5: 8.0.3
2167
-
parse5: 7.3.0
2168
-
vfile: 6.0.3
2169
-
vfile-message: 4.0.2
2170
-
2171
-
hast-util-from-parse5@8.0.3:
2172
-
dependencies:
2173
-
'@types/hast': 3.0.4
2174
-
'@types/unist': 3.0.3
2175
-
devlop: 1.1.0
2176
-
hastscript: 9.0.1
2177
-
property-information: 7.1.0
2178
-
vfile: 6.0.3
2179
-
vfile-location: 5.0.3
2180
-
web-namespaces: 2.0.1
2181
-
2182
-
hast-util-is-element@3.0.0:
2183
-
dependencies:
2184
-
'@types/hast': 3.0.4
2185
-
2186
-
hast-util-parse-selector@4.0.0:
2187
-
dependencies:
2188
-
'@types/hast': 3.0.4
2189
-
2190
-
hast-util-raw@9.1.0:
2191
-
dependencies:
2192
-
'@types/hast': 3.0.4
2193
-
'@types/unist': 3.0.3
2194
-
'@ungap/structured-clone': 1.3.0
2195
-
hast-util-from-parse5: 8.0.3
2196
-
hast-util-to-parse5: 8.0.0
2197
-
html-void-elements: 3.0.0
2198
-
mdast-util-to-hast: 13.2.0
2199
-
parse5: 7.3.0
2200
-
unist-util-position: 5.0.0
2201
-
unist-util-visit: 5.0.0
2202
-
vfile: 6.0.3
2203
-
web-namespaces: 2.0.1
2204
-
zwitch: 2.0.4
2205
-
2206
-
hast-util-to-html@9.0.5:
2207
-
dependencies:
2208
-
'@types/hast': 3.0.4
2209
-
'@types/unist': 3.0.3
2210
-
ccount: 2.0.1
2211
-
comma-separated-tokens: 2.0.3
2212
-
hast-util-whitespace: 3.0.0
2213
-
html-void-elements: 3.0.0
2214
-
mdast-util-to-hast: 13.2.0
2215
-
property-information: 7.1.0
2216
-
space-separated-tokens: 2.0.2
2217
-
stringify-entities: 4.0.4
2218
-
zwitch: 2.0.4
2219
-
2220
-
hast-util-to-parse5@8.0.0:
2221
-
dependencies:
2222
-
'@types/hast': 3.0.4
2223
-
comma-separated-tokens: 2.0.3
2224
-
devlop: 1.1.0
2225
-
property-information: 6.5.0
2226
-
space-separated-tokens: 2.0.2
2227
-
web-namespaces: 2.0.1
2228
-
zwitch: 2.0.4
2229
-
2230
-
hast-util-to-text@4.0.2:
2231
-
dependencies:
2232
-
'@types/hast': 3.0.4
2233
-
'@types/unist': 3.0.3
2234
-
hast-util-is-element: 3.0.0
2235
-
unist-util-find-after: 5.0.0
2236
-
2237
-
hast-util-whitespace@3.0.0:
2238
-
dependencies:
2239
-
'@types/hast': 3.0.4
2240
-
2241
-
hastscript@9.0.1:
2242
-
dependencies:
2243
-
'@types/hast': 3.0.4
2244
-
comma-separated-tokens: 2.0.3
2245
-
hast-util-parse-selector: 4.0.0
2246
-
property-information: 7.1.0
2247
-
space-separated-tokens: 2.0.2
2248
-
2249
-
html-escaper@3.0.3: {}
2250
-
2251
-
html-void-elements@3.0.0: {}
2252
-
2253
-
http-cache-semantics@4.2.0: {}
2254
-
2255
-
import-meta-resolve@4.1.0: {}
2256
-
2257
-
iron-webcrypto@1.2.1: {}
2258
-
2259
-
is-arrayish@0.3.2:
2260
-
optional: true
2261
-
2262
-
is-docker@3.0.0: {}
2263
-
2264
-
is-fullwidth-code-point@3.0.0: {}
2265
-
2266
-
is-inside-container@1.0.0:
2267
-
dependencies:
2268
-
is-docker: 3.0.0
2269
-
2270
-
is-plain-obj@4.1.0: {}
2271
-
2272
-
is-wsl@3.1.0:
2273
-
dependencies:
2274
-
is-inside-container: 1.0.0
2275
-
2276
-
js-yaml@4.1.0:
2277
-
dependencies:
2278
-
argparse: 2.0.1
2279
-
2280
-
kleur@3.0.3: {}
2281
-
2282
-
kleur@4.1.5: {}
2283
-
2284
-
longest-streak@3.1.0: {}
2285
-
2286
-
lru-cache@10.4.3: {}
2287
-
2288
-
magic-string@0.30.17:
2289
-
dependencies:
2290
-
'@jridgewell/sourcemap-codec': 1.5.0
2291
-
2292
-
magicast@0.3.5:
2293
-
dependencies:
2294
-
'@babel/parser': 7.27.5
2295
-
'@babel/types': 7.27.6
2296
-
source-map-js: 1.2.1
2297
-
2298
-
markdown-table@3.0.4: {}
2299
-
2300
-
mdast-util-definitions@6.0.0:
2301
-
dependencies:
2302
-
'@types/mdast': 4.0.4
2303
-
'@types/unist': 3.0.3
2304
-
unist-util-visit: 5.0.0
2305
-
2306
-
mdast-util-find-and-replace@3.0.2:
2307
-
dependencies:
2308
-
'@types/mdast': 4.0.4
2309
-
escape-string-regexp: 5.0.0
2310
-
unist-util-is: 6.0.0
2311
-
unist-util-visit-parents: 6.0.1
2312
-
2313
-
mdast-util-from-markdown@2.0.2:
2314
-
dependencies:
2315
-
'@types/mdast': 4.0.4
2316
-
'@types/unist': 3.0.3
2317
-
decode-named-character-reference: 1.1.0
2318
-
devlop: 1.1.0
2319
-
mdast-util-to-string: 4.0.0
2320
-
micromark: 4.0.2
2321
-
micromark-util-decode-numeric-character-reference: 2.0.2
2322
-
micromark-util-decode-string: 2.0.1
2323
-
micromark-util-normalize-identifier: 2.0.1
2324
-
micromark-util-symbol: 2.0.1
2325
-
micromark-util-types: 2.0.2
2326
-
unist-util-stringify-position: 4.0.0
2327
-
transitivePeerDependencies:
2328
-
- supports-color
2329
-
2330
-
mdast-util-gfm-autolink-literal@2.0.1:
2331
-
dependencies:
2332
-
'@types/mdast': 4.0.4
2333
-
ccount: 2.0.1
2334
-
devlop: 1.1.0
2335
-
mdast-util-find-and-replace: 3.0.2
2336
-
micromark-util-character: 2.1.1
2337
-
2338
-
mdast-util-gfm-footnote@2.1.0:
2339
-
dependencies:
2340
-
'@types/mdast': 4.0.4
2341
-
devlop: 1.1.0
2342
-
mdast-util-from-markdown: 2.0.2
2343
-
mdast-util-to-markdown: 2.1.2
2344
-
micromark-util-normalize-identifier: 2.0.1
2345
-
transitivePeerDependencies:
2346
-
- supports-color
2347
-
2348
-
mdast-util-gfm-strikethrough@2.0.0:
2349
-
dependencies:
2350
-
'@types/mdast': 4.0.4
2351
-
mdast-util-from-markdown: 2.0.2
2352
-
mdast-util-to-markdown: 2.1.2
2353
-
transitivePeerDependencies:
2354
-
- supports-color
2355
-
2356
-
mdast-util-gfm-table@2.0.0:
2357
-
dependencies:
2358
-
'@types/mdast': 4.0.4
2359
-
devlop: 1.1.0
2360
-
markdown-table: 3.0.4
2361
-
mdast-util-from-markdown: 2.0.2
2362
-
mdast-util-to-markdown: 2.1.2
2363
-
transitivePeerDependencies:
2364
-
- supports-color
2365
-
2366
-
mdast-util-gfm-task-list-item@2.0.0:
2367
-
dependencies:
2368
-
'@types/mdast': 4.0.4
2369
-
devlop: 1.1.0
2370
-
mdast-util-from-markdown: 2.0.2
2371
-
mdast-util-to-markdown: 2.1.2
2372
-
transitivePeerDependencies:
2373
-
- supports-color
2374
-
2375
-
mdast-util-gfm@3.1.0:
2376
-
dependencies:
2377
-
mdast-util-from-markdown: 2.0.2
2378
-
mdast-util-gfm-autolink-literal: 2.0.1
2379
-
mdast-util-gfm-footnote: 2.1.0
2380
-
mdast-util-gfm-strikethrough: 2.0.0
2381
-
mdast-util-gfm-table: 2.0.0
2382
-
mdast-util-gfm-task-list-item: 2.0.0
2383
-
mdast-util-to-markdown: 2.1.2
2384
-
transitivePeerDependencies:
2385
-
- supports-color
2386
-
2387
-
mdast-util-phrasing@4.1.0:
2388
-
dependencies:
2389
-
'@types/mdast': 4.0.4
2390
-
unist-util-is: 6.0.0
2391
-
2392
-
mdast-util-to-hast@13.2.0:
2393
-
dependencies:
2394
-
'@types/hast': 3.0.4
2395
-
'@types/mdast': 4.0.4
2396
-
'@ungap/structured-clone': 1.3.0
2397
-
devlop: 1.1.0
2398
-
micromark-util-sanitize-uri: 2.0.1
2399
-
trim-lines: 3.0.1
2400
-
unist-util-position: 5.0.0
2401
-
unist-util-visit: 5.0.0
2402
-
vfile: 6.0.3
2403
-
2404
-
mdast-util-to-markdown@2.1.2:
2405
-
dependencies:
2406
-
'@types/mdast': 4.0.4
2407
-
'@types/unist': 3.0.3
2408
-
longest-streak: 3.1.0
2409
-
mdast-util-phrasing: 4.1.0
2410
-
mdast-util-to-string: 4.0.0
2411
-
micromark-util-classify-character: 2.0.1
2412
-
micromark-util-decode-string: 2.0.1
2413
-
unist-util-visit: 5.0.0
2414
-
zwitch: 2.0.4
2415
-
2416
-
mdast-util-to-string@4.0.0:
2417
-
dependencies:
2418
-
'@types/mdast': 4.0.4
2419
-
2420
-
mdn-data@2.12.2: {}
2421
-
2422
-
micromark-core-commonmark@2.0.3:
2423
-
dependencies:
2424
-
decode-named-character-reference: 1.1.0
2425
-
devlop: 1.1.0
2426
-
micromark-factory-destination: 2.0.1
2427
-
micromark-factory-label: 2.0.1
2428
-
micromark-factory-space: 2.0.1
2429
-
micromark-factory-title: 2.0.1
2430
-
micromark-factory-whitespace: 2.0.1
2431
-
micromark-util-character: 2.1.1
2432
-
micromark-util-chunked: 2.0.1
2433
-
micromark-util-classify-character: 2.0.1
2434
-
micromark-util-html-tag-name: 2.0.1
2435
-
micromark-util-normalize-identifier: 2.0.1
2436
-
micromark-util-resolve-all: 2.0.1
2437
-
micromark-util-subtokenize: 2.1.0
2438
-
micromark-util-symbol: 2.0.1
2439
-
micromark-util-types: 2.0.2
2440
-
2441
-
micromark-extension-gfm-autolink-literal@2.1.0:
2442
-
dependencies:
2443
-
micromark-util-character: 2.1.1
2444
-
micromark-util-sanitize-uri: 2.0.1
2445
-
micromark-util-symbol: 2.0.1
2446
-
micromark-util-types: 2.0.2
1317
+
gensync@1.0.0-beta.2: {}
2447
1318
2448
-
micromark-extension-gfm-footnote@2.1.0:
2449
-
dependencies:
2450
-
devlop: 1.1.0
2451
-
micromark-core-commonmark: 2.0.3
2452
-
micromark-factory-space: 2.0.1
2453
-
micromark-util-character: 2.1.1
2454
-
micromark-util-normalize-identifier: 2.0.1
2455
-
micromark-util-sanitize-uri: 2.0.1
2456
-
micromark-util-symbol: 2.0.1
2457
-
micromark-util-types: 2.0.2
1319
+
html-entities@2.3.3: {}
2458
1320
2459
-
micromark-extension-gfm-strikethrough@2.1.0:
2460
-
dependencies:
2461
-
devlop: 1.1.0
2462
-
micromark-util-chunked: 2.0.1
2463
-
micromark-util-classify-character: 2.0.1
2464
-
micromark-util-resolve-all: 2.0.1
2465
-
micromark-util-symbol: 2.0.1
2466
-
micromark-util-types: 2.0.2
1321
+
is-what@4.1.16: {}
2467
1322
2468
-
micromark-extension-gfm-table@2.1.1:
2469
-
dependencies:
2470
-
devlop: 1.1.0
2471
-
micromark-factory-space: 2.0.1
2472
-
micromark-util-character: 2.1.1
2473
-
micromark-util-symbol: 2.0.1
2474
-
micromark-util-types: 2.0.2
1323
+
js-tokens@4.0.0: {}
2475
1324
2476
-
micromark-extension-gfm-tagfilter@2.0.0:
2477
-
dependencies:
2478
-
micromark-util-types: 2.0.2
1325
+
jsesc@3.1.0: {}
2479
1326
2480
-
micromark-extension-gfm-task-list-item@2.1.0:
2481
-
dependencies:
2482
-
devlop: 1.1.0
2483
-
micromark-factory-space: 2.0.1
2484
-
micromark-util-character: 2.1.1
2485
-
micromark-util-symbol: 2.0.1
2486
-
micromark-util-types: 2.0.2
1327
+
json5@2.2.3: {}
2487
1328
2488
-
micromark-extension-gfm@3.0.0:
1329
+
lru-cache@5.1.1:
2489
1330
dependencies:
2490
-
micromark-extension-gfm-autolink-literal: 2.1.0
2491
-
micromark-extension-gfm-footnote: 2.1.0
2492
-
micromark-extension-gfm-strikethrough: 2.1.0
2493
-
micromark-extension-gfm-table: 2.1.1
2494
-
micromark-extension-gfm-tagfilter: 2.0.0
2495
-
micromark-extension-gfm-task-list-item: 2.1.0
2496
-
micromark-util-combine-extensions: 2.0.1
2497
-
micromark-util-types: 2.0.2
1331
+
yallist: 3.1.1
2498
1332
2499
-
micromark-factory-destination@2.0.1:
1333
+
merge-anything@5.1.7:
2500
1334
dependencies:
2501
-
micromark-util-character: 2.1.1
2502
-
micromark-util-symbol: 2.0.1
2503
-
micromark-util-types: 2.0.2
2504
-
2505
-
micromark-factory-label@2.0.1:
2506
-
dependencies:
2507
-
devlop: 1.1.0
2508
-
micromark-util-character: 2.1.1
2509
-
micromark-util-symbol: 2.0.1
2510
-
micromark-util-types: 2.0.2
2511
-
2512
-
micromark-factory-space@2.0.1:
2513
-
dependencies:
2514
-
micromark-util-character: 2.1.1
2515
-
micromark-util-types: 2.0.2
2516
-
2517
-
micromark-factory-title@2.0.1:
2518
-
dependencies:
2519
-
micromark-factory-space: 2.0.1
2520
-
micromark-util-character: 2.1.1
2521
-
micromark-util-symbol: 2.0.1
2522
-
micromark-util-types: 2.0.2
2523
-
2524
-
micromark-factory-whitespace@2.0.1:
2525
-
dependencies:
2526
-
micromark-factory-space: 2.0.1
2527
-
micromark-util-character: 2.1.1
2528
-
micromark-util-symbol: 2.0.1
2529
-
micromark-util-types: 2.0.2
2530
-
2531
-
micromark-util-character@2.1.1:
2532
-
dependencies:
2533
-
micromark-util-symbol: 2.0.1
2534
-
micromark-util-types: 2.0.2
2535
-
2536
-
micromark-util-chunked@2.0.1:
2537
-
dependencies:
2538
-
micromark-util-symbol: 2.0.1
2539
-
2540
-
micromark-util-classify-character@2.0.1:
2541
-
dependencies:
2542
-
micromark-util-character: 2.1.1
2543
-
micromark-util-symbol: 2.0.1
2544
-
micromark-util-types: 2.0.2
2545
-
2546
-
micromark-util-combine-extensions@2.0.1:
2547
-
dependencies:
2548
-
micromark-util-chunked: 2.0.1
2549
-
micromark-util-types: 2.0.2
2550
-
2551
-
micromark-util-decode-numeric-character-reference@2.0.2:
2552
-
dependencies:
2553
-
micromark-util-symbol: 2.0.1
2554
-
2555
-
micromark-util-decode-string@2.0.1:
2556
-
dependencies:
2557
-
decode-named-character-reference: 1.1.0
2558
-
micromark-util-character: 2.1.1
2559
-
micromark-util-decode-numeric-character-reference: 2.0.2
2560
-
micromark-util-symbol: 2.0.1
2561
-
2562
-
micromark-util-encode@2.0.1: {}
2563
-
2564
-
micromark-util-html-tag-name@2.0.1: {}
2565
-
2566
-
micromark-util-normalize-identifier@2.0.1:
2567
-
dependencies:
2568
-
micromark-util-symbol: 2.0.1
2569
-
2570
-
micromark-util-resolve-all@2.0.1:
2571
-
dependencies:
2572
-
micromark-util-types: 2.0.2
2573
-
2574
-
micromark-util-sanitize-uri@2.0.1:
2575
-
dependencies:
2576
-
micromark-util-character: 2.1.1
2577
-
micromark-util-encode: 2.0.1
2578
-
micromark-util-symbol: 2.0.1
2579
-
2580
-
micromark-util-subtokenize@2.1.0:
2581
-
dependencies:
2582
-
devlop: 1.1.0
2583
-
micromark-util-chunked: 2.0.1
2584
-
micromark-util-symbol: 2.0.1
2585
-
micromark-util-types: 2.0.2
2586
-
2587
-
micromark-util-symbol@2.0.1: {}
2588
-
2589
-
micromark-util-types@2.0.2: {}
2590
-
2591
-
micromark@4.0.2:
2592
-
dependencies:
2593
-
'@types/debug': 4.1.12
2594
-
debug: 4.4.1
2595
-
decode-named-character-reference: 1.1.0
2596
-
devlop: 1.1.0
2597
-
micromark-core-commonmark: 2.0.3
2598
-
micromark-factory-space: 2.0.1
2599
-
micromark-util-character: 2.1.1
2600
-
micromark-util-chunked: 2.0.1
2601
-
micromark-util-combine-extensions: 2.0.1
2602
-
micromark-util-decode-numeric-character-reference: 2.0.2
2603
-
micromark-util-encode: 2.0.1
2604
-
micromark-util-normalize-identifier: 2.0.1
2605
-
micromark-util-resolve-all: 2.0.1
2606
-
micromark-util-sanitize-uri: 2.0.1
2607
-
micromark-util-subtokenize: 2.1.0
2608
-
micromark-util-symbol: 2.0.1
2609
-
micromark-util-types: 2.0.2
2610
-
transitivePeerDependencies:
2611
-
- supports-color
2612
-
2613
-
mrmime@2.0.1: {}
1335
+
is-what: 4.1.16
2614
1336
2615
1337
ms@2.1.3: {}
2616
1338
2617
1339
nanoid@3.3.11: {}
2618
1340
2619
-
neotraverse@0.6.18: {}
2620
-
2621
-
nlcst-to-string@4.0.0:
2622
-
dependencies:
2623
-
'@types/nlcst': 2.0.3
2624
-
2625
-
node-fetch-native@1.6.6: {}
2626
-
2627
-
node-fetch@2.7.0:
2628
-
dependencies:
2629
-
whatwg-url: 5.0.0
2630
-
2631
-
node-mock-http@1.0.0: {}
2632
-
2633
-
normalize-path@3.0.0: {}
2634
-
2635
-
ofetch@1.4.1:
2636
-
dependencies:
2637
-
destr: 2.0.5
2638
-
node-fetch-native: 1.6.6
2639
-
ufo: 1.6.1
2640
-
2641
-
ohash@2.0.11: {}
2642
-
2643
-
oniguruma-parser@0.12.1: {}
2644
-
2645
-
oniguruma-to-es@4.3.3:
2646
-
dependencies:
2647
-
oniguruma-parser: 0.12.1
2648
-
regex: 6.0.1
2649
-
regex-recursion: 6.0.2
2650
-
2651
-
p-limit@6.2.0:
2652
-
dependencies:
2653
-
yocto-queue: 1.2.1
2654
-
2655
-
p-queue@8.1.0:
2656
-
dependencies:
2657
-
eventemitter3: 5.0.1
2658
-
p-timeout: 6.1.4
1341
+
nanoid@5.1.5: {}
2659
1342
2660
-
p-timeout@6.1.4: {}
2661
-
2662
-
package-manager-detector@1.3.0: {}
2663
-
2664
-
pako@0.2.9: {}
2665
-
2666
-
parse-latin@7.0.0:
2667
-
dependencies:
2668
-
'@types/nlcst': 2.0.3
2669
-
'@types/unist': 3.0.3
2670
-
nlcst-to-string: 4.0.0
2671
-
unist-util-modify-children: 4.0.0
2672
-
unist-util-visit-children: 3.0.0
2673
-
vfile: 6.0.3
1343
+
node-releases@2.0.19: {}
2674
1344
2675
1345
parse5@7.3.0:
2676
1346
dependencies:
···
2678
1348
2679
1349
picocolors@1.1.1: {}
2680
1350
2681
-
picomatch@2.3.1: {}
1351
+
picomatch@4.0.3: {}
2682
1352
2683
-
picomatch@4.0.2: {}
2684
-
2685
-
postcss@8.5.4:
1353
+
postcss@8.5.6:
2686
1354
dependencies:
2687
1355
nanoid: 3.3.11
2688
1356
picocolors: 1.1.1
2689
1357
source-map-js: 1.2.1
2690
1358
2691
-
prismjs@1.30.0: {}
1359
+
prettier@3.6.2: {}
2692
1360
2693
-
prompts@2.4.2:
1361
+
rollup@4.46.3:
2694
1362
dependencies:
2695
-
kleur: 3.0.3
2696
-
sisteransi: 1.0.5
1363
+
'@types/estree': 1.0.8
1364
+
optionalDependencies:
1365
+
'@rollup/rollup-android-arm-eabi': 4.46.3
1366
+
'@rollup/rollup-android-arm64': 4.46.3
1367
+
'@rollup/rollup-darwin-arm64': 4.46.3
1368
+
'@rollup/rollup-darwin-x64': 4.46.3
1369
+
'@rollup/rollup-freebsd-arm64': 4.46.3
1370
+
'@rollup/rollup-freebsd-x64': 4.46.3
1371
+
'@rollup/rollup-linux-arm-gnueabihf': 4.46.3
1372
+
'@rollup/rollup-linux-arm-musleabihf': 4.46.3
1373
+
'@rollup/rollup-linux-arm64-gnu': 4.46.3
1374
+
'@rollup/rollup-linux-arm64-musl': 4.46.3
1375
+
'@rollup/rollup-linux-loongarch64-gnu': 4.46.3
1376
+
'@rollup/rollup-linux-ppc64-gnu': 4.46.3
1377
+
'@rollup/rollup-linux-riscv64-gnu': 4.46.3
1378
+
'@rollup/rollup-linux-riscv64-musl': 4.46.3
1379
+
'@rollup/rollup-linux-s390x-gnu': 4.46.3
1380
+
'@rollup/rollup-linux-x64-gnu': 4.46.3
1381
+
'@rollup/rollup-linux-x64-musl': 4.46.3
1382
+
'@rollup/rollup-win32-arm64-msvc': 4.46.3
1383
+
'@rollup/rollup-win32-ia32-msvc': 4.46.3
1384
+
'@rollup/rollup-win32-x64-msvc': 4.46.3
1385
+
fsevents: 2.3.3
2697
1386
2698
-
property-information@6.5.0: {}
2699
-
2700
-
property-information@7.1.0: {}
2701
-
2702
-
radix3@1.1.2: {}
2703
-
2704
-
readdirp@4.1.2: {}
1387
+
semver@6.3.1: {}
2705
1388
2706
-
regex-recursion@6.0.2:
1389
+
seroval-plugins@1.3.2(seroval@1.3.2):
2707
1390
dependencies:
2708
-
regex-utilities: 2.3.0
1391
+
seroval: 1.3.2
2709
1392
2710
-
regex-utilities@2.3.0: {}
2711
-
2712
-
regex@6.0.1:
2713
-
dependencies:
2714
-
regex-utilities: 2.3.0
2715
-
2716
-
rehype-parse@9.0.1:
2717
-
dependencies:
2718
-
'@types/hast': 3.0.4
2719
-
hast-util-from-html: 2.0.3
2720
-
unified: 11.0.5
2721
-
2722
-
rehype-raw@7.0.0:
2723
-
dependencies:
2724
-
'@types/hast': 3.0.4
2725
-
hast-util-raw: 9.1.0
2726
-
vfile: 6.0.3
2727
-
2728
-
rehype-stringify@10.0.1:
2729
-
dependencies:
2730
-
'@types/hast': 3.0.4
2731
-
hast-util-to-html: 9.0.5
2732
-
unified: 11.0.5
2733
-
2734
-
rehype@13.0.2:
2735
-
dependencies:
2736
-
'@types/hast': 3.0.4
2737
-
rehype-parse: 9.0.1
2738
-
rehype-stringify: 10.0.1
2739
-
unified: 11.0.5
2740
-
2741
-
remark-gfm@4.0.1:
2742
-
dependencies:
2743
-
'@types/mdast': 4.0.4
2744
-
mdast-util-gfm: 3.1.0
2745
-
micromark-extension-gfm: 3.0.0
2746
-
remark-parse: 11.0.0
2747
-
remark-stringify: 11.0.0
2748
-
unified: 11.0.5
2749
-
transitivePeerDependencies:
2750
-
- supports-color
1393
+
seroval@1.3.2: {}
2751
1394
2752
-
remark-parse@11.0.0:
1395
+
solid-devtools@0.34.3(solid-js@1.9.9)(vite@6.3.5(@types/node@24.3.0)):
2753
1396
dependencies:
2754
-
'@types/mdast': 4.0.4
2755
-
mdast-util-from-markdown: 2.0.2
2756
-
micromark-util-types: 2.0.2
2757
-
unified: 11.0.5
1397
+
'@babel/core': 7.28.3
1398
+
'@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.3)
1399
+
'@babel/types': 7.28.2
1400
+
'@solid-devtools/debugger': 0.28.1(solid-js@1.9.9)
1401
+
'@solid-devtools/shared': 0.20.0(solid-js@1.9.9)
1402
+
solid-js: 1.9.9
1403
+
optionalDependencies:
1404
+
vite: 6.3.5(@types/node@24.3.0)
2758
1405
transitivePeerDependencies:
2759
1406
- supports-color
2760
1407
2761
-
remark-rehype@11.1.2:
2762
-
dependencies:
2763
-
'@types/hast': 3.0.4
2764
-
'@types/mdast': 4.0.4
2765
-
mdast-util-to-hast: 13.2.0
2766
-
unified: 11.0.5
2767
-
vfile: 6.0.3
2768
-
2769
-
remark-smartypants@3.0.2:
2770
-
dependencies:
2771
-
retext: 9.0.0
2772
-
retext-smartypants: 6.2.0
2773
-
unified: 11.0.5
2774
-
unist-util-visit: 5.0.0
2775
-
2776
-
remark-stringify@11.0.0:
2777
-
dependencies:
2778
-
'@types/mdast': 4.0.4
2779
-
mdast-util-to-markdown: 2.1.2
2780
-
unified: 11.0.5
2781
-
2782
-
restructure@3.0.2: {}
2783
-
2784
-
retext-latin@4.0.0:
1408
+
solid-js@1.9.9:
2785
1409
dependencies:
2786
-
'@types/nlcst': 2.0.3
2787
-
parse-latin: 7.0.0
2788
-
unified: 11.0.5
1410
+
csstype: 3.1.3
1411
+
seroval: 1.3.2
1412
+
seroval-plugins: 1.3.2(seroval@1.3.2)
2789
1413
2790
-
retext-smartypants@6.2.0:
1414
+
solid-refresh@0.6.3(solid-js@1.9.9):
2791
1415
dependencies:
2792
-
'@types/nlcst': 2.0.3
2793
-
nlcst-to-string: 4.0.0
2794
-
unist-util-visit: 5.0.0
2795
-
2796
-
retext-stringify@4.0.0:
2797
-
dependencies:
2798
-
'@types/nlcst': 2.0.3
2799
-
nlcst-to-string: 4.0.0
2800
-
unified: 11.0.5
2801
-
2802
-
retext@9.0.0:
2803
-
dependencies:
2804
-
'@types/nlcst': 2.0.3
2805
-
retext-latin: 4.0.0
2806
-
retext-stringify: 4.0.0
2807
-
unified: 11.0.5
2808
-
2809
-
rollup@4.42.0:
2810
-
dependencies:
2811
-
'@types/estree': 1.0.7
2812
-
optionalDependencies:
2813
-
'@rollup/rollup-android-arm-eabi': 4.42.0
2814
-
'@rollup/rollup-android-arm64': 4.42.0
2815
-
'@rollup/rollup-darwin-arm64': 4.42.0
2816
-
'@rollup/rollup-darwin-x64': 4.42.0
2817
-
'@rollup/rollup-freebsd-arm64': 4.42.0
2818
-
'@rollup/rollup-freebsd-x64': 4.42.0
2819
-
'@rollup/rollup-linux-arm-gnueabihf': 4.42.0
2820
-
'@rollup/rollup-linux-arm-musleabihf': 4.42.0
2821
-
'@rollup/rollup-linux-arm64-gnu': 4.42.0
2822
-
'@rollup/rollup-linux-arm64-musl': 4.42.0
2823
-
'@rollup/rollup-linux-loongarch64-gnu': 4.42.0
2824
-
'@rollup/rollup-linux-powerpc64le-gnu': 4.42.0
2825
-
'@rollup/rollup-linux-riscv64-gnu': 4.42.0
2826
-
'@rollup/rollup-linux-riscv64-musl': 4.42.0
2827
-
'@rollup/rollup-linux-s390x-gnu': 4.42.0
2828
-
'@rollup/rollup-linux-x64-gnu': 4.42.0
2829
-
'@rollup/rollup-linux-x64-musl': 4.42.0
2830
-
'@rollup/rollup-win32-arm64-msvc': 4.42.0
2831
-
'@rollup/rollup-win32-ia32-msvc': 4.42.0
2832
-
'@rollup/rollup-win32-x64-msvc': 4.42.0
2833
-
fsevents: 2.3.3
2834
-
2835
-
semver@7.7.2: {}
2836
-
2837
-
sharp@0.33.5:
2838
-
dependencies:
2839
-
color: 4.2.3
2840
-
detect-libc: 2.0.4
2841
-
semver: 7.7.2
2842
-
optionalDependencies:
2843
-
'@img/sharp-darwin-arm64': 0.33.5
2844
-
'@img/sharp-darwin-x64': 0.33.5
2845
-
'@img/sharp-libvips-darwin-arm64': 1.0.4
2846
-
'@img/sharp-libvips-darwin-x64': 1.0.4
2847
-
'@img/sharp-libvips-linux-arm': 1.0.5
2848
-
'@img/sharp-libvips-linux-arm64': 1.0.4
2849
-
'@img/sharp-libvips-linux-s390x': 1.0.4
2850
-
'@img/sharp-libvips-linux-x64': 1.0.4
2851
-
'@img/sharp-libvips-linuxmusl-arm64': 1.0.4
2852
-
'@img/sharp-libvips-linuxmusl-x64': 1.0.4
2853
-
'@img/sharp-linux-arm': 0.33.5
2854
-
'@img/sharp-linux-arm64': 0.33.5
2855
-
'@img/sharp-linux-s390x': 0.33.5
2856
-
'@img/sharp-linux-x64': 0.33.5
2857
-
'@img/sharp-linuxmusl-arm64': 0.33.5
2858
-
'@img/sharp-linuxmusl-x64': 0.33.5
2859
-
'@img/sharp-wasm32': 0.33.5
2860
-
'@img/sharp-win32-ia32': 0.33.5
2861
-
'@img/sharp-win32-x64': 0.33.5
2862
-
optional: true
2863
-
2864
-
shiki@3.6.0:
2865
-
dependencies:
2866
-
'@shikijs/core': 3.6.0
2867
-
'@shikijs/engine-javascript': 3.6.0
2868
-
'@shikijs/engine-oniguruma': 3.6.0
2869
-
'@shikijs/langs': 3.6.0
2870
-
'@shikijs/themes': 3.6.0
2871
-
'@shikijs/types': 3.6.0
2872
-
'@shikijs/vscode-textmate': 10.0.2
2873
-
'@types/hast': 3.0.4
2874
-
2875
-
simple-swizzle@0.2.2:
2876
-
dependencies:
2877
-
is-arrayish: 0.3.2
2878
-
optional: true
2879
-
2880
-
sisteransi@1.0.5: {}
2881
-
2882
-
smol-toml@1.3.4: {}
1416
+
'@babel/generator': 7.28.3
1417
+
'@babel/helper-module-imports': 7.27.1
1418
+
'@babel/types': 7.28.2
1419
+
solid-js: 1.9.9
1420
+
transitivePeerDependencies:
1421
+
- supports-color
2883
1422
2884
1423
source-map-js@1.2.1: {}
2885
1424
2886
-
space-separated-tokens@2.0.2: {}
2887
-
2888
-
string-width@4.2.3:
2889
-
dependencies:
2890
-
emoji-regex: 8.0.0
2891
-
is-fullwidth-code-point: 3.0.0
2892
-
strip-ansi: 6.0.1
2893
-
2894
-
string-width@7.2.0:
2895
-
dependencies:
2896
-
emoji-regex: 10.4.0
2897
-
get-east-asian-width: 1.3.0
2898
-
strip-ansi: 7.1.0
2899
-
2900
-
stringify-entities@4.0.4:
2901
-
dependencies:
2902
-
character-entities-html4: 2.1.0
2903
-
character-entities-legacy: 3.0.0
2904
-
2905
-
strip-ansi@6.0.1:
2906
-
dependencies:
2907
-
ansi-regex: 5.0.1
2908
-
2909
-
strip-ansi@7.1.0:
2910
-
dependencies:
2911
-
ansi-regex: 6.1.0
2912
-
2913
-
tiny-inflate@1.0.3: {}
2914
-
2915
-
tinyexec@0.3.2: {}
2916
-
2917
1425
tinyglobby@0.2.14:
2918
1426
dependencies:
2919
-
fdir: 6.4.5(picomatch@4.0.2)
2920
-
picomatch: 4.0.2
2921
-
2922
-
tr46@0.0.3: {}
2923
-
2924
-
trim-lines@3.0.1: {}
2925
-
2926
-
trough@2.2.0: {}
2927
-
2928
-
tsconfck@3.1.6(typescript@5.8.3):
2929
-
optionalDependencies:
2930
-
typescript: 5.8.3
2931
-
2932
-
tslib@2.8.1: {}
2933
-
2934
-
type-fest@4.41.0: {}
2935
-
2936
-
typescript@5.8.3: {}
2937
-
2938
-
ufo@1.6.1: {}
2939
-
2940
-
ultrahtml@1.6.0: {}
2941
-
2942
-
uncrypto@0.1.3: {}
2943
-
2944
-
undici-types@6.21.0: {}
2945
-
2946
-
unicode-properties@1.4.1:
2947
-
dependencies:
2948
-
base64-js: 1.5.1
2949
-
unicode-trie: 2.0.0
2950
-
2951
-
unicode-trie@2.0.0:
2952
-
dependencies:
2953
-
pako: 0.2.9
2954
-
tiny-inflate: 1.0.3
2955
-
2956
-
unified@11.0.5:
2957
-
dependencies:
2958
-
'@types/unist': 3.0.3
2959
-
bail: 2.0.2
2960
-
devlop: 1.1.0
2961
-
extend: 3.0.2
2962
-
is-plain-obj: 4.1.0
2963
-
trough: 2.2.0
2964
-
vfile: 6.0.3
1427
+
fdir: 6.5.0(picomatch@4.0.3)
1428
+
picomatch: 4.0.3
2965
1429
2966
-
unifont@0.5.0:
2967
-
dependencies:
2968
-
css-tree: 3.1.0
2969
-
ohash: 2.0.11
1430
+
typescript@5.9.2: {}
2970
1431
2971
-
unist-util-find-after@5.0.0:
2972
-
dependencies:
2973
-
'@types/unist': 3.0.3
2974
-
unist-util-is: 6.0.0
1432
+
undici-types@7.10.0: {}
2975
1433
2976
-
unist-util-is@6.0.0:
1434
+
update-browserslist-db@1.1.3(browserslist@4.25.3):
2977
1435
dependencies:
2978
-
'@types/unist': 3.0.3
1436
+
browserslist: 4.25.3
1437
+
escalade: 3.2.0
1438
+
picocolors: 1.1.1
2979
1439
2980
-
unist-util-modify-children@4.0.0:
2981
-
dependencies:
2982
-
'@types/unist': 3.0.3
2983
-
array-iterate: 2.0.1
1440
+
validate-html-nesting@1.2.3: {}
2984
1441
2985
-
unist-util-position@5.0.0:
1442
+
vite-plugin-solid@2.11.8(solid-js@1.9.9)(vite@6.3.5(@types/node@24.3.0)):
2986
1443
dependencies:
2987
-
'@types/unist': 3.0.3
1444
+
'@babel/core': 7.28.3
1445
+
'@types/babel__core': 7.20.5
1446
+
babel-preset-solid: 1.9.9(@babel/core@7.28.3)(solid-js@1.9.9)
1447
+
merge-anything: 5.1.7
1448
+
solid-js: 1.9.9
1449
+
solid-refresh: 0.6.3(solid-js@1.9.9)
1450
+
vite: 6.3.5(@types/node@24.3.0)
1451
+
vitefu: 1.1.1(vite@6.3.5(@types/node@24.3.0))
1452
+
transitivePeerDependencies:
1453
+
- supports-color
2988
1454
2989
-
unist-util-remove-position@5.0.0:
1455
+
vite@6.3.5(@types/node@24.3.0):
2990
1456
dependencies:
2991
-
'@types/unist': 3.0.3
2992
-
unist-util-visit: 5.0.0
2993
-
2994
-
unist-util-stringify-position@4.0.0:
2995
-
dependencies:
2996
-
'@types/unist': 3.0.3
2997
-
2998
-
unist-util-visit-children@3.0.0:
2999
-
dependencies:
3000
-
'@types/unist': 3.0.3
3001
-
3002
-
unist-util-visit-parents@6.0.1:
3003
-
dependencies:
3004
-
'@types/unist': 3.0.3
3005
-
unist-util-is: 6.0.0
3006
-
3007
-
unist-util-visit@5.0.0:
3008
-
dependencies:
3009
-
'@types/unist': 3.0.3
3010
-
unist-util-is: 6.0.0
3011
-
unist-util-visit-parents: 6.0.1
3012
-
3013
-
unstorage@1.16.0:
3014
-
dependencies:
3015
-
anymatch: 3.1.3
3016
-
chokidar: 4.0.3
3017
-
destr: 2.0.5
3018
-
h3: 1.15.3
3019
-
lru-cache: 10.4.3
3020
-
node-fetch-native: 1.6.6
3021
-
ofetch: 1.4.1
3022
-
ufo: 1.6.1
3023
-
3024
-
vfile-location@5.0.3:
3025
-
dependencies:
3026
-
'@types/unist': 3.0.3
3027
-
vfile: 6.0.3
3028
-
3029
-
vfile-message@4.0.2:
3030
-
dependencies:
3031
-
'@types/unist': 3.0.3
3032
-
unist-util-stringify-position: 4.0.0
3033
-
3034
-
vfile@6.0.3:
3035
-
dependencies:
3036
-
'@types/unist': 3.0.3
3037
-
vfile-message: 4.0.2
3038
-
3039
-
vite@6.3.5(@types/node@22.15.30):
3040
-
dependencies:
3041
-
esbuild: 0.25.5
3042
-
fdir: 6.4.5(picomatch@4.0.2)
3043
-
picomatch: 4.0.2
3044
-
postcss: 8.5.4
3045
-
rollup: 4.42.0
1457
+
esbuild: 0.25.9
1458
+
fdir: 6.5.0(picomatch@4.0.3)
1459
+
picomatch: 4.0.3
1460
+
postcss: 8.5.6
1461
+
rollup: 4.46.3
3046
1462
tinyglobby: 0.2.14
3047
1463
optionalDependencies:
3048
-
'@types/node': 22.15.30
1464
+
'@types/node': 24.3.0
3049
1465
fsevents: 2.3.3
3050
1466
3051
-
vitefu@1.0.6(vite@6.3.5(@types/node@22.15.30)):
1467
+
vitefu@1.1.1(vite@6.3.5(@types/node@24.3.0)):
3052
1468
optionalDependencies:
3053
-
vite: 6.3.5(@types/node@22.15.30)
3054
-
3055
-
web-namespaces@2.0.1: {}
3056
-
3057
-
webidl-conversions@3.0.1: {}
3058
-
3059
-
whatwg-url@5.0.0:
3060
-
dependencies:
3061
-
tr46: 0.0.3
3062
-
webidl-conversions: 3.0.1
3063
-
3064
-
which-pm-runs@1.1.0: {}
1469
+
vite: 6.3.5(@types/node@24.3.0)
3065
1470
3066
-
widest-line@5.0.0:
3067
-
dependencies:
3068
-
string-width: 7.2.0
3069
-
3070
-
wrap-ansi@9.0.0:
3071
-
dependencies:
3072
-
ansi-styles: 6.2.1
3073
-
string-width: 7.2.0
3074
-
strip-ansi: 7.1.0
3075
-
3076
-
xxhash-wasm@1.1.0: {}
3077
-
3078
-
yargs-parser@21.1.1: {}
3079
-
3080
-
yocto-queue@1.2.1: {}
3081
-
3082
-
yocto-spinner@0.2.3:
3083
-
dependencies:
3084
-
yoctocolors: 2.1.1
3085
-
3086
-
yoctocolors@2.1.1: {}
3087
-
3088
-
zod-to-json-schema@3.24.5(zod@3.25.56):
3089
-
dependencies:
3090
-
zod: 3.25.56
3091
-
3092
-
zod-to-ts@1.2.0(typescript@5.8.3)(zod@3.25.56):
3093
-
dependencies:
3094
-
typescript: 5.8.3
3095
-
zod: 3.25.56
3096
-
3097
-
zod@3.25.56: {}
3098
-
3099
-
zwitch@2.0.4: {}
1471
+
yallist@3.1.1: {}
-9
frontend/public/favicon.svg
-9
frontend/public/favicon.svg
···
1
-
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128">
2
-
<path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" />
3
-
<style>
4
-
path { fill: #000; }
5
-
@media (prefers-color-scheme: dark) {
6
-
path { fill: #FFF; }
7
-
}
8
-
</style>
9
-
</svg>
frontend/public/images/404.png
frontend/public/images/404.png
This is a binary file and will not be displayed.
+12
frontend/public/oauth/client-metadata.json
+12
frontend/public/oauth/client-metadata.json
···
1
+
{
2
+
"client_id": "https://clippr.social/oauth/client-metadata.json",
3
+
"client_name": "Clippr",
4
+
"client_uri": "https://clippr.social",
5
+
"redirect_uris": ["https://clippr.social/"],
6
+
"scope": "atproto blob?accept=image/* repo:social.clippr.actor.profile repo:social.clippr.feed.clip repo:social.clippr.feed.tag",
7
+
"grant_types": ["authorization_code", "refresh_token"],
8
+
"response_types": ["code"],
9
+
"token_endpoint_auth_method": "none",
10
+
"application_type": "web",
11
+
"dpop_bound_access_tokens": true
12
+
}
frontend/src/assets/favicon.ico
frontend/src/assets/favicon.ico
This is a binary file and will not be displayed.
-18
frontend/src/components/Clip.astro
-18
frontend/src/components/Clip.astro
···
1
-
---
2
-
import TagList from "./TagList.astro";
3
-
const { title, tagList, link, description, originalClipper, firstClipDate } = Astro.props;
4
-
---
5
-
<div class="clip">
6
-
<div class="clip-head">
7
-
<h2 class="clip-title"><a href={link}>{title}</a></h2>
8
-
<TagList tags={tagList} />
9
-
</div>
10
-
<small class="clip-link"><a href={link}>{link}</a></small>
11
-
<p class="clip-description">{description}</p>
12
-
<div class="clip-actions">
13
-
<a href="#">clip</a>
14
-
<a href="#">respond</a>
15
-
<a href="#">hide</a>
16
-
<span class="original-clipper">[first clipped by <a href="#">@{originalClipper}</a> {firstClipDate} ago]</span>
17
-
</div>
18
-
</div>
-9
frontend/src/components/SidebarItem.astro
-9
frontend/src/components/SidebarItem.astro
-12
frontend/src/components/TagList.astro
-12
frontend/src/components/TagList.astro
+34
frontend/src/components/header.tsx
+34
frontend/src/components/header.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { agent, loginState } from "./loginForm.tsx";
8
+
import { A } from "@solidjs/router";
9
+
10
+
const Header = () => {
11
+
return (
12
+
<header>
13
+
<div id="header-left">
14
+
<A href={loginState() ? "/home" : "/"}>
15
+
<p class="silent-link">clippr (beta)</p>
16
+
</A>
17
+
</div>
18
+
<div id="header-right">
19
+
<nav>
20
+
{loginState() ? (
21
+
<>
22
+
<A href={`/profile/${agent.sub}`}>profile</A>
23
+
<A href="/settings">settings</A>
24
+
</>
25
+
) : (
26
+
<A href="/login">login</A>
27
+
)}
28
+
</nav>
29
+
</div>
30
+
</header>
31
+
);
32
+
};
33
+
34
+
export { Header };
+141
frontend/src/components/loginForm.tsx
+141
frontend/src/components/loginForm.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import {
8
+
configureOAuth,
9
+
createAuthorizationUrl,
10
+
deleteStoredSession,
11
+
finalizeAuthorization,
12
+
getSession,
13
+
OAuthUserAgent,
14
+
resolveFromIdentity,
15
+
resolveFromService,
16
+
Session,
17
+
} from "@atcute/oauth-browser-client";
18
+
import { createSignal } from "solid-js";
19
+
import { Did, isHandle } from "@atcute/lexicons/syntax";
20
+
21
+
configureOAuth({
22
+
metadata: {
23
+
client_id: import.meta.env.VITE_OAUTH_CLIENT_ID,
24
+
redirect_uri: import.meta.env.VITE_OAUTH_REDIRECT_URI,
25
+
},
26
+
});
27
+
28
+
export const [loginState, setLoginState] = createSignal(false);
29
+
let agent: OAuthUserAgent;
30
+
31
+
const LoginForm = () => {
32
+
const [notice, setNotice] = createSignal("");
33
+
const [loginInput, setLoginInput] = createSignal("");
34
+
35
+
const login = async (handle: string) => {
36
+
try {
37
+
if (!handle) return;
38
+
let resolved;
39
+
document.getElementById("submitDetails")!.removeAttribute("hidden");
40
+
document
41
+
.querySelector('button[type="submit"]')!
42
+
.setAttribute("disabled", "true");
43
+
if (!isHandle(handle)) {
44
+
setNotice(`Resolving your service...`);
45
+
resolved = await resolveFromService(handle);
46
+
} else {
47
+
setNotice(`Resolving your identity...`);
48
+
resolved = await resolveFromIdentity(handle);
49
+
}
50
+
51
+
setNotice(`Contacting your data server...`);
52
+
const authUrl = await createAuthorizationUrl({
53
+
scope: import.meta.env.VITE_OAUTH_SCOPE,
54
+
...resolved,
55
+
});
56
+
57
+
setNotice(`Redirecting...`);
58
+
await new Promise((resolve) => setTimeout(resolve, 500));
59
+
60
+
location.assign(authUrl);
61
+
} catch (e: unknown) {
62
+
if (e instanceof Error) {
63
+
console.error(e);
64
+
setNotice(`${e.message}`);
65
+
} else {
66
+
console.error(e);
67
+
setNotice(`Unknown error, check console ยฏ\\_(ใ)_/ยฏ`);
68
+
}
69
+
}
70
+
};
71
+
72
+
return (
73
+
<>
74
+
<form onclick={(e) => e.preventDefault()}>
75
+
<label for="handle">Bluesky handle or DID</label>
76
+
<input
77
+
type="text"
78
+
name="handle"
79
+
id="handle"
80
+
placeholder="alice.bsky.social"
81
+
onInput={(e) => setLoginInput(e.currentTarget.value)}
82
+
/>
83
+
<button type="submit" onclick={() => login(loginInput())}>
84
+
log in
85
+
</button>
86
+
</form>
87
+
<p id="submitDetails" hidden>
88
+
{notice()}
89
+
</p>
90
+
</>
91
+
);
92
+
};
93
+
94
+
const retrieveSession = async (): Promise<void> => {
95
+
const init = async (): Promise<Session | undefined> => {
96
+
const params = new URLSearchParams(location.hash.slice(1));
97
+
98
+
if (params.has("state") && (params.has("code") || params.has("error"))) {
99
+
history.replaceState(null, "", location.pathname + location.search);
100
+
101
+
const session = await finalizeAuthorization(params);
102
+
console.log("Finalizing authorization...", session);
103
+
const agent = new OAuthUserAgent(session);
104
+
console.log(await agent.getSession());
105
+
const did = session.info.sub;
106
+
107
+
localStorage.setItem("currentUser", did);
108
+
return session;
109
+
} else {
110
+
const currentUser = localStorage.getItem("currentUser");
111
+
112
+
if (currentUser) {
113
+
try {
114
+
console.log("Retrieving session...");
115
+
return await getSession(currentUser as Did);
116
+
} catch (err) {
117
+
deleteStoredSession(currentUser as Did);
118
+
localStorage.removeItem("currentUser");
119
+
throw err;
120
+
}
121
+
}
122
+
}
123
+
};
124
+
125
+
const session = await init().catch(() => {});
126
+
127
+
if (session) {
128
+
console.log("Retrieved session!", session);
129
+
agent = new OAuthUserAgent(session);
130
+
setLoginState(true);
131
+
}
132
+
};
133
+
134
+
const killSession = async (): Promise<void> => {
135
+
await agent.signOut();
136
+
setLoginState(false);
137
+
localStorage.removeItem("currentUser");
138
+
location.href = "/";
139
+
};
140
+
141
+
export { LoginForm, retrieveSession, agent, killSession };
+52
frontend/src/components/pageLocation.tsx
+52
frontend/src/components/pageLocation.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { splitProps } from "solid-js";
8
+
9
+
// How to define the path because I forgot how to and struggled for half an hour:
10
+
// ```
11
+
// [
12
+
// {
13
+
// name: "home",
14
+
// link: "/"
15
+
// }
16
+
// ]
17
+
// ```
18
+
type PathItem = {
19
+
name: string;
20
+
link: string;
21
+
};
22
+
23
+
const PageLocation = (props: any) => {
24
+
const [local, others] = splitProps(props, ["lastLocation", "path"]);
25
+
const path = local.path;
26
+
27
+
if (typeof path === "undefined") {
28
+
return (
29
+
<div id="page-location">
30
+
<p id="page-location-last">{local.lastLocation || "blank"}</p>
31
+
</div>
32
+
);
33
+
}
34
+
35
+
return (
36
+
<div id="page-location">
37
+
{path.map((item: PathItem) => {
38
+
return (
39
+
<>
40
+
<p class="page-location-parent" {...others}>
41
+
<a href={item.link || ""}>{item.name}</a>
42
+
</p>
43
+
<p>โ</p>
44
+
</>
45
+
);
46
+
})}
47
+
<p id="page-location-last">{local.lastLocation || "blank"}</p>
48
+
</div>
49
+
);
50
+
};
51
+
52
+
export { PageLocation };
+185
frontend/src/components/profileEditor.tsx
+185
frontend/src/components/profileEditor.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { createResource, createSignal } from "solid-js";
8
+
import { Client, ClientResponse } from "@atcute/client";
9
+
import { remove } from "@mary/exif-rm";
10
+
import { agent } from "./loginForm.tsx";
11
+
import { fetchProfile } from "../utils/profile.ts";
12
+
13
+
const ProfileEditor = () => {
14
+
const [actor, setActor] = createSignal();
15
+
const [avatarPreview, setAvatarPreview] = createSignal("");
16
+
const [notice, setNotice] = createSignal("");
17
+
let formRef: HTMLFormElement = document.createElement("form");
18
+
19
+
setActor(agent.session.info.sub);
20
+
const [profile] = createResource(actor, fetchProfile);
21
+
22
+
const uploadBlob = async () => {
23
+
setNotice("");
24
+
console.log("starting avatar upload...");
25
+
let blob: Blob;
26
+
27
+
const file = (document.getElementById("avatar") as HTMLInputElement)
28
+
?.files?.[0];
29
+
if (!file) return;
30
+
31
+
if (!file.type.startsWith("image/")) {
32
+
setNotice("error: avatar must be an image");
33
+
console.log(file);
34
+
return;
35
+
}
36
+
37
+
if (file.size > 1000000) {
38
+
setNotice("error: avatar must be less than 1MB");
39
+
console.log(file);
40
+
return;
41
+
}
42
+
43
+
blob = file;
44
+
console.log("removing exif data...");
45
+
const exifRemoved = remove(new Uint8Array(await blob.arrayBuffer()));
46
+
if (exifRemoved !== null) {
47
+
// @ts-ignore
48
+
blob = new Blob([exifRemoved], { type: blob.type });
49
+
}
50
+
51
+
console.log(blob);
52
+
53
+
const rpc = new Client({ handler: agent! });
54
+
setNotice("uploading avatar...");
55
+
const uploadRes: ClientResponse<any, any> = await rpc.post(
56
+
// @ts-ignore
57
+
"com.atproto.repo.uploadBlob",
58
+
{
59
+
input: blob,
60
+
},
61
+
);
62
+
(document.getElementById("avatar") as HTMLInputElement).value = "";
63
+
if (!uploadRes.ok) {
64
+
setNotice(uploadRes.data.error);
65
+
return;
66
+
}
67
+
setNotice("");
68
+
setAvatarPreview(URL.createObjectURL(blob));
69
+
70
+
console.log(uploadRes.data);
71
+
localStorage.setItem("avatar", JSON.stringify(uploadRes.data.blob));
72
+
};
73
+
74
+
const applyProfileChanges = async (formData: FormData) => {
75
+
const rpc = new Client({ handler: agent! });
76
+
77
+
const avatar = localStorage.getItem("avatar");
78
+
79
+
if (avatar === null) {
80
+
setNotice("error: avatar is missing");
81
+
return;
82
+
}
83
+
84
+
const displayName = formData.get("displayName") as string;
85
+
if (displayName === null || displayName === "") {
86
+
setNotice("error: display name is missing");
87
+
return;
88
+
}
89
+
90
+
if (displayName.length > 64) {
91
+
setNotice("error: display name is too long");
92
+
return;
93
+
}
94
+
95
+
let description = formData.get("description") as string;
96
+
if (description === null || description === "") {
97
+
description = "This user does not have a bio.";
98
+
}
99
+
100
+
if (description.length > 500) {
101
+
setNotice("error: description is too long");
102
+
return;
103
+
}
104
+
105
+
try {
106
+
// @ts-ignore
107
+
const res = await rpc.post("com.atproto.repo.putRecord", {
108
+
input: {
109
+
repo: agent!.sub,
110
+
collection: "social.clippr.actor.profile",
111
+
rkey: "self",
112
+
record: {
113
+
$type: "social.clippr.actor.profile",
114
+
avatar: JSON.parse(avatar),
115
+
displayName: formData.get("displayName"),
116
+
description: formData.get("description") || "",
117
+
// TODO: Take 'createdAt' string from previous version if it exists
118
+
createdAt: new Date().toISOString(),
119
+
},
120
+
},
121
+
});
122
+
123
+
if (!res.ok) {
124
+
setNotice(res.data.error);
125
+
return;
126
+
}
127
+
} catch (e: any) {
128
+
setNotice(e.message);
129
+
return;
130
+
}
131
+
132
+
setNotice("profile changed!");
133
+
localStorage.removeItem("avatar");
134
+
};
135
+
136
+
return (
137
+
<div>
138
+
<form ref={formRef}>
139
+
<label for="avatar" class="file-upload">
140
+
upload avatar
141
+
</label>
142
+
<input
143
+
type="file"
144
+
name="avatar"
145
+
id="avatar"
146
+
accept=".jpg,.jpeg,.png,image/jpeg,image/png"
147
+
onChange={() => uploadBlob()}
148
+
/>
149
+
<img class="profile-picture" src={avatarPreview()} alt="The user's uploaded avatar." hidden={avatarPreview() === ""} />
150
+
<label for="displayName">display name</label>
151
+
<input
152
+
type="text"
153
+
name="displayName"
154
+
id="displayName"
155
+
maxLength="64"
156
+
placeholder="Alice"
157
+
value={profile()?.displayName || ""}
158
+
/>
159
+
<label for="description">bio</label>
160
+
<textarea
161
+
name="description"
162
+
id="description"
163
+
maxLength="500"
164
+
placeholder="describe yourself..."
165
+
value={profile()?.description || ""}
166
+
></textarea>
167
+
<button
168
+
type="submit"
169
+
onClick={(e) => {
170
+
e.preventDefault();
171
+
// @ts-ignore
172
+
applyProfileChanges(new FormData(formRef)).then();
173
+
}}
174
+
>
175
+
apply changes
176
+
</button>
177
+
</form>
178
+
<p id="submitDetails" hidden={notice() === null}>
179
+
{notice()}
180
+
</p>
181
+
</div>
182
+
);
183
+
};
184
+
185
+
export { ProfileEditor };
+60
frontend/src/components/profileWidget.tsx
+60
frontend/src/components/profileWidget.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import {
8
+
createResource,
9
+
Match,
10
+
Show,
11
+
splitProps,
12
+
Switch,
13
+
} from "solid-js";
14
+
import { agent } from "./loginForm.tsx";
15
+
import { fetchProfile } from "../utils/profile.ts";
16
+
17
+
interface ProfileProps {
18
+
actor?: string;
19
+
}
20
+
21
+
const ProfileWidget = (props: ProfileProps) => {
22
+
const [local] = splitProps(props, ["actor"]);
23
+
const actor = () => local.actor ?? agent.session.info.sub;
24
+
25
+
26
+
const [profile] = createResource(actor, fetchProfile);
27
+
28
+
return (
29
+
<div>
30
+
<Show when={profile.loading}>
31
+
<p>loading...</p>
32
+
</Show>
33
+
<Switch>
34
+
<Match when={profile.error}>
35
+
<p>error: {profile.error.message}</p>
36
+
</Match>
37
+
<Match when={profile()}>
38
+
<div id="profile-view">
39
+
<img
40
+
src={profile()?.avatar}
41
+
class="profile-picture"
42
+
alt="The user's avatar."
43
+
/>
44
+
<div>
45
+
<p>
46
+
<b>{profile()?.displayName}</b>
47
+
</p>
48
+
<p title={profile()?.did}>
49
+
{profile()?.handle.replace("at://", "@")}
50
+
</p>
51
+
<p>{profile()?.description}</p>
52
+
</div>
53
+
</div>
54
+
</Match>
55
+
</Switch>
56
+
</div>
57
+
);
58
+
};
59
+
60
+
export { ProfileWidget };
+31
frontend/src/index.tsx
+31
frontend/src/index.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
/* @refresh reload */
8
+
import { render } from "solid-js/web";
9
+
import { Route, Router } from "@solidjs/router";
10
+
import { Layout } from "./layout.tsx";
11
+
import { LandingPage } from "./views/landingPage.tsx";
12
+
import { Login } from "./views/login.tsx";
13
+
import { NotFound } from "./views/notFound.tsx";
14
+
import { Home } from "./views/home.tsx";
15
+
import "solid-devtools";
16
+
import { Profile } from "./views/profile.tsx";
17
+
import { Settings } from "./views/settings.tsx";
18
+
19
+
render(
20
+
() => (
21
+
<Router root={Layout}>
22
+
<Route path="/" component={LandingPage} />
23
+
<Route path="/login" component={Login} />
24
+
<Route path="/home" component={Home} />
25
+
<Route path={["/profile/:id", "/profile"]} component={Profile} />
26
+
<Route path="/settings" component={Settings} />
27
+
<Route path="*paramName" component={NotFound} />
28
+
</Router>
29
+
),
30
+
document.getElementById("root") as HTMLElement,
31
+
);
+35
frontend/src/layout.tsx
+35
frontend/src/layout.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { RouteSectionProps } from "@solidjs/router";
8
+
import { Header } from "./components/header.tsx";
9
+
import { Footer } from "./components/footer.tsx";
10
+
import { onMount, createSignal, Show } from "solid-js";
11
+
import { loginState, retrieveSession } from "./components/loginForm.tsx";
12
+
13
+
const Layout = (props: RouteSectionProps<unknown>) => {
14
+
const [isLoading, setIsLoading] = createSignal(true);
15
+
16
+
onMount(async () => {
17
+
await retrieveSession();
18
+
if (loginState() && location.pathname === "/") {
19
+
window.location.href = "/home";
20
+
}
21
+
setIsLoading(false);
22
+
});
23
+
24
+
return (
25
+
<Show when={!isLoading()} fallback={<></>}>
26
+
<>
27
+
<Header />
28
+
{props.children}
29
+
<Footer />
30
+
</>
31
+
</Show>
32
+
);
33
+
};
34
+
35
+
export { Layout };
-20
frontend/src/layouts/Base.astro
-20
frontend/src/layouts/Base.astro
···
1
-
---
2
-
const { title } = Astro.props;
3
-
import '../styles/main.css';
4
-
---
5
-
<!doctype html>
6
-
<!--
7
-
* clippr: a social bookmarking service for the AT Protocol
8
-
* Copyright (c) 2025 clippr contributors.
9
-
* SPDX-License-Identifier: AGPL-3.0-only
10
-
-->
11
-
<html lang="en">
12
-
<head>
13
-
<meta charset="UTF-8"/>
14
-
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
15
-
<title>{title} | clippr</title>
16
-
</head>
17
-
<body>
18
-
<slot />
19
-
</body>
20
-
</html>
-10
frontend/src/layouts/Header.astro
-10
frontend/src/layouts/Header.astro
-32
frontend/src/pages/404.astro
-32
frontend/src/pages/404.astro
···
1
-
---
2
-
import Base from "../layouts/Base.astro";
3
-
import Header from "../layouts/Header.astro";
4
-
import Footer from "../layouts/Footer.astro";
5
-
---
6
-
<Base title="404">
7
-
<Header/>
8
-
<main class="404-page">
9
-
<h2>404 | page not found</h2>
10
-
<p>the party seems to be over...</p>
11
-
<a href="/">ยซ go home</a>
12
-
</main>
13
-
<Footer/>
14
-
</Base>
15
-
16
-
<style>
17
-
main {
18
-
display: flex !important;
19
-
flex-direction: column !important;
20
-
gap: 0.1rem;
21
-
align-items: center;
22
-
justify-content: center;
23
-
}
24
-
25
-
h2, p {
26
-
margin: 0.5rem 0;
27
-
}
28
-
29
-
a {
30
-
color: revert;
31
-
}
32
-
</style>
-12
frontend/src/pages/about.astro
-12
frontend/src/pages/about.astro
-36
frontend/src/pages/index.astro
-36
frontend/src/pages/index.astro
···
1
-
---
2
-
import Base from '../layouts/Base.astro';
3
-
import Header from "../layouts/Header.astro";
4
-
import Footer from "../layouts/Footer.astro";
5
-
import Clip from "../components/Clip.astro";
6
-
import SidebarItem from "../components/SidebarItem.astro";
7
-
---
8
-
<Base title="home">
9
-
<Header/>
10
-
<main>
11
-
<div id="main-content">
12
-
<div id="clip-list">
13
-
<Clip title="google" link="https://google.com" tagList="technology,search,google"
14
-
description="tests woah"
15
-
originalClipper="popbob.com" firstClipDate="30m"/>
16
-
</div>
17
-
</div>
18
-
<div id="sidebar">
19
-
<SidebarItem title="what is clippr?">
20
-
<p>clippr is a bookmarking site that doubles as a news aggregator.</p>
21
-
<p>using your bookmarks (or "clips") and their associated tags, a constantly updated news feed is
22
-
created based on what users are clipping to their collection.</p>
23
-
<a href="/about">learn more ยป</a>
24
-
</SidebarItem>
25
-
<SidebarItem title="stats">
26
-
<h3>clips</h3>
27
-
<p class="item-counter">0</p>
28
-
<h3>sites</h3>
29
-
<p class="item-counter">0</p>
30
-
<h3>users</h3>
31
-
<p class="item-counter">0</p>
32
-
</SidebarItem>
33
-
</div>
34
-
</main>
35
-
<Footer/>
36
-
</Base>
-95
frontend/src/pages/login.astro
-95
frontend/src/pages/login.astro
···
1
-
---
2
-
import Base from '../layouts/Base.astro';
3
-
import Header from "../layouts/Header.astro";
4
-
import Footer from "../layouts/Footer.astro";
5
-
---
6
-
<Base title="login">
7
-
<Header/>
8
-
<main>
9
-
<div id="oauth-login">
10
-
<h2>log in</h2>
11
-
<p>Enter your Bluesky handle.</p>
12
-
<form>
13
-
<label for="handle">handle</label>
14
-
<input type="text" id="handle" name="handle" placeholder="handle">
15
-
<input type="submit" value="Authenticate">
16
-
</form>
17
-
</div>
18
-
<!--<p id="or">or...</p>-->
19
-
<!--<div id="bluesky-login">-->
20
-
<!-- <h2>use your bluesky account</h2>-->
21
-
<!-- <button id="bluesky-login-button">login to bluesky</button>-->
22
-
<!--</div>-->
23
-
</main>
24
-
<Footer/>
25
-
</Base>
26
-
27
-
<style>
28
-
main {
29
-
display: flex !important;
30
-
flex-direction: column;
31
-
align-items: center;
32
-
justify-content: center;
33
-
gap: 1rem;
34
-
}
35
-
36
-
form {
37
-
display: flex;
38
-
flex-direction: column;
39
-
justify-content: center;
40
-
41
-
label {
42
-
text-align: center;
43
-
font-weight: bold;
44
-
margin-bottom: 0.5rem;
45
-
}
46
-
47
-
input[type="submit"] {
48
-
margin: 1rem 0 0 0;
49
-
padding: 0.5rem 0;
50
-
width: 50%;
51
-
align-self: center;
52
-
}
53
-
}
54
-
55
-
a {
56
-
color: revert;
57
-
}
58
-
59
-
#or {
60
-
border: 2px black solid;
61
-
padding: 0.5rem 2rem;
62
-
margin: 0;
63
-
font-weight: bold;
64
-
}
65
-
66
-
h2 {
67
-
text-align: center;
68
-
}
69
-
70
-
#bluesky-login {
71
-
display: flex;
72
-
flex-direction: column;
73
-
justify-content: center;
74
-
align-items: center;
75
-
76
-
h2 {
77
-
margin: 1rem 0;
78
-
margin-top: 0;
79
-
}
80
-
}
81
-
82
-
#bluesky-login-button {
83
-
background: linear-gradient(deepskyblue, lightskyblue);
84
-
border: none;
85
-
border-radius: 10px;
86
-
font-weight: bold;
87
-
padding: 1rem 2rem;
88
-
}
89
-
90
-
#bluesky-login-button:hover {
91
-
cursor: pointer;
92
-
filter: brightness(90%);
93
-
transition: filter 0.3s ease-in-out;
94
-
}
95
-
</style>
+264
frontend/src/styles/index.css
+264
frontend/src/styles/index.css
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
:root {
8
+
color-scheme: dark light;
9
+
font-family: Arial, sans-serif;
10
+
}
11
+
12
+
@media (prefers-color-scheme: dark) {
13
+
:root {
14
+
--bg: #222 !important;
15
+
--fg: #fff !important;
16
+
--controls-bg: #2B2A33 !important;
17
+
--controls-bg-hover: #52525E !important;
18
+
--controls-border: #8F8F9D !important;
19
+
}
20
+
}
21
+
22
+
@media (prefers-color-scheme: light) {
23
+
:root {
24
+
--bg: #fff !important;
25
+
--fg: #222 !important;
26
+
--controls-bg: #E9E9ED !important;
27
+
--controls-bg-hover: #D0D0D7 !important;
28
+
--controls-border: #8F8F9D !important;
29
+
}
30
+
}
31
+
32
+
body {
33
+
background-color: var(--bg);
34
+
color: var(--fg);
35
+
width: 70vw;
36
+
margin: 1rem auto;
37
+
}
38
+
39
+
header {
40
+
display: flex;
41
+
justify-content: space-between;
42
+
align-items: center;
43
+
padding: 0 1rem;
44
+
border-bottom: 1px solid var(--fg);
45
+
46
+
#header-left {
47
+
font-weight: bold;
48
+
}
49
+
50
+
#header-right nav {
51
+
display: inline-flex;
52
+
align-items: center;
53
+
justify-content: space-between;
54
+
gap: 1rem;
55
+
}
56
+
}
57
+
58
+
main {
59
+
margin: 1rem;
60
+
}
61
+
62
+
#main-headings {
63
+
h1 {
64
+
margin: 0;
65
+
}
66
+
67
+
margin: 1rem 0 1rem 0;
68
+
}
69
+
70
+
#page-location {
71
+
display: flex;
72
+
align-items: start;
73
+
gap: 0.5rem;
74
+
padding: 0 0 0 0.5rem;
75
+
border: 1px solid var(--fg);
76
+
77
+
p {
78
+
margin: 0;
79
+
padding: 0.5rem 0;
80
+
}
81
+
}
82
+
83
+
#page-location-last {
84
+
font-weight: bold;
85
+
}
86
+
87
+
#content {
88
+
display: flex;
89
+
flex-direction: row;
90
+
gap: 2rem;
91
+
justify-content: space-between;
92
+
}
93
+
94
+
#main-content {
95
+
h3 {
96
+
margin: 0;
97
+
}
98
+
99
+
p {
100
+
line-height: 1.5;
101
+
}
102
+
}
103
+
104
+
#sidebar {
105
+
display: flex;
106
+
flex-direction: column;
107
+
gap: 1rem;
108
+
}
109
+
110
+
.centered {
111
+
text-align: center;
112
+
margin: 0 auto;
113
+
}
114
+
115
+
.sidebar-item {
116
+
border: 1px solid var(--fg);
117
+
display: flex;
118
+
flex-direction: column;
119
+
align-items: center;
120
+
justify-content: space-between;
121
+
padding: 0.5rem;
122
+
text-align: center;
123
+
124
+
h3 {
125
+
margin: 0.5rem 0 1rem 0;
126
+
}
127
+
128
+
h4 {
129
+
margin: 0;
130
+
}
131
+
}
132
+
133
+
.stat-counter {
134
+
font-weight: bold;
135
+
font-size: 1.5rem;
136
+
margin: 0.5rem 0;
137
+
}
138
+
139
+
form {
140
+
display: flex;
141
+
flex-direction: column;
142
+
align-items: center;
143
+
gap: 0.5rem;
144
+
145
+
input {
146
+
padding: 0.25rem;
147
+
margin: 0.5rem;
148
+
}
149
+
}
150
+
151
+
button {
152
+
padding: 0.25rem 2rem;
153
+
margin: 0 0 0.5rem 0;
154
+
}
155
+
156
+
footer {
157
+
display: flex;
158
+
justify-content: space-between;
159
+
align-items: center;
160
+
padding: 0 1rem;
161
+
border-top: 1px solid var(--fg);
162
+
163
+
#footer-right nav {
164
+
display: inline-flex;
165
+
align-items: center;
166
+
justify-content: space-between;
167
+
gap: 1rem;
168
+
}
169
+
}
170
+
171
+
a {
172
+
text-decoration: none;
173
+
color: #8c8cfe;
174
+
}
175
+
176
+
a:hover {
177
+
font-style: italic;
178
+
font-weight: bold;
179
+
cursor: pointer;
180
+
}
181
+
182
+
a:visited {
183
+
color: #8c8cfe;
184
+
}
185
+
186
+
.silent-link {
187
+
color: var(--fg);
188
+
189
+
&:hover {
190
+
font-style: revert;
191
+
font-weight: revert;
192
+
}
193
+
}
194
+
195
+
#profile-view {
196
+
display: flex;
197
+
flex-direction: row;
198
+
align-items: center;
199
+
gap: 2rem;
200
+
201
+
div {
202
+
text-align: left;
203
+
}
204
+
205
+
* {
206
+
margin: 0.5rem 0;
207
+
}
208
+
}
209
+
210
+
.profile-picture {
211
+
border-radius: 50%;
212
+
width: 150px;
213
+
height: 150px;
214
+
}
215
+
216
+
form input[type="file"] {
217
+
display: none;
218
+
}
219
+
220
+
.file-upload {
221
+
border: 1px solid var(--controls-border);
222
+
display: inline-block;
223
+
padding: 6px 12px;
224
+
background-color: var(--controls-bg);
225
+
border-radius: 6px;
226
+
margin: 0.5rem 0;
227
+
}
228
+
229
+
.file-upload:hover {
230
+
background-color: var(--controls-bg-hover);
231
+
}
232
+
233
+
textarea {
234
+
padding: 0.5rem;
235
+
width: 275px;
236
+
height: 100px;
237
+
font-family: Arial, sans-serif;
238
+
}
239
+
240
+
@media (max-width: 768px) {
241
+
body {
242
+
width: 90vw;
243
+
}
244
+
245
+
header {
246
+
flex-direction: column;
247
+
padding-bottom: 1rem;
248
+
}
249
+
250
+
#content {
251
+
flex-direction: column;
252
+
}
253
+
254
+
#profile-view {
255
+
flex-direction: column;
256
+
align-items: center;
257
+
gap: 0.1rem;
258
+
}
259
+
260
+
footer {
261
+
flex-direction: column;
262
+
text-align: center;
263
+
}
264
+
}
-184
frontend/src/styles/main.css
-184
frontend/src/styles/main.css
···
1
-
/*
2
-
* clippr: a social bookmarking service for the AT Protocol
3
-
* Copyright (c) 2025 clippr contributors.
4
-
* SPDX-License-Identifier: AGPL-3.0-only
5
-
*/
6
-
7
-
body {
8
-
margin: 2rem auto;
9
-
font-family: Arial, sans-serif;
10
-
background-color: #bbb;
11
-
width: 63%;
12
-
}
13
-
14
-
@media (max-width: 768px) {
15
-
body {
16
-
margin: auto;
17
-
width: 100%;
18
-
}
19
-
}
20
-
21
-
header {
22
-
background-image: linear-gradient(#455372, #2b3854);
23
-
color: white;
24
-
display: flex;
25
-
flex-direction: row;
26
-
align-items: center;
27
-
justify-content: space-between;
28
-
padding: 0.5rem 1rem;
29
-
30
-
h1 {
31
-
font-size: 1rem;
32
-
}
33
-
34
-
ul {
35
-
list-style-type: none;
36
-
margin: 0;
37
-
display: flex;
38
-
flex-direction: row;
39
-
gap: 1.5rem;
40
-
}
41
-
}
42
-
43
-
a {
44
-
text-decoration: none;
45
-
color: white;
46
-
}
47
-
48
-
a:hover {
49
-
font-style: italic;
50
-
}
51
-
52
-
main {
53
-
background-color: white;
54
-
background-clip: border-box;
55
-
padding: 1rem 0.5rem;
56
-
57
-
display: grid;
58
-
grid-template-columns: 70% 30%;
59
-
}
60
-
61
-
#clip-list {
62
-
margin: 0 0.5rem;
63
-
64
-
.clip:first-of-type {
65
-
margin: 0;
66
-
}
67
-
68
-
.clip {
69
-
margin: 1.5rem 0;
70
-
}
71
-
}
72
-
73
-
.clip {
74
-
display: grid;
75
-
grid-template-columns: auto;
76
-
grid-template-rows: auto;
77
-
grid-gap: 0.5rem;
78
-
79
-
a {
80
-
color: revert;
81
-
}
82
-
83
-
.clip-head {
84
-
display: flex;
85
-
flex-direction: row;
86
-
align-items: center;
87
-
gap: 1rem;
88
-
89
-
h2 {
90
-
margin: 0;
91
-
}
92
-
93
-
grid-column: 1;
94
-
grid-row: 1;
95
-
}
96
-
97
-
.clip-link {
98
-
grid-column: 1;
99
-
grid-row: 2;
100
-
}
101
-
102
-
.clip-description {
103
-
grid-column: 1;
104
-
grid-row: 3;
105
-
106
-
font-size: 0.8rem;
107
-
margin: 0.25rem 0;
108
-
}
109
-
110
-
.clip-tags {
111
-
margin: 0;
112
-
}
113
-
114
-
.clip-tags * {
115
-
background: linear-gradient(#ffe076, #fff0cb) !important;
116
-
padding: 0.25rem;
117
-
margin: 0 0.25rem !important;
118
-
border-radius: 0.34rem;
119
-
border: 0.09rem solid black;
120
-
}
121
-
122
-
.clip-actions {
123
-
display: flex;
124
-
flex-direction: row;
125
-
gap: 0.5rem;
126
-
font-size: 0.8rem;
127
-
128
-
grid-column: 1;
129
-
grid-row: 4;
130
-
}
131
-
132
-
.original-clipper {
133
-
color: #777 !important;
134
-
}
135
-
}
136
-
137
-
#sidebar {
138
-
margin: 0 1rem;
139
-
}
140
-
141
-
.sidebar-content {
142
-
background-color: #bbbbbb;
143
-
display: flex;
144
-
flex-direction: column;
145
-
align-items: center;
146
-
justify-content: center;
147
-
148
-
h3, p {
149
-
margin: 0.5rem;
150
-
}
151
-
152
-
.item-counter {
153
-
font-size: 2rem;
154
-
}
155
-
}
156
-
157
-
.sidebar-item {
158
-
padding: 0.5rem 0;
159
-
160
-
h2 {
161
-
margin: 0.5rem 0;
162
-
}
163
-
164
-
a {
165
-
align-self: start;
166
-
color: revert;
167
-
padding: 0.5rem 0.5rem;
168
-
}
169
-
170
-
a:hover {
171
-
font-style: revert;
172
-
text-decoration: underline;
173
-
}
174
-
}
175
-
176
-
.sidebar-item:first-of-type {
177
-
padding-top: 0;
178
-
179
-
h2 {
180
-
margin-top: 0;
181
-
}
182
-
}
183
-
184
-
+19
frontend/src/types.ts
+19
frontend/src/types.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
export type ErrorResponse = {
8
+
error: string;
9
+
message: string;
10
+
};
11
+
12
+
export type ProfileViewQuery = Object & {
13
+
did: string;
14
+
handle: string;
15
+
displayName: string;
16
+
avatar: string;
17
+
description: string;
18
+
createdAt: string;
19
+
}
+83
frontend/src/utils/profile.ts
+83
frontend/src/utils/profile.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { ErrorResponse, ProfileViewQuery } from "../types.ts";
8
+
import {
9
+
CompositeDidDocumentResolver,
10
+
DocumentNotFoundError,
11
+
FailedDocumentResolutionError,
12
+
HandleResolutionError,
13
+
ImproperDidError,
14
+
PlcDidDocumentResolver,
15
+
UnsupportedDidMethodError,
16
+
WebDidDocumentResolver,
17
+
} from "@atcute/identity-resolver";
18
+
19
+
export const fetchProfile = async (actor: any): Promise<ProfileViewQuery> => {
20
+
const response: Response = await fetch(
21
+
`${import.meta.env.VITE_CLIPPR_APPVIEW}/xrpc/social.clippr.actor.getProfile?actor=${actor}`,
22
+
);
23
+
24
+
if (response.status !== 200) {
25
+
if (response.status === 400) {
26
+
const json: ErrorResponse = await response.json();
27
+
console.log(json);
28
+
throw new Error(json.message);
29
+
} else {
30
+
throw new Error(response.statusText);
31
+
}
32
+
}
33
+
34
+
return response.json();
35
+
};
36
+
37
+
export const convertDidToHandle = async (did: string): Promise<string> => {
38
+
let convertedDid;
39
+
if (did.startsWith("did:plc:")) {
40
+
convertedDid = did as `did:plc:${string}`;
41
+
} else convertedDid = did as `did:web:${string}`;
42
+
const docResolver = new CompositeDidDocumentResolver({
43
+
methods: {
44
+
plc: new PlcDidDocumentResolver(),
45
+
web: new WebDidDocumentResolver(),
46
+
},
47
+
});
48
+
49
+
let doc;
50
+
51
+
try {
52
+
doc = await docResolver.resolve(convertedDid);
53
+
} catch (err) {
54
+
if (err instanceof DocumentNotFoundError) {
55
+
throw new Error("Document not found");
56
+
}
57
+
if (err instanceof UnsupportedDidMethodError) {
58
+
throw new Error("Unsupported did method");
59
+
}
60
+
if (err instanceof ImproperDidError) {
61
+
throw new Error("Improper did");
62
+
}
63
+
if (err instanceof FailedDocumentResolutionError) {
64
+
throw new Error("Failed document resolution");
65
+
}
66
+
if (err instanceof HandleResolutionError) {
67
+
throw new Error("Generic handle resolution error");
68
+
}
69
+
}
70
+
71
+
if (doc === undefined) {
72
+
throw new Error("Could not get DID document");
73
+
}
74
+
75
+
if (doc.alsoKnownAs === undefined) {
76
+
throw new Error("No handles found");
77
+
}
78
+
if (doc.alsoKnownAs[0] === undefined) {
79
+
throw new Error("No handles found");
80
+
}
81
+
82
+
return doc.alsoKnownAs[0].substring(doc.alsoKnownAs[0].lastIndexOf("/") + 1);
83
+
};
+28
frontend/src/views/home.tsx
+28
frontend/src/views/home.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { loginState } from "../components/loginForm.tsx";
8
+
import { ProfileWidget } from "../components/profileWidget.tsx";
9
+
import { PageLocation } from "../components/pageLocation.tsx";
10
+
11
+
const Home = () => {
12
+
if (!loginState()) {
13
+
location.href = "/login";
14
+
}
15
+
16
+
return (
17
+
<main>
18
+
<PageLocation lastLocation={"home"} />
19
+
<div id="content">
20
+
<div id="main-content" class="centered">
21
+
<ProfileWidget />
22
+
</div>
23
+
</div>
24
+
</main>
25
+
);
26
+
};
27
+
28
+
export { Home };
+86
frontend/src/views/landingPage.tsx
+86
frontend/src/views/landingPage.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { LoginForm } from "../components/loginForm.tsx";
8
+
9
+
const LandingPage = () => {
10
+
return (
11
+
<>
12
+
<main>
13
+
<div id="main-headings">
14
+
<h1>clippr</h1>
15
+
<h2>social bookmarking for the AT Protocol</h2>
16
+
</div>
17
+
18
+
<div id="content">
19
+
<div id="main-content">
20
+
<h3>what is clippr?</h3>
21
+
<p>
22
+
Clippr is an application based on the{" "}
23
+
<a href="https://atproto.com">AT Protocol</a> that allows you to
24
+
bookmark, organize and share links with your friends.
25
+
</p>
26
+
<h3>is this app ready yet?</h3>
27
+
<p>
28
+
While you can use it right now, the application is still in{" "}
29
+
<i>heavy</i> development, and things will eventually break. We do
30
+
not recommend using Clippr as your primary bookmarking tool until
31
+
it is out of beta.
32
+
</p>
33
+
<h3>what is the AT Protocol?</h3>
34
+
<p>
35
+
The AT Protocol (or "ATproto" for short) is a decentralized social
36
+
networking protocol designed to allow users to have a single,
37
+
portable identity across multiple interoperable applications. It
38
+
is used mainly by the microblogging app Bluesky, but anyone can
39
+
build an application that uses the protocol, even if it isn't
40
+
related to Bluesky.
41
+
</p>
42
+
<h3>
43
+
what's different about clippr compared to [other social
44
+
bookmarking app]?
45
+
</h3>
46
+
<p>
47
+
The main difference between Clippr and other bookmarking
48
+
application such as Pocket, Instapaper, Wallabag, Linkding or
49
+
Pinboard is that your data isn't locked to a specific platform.
50
+
Anyone can build an extension or application that is interoperable
51
+
with Clippr's API and data structures (or any other application),
52
+
and we encourage you to do so.
53
+
<br />
54
+
<br />
55
+
All of our code is available as{" "}
56
+
<a href="https://tangled.sh/@hexmani.ac/clippr">free software</a>,
57
+
and we provide a{" "}
58
+
<a href="https://www.npmjs.com/package/@clipprjs/lexicons">
59
+
NPM package
60
+
</a>{" "}
61
+
to make it easier to develop with Clippr.
62
+
</p>
63
+
</div>
64
+
65
+
<div id="sidebar">
66
+
<div class="sidebar-item">
67
+
<h3>log in</h3>
68
+
<LoginForm />
69
+
</div>
70
+
<div class="sidebar-item">
71
+
<h3>stats</h3>
72
+
<h4>clips</h4>
73
+
<p class="stat-counter">0</p>
74
+
<h4>tags</h4>
75
+
<p class="stat-counter">0</p>
76
+
<h4>users</h4>
77
+
<p class="stat-counter">0</p>
78
+
</div>
79
+
</div>
80
+
</div>
81
+
</main>
82
+
</>
83
+
);
84
+
};
85
+
86
+
export { LandingPage };
+29
frontend/src/views/login.tsx
+29
frontend/src/views/login.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { LoginForm, loginState } from "../components/loginForm.tsx";
8
+
9
+
const Login = () => {
10
+
// TODO: Fix weird transition states
11
+
if (loginState()) {
12
+
location.href = "/home";
13
+
}
14
+
15
+
return (
16
+
<>
17
+
<main>
18
+
<div id="content">
19
+
<div id="main-content" class="centered">
20
+
<h2>login</h2>
21
+
<LoginForm />
22
+
</div>
23
+
</div>
24
+
</main>
25
+
</>
26
+
);
27
+
};
28
+
29
+
export { Login };
+27
frontend/src/views/notFound.tsx
+27
frontend/src/views/notFound.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { loginState } from "../components/loginForm.tsx";
8
+
9
+
const NotFound = () => {
10
+
return (
11
+
<>
12
+
<main>
13
+
<div id="content">
14
+
<div id="main-content" class="centered">
15
+
<h2>404 | page not found</h2>
16
+
<p>the party seems to be over...</p>
17
+
<a href={loginState() ? "/home" : "/"}>go home</a>
18
+
<br />
19
+
<br />
20
+
</div>
21
+
</div>
22
+
</main>
23
+
</>
24
+
);
25
+
};
26
+
27
+
export { NotFound };
+47
frontend/src/views/profile.tsx
+47
frontend/src/views/profile.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { createAsync, useParams } from "@solidjs/router";
8
+
import { PageLocation } from "../components/pageLocation.tsx";
9
+
import { ProfileWidget } from "../components/profileWidget.tsx";
10
+
import { agent, loginState } from "../components/loginForm.tsx";
11
+
import { convertDidToHandle } from "../utils/profile.ts";
12
+
13
+
const Profile = () => {
14
+
const params = useParams();
15
+
16
+
// Authentication check for profile route catch-all
17
+
if (!loginState() && location.pathname === "/profile") {
18
+
location.href = "/login";
19
+
}
20
+
21
+
let handle;
22
+
try {
23
+
handle = createAsync(() => convertDidToHandle(params.id || agent.sub));
24
+
} catch (e) {
25
+
console.error(e);
26
+
handle = null;
27
+
}
28
+
29
+
return (
30
+
<main>
31
+
<PageLocation
32
+
path={[{ name: "home", link: `${loginState() ? "/home" : "/"}` }]}
33
+
lastLocation={handle || params.id}
34
+
/>
35
+
<div id="main-headings">
36
+
<h1>profile</h1>
37
+
</div>
38
+
<div id="content">
39
+
<div id="main-content" class="centered">
40
+
<ProfileWidget actor={params.id} />
41
+
</div>
42
+
</div>
43
+
</main>
44
+
);
45
+
};
46
+
47
+
export { Profile };
+31
frontend/src/views/settings.tsx
+31
frontend/src/views/settings.tsx
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { ProfileEditor } from "../components/profileEditor.tsx";
8
+
import { killSession, loginState } from "../components/loginForm.tsx";
9
+
import { PageLocation } from "../components/pageLocation.tsx";
10
+
11
+
const Settings = () => {
12
+
if (!loginState()) {
13
+
location.href = "/login";
14
+
}
15
+
16
+
return (
17
+
<main>
18
+
<PageLocation lastLocation={"settings"} />
19
+
<div id="content">
20
+
<div id="main-content" class="centered">
21
+
<h2>account settings</h2>
22
+
<button onclick={killSession}>Log out</button>
23
+
<h2>edit profile</h2>
24
+
<ProfileEditor />
25
+
</div>
26
+
</div>
27
+
</main>
28
+
);
29
+
};
30
+
31
+
export { Settings };
+24
frontend/src/vite-env.d.ts
+24
frontend/src/vite-env.d.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
interface ImportMetaEnv {
8
+
readonly VITE_DEV_SERVER_PORT?: string;
9
+
10
+
/// OAuth environment variables
11
+
readonly VITE_CLIENT_URI: string;
12
+
readonly VITE_OAUTH_CLIENT_ID: string;
13
+
readonly VITE_OAUTH_REDIRECT_URI: string;
14
+
readonly VITE_OAUTH_SCOPE: string;
15
+
16
+
/// Clippr-related environment variables
17
+
///
18
+
/// A URL for where the clippr appview is hosted
19
+
readonly VITE_CLIPPR_APPVIEW: string;
20
+
}
21
+
22
+
interface ImportMeta {
23
+
readonly env: ImportMetaEnv;
24
+
}
+26
frontend/tsconfig.app.json
+26
frontend/tsconfig.app.json
···
1
+
{
2
+
"compilerOptions": {
3
+
"target": "ESNext",
4
+
"useDefineForClassFields": true,
5
+
"module": "ESNext",
6
+
"lib": ["ESNext", "DOM", "DOM.Iterable"],
7
+
"types": [],
8
+
"skipLibCheck": true,
9
+
10
+
/* Bundler mode */
11
+
"moduleResolution": "bundler",
12
+
"allowImportingTsExtensions": true,
13
+
"isolatedModules": true,
14
+
"moduleDetection": "force",
15
+
"noEmit": true,
16
+
"jsx": "preserve",
17
+
"jsxImportSource": "solid-js",
18
+
19
+
/* Linting */
20
+
"strict": true,
21
+
"noUnusedLocals": true,
22
+
"noUnusedParameters": true,
23
+
"noFallthroughCasesInSwitch": true
24
+
},
25
+
"include": ["src"]
26
+
}
+5
-3
frontend/tsconfig.json
+5
-3
frontend/tsconfig.json
+23
frontend/tsconfig.node.json
+23
frontend/tsconfig.node.json
···
1
+
{
2
+
"compilerOptions": {
3
+
"target": "ESNext",
4
+
"lib": ["ESNext"],
5
+
"types": ["node"],
6
+
"module": "ESNext",
7
+
"skipLibCheck": true,
8
+
9
+
/* Bundler mode */
10
+
"moduleResolution": "bundler",
11
+
"allowImportingTsExtensions": true,
12
+
"isolatedModules": true,
13
+
"moduleDetection": "force",
14
+
"noEmit": true,
15
+
16
+
/* Linting */
17
+
"strict": true,
18
+
"noUnusedLocals": true,
19
+
"noUnusedParameters": true,
20
+
"noFallthroughCasesInSwitch": true
21
+
},
22
+
"include": ["vite.config.ts"]
23
+
}
+58
frontend/vite.config.ts
+58
frontend/vite.config.ts
···
1
+
/*
2
+
* clippr: a social bookmarking service for the AT Protocol
3
+
* Copyright (c) 2025 clippr contributors.
4
+
* SPDX-License-Identifier: AGPL-3.0-only
5
+
*/
6
+
7
+
import { defineConfig } from "vite";
8
+
import solidPlugin from "vite-plugin-solid";
9
+
import metadata from "./public/oauth/client-metadata.json";
10
+
import { devtoolsPlugin } from "solid-devtools/vite";
11
+
12
+
const SERVER_HOST = "127.0.0.1";
13
+
const SERVER_PORT = 3000;
14
+
15
+
export default defineConfig({
16
+
plugins: [
17
+
devtoolsPlugin({
18
+
autoname: true,
19
+
}),
20
+
solidPlugin(),
21
+
{
22
+
// Shamelessly stolen from PDSls: https://github.com/notjuliet/pdsls/blob/main/vite.config.ts
23
+
name: "oauth",
24
+
config(_conf, { command }) {
25
+
if (command === "build") {
26
+
process.env.VITE_OAUTH_CLIENT_ID = metadata.client_id;
27
+
process.env.VITE_OAUTH_REDIRECT_URI = metadata.redirect_uris[0];
28
+
process.env.VITE_CLIPPR_APPVIEW = "https://api.clippr.social";
29
+
} else {
30
+
const redirectUri = ((): string => {
31
+
const url = new URL(metadata.redirect_uris[0]);
32
+
return `http://${SERVER_HOST}:${SERVER_PORT}${url.pathname}`;
33
+
})();
34
+
35
+
const clientId =
36
+
`http://localhost` +
37
+
`?redirect_uri=${encodeURIComponent(redirectUri)}` +
38
+
`&scope=${encodeURIComponent(metadata.scope)}`;
39
+
40
+
process.env.VITE_DEV_SERVER_PORT = "" + SERVER_PORT;
41
+
process.env.VITE_OAUTH_CLIENT_ID = clientId;
42
+
process.env.VITE_OAUTH_REDIRECT_URI = redirectUri;
43
+
process.env.VITE_CLIPPR_APPVIEW = `http://localhost:9090`;
44
+
}
45
+
46
+
process.env.VITE_CLIENT_URI = metadata.client_uri;
47
+
process.env.VITE_OAUTH_SCOPE = metadata.scope;
48
+
},
49
+
},
50
+
],
51
+
server: {
52
+
host: SERVER_HOST,
53
+
port: SERVER_PORT,
54
+
},
55
+
build: {
56
+
target: "esnext",
57
+
},
58
+
});
+4
lexicons/CHANGELOG.md
+4
lexicons/CHANGELOG.md
+1
lexicons/lib/lexicons/index.ts
+1
lexicons/lib/lexicons/index.ts
···
18
18
export * as SocialClipprFeedGetProfileClips from "./types/social/clippr/feed/getProfileClips.js";
19
19
export * as SocialClipprFeedGetProfileTags from "./types/social/clippr/feed/getProfileTags.js";
20
20
export * as SocialClipprFeedGetTagList from "./types/social/clippr/feed/getTagList.js";
21
+
export * as SocialClipprFeedGetTags from "./types/social/clippr/feed/getTags.js";
21
22
export * as SocialClipprFeedTag from "./types/social/clippr/feed/tag.js";