tangled
alpha
login
or
join now
mary.my.id
/
aglais
4
fork
atom
personal web client for Bluesky
typescript
solidjs
bluesky
atcute
4
fork
atom
overview
issues
pulls
pipelines
chore: upgrade dependencies
mary.my.id
1 month ago
da7cf2f5
57405759
verified
This commit was signed with the committer's
known signature
.
mary.my.id
SSH Key Fingerprint:
SHA256:ZlTP/auFSGpGnaoDg4mCTG1g9OZvXp62jWR4c6H4O3c=
+388
-614
7 changed files
expand all
collapse all
unified
split
package.json
pnpm-lock.yaml
scripts
generate-oauth-keys.js
server
index.ts
jwt.ts
lexicons.ts
src
main.tsx
+13
-12
package.json
···
10
"dependencies": {
11
"@atcute/atproto": "^3.1.10",
12
"@atcute/bluemoji": "^3.1.3",
13
-
"@atcute/bluesky": "^3.2.15",
14
"@atcute/bluesky-richtext-parser": "^1.0.7",
15
"@atcute/bluesky-richtext-segmenter": "^3.0.0",
16
"@atcute/bluesky-search-parser": "^0.1.1",
···
19
"@atcute/client": "^4.2.1",
20
"@atcute/identity": "^1.1.3",
21
"@atcute/identity-resolver": "^1.2.2",
22
-
"@atcute/lexicons": "^1.2.6",
23
-
"@atcute/multibase": "^1.1.6",
24
-
"@atcute/oauth-browser-client": "2.0.3",
0
25
"@atcute/tid": "^1.1.1",
26
-
"@atcute/uint8array": "^1.0.6",
27
-
"@atcute/xrpc-server": "^0.1.8",
28
"@atlaskit/pragmatic-drag-and-drop": "1.6.0",
29
"@atlaskit/pragmatic-drag-and-drop-hitbox": "1.0.3",
30
-
"@floating-ui/dom": "^1.7.4",
31
"@floating-ui/utils": "^0.2.10",
32
"@kelinci/basa-lexicons": "^1.0.0",
33
"@mary/array-fns": "jsr:^0.1.5",
···
40
"@mary/solid-query": "npm:@externdefs/solid-query@^0.1.5",
41
"comlink": "^4.4.2",
42
"hls.js": "^1.6.15",
43
-
"mediabunny": "^1.29.0",
44
"nanoid": "^5.1.6",
45
"solid-floating-ui": "~0.2.1",
46
-
"solid-js": "^1.9.10"
47
},
48
"devDependencies": {
49
"@badrap/valita": "^0.4.6",
50
-
"@cloudflare/vite-plugin": "^1.21.0",
51
"@types/dom-close-watcher": "^1.0.0",
52
"@types/dom-webcodecs": "^0.1.18",
53
"@types/node": "^24.10.9",
54
"autoprefixer": "^10.4.23",
55
"babel-plugin-transform-typescript-const-enums": "^0.1.0",
56
"oxfmt": "^0.26.0",
57
-
"prettier": "^3.8.0",
58
"tailwindcss": "^3.4.19",
59
"terser": "^5.46.0",
60
"typescript": "~5.9.3",
61
"vite": "^7.3.1",
62
"vite-plugin-pwa": "1.1.0",
63
"vite-plugin-solid": "^2.11.10",
64
-
"wrangler": "^4.59.2"
65
},
66
"pnpm": {
67
"patchedDependencies": {
···
10
"dependencies": {
11
"@atcute/atproto": "^3.1.10",
12
"@atcute/bluemoji": "^3.1.3",
13
+
"@atcute/bluesky": "^3.2.16",
14
"@atcute/bluesky-richtext-parser": "^1.0.7",
15
"@atcute/bluesky-richtext-segmenter": "^3.0.0",
16
"@atcute/bluesky-search-parser": "^0.1.1",
···
19
"@atcute/client": "^4.2.1",
20
"@atcute/identity": "^1.1.3",
21
"@atcute/identity-resolver": "^1.2.2",
22
+
"@atcute/lexicons": "^1.2.7",
23
+
"@atcute/multibase": "^1.1.7",
24
+
"@atcute/oauth-browser-client": "^3.0.0",
25
+
"@atcute/oauth-crypto": "^0.1.0",
26
"@atcute/tid": "^1.1.1",
27
+
"@atcute/uint8array": "^1.1.0",
28
+
"@atcute/xrpc-server": "^0.1.9",
29
"@atlaskit/pragmatic-drag-and-drop": "1.6.0",
30
"@atlaskit/pragmatic-drag-and-drop-hitbox": "1.0.3",
31
+
"@floating-ui/dom": "^1.7.5",
32
"@floating-ui/utils": "^0.2.10",
33
"@kelinci/basa-lexicons": "^1.0.0",
34
"@mary/array-fns": "jsr:^0.1.5",
···
41
"@mary/solid-query": "npm:@externdefs/solid-query@^0.1.5",
42
"comlink": "^4.4.2",
43
"hls.js": "^1.6.15",
44
+
"mediabunny": "^1.31.0",
45
"nanoid": "^5.1.6",
46
"solid-floating-ui": "~0.2.1",
47
+
"solid-js": "^1.9.11"
48
},
49
"devDependencies": {
50
"@badrap/valita": "^0.4.6",
51
+
"@cloudflare/vite-plugin": "^1.22.1",
52
"@types/dom-close-watcher": "^1.0.0",
53
"@types/dom-webcodecs": "^0.1.18",
54
"@types/node": "^24.10.9",
55
"autoprefixer": "^10.4.23",
56
"babel-plugin-transform-typescript-const-enums": "^0.1.0",
57
"oxfmt": "^0.26.0",
58
+
"prettier": "^3.8.1",
59
"tailwindcss": "^3.4.19",
60
"terser": "^5.46.0",
61
"typescript": "~5.9.3",
62
"vite": "^7.3.1",
63
"vite-plugin-pwa": "1.1.0",
64
"vite-plugin-solid": "^2.11.10",
65
+
"wrangler": "^4.61.1"
66
},
67
"pnpm": {
68
"patchedDependencies": {
+345
-320
pnpm-lock.yaml
···
37
specifier: ^3.1.3
38
version: 3.1.3
39
'@atcute/bluesky':
40
-
specifier: ^3.2.15
41
-
version: 3.2.15
42
'@atcute/bluesky-richtext-parser':
43
specifier: ^1.0.7
44
version: 1.0.7
···
64
specifier: ^1.2.2
65
version: 1.2.2(@atcute/identity@1.1.3)
66
'@atcute/lexicons':
67
-
specifier: ^1.2.6
68
-
version: 1.2.6
69
'@atcute/multibase':
70
-
specifier: ^1.1.6
71
-
version: 1.1.6
72
'@atcute/oauth-browser-client':
73
-
specifier: 2.0.3
74
-
version: 2.0.3(@atcute/identity@1.1.3)
0
0
0
75
'@atcute/tid':
76
specifier: ^1.1.1
77
version: 1.1.1
78
'@atcute/uint8array':
79
-
specifier: ^1.0.6
80
-
version: 1.0.6
81
'@atcute/xrpc-server':
82
-
specifier: ^0.1.8
83
-
version: 0.1.8
84
'@atlaskit/pragmatic-drag-and-drop':
85
specifier: 1.6.0
86
version: 1.6.0
···
88
specifier: 1.0.3
89
version: 1.0.3
90
'@floating-ui/dom':
91
-
specifier: ^1.7.4
92
-
version: 1.7.4
93
'@floating-ui/utils':
94
specifier: ^0.2.10
95
version: 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)
···
116
version: '@jsr/mary__exif-rm@0.2.2'
117
'@mary/solid-freeze':
118
specifier: npm:@externdefs/solid-freeze@^0.1.1
119
-
version: '@externdefs/solid-freeze@0.1.1(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))'
120
'@mary/solid-query':
121
specifier: npm:@externdefs/solid-query@^0.1.5
122
-
version: '@externdefs/solid-query@0.1.5(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))'
123
comlink:
124
specifier: ^4.4.2
125
version: 4.4.2
···
127
specifier: ^1.6.15
128
version: 1.6.15
129
mediabunny:
130
-
specifier: ^1.29.0
131
-
version: 1.29.0
132
nanoid:
133
specifier: ^5.1.6
134
version: 5.1.6
135
solid-floating-ui:
136
specifier: ~0.2.1
137
-
version: 0.2.1(@floating-ui/dom@1.7.4)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))
138
solid-js:
139
-
specifier: ^1.9.10
140
-
version: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
141
devDependencies:
142
'@badrap/valita':
143
specifier: ^0.4.6
144
version: 0.4.6
145
'@cloudflare/vite-plugin':
146
-
specifier: ^1.21.0
147
-
version: 1.21.0(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))(workerd@1.20260114.0)(wrangler@4.59.2)
148
'@types/dom-close-watcher':
149
specifier: ^1.0.0
150
version: 1.0.0
···
164
specifier: ^0.26.0
165
version: 0.26.0
166
prettier:
167
-
specifier: ^3.8.0
168
-
version: 3.8.0
169
tailwindcss:
170
specifier: ^3.4.19
171
version: 3.4.19
···
183
version: 1.1.0(patch_hash=003379ded749ad87080f87b428b17f04c4c88b6b64544df4d928aab76fbf6325)(@types/babel__core@7.20.5)(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))
184
vite-plugin-solid:
185
specifier: ^2.11.10
186
-
version: 2.11.10(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))
187
wrangler:
188
-
specifier: ^4.59.2
189
-
version: 4.59.2
190
191
packages:
192
···
215
'@atcute/bluesky-search-parser@0.1.1':
216
resolution: {integrity: sha512-jX01yzA4CWXfnpAmOL5P9kjpWEhVvIq2xEyYLZdFVpYe1v6xclUem1ir+Q8+aWoAcYwqQq6pM16XxkGw0yi5nA==}
217
218
-
'@atcute/bluesky@3.2.15':
219
-
resolution: {integrity: sha512-H4RW3WffjfdKvOZ9issEUQnuSR4KfuAwwJnYu0fclA9VDa99JTJ+pa8tTl9lFeBV9DINtWJAx7rdIbICoVCstQ==}
220
221
'@atcute/cbor@2.3.0':
222
resolution: {integrity: sha512-7G2AndkfYzIXMBOBqUPUWP6oIJJm77KY5nYzS4Mr5NNxnmnrBrXEQqp+seCE3X5TV8FUSWQK5YRTU87uPjafMQ==}
···
238
'@atcute/identity@1.1.3':
239
resolution: {integrity: sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng==}
240
241
-
'@atcute/lexicons@1.2.6':
242
-
resolution: {integrity: sha512-s76UQd8D+XmHIzrjD9CJ9SOOeeLPHc+sMmcj7UFakAW/dDFXc579fcRdRfuUKvXBL5v1Gs2VgDdlh/IvvQZAwA==}
0
0
0
0
0
0
0
0
0
243
244
-
'@atcute/multibase@1.1.6':
245
-
resolution: {integrity: sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg==}
246
247
-
'@atcute/oauth-browser-client@2.0.3':
248
-
resolution: {integrity: sha512-rzUjwhjE4LRRKdQnCFQag/zXRZMEAB1hhBoLfnoQuHwWbmDUCL7fzwC3jRhDPp3om8XaYNDj8a/iqRip0wRqoQ==}
249
250
'@atcute/tid@1.1.1':
251
resolution: {integrity: sha512-djJ8UGhLkTU5V51yCnBEruMg35qETjWzWy5sJG/2gEOl2Gd7rQWHSaf+yrO6vMS5EFA38U2xOWE3EDUPzvc2ZQ==}
···
253
'@atcute/time-ms@1.2.0':
254
resolution: {integrity: sha512-dtNKebVIbr1+yu3a6vgtL4sfkNgxkL3aA+ohHsjtW83WWMjjGvX8GVTVmYCJ2dYSxIoxK0q1yWs11PmlqzmQ/A==}
255
256
-
'@atcute/uint8array@1.0.6':
257
-
resolution: {integrity: sha512-ucfRBQc7BFT8n9eCyGOzDHEMKF/nZwhS2pPao4Xtab1ML3HdFYcX2DM1tadCzas85QTGxHe5urnUAAcNKGRi9A==}
258
259
'@atcute/util-fetch@1.0.5':
260
resolution: {integrity: sha512-qjHj01BGxjSjIFdPiAjSARnodJIIyKxnCMMEcXMESo9TAyND6XZQqrie5fia+LlYWVXdpsTds8uFQwc9jdKTig==}
261
262
-
'@atcute/util-text@0.0.1':
263
-
resolution: {integrity: sha512-t1KZqvn0AYy+h2KcJyHnKF9aEqfRfMUmyY8j1ELtAEIgqN9CxINAjxnoRCJIFUlvWzb+oY3uElQL/Vyk3yss0g==}
264
265
-
'@atcute/xrpc-server@0.1.8':
266
-
resolution: {integrity: sha512-GFdPtaXQXfsqejx88CaJ6zU0Yexrh3n94/rotGk1xwNJLa1iQ5kuWQqzttcybXoYEOp5Z2CGGw7bx9WuCLarlw==}
267
268
'@atlaskit/pragmatic-drag-and-drop-hitbox@1.0.3':
269
resolution: {integrity: sha512-/Sbu/HqN2VGLYBhnsG7SbRNg98XKkbF6L7XDdBi+izRybfaK1FeMfodPpm/xnBHPJzwYMdkE0qtLyv6afhgMUA==}
···
307
peerDependencies:
308
'@babel/core': ^7.0.0
309
310
-
'@babel/helper-define-polyfill-provider@0.6.5':
311
-
resolution: {integrity: sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==}
312
peerDependencies:
313
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
314
···
784
resolution: {integrity: sha512-SIOD2DxrRRwQ+jgzlXCqoEFiKOFqaPjhnNTGKXSRLvp1HiOvapLaFG2kEr9dYQTYe8rKrd9uvDUzmAITeNyaHQ==}
785
engines: {node: '>=18.0.0'}
786
787
-
'@cloudflare/unenv-preset@2.10.0':
788
-
resolution: {integrity: sha512-/uII4vLQXhzCAZzEVeYAjFLBNg2nqTJ1JGzd2lRF6ItYe6U2zVoYGfeKpGx/EkBF6euiU+cyBXgMdtJih+nQ6g==}
789
peerDependencies:
790
unenv: 2.0.0-rc.24
791
-
workerd: ^1.20251221.0
792
peerDependenciesMeta:
793
workerd:
794
optional: true
795
796
-
'@cloudflare/vite-plugin@1.21.0':
797
-
resolution: {integrity: sha512-3VXtkfjOQL+k3Plj+t0BHRyw8iIIRBQ8RJU6KJHJQKdYHA6rJE/WlSa/lRd0A8MMhvP8e8QiMLuDqveEN8gCZg==}
798
peerDependencies:
799
vite: ^6.1.0 || ^7.0.0
800
-
wrangler: ^4.59.2
801
802
-
'@cloudflare/workerd-darwin-64@1.20260114.0':
803
-
resolution: {integrity: sha512-HNlsRkfNgardCig2P/5bp/dqDECsZ4+NU5XewqArWxMseqt3C5daSuptI620s4pn7Wr0ZKg7jVLH0PDEBkA+aA==}
804
engines: {node: '>=16'}
805
cpu: [x64]
806
os: [darwin]
807
808
-
'@cloudflare/workerd-darwin-arm64@1.20260114.0':
809
-
resolution: {integrity: sha512-qyE1UdFnAlxzb+uCfN/d9c8icch7XRiH49/DjoqEa+bCDihTuRS7GL1RmhVIqHJhb3pX3DzxmKgQZBDBL83Inw==}
810
engines: {node: '>=16'}
811
cpu: [arm64]
812
os: [darwin]
813
814
-
'@cloudflare/workerd-linux-64@1.20260114.0':
815
-
resolution: {integrity: sha512-Z0BLvAj/JPOabzads2ddDEfgExWTlD22pnwsuNbPwZAGTSZeQa3Y47eGUWyHk+rSGngknk++S7zHTGbKuG7RRg==}
816
engines: {node: '>=16'}
817
cpu: [x64]
818
os: [linux]
819
820
-
'@cloudflare/workerd-linux-arm64@1.20260114.0':
821
-
resolution: {integrity: sha512-kPUmEtUxUWlr9PQ64kuhdK0qyo8idPe5IIXUgi7xCD7mDd6EOe5J7ugDpbfvfbYKEjx4DpLvN2t45izyI/Sodw==}
822
engines: {node: '>=16'}
823
cpu: [arm64]
824
os: [linux]
825
826
-
'@cloudflare/workerd-windows-64@1.20260114.0':
827
-
resolution: {integrity: sha512-MJnKgm6i1jZGyt2ZHQYCnRlpFTEZcK2rv9y7asS3KdVEXaDgGF8kOns5u6YL6/+eMogfZuHRjfDS+UqRTUYIFA==}
828
engines: {node: '>=16'}
829
cpu: [x64]
830
os: [win32]
···
1158
peerDependencies:
1159
solid-js: ^1.8.5
1160
1161
-
'@floating-ui/core@1.7.3':
1162
-
resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==}
1163
1164
-
'@floating-ui/dom@1.7.4':
1165
-
resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==}
1166
1167
'@floating-ui/utils@0.2.10':
1168
resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==}
···
1487
rollup:
1488
optional: true
1489
1490
-
'@rollup/rollup-android-arm-eabi@4.55.2':
1491
-
resolution: {integrity: sha512-21J6xzayjy3O6NdnlO6aXi/urvSRjm6nCI6+nF6ra2YofKruGixN9kfT+dt55HVNwfDmpDHJcaS3JuP/boNnlA==}
1492
cpu: [arm]
1493
os: [android]
1494
1495
-
'@rollup/rollup-android-arm64@4.55.2':
1496
-
resolution: {integrity: sha512-eXBg7ibkNUZ+sTwbFiDKou0BAckeV6kIigK7y5Ko4mB/5A1KLhuzEKovsmfvsL8mQorkoincMFGnQuIT92SKqA==}
1497
cpu: [arm64]
1498
os: [android]
1499
1500
-
'@rollup/rollup-darwin-arm64@4.55.2':
1501
-
resolution: {integrity: sha512-UCbaTklREjrc5U47ypLulAgg4njaqfOVLU18VrCrI+6E5MQjuG0lSWaqLlAJwsD7NpFV249XgB0Bi37Zh5Sz4g==}
1502
cpu: [arm64]
1503
os: [darwin]
1504
1505
-
'@rollup/rollup-darwin-x64@4.55.2':
1506
-
resolution: {integrity: sha512-dP67MA0cCMHFT2g5XyjtpVOtp7y4UyUxN3dhLdt11at5cPKnSm4lY+EhwNvDXIMzAMIo2KU+mc9wxaAQJTn7sQ==}
1507
cpu: [x64]
1508
os: [darwin]
1509
1510
-
'@rollup/rollup-freebsd-arm64@4.55.2':
1511
-
resolution: {integrity: sha512-WDUPLUwfYV9G1yxNRJdXcvISW15mpvod1Wv3ok+Ws93w1HjIVmCIFxsG2DquO+3usMNCpJQ0wqO+3GhFdl6Fow==}
1512
cpu: [arm64]
1513
os: [freebsd]
1514
1515
-
'@rollup/rollup-freebsd-x64@4.55.2':
1516
-
resolution: {integrity: sha512-Ng95wtHVEulRwn7R0tMrlUuiLVL/HXA8Lt/MYVpy88+s5ikpntzZba1qEulTuPnPIZuOPcW9wNEiqvZxZmgmqQ==}
1517
cpu: [x64]
1518
os: [freebsd]
1519
1520
-
'@rollup/rollup-linux-arm-gnueabihf@4.55.2':
1521
-
resolution: {integrity: sha512-AEXMESUDWWGqD6LwO/HkqCZgUE1VCJ1OhbvYGsfqX2Y6w5quSXuyoy/Fg3nRqiwro+cJYFxiw5v4kB2ZDLhxrw==}
1522
cpu: [arm]
1523
os: [linux]
1524
1525
-
'@rollup/rollup-linux-arm-musleabihf@4.55.2':
1526
-
resolution: {integrity: sha512-ZV7EljjBDwBBBSv570VWj0hiNTdHt9uGznDtznBB4Caj3ch5rgD4I2K1GQrtbvJ/QiB+663lLgOdcADMNVC29Q==}
1527
cpu: [arm]
1528
os: [linux]
1529
1530
-
'@rollup/rollup-linux-arm64-gnu@4.55.2':
1531
-
resolution: {integrity: sha512-uvjwc8NtQVPAJtq4Tt7Q49FOodjfbf6NpqXyW/rjXoV+iZ3EJAHLNAnKT5UJBc6ffQVgmXTUL2ifYiLABlGFqA==}
1532
cpu: [arm64]
1533
os: [linux]
1534
1535
-
'@rollup/rollup-linux-arm64-musl@4.55.2':
1536
-
resolution: {integrity: sha512-s3KoWVNnye9mm/2WpOZ3JeUiediUVw6AvY/H7jNA6qgKA2V2aM25lMkVarTDfiicn/DLq3O0a81jncXszoyCFA==}
1537
cpu: [arm64]
1538
os: [linux]
1539
1540
-
'@rollup/rollup-linux-loong64-gnu@4.55.2':
1541
-
resolution: {integrity: sha512-gi21faacK+J8aVSyAUptML9VQN26JRxe484IbF+h3hpG+sNVoMXPduhREz2CcYr5my0NE3MjVvQ5bMKX71pfVA==}
1542
cpu: [loong64]
1543
os: [linux]
1544
1545
-
'@rollup/rollup-linux-loong64-musl@4.55.2':
1546
-
resolution: {integrity: sha512-qSlWiXnVaS/ceqXNfnoFZh4IiCA0EwvCivivTGbEu1qv2o+WTHpn1zNmCTAoOG5QaVr2/yhCoLScQtc/7RxshA==}
1547
cpu: [loong64]
1548
os: [linux]
1549
1550
-
'@rollup/rollup-linux-ppc64-gnu@4.55.2':
1551
-
resolution: {integrity: sha512-rPyuLFNoF1B0+wolH277E780NUKf+KoEDb3OyoLbAO18BbeKi++YN6gC/zuJoPPDlQRL3fIxHxCxVEWiem2yXw==}
1552
cpu: [ppc64]
1553
os: [linux]
1554
1555
-
'@rollup/rollup-linux-ppc64-musl@4.55.2':
1556
-
resolution: {integrity: sha512-g+0ZLMook31iWV4PvqKU0i9E78gaZgYpSrYPed/4Bu+nGTgfOPtfs1h11tSSRPXSjC5EzLTjV/1A7L2Vr8pJoQ==}
1557
cpu: [ppc64]
1558
os: [linux]
1559
1560
-
'@rollup/rollup-linux-riscv64-gnu@4.55.2':
1561
-
resolution: {integrity: sha512-i+sGeRGsjKZcQRh3BRfpLsM3LX3bi4AoEVqmGDyc50L6KfYsN45wVCSz70iQMwPWr3E5opSiLOwsC9WB4/1pqg==}
1562
cpu: [riscv64]
1563
os: [linux]
1564
1565
-
'@rollup/rollup-linux-riscv64-musl@4.55.2':
1566
-
resolution: {integrity: sha512-C1vLcKc4MfFV6I0aWsC7B2Y9QcsiEcvKkfxprwkPfLaN8hQf0/fKHwSF2lcYzA9g4imqnhic729VB9Fo70HO3Q==}
1567
cpu: [riscv64]
1568
os: [linux]
1569
1570
-
'@rollup/rollup-linux-s390x-gnu@4.55.2':
1571
-
resolution: {integrity: sha512-68gHUK/howpQjh7g7hlD9DvTTt4sNLp1Bb+Yzw2Ki0xvscm2cOdCLZNJNhd2jW8lsTPrHAHuF751BygifW4bkQ==}
1572
cpu: [s390x]
1573
os: [linux]
1574
1575
-
'@rollup/rollup-linux-x64-gnu@4.55.2':
1576
-
resolution: {integrity: sha512-1e30XAuaBP1MAizaOBApsgeGZge2/Byd6wV4a8oa6jPdHELbRHBiw7wvo4dp7Ie2PE8TZT4pj9RLGZv9N4qwlw==}
1577
cpu: [x64]
1578
os: [linux]
1579
1580
-
'@rollup/rollup-linux-x64-musl@4.55.2':
1581
-
resolution: {integrity: sha512-4BJucJBGbuGnH6q7kpPqGJGzZnYrpAzRd60HQSt3OpX/6/YVgSsJnNzR8Ot74io50SeVT4CtCWe/RYIAymFPwA==}
1582
cpu: [x64]
1583
os: [linux]
1584
1585
-
'@rollup/rollup-openbsd-x64@4.55.2':
1586
-
resolution: {integrity: sha512-cT2MmXySMo58ENv8p6/O6wI/h/gLnD3D6JoajwXFZH6X9jz4hARqUhWpGuQhOgLNXscfZYRQMJvZDtWNzMAIDw==}
1587
cpu: [x64]
1588
os: [openbsd]
1589
1590
-
'@rollup/rollup-openharmony-arm64@4.55.2':
1591
-
resolution: {integrity: sha512-sZnyUgGkuzIXaK3jNMPmUIyJrxu/PjmATQrocpGA1WbCPX8H5tfGgRSuYtqBYAvLuIGp8SPRb1O4d1Fkb5fXaQ==}
1592
cpu: [arm64]
1593
os: [openharmony]
1594
1595
-
'@rollup/rollup-win32-arm64-msvc@4.55.2':
1596
-
resolution: {integrity: sha512-sDpFbenhmWjNcEbBcoTV0PWvW5rPJFvu+P7XoTY0YLGRupgLbFY0XPfwIbJOObzO7QgkRDANh65RjhPmgSaAjQ==}
1597
cpu: [arm64]
1598
os: [win32]
1599
1600
-
'@rollup/rollup-win32-ia32-msvc@4.55.2':
1601
-
resolution: {integrity: sha512-GvJ03TqqaweWCigtKQVBErw2bEhu1tyfNQbarwr94wCGnczA9HF8wqEe3U/Lfu6EdeNP0p6R+APeHVwEqVxpUQ==}
1602
cpu: [ia32]
1603
os: [win32]
1604
1605
-
'@rollup/rollup-win32-x64-gnu@4.55.2':
1606
-
resolution: {integrity: sha512-KvXsBvp13oZz9JGe5NYS7FNizLe99Ny+W8ETsuCyjXiKdiGrcz2/J/N8qxZ/RSwivqjQguug07NLHqrIHrqfYw==}
1607
cpu: [x64]
1608
os: [win32]
1609
1610
-
'@rollup/rollup-win32-x64-msvc@4.55.2':
1611
-
resolution: {integrity: sha512-xNO+fksQhsAckRtDSPWaMeT1uIM+JrDRXlerpnWNXhn1TdB3YZ6uKBMBTKP0eX9XtYEP978hHk1f8332i2AW8Q==}
1612
cpu: [x64]
1613
os: [win32]
1614
···
1640
'@types/babel__traverse@7.28.0':
1641
resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==}
1642
1643
-
'@types/bun@1.3.6':
1644
-
resolution: {integrity: sha512-uWCv6FO/8LcpREhenN1d1b6fcspAB+cefwD7uti8C8VffIv0Um08TKMn98FynpTiU38+y2dUO55T11NgDt8VAA==}
1645
1646
'@types/dom-close-watcher@1.0.0':
1647
resolution: {integrity: sha512-7pL0By56sVVGMSJ3HdSY+u08Id0ljStCaf1VnGFxwfpuNdA0HMz0sl2J24eSi9M6ptl9ySkVK35jF75Fn8trUg==}
···
1723
peerDependencies:
1724
'@babel/core': ^7.20.12
1725
1726
-
babel-plugin-polyfill-corejs2@0.4.14:
1727
-
resolution: {integrity: sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==}
1728
peerDependencies:
1729
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
1730
···
1733
peerDependencies:
1734
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
1735
1736
-
babel-plugin-polyfill-regenerator@0.6.5:
1737
-
resolution: {integrity: sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==}
1738
peerDependencies:
1739
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
1740
···
1755
balanced-match@1.0.2:
1756
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
1757
1758
-
baseline-browser-mapping@2.9.16:
1759
-
resolution: {integrity: sha512-KeUZdBuxngy825i8xvzaK1Ncnkx0tBmb3k8DkEuqjKRkmtvNTjey2ZsNeh8Dw4lfKvbCOu9oeNx2TKm2vHqcRw==}
1760
hasBin: true
1761
1762
binary-extensions@2.3.0:
···
1784
buffer-from@1.1.2:
1785
resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
1786
1787
-
bun-types@1.3.6:
1788
-
resolution: {integrity: sha512-OlFwHcnNV99r//9v5IIOgQ9Uk37gZqrNMCcqEaExdkVq3Avwqok1bJFmvGMCkCE0FqzdY8VMOZpfpR3lwI+CsQ==}
1789
1790
camelcase-css@2.0.1:
1791
resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
1792
engines: {node: '>= 6'}
1793
1794
-
caniuse-lite@1.0.30001765:
1795
-
resolution: {integrity: sha512-LWcNtSyZrakjECqmpP4qdg0MMGdN368D7X8XvvAqOcqMv0RxnlqVKZl2V6/mBR68oYMxOZPLw/gO7DuisMHUvQ==}
1796
1797
chokidar@3.6.0:
1798
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
···
1826
resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==}
1827
engines: {node: '>=18'}
1828
1829
-
core-js-compat@3.47.0:
1830
-
resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==}
1831
1832
cross-spawn@7.0.6:
1833
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
···
1876
engines: {node: '>=0.10.0'}
1877
hasBin: true
1878
1879
-
electron-to-chromium@1.5.267:
1880
-
resolution: {integrity: sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==}
1881
1882
emoji-regex@8.0.0:
1883
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
···
2101
lodash.sortby@4.7.0:
2102
resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==}
2103
2104
-
lodash@4.17.21:
2105
-
resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
2106
2107
-
lru-cache@11.2.4:
2108
-
resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==}
2109
engines: {node: 20 || >=22}
2110
2111
lru-cache@5.1.1:
···
2114
magic-string@0.25.9:
2115
resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
2116
2117
-
mediabunny@1.29.0:
2118
-
resolution: {integrity: sha512-18B8w/rhO/ph/AFsIXvzZg8RaSQZ+ZYfJ99MZlTjDmlgCT58jV3azrnWQ/OSquYDi8q0xmn64mnfTEHgww3+zw==}
2119
2120
merge-anything@5.1.7:
2121
resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==}
···
2129
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
2130
engines: {node: '>=8.6'}
2131
2132
-
miniflare@4.20260114.0:
2133
-
resolution: {integrity: sha512-QwHT7S6XqGdQxIvql1uirH/7/i3zDEt0B/YBXTYzMfJtVCR4+ue3KPkU+Bl0zMxvpgkvjh9+eCHhJbKEqya70A==}
2134
engines: {node: '>=18.0.0'}
2135
hasBin: true
2136
···
2275
resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
2276
engines: {node: ^10 || ^12 || >=14}
2277
2278
-
prettier@3.8.0:
2279
-
resolution: {integrity: sha512-yEPsovQfpxYfgWNhCfECjG5AQaO+K3dp6XERmOepyPDVqcJm+bjyCVO3pmU+nAPe0N5dDvekfGezt/EIiRe1TA==}
2280
engines: {node: '>=14'}
2281
hasBin: true
2282
···
2344
engines: {node: '>=10.0.0'}
2345
hasBin: true
2346
2347
-
rollup@4.55.2:
2348
-
resolution: {integrity: sha512-PggGy4dhwx5qaW+CKBilA/98Ql9keyfnb7lh4SR6shQ91QQQi1ORJ1v4UinkdP2i87OBs9AQFooQylcrrRfIcg==}
2349
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
2350
hasBin: true
2351
···
2364
serialize-javascript@6.0.2:
2365
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
2366
2367
-
seroval-plugins@1.3.3:
2368
-
resolution: {integrity: sha512-16OL3NnUBw8JG1jBLUoZJsLnQq0n5Ua6aHalhJK4fMQkz1lqR7Osz1sA30trBtd9VUDc2NgkuRCn8+/pBwqZ+w==}
2369
engines: {node: '>=10'}
2370
peerDependencies:
2371
seroval: ^1.0
2372
2373
-
seroval@1.3.2:
2374
-
resolution: {integrity: sha512-RbcPH1n5cfwKrru7v7+zrZvjLurgHhGyso3HTyGtRivGWgYjbOmGuivCQaORNELjNONoK35nj28EoWul9sb1zQ==}
2375
engines: {node: '>=10'}
2376
2377
sharp@0.34.5:
···
2400
'@floating-ui/dom': ^1.0
2401
solid-js: ^1.3
2402
2403
-
solid-js@1.9.10:
2404
-
resolution: {integrity: sha512-Coz956cos/EPDlhs6+jsdTxKuJDPT7B5SVIWgABwROyxjY7Xbr8wkzD68Et+NxnV7DLJ3nJdAC2r9InuV/4Jew==}
2405
2406
solid-refresh@0.6.3:
2407
resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==}
···
2523
undici-types@7.16.0:
2524
resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==}
2525
2526
-
undici@7.14.0:
2527
-
resolution: {integrity: sha512-Vqs8HTzjpQXZeXdpsfChQTlafcMQaaIwnGwLam1wudSSjlJeQ3bw1j+TLPePgrCnCpUXx7Ba5Pdpf5OBih62NQ==}
2528
engines: {node: '>=20.18.1'}
2529
2530
unenv@2.0.0-rc.24:
···
2698
workbox-window@7.4.0:
2699
resolution: {integrity: sha512-/bIYdBLAVsNR3v7gYGaV4pQW3M3kEPx5E8vDxGvxo6khTrGtSSCS7QiFKv9ogzBgZiy0OXLP9zO28U/1nF1mfw==}
2700
2701
-
workerd@1.20260114.0:
2702
-
resolution: {integrity: sha512-kTJ+jNdIllOzWuVA3NRQRvywP0T135zdCjAE2dAUY1BFbxM6fmMZV8BbskEoQ4hAODVQUfZQmyGctcwvVCKxFA==}
2703
engines: {node: '>=16'}
2704
hasBin: true
2705
2706
-
wrangler@4.59.2:
2707
-
resolution: {integrity: sha512-Z4xn6jFZTaugcOKz42xvRAYKgkVUERHVbuCJ5+f+gK+R6k12L02unakPGOA0L0ejhUl16dqDjKe4tmL9sedHcw==}
2708
engines: {node: '>=20.0.0'}
2709
hasBin: true
2710
peerDependencies:
2711
-
'@cloudflare/workers-types': ^4.20260114.0
2712
peerDependenciesMeta:
2713
'@cloudflare/workers-types':
2714
optional: true
···
2742
youch@4.1.0-beta.10:
2743
resolution: {integrity: sha512-rLfVLB4FgQneDr0dv1oddCVZmKjcJ6yX6mS4pU82Mq/Dt9a3cLZQ62pDBL4AUO+uVrCvtWz3ZFUL2HFAFJ/BXQ==}
2744
2745
-
zod@3.25.76:
2746
-
resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
2747
-
2748
snapshots:
2749
2750
'@alloc/quick-lru@5.2.0': {}
···
2758
2759
'@atcute/atproto@3.1.10':
2760
dependencies:
2761
-
'@atcute/lexicons': 1.2.6
2762
2763
'@atcute/bluemoji@3.1.3':
2764
dependencies:
2765
'@atcute/atproto': 3.1.10
2766
-
'@atcute/bluesky': 3.2.15
2767
-
'@atcute/lexicons': 1.2.6
2768
2769
'@atcute/bluesky-richtext-parser@1.0.7': {}
2770
···
2772
2773
'@atcute/bluesky-search-parser@0.1.1': {}
2774
2775
-
'@atcute/bluesky@3.2.15':
2776
dependencies:
2777
'@atcute/atproto': 3.1.10
2778
-
'@atcute/lexicons': 1.2.6
2779
2780
'@atcute/cbor@2.3.0':
2781
dependencies:
2782
'@atcute/cid': 2.4.0
2783
-
'@atcute/multibase': 1.1.6
2784
-
'@atcute/uint8array': 1.0.6
2785
2786
'@atcute/cid@2.4.0':
2787
dependencies:
2788
-
'@atcute/multibase': 1.1.6
2789
-
'@atcute/uint8array': 1.0.6
2790
2791
'@atcute/client@4.2.1':
2792
dependencies:
2793
'@atcute/identity': 1.1.3
2794
-
'@atcute/lexicons': 1.2.6
2795
2796
'@atcute/crypto@2.3.0':
2797
dependencies:
2798
-
'@atcute/multibase': 1.1.6
2799
-
'@atcute/uint8array': 1.0.6
2800
'@noble/secp256k1': 3.0.0
2801
2802
'@atcute/identity-resolver@1.2.2(@atcute/identity@1.1.3)':
2803
dependencies:
2804
'@atcute/identity': 1.1.3
2805
-
'@atcute/lexicons': 1.2.6
2806
'@atcute/util-fetch': 1.0.5
2807
'@badrap/valita': 0.4.6
2808
2809
'@atcute/identity@1.1.3':
2810
dependencies:
2811
-
'@atcute/lexicons': 1.2.6
2812
'@badrap/valita': 0.4.6
2813
2814
-
'@atcute/lexicons@1.2.6':
2815
dependencies:
2816
-
'@atcute/uint8array': 1.0.6
2817
-
'@atcute/util-text': 0.0.1
2818
'@standard-schema/spec': 1.1.0
2819
esm-env: 1.2.2
2820
2821
-
'@atcute/multibase@1.1.6':
2822
dependencies:
2823
-
'@atcute/uint8array': 1.0.6
2824
2825
-
'@atcute/oauth-browser-client@2.0.3(@atcute/identity@1.1.3)':
2826
dependencies:
2827
'@atcute/client': 4.2.1
2828
'@atcute/identity-resolver': 1.2.2(@atcute/identity@1.1.3)
2829
-
'@atcute/lexicons': 1.2.6
2830
-
'@atcute/multibase': 1.1.6
2831
-
'@atcute/uint8array': 1.0.6
0
2832
nanoid: 5.1.6
2833
transitivePeerDependencies:
2834
- '@atcute/identity'
2835
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2836
'@atcute/tid@1.1.1':
2837
dependencies:
2838
'@atcute/time-ms': 1.2.0
2839
2840
'@atcute/time-ms@1.2.0':
2841
dependencies:
2842
-
'@types/bun': 1.3.6
2843
node-gyp-build: 4.8.4
2844
2845
-
'@atcute/uint8array@1.0.6': {}
2846
2847
'@atcute/util-fetch@1.0.5':
2848
dependencies:
2849
'@badrap/valita': 0.4.6
2850
2851
-
'@atcute/util-text@0.0.1':
2852
dependencies:
2853
unicode-segmenter: 0.14.5
2854
2855
-
'@atcute/xrpc-server@0.1.8':
2856
dependencies:
2857
'@atcute/cbor': 2.3.0
2858
'@atcute/crypto': 2.3.0
2859
'@atcute/identity': 1.1.3
2860
'@atcute/identity-resolver': 1.2.2(@atcute/identity@1.1.3)
2861
-
'@atcute/lexicons': 1.2.6
2862
-
'@atcute/multibase': 1.1.6
2863
-
'@atcute/uint8array': 1.0.6
2864
'@badrap/valita': 0.4.6
2865
nanoid: 5.1.6
2866
···
2943
regexpu-core: 6.4.0
2944
semver: 6.3.1
2945
2946
-
'@babel/helper-define-polyfill-provider@0.6.5(@babel/core@7.28.6)':
2947
dependencies:
2948
'@babel/core': 7.28.6
2949
'@babel/helper-compilation-targets': 7.28.6
···
3498
'@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.6)
3499
'@babel/plugin-transform-unicode-sets-regex': 7.28.6(@babel/core@7.28.6)
3500
'@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.6)
3501
-
babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.6)
3502
babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.6)
3503
-
babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.6)
3504
-
core-js-compat: 3.47.0
3505
semver: 6.3.1
3506
transitivePeerDependencies:
3507
- supports-color
···
3542
3543
'@cloudflare/kv-asset-handler@0.4.2': {}
3544
3545
-
'@cloudflare/unenv-preset@2.10.0(unenv@2.0.0-rc.24)(workerd@1.20260114.0)':
3546
dependencies:
3547
unenv: 2.0.0-rc.24
3548
optionalDependencies:
3549
-
workerd: 1.20260114.0
3550
3551
-
'@cloudflare/vite-plugin@1.21.0(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))(workerd@1.20260114.0)(wrangler@4.59.2)':
3552
dependencies:
3553
-
'@cloudflare/unenv-preset': 2.10.0(unenv@2.0.0-rc.24)(workerd@1.20260114.0)
3554
-
miniflare: 4.20260114.0
3555
unenv: 2.0.0-rc.24
3556
vite: 7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0)
3557
-
wrangler: 4.59.2
3558
ws: 8.18.0
3559
transitivePeerDependencies:
3560
- bufferutil
3561
- utf-8-validate
3562
- workerd
3563
3564
-
'@cloudflare/workerd-darwin-64@1.20260114.0':
3565
optional: true
3566
3567
-
'@cloudflare/workerd-darwin-arm64@1.20260114.0':
3568
optional: true
3569
3570
-
'@cloudflare/workerd-linux-64@1.20260114.0':
3571
optional: true
3572
3573
-
'@cloudflare/workerd-linux-arm64@1.20260114.0':
3574
optional: true
3575
3576
-
'@cloudflare/workerd-windows-64@1.20260114.0':
3577
optional: true
3578
3579
'@cspotcode/source-map-support@0.8.1':
···
3741
'@esbuild/win32-x64@0.27.2':
3742
optional: true
3743
3744
-
'@externdefs/solid-freeze@0.1.1(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))':
3745
dependencies:
3746
-
solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
3747
3748
-
'@externdefs/solid-query@0.1.5(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))':
3749
dependencies:
3750
'@tanstack/query-core': 5.17.19(patch_hash=0b06407b66b7af88765fb6e01e112677a8c09ce518cb4f547cee8a0044471acd)
3751
-
solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
3752
3753
-
'@floating-ui/core@1.7.3':
3754
dependencies:
3755
'@floating-ui/utils': 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)
3756
3757
-
'@floating-ui/dom@1.7.4':
3758
dependencies:
3759
-
'@floating-ui/core': 1.7.3
3760
'@floating-ui/utils': 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)
3761
3762
'@floating-ui/utils@0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)': {}
···
3915
3916
'@kelinci/basa-lexicons@1.0.0':
3917
dependencies:
3918
-
'@atcute/lexicons': 1.2.6
3919
3920
'@noble/secp256k1@3.0.0': {}
3921
···
4027
optionalDependencies:
4028
rollup: 2.79.2
4029
4030
-
'@rollup/rollup-android-arm-eabi@4.55.2':
4031
optional: true
4032
4033
-
'@rollup/rollup-android-arm64@4.55.2':
4034
optional: true
4035
4036
-
'@rollup/rollup-darwin-arm64@4.55.2':
4037
optional: true
4038
4039
-
'@rollup/rollup-darwin-x64@4.55.2':
4040
optional: true
4041
4042
-
'@rollup/rollup-freebsd-arm64@4.55.2':
4043
optional: true
4044
4045
-
'@rollup/rollup-freebsd-x64@4.55.2':
4046
optional: true
4047
4048
-
'@rollup/rollup-linux-arm-gnueabihf@4.55.2':
4049
optional: true
4050
4051
-
'@rollup/rollup-linux-arm-musleabihf@4.55.2':
4052
optional: true
4053
4054
-
'@rollup/rollup-linux-arm64-gnu@4.55.2':
4055
optional: true
4056
4057
-
'@rollup/rollup-linux-arm64-musl@4.55.2':
4058
optional: true
4059
4060
-
'@rollup/rollup-linux-loong64-gnu@4.55.2':
4061
optional: true
4062
4063
-
'@rollup/rollup-linux-loong64-musl@4.55.2':
4064
optional: true
4065
4066
-
'@rollup/rollup-linux-ppc64-gnu@4.55.2':
4067
optional: true
4068
4069
-
'@rollup/rollup-linux-ppc64-musl@4.55.2':
4070
optional: true
4071
4072
-
'@rollup/rollup-linux-riscv64-gnu@4.55.2':
4073
optional: true
4074
4075
-
'@rollup/rollup-linux-riscv64-musl@4.55.2':
4076
optional: true
4077
4078
-
'@rollup/rollup-linux-s390x-gnu@4.55.2':
4079
optional: true
4080
4081
-
'@rollup/rollup-linux-x64-gnu@4.55.2':
4082
optional: true
4083
4084
-
'@rollup/rollup-linux-x64-musl@4.55.2':
4085
optional: true
4086
4087
-
'@rollup/rollup-openbsd-x64@4.55.2':
4088
optional: true
4089
4090
-
'@rollup/rollup-openharmony-arm64@4.55.2':
4091
optional: true
4092
4093
-
'@rollup/rollup-win32-arm64-msvc@4.55.2':
4094
optional: true
4095
4096
-
'@rollup/rollup-win32-ia32-msvc@4.55.2':
4097
optional: true
4098
4099
-
'@rollup/rollup-win32-x64-gnu@4.55.2':
4100
optional: true
4101
4102
-
'@rollup/rollup-win32-x64-msvc@4.55.2':
4103
optional: true
4104
4105
'@sindresorhus/is@7.2.0': {}
···
4138
dependencies:
4139
'@babel/types': 7.28.6
4140
4141
-
'@types/bun@1.3.6':
4142
dependencies:
4143
-
bun-types: 1.3.6
4144
4145
'@types/dom-close-watcher@1.0.0': {}
4146
···
4199
autoprefixer@10.4.23(postcss@8.5.6):
4200
dependencies:
4201
browserslist: 4.28.1
4202
-
caniuse-lite: 1.0.30001765
4203
fraction.js: 5.3.4
4204
picocolors: 1.1.1
4205
postcss: 8.5.6
···
4214
html-entities: 2.3.3
4215
parse5: 7.3.0
4216
4217
-
babel-plugin-polyfill-corejs2@0.4.14(@babel/core@7.28.6):
4218
dependencies:
4219
'@babel/compat-data': 7.28.6
4220
'@babel/core': 7.28.6
4221
-
'@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.6)
4222
semver: 6.3.1
4223
transitivePeerDependencies:
4224
- supports-color
···
4226
babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.28.6):
4227
dependencies:
4228
'@babel/core': 7.28.6
4229
-
'@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.6)
4230
-
core-js-compat: 3.47.0
4231
transitivePeerDependencies:
4232
- supports-color
4233
4234
-
babel-plugin-polyfill-regenerator@0.6.5(@babel/core@7.28.6):
4235
dependencies:
4236
'@babel/core': 7.28.6
4237
-
'@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.6)
4238
transitivePeerDependencies:
4239
- supports-color
4240
···
4244
'@babel/helper-plugin-utils': 7.28.6
4245
'@babel/types': 7.28.6
4246
4247
-
babel-preset-solid@1.9.10(@babel/core@7.28.6)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)):
4248
dependencies:
4249
'@babel/core': 7.28.6
4250
babel-plugin-jsx-dom-expressions: 0.40.3(@babel/core@7.28.6)
4251
optionalDependencies:
4252
-
solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
4253
4254
balanced-match@1.0.2: {}
4255
4256
-
baseline-browser-mapping@2.9.16: {}
4257
4258
binary-extensions@2.3.0: {}
4259
···
4271
4272
browserslist@4.28.1:
4273
dependencies:
4274
-
baseline-browser-mapping: 2.9.16
4275
-
caniuse-lite: 1.0.30001765
4276
-
electron-to-chromium: 1.5.267
4277
node-releases: 2.0.27
4278
update-browserslist-db: 1.2.3(browserslist@4.28.1)
4279
4280
buffer-from@1.1.2: {}
4281
4282
-
bun-types@1.3.6:
4283
dependencies:
4284
'@types/node': 24.10.9
4285
4286
camelcase-css@2.0.1: {}
4287
4288
-
caniuse-lite@1.0.30001765: {}
4289
4290
chokidar@3.6.0:
4291
dependencies:
···
4317
4318
cookie@1.1.1: {}
4319
4320
-
core-js-compat@3.47.0:
4321
dependencies:
4322
browserslist: 4.28.1
4323
···
4351
dependencies:
4352
jake: 10.9.4
4353
4354
-
electron-to-chromium@1.5.267: {}
4355
4356
emoji-regex@8.0.0: {}
4357
···
4573
4574
lodash.sortby@4.7.0: {}
4575
4576
-
lodash@4.17.21: {}
4577
4578
-
lru-cache@11.2.4: {}
4579
4580
lru-cache@5.1.1:
4581
dependencies:
···
4585
dependencies:
4586
sourcemap-codec: 1.4.8
4587
4588
-
mediabunny@1.29.0:
4589
dependencies:
4590
'@types/dom-mediacapture-transform': 0.1.11
4591
'@types/dom-webcodecs': 0.1.13
···
4601
braces: 3.0.3
4602
picomatch: 2.3.1
4603
4604
-
miniflare@4.20260114.0:
4605
dependencies:
4606
'@cspotcode/source-map-support': 0.8.1
4607
sharp: 0.34.5
4608
-
undici: 7.14.0
4609
-
workerd: 1.20260114.0
4610
ws: 8.18.0
4611
youch: 4.1.0-beta.10
4612
-
zod: 3.25.76
4613
transitivePeerDependencies:
4614
- bufferutil
4615
- utf-8-validate
···
4671
4672
path-scurry@2.0.1:
4673
dependencies:
4674
-
lru-cache: 11.2.4
4675
minipass: 7.1.2
4676
4677
path-to-regexp@6.3.0: {}
···
4725
picocolors: 1.1.1
4726
source-map-js: 1.2.1
4727
4728
-
prettier@3.8.0: {}
4729
4730
pretty-bytes@5.6.0: {}
4731
···
4784
optionalDependencies:
4785
fsevents: 2.3.3
4786
4787
-
rollup@4.55.2:
4788
dependencies:
4789
'@types/estree': 1.0.8
4790
optionalDependencies:
4791
-
'@rollup/rollup-android-arm-eabi': 4.55.2
4792
-
'@rollup/rollup-android-arm64': 4.55.2
4793
-
'@rollup/rollup-darwin-arm64': 4.55.2
4794
-
'@rollup/rollup-darwin-x64': 4.55.2
4795
-
'@rollup/rollup-freebsd-arm64': 4.55.2
4796
-
'@rollup/rollup-freebsd-x64': 4.55.2
4797
-
'@rollup/rollup-linux-arm-gnueabihf': 4.55.2
4798
-
'@rollup/rollup-linux-arm-musleabihf': 4.55.2
4799
-
'@rollup/rollup-linux-arm64-gnu': 4.55.2
4800
-
'@rollup/rollup-linux-arm64-musl': 4.55.2
4801
-
'@rollup/rollup-linux-loong64-gnu': 4.55.2
4802
-
'@rollup/rollup-linux-loong64-musl': 4.55.2
4803
-
'@rollup/rollup-linux-ppc64-gnu': 4.55.2
4804
-
'@rollup/rollup-linux-ppc64-musl': 4.55.2
4805
-
'@rollup/rollup-linux-riscv64-gnu': 4.55.2
4806
-
'@rollup/rollup-linux-riscv64-musl': 4.55.2
4807
-
'@rollup/rollup-linux-s390x-gnu': 4.55.2
4808
-
'@rollup/rollup-linux-x64-gnu': 4.55.2
4809
-
'@rollup/rollup-linux-x64-musl': 4.55.2
4810
-
'@rollup/rollup-openbsd-x64': 4.55.2
4811
-
'@rollup/rollup-openharmony-arm64': 4.55.2
4812
-
'@rollup/rollup-win32-arm64-msvc': 4.55.2
4813
-
'@rollup/rollup-win32-ia32-msvc': 4.55.2
4814
-
'@rollup/rollup-win32-x64-gnu': 4.55.2
4815
-
'@rollup/rollup-win32-x64-msvc': 4.55.2
4816
fsevents: 2.3.3
4817
4818
run-parallel@1.2.0:
···
4827
dependencies:
4828
randombytes: 2.1.0
4829
4830
-
seroval-plugins@1.3.3(seroval@1.3.2):
4831
dependencies:
4832
-
seroval: 1.3.2
4833
4834
-
seroval@1.3.2: {}
4835
4836
sharp@0.34.5:
4837
dependencies:
···
4874
4875
smob@1.5.0: {}
4876
4877
-
solid-floating-ui@0.2.1(@floating-ui/dom@1.7.4)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)):
4878
dependencies:
4879
-
'@floating-ui/dom': 1.7.4
4880
-
solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
4881
4882
-
solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7):
4883
dependencies:
4884
csstype: 3.2.3
4885
-
seroval: 1.3.2
4886
-
seroval-plugins: 1.3.3(seroval@1.3.2)
4887
4888
-
solid-refresh@0.6.3(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)):
4889
dependencies:
4890
'@babel/generator': 7.28.6
4891
'@babel/helper-module-imports': 7.28.6
4892
'@babel/types': 7.28.6
4893
-
solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
4894
transitivePeerDependencies:
4895
- supports-color
4896
···
5029
5030
undici-types@7.16.0: {}
5031
5032
-
undici@7.14.0: {}
5033
5034
unenv@2.0.0-rc.24:
5035
dependencies:
···
5076
- '@types/babel__core'
5077
- supports-color
5078
5079
-
vite-plugin-solid@2.11.10(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0)):
5080
dependencies:
5081
'@babel/core': 7.28.6
5082
'@types/babel__core': 7.20.5
5083
-
babel-preset-solid: 1.9.10(@babel/core@7.28.6)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))
5084
merge-anything: 5.1.7
5085
-
solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
5086
-
solid-refresh: 0.6.3(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))
5087
vite: 7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0)
5088
vitefu: 1.1.1(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))
5089
transitivePeerDependencies:
···
5095
fdir: 6.5.0(picomatch@4.0.3)
5096
picomatch: 4.0.3
5097
postcss: 8.5.6
5098
-
rollup: 4.55.2
5099
tinyglobby: 0.2.15
5100
optionalDependencies:
5101
'@types/node': 24.10.9
···
5144
fast-json-stable-stringify: 2.1.0
5145
fs-extra: 9.1.0
5146
glob: 11.1.0
5147
-
lodash: 4.17.21
5148
pretty-bytes: 5.6.0
5149
rollup: 2.79.2
5150
source-map: 0.8.0-beta.0
···
5232
'@types/trusted-types': 2.0.7
5233
workbox-core: 7.4.0
5234
5235
-
workerd@1.20260114.0:
5236
optionalDependencies:
5237
-
'@cloudflare/workerd-darwin-64': 1.20260114.0
5238
-
'@cloudflare/workerd-darwin-arm64': 1.20260114.0
5239
-
'@cloudflare/workerd-linux-64': 1.20260114.0
5240
-
'@cloudflare/workerd-linux-arm64': 1.20260114.0
5241
-
'@cloudflare/workerd-windows-64': 1.20260114.0
5242
5243
-
wrangler@4.59.2:
5244
dependencies:
5245
'@cloudflare/kv-asset-handler': 0.4.2
5246
-
'@cloudflare/unenv-preset': 2.10.0(unenv@2.0.0-rc.24)(workerd@1.20260114.0)
5247
blake3-wasm: 2.1.5
5248
esbuild: 0.27.0
5249
-
miniflare: 4.20260114.0
5250
path-to-regexp: 6.3.0
5251
unenv: 2.0.0-rc.24
5252
-
workerd: 1.20260114.0
5253
optionalDependencies:
5254
fsevents: 2.3.3
5255
transitivePeerDependencies:
···
5284
'@speed-highlight/core': 1.2.14
5285
cookie: 1.1.1
5286
youch-core: 0.3.3
5287
-
5288
-
zod@3.25.76: {}
···
37
specifier: ^3.1.3
38
version: 3.1.3
39
'@atcute/bluesky':
40
+
specifier: ^3.2.16
41
+
version: 3.2.16
42
'@atcute/bluesky-richtext-parser':
43
specifier: ^1.0.7
44
version: 1.0.7
···
64
specifier: ^1.2.2
65
version: 1.2.2(@atcute/identity@1.1.3)
66
'@atcute/lexicons':
67
+
specifier: ^1.2.7
68
+
version: 1.2.7
69
'@atcute/multibase':
70
+
specifier: ^1.1.7
71
+
version: 1.1.7
72
'@atcute/oauth-browser-client':
73
+
specifier: ^3.0.0
74
+
version: 3.0.0(@atcute/identity@1.1.3)
75
+
'@atcute/oauth-crypto':
76
+
specifier: ^0.1.0
77
+
version: 0.1.0
78
'@atcute/tid':
79
specifier: ^1.1.1
80
version: 1.1.1
81
'@atcute/uint8array':
82
+
specifier: ^1.1.0
83
+
version: 1.1.0
84
'@atcute/xrpc-server':
85
+
specifier: ^0.1.9
86
+
version: 0.1.9
87
'@atlaskit/pragmatic-drag-and-drop':
88
specifier: 1.6.0
89
version: 1.6.0
···
91
specifier: 1.0.3
92
version: 1.0.3
93
'@floating-ui/dom':
94
+
specifier: ^1.7.5
95
+
version: 1.7.5
96
'@floating-ui/utils':
97
specifier: ^0.2.10
98
version: 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)
···
119
version: '@jsr/mary__exif-rm@0.2.2'
120
'@mary/solid-freeze':
121
specifier: npm:@externdefs/solid-freeze@^0.1.1
122
+
version: '@externdefs/solid-freeze@0.1.1(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))'
123
'@mary/solid-query':
124
specifier: npm:@externdefs/solid-query@^0.1.5
125
+
version: '@externdefs/solid-query@0.1.5(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))'
126
comlink:
127
specifier: ^4.4.2
128
version: 4.4.2
···
130
specifier: ^1.6.15
131
version: 1.6.15
132
mediabunny:
133
+
specifier: ^1.31.0
134
+
version: 1.31.0
135
nanoid:
136
specifier: ^5.1.6
137
version: 5.1.6
138
solid-floating-ui:
139
specifier: ~0.2.1
140
+
version: 0.2.1(@floating-ui/dom@1.7.5)(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))
141
solid-js:
142
+
specifier: ^1.9.11
143
+
version: 1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
144
devDependencies:
145
'@badrap/valita':
146
specifier: ^0.4.6
147
version: 0.4.6
148
'@cloudflare/vite-plugin':
149
+
specifier: ^1.22.1
150
+
version: 1.22.1(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))(workerd@1.20260128.0)(wrangler@4.61.1)
151
'@types/dom-close-watcher':
152
specifier: ^1.0.0
153
version: 1.0.0
···
167
specifier: ^0.26.0
168
version: 0.26.0
169
prettier:
170
+
specifier: ^3.8.1
171
+
version: 3.8.1
172
tailwindcss:
173
specifier: ^3.4.19
174
version: 3.4.19
···
186
version: 1.1.0(patch_hash=003379ded749ad87080f87b428b17f04c4c88b6b64544df4d928aab76fbf6325)(@types/babel__core@7.20.5)(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))
187
vite-plugin-solid:
188
specifier: ^2.11.10
189
+
version: 2.11.10(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))
190
wrangler:
191
+
specifier: ^4.61.1
192
+
version: 4.61.1
193
194
packages:
195
···
218
'@atcute/bluesky-search-parser@0.1.1':
219
resolution: {integrity: sha512-jX01yzA4CWXfnpAmOL5P9kjpWEhVvIq2xEyYLZdFVpYe1v6xclUem1ir+Q8+aWoAcYwqQq6pM16XxkGw0yi5nA==}
220
221
+
'@atcute/bluesky@3.2.16':
222
+
resolution: {integrity: sha512-phFAJNE+SCkIbCcgzjFxntS2KpGvzkLw0JA9qKIXlueF4wNreEt/D5HjnB5eRR9pV1/kcD94II9f7ZAwarf0lQ==}
223
224
'@atcute/cbor@2.3.0':
225
resolution: {integrity: sha512-7G2AndkfYzIXMBOBqUPUWP6oIJJm77KY5nYzS4Mr5NNxnmnrBrXEQqp+seCE3X5TV8FUSWQK5YRTU87uPjafMQ==}
···
241
'@atcute/identity@1.1.3':
242
resolution: {integrity: sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng==}
243
244
+
'@atcute/lexicons@1.2.7':
245
+
resolution: {integrity: sha512-gCvkSMI1F1zx7xXa59iPiSKMH3L5Hga6iurGqQjaQbE2V/np/2QuDqQzt96TNbWfaFAXE9f9oY+0z3ljf/bweA==}
246
+
247
+
'@atcute/multibase@1.1.7':
248
+
resolution: {integrity: sha512-YmWds7U52b7Qri0xNfGeqSOvgyNfHR8Yy/NNDQx4d5TkCX2fHJIo0pXquEhCyMNAwKt53uH5yQDswy4TNP1Zhw==}
249
+
250
+
'@atcute/oauth-browser-client@3.0.0':
251
+
resolution: {integrity: sha512-7AbKV8tTe7aRJNJV7gCcWHSVEADb2nr58O1p7dQsf73HSe9pvlBkj/Vk1yjjtH691uAVYkwhHSh0bC7D8XdwJw==}
252
+
253
+
'@atcute/oauth-crypto@0.1.0':
254
+
resolution: {integrity: sha512-qZYDCNLF/4B6AndYT1rsQelN8621AC5u/sL5PHvlr/qqAbmmUwCBGjEgRSyZtHE1AqD60VNiSMlOgAuEQTSl3w==}
255
256
+
'@atcute/oauth-keyset@0.1.0':
257
+
resolution: {integrity: sha512-+wqT/+I5Lg9VzKnKY3g88+N45xbq+wsdT6bHDGqCVa2u57gRvolFF4dY+weMfc/OX641BIZO6/o+zFtKBsMQnQ==}
258
259
+
'@atcute/oauth-types@0.1.0':
260
+
resolution: {integrity: sha512-bAuhgizREKSZghI1Re8Nw/GI6troJ/nwTsDlEwr4HnRKnk0hTc61Igl4y09MG3znOoHOtWIdEnO4zR7pN11BaA==}
261
262
'@atcute/tid@1.1.1':
263
resolution: {integrity: sha512-djJ8UGhLkTU5V51yCnBEruMg35qETjWzWy5sJG/2gEOl2Gd7rQWHSaf+yrO6vMS5EFA38U2xOWE3EDUPzvc2ZQ==}
···
265
'@atcute/time-ms@1.2.0':
266
resolution: {integrity: sha512-dtNKebVIbr1+yu3a6vgtL4sfkNgxkL3aA+ohHsjtW83WWMjjGvX8GVTVmYCJ2dYSxIoxK0q1yWs11PmlqzmQ/A==}
267
268
+
'@atcute/uint8array@1.1.0':
269
+
resolution: {integrity: sha512-JtHXIVW6LPU9FMWp7SgE4HbUs3uV2WdfkK/2RWdEGjr4EgMV50P3FdU6fPeGlTfDNBJVYMIsuD2wwaKRPV/Aqg==}
270
271
'@atcute/util-fetch@1.0.5':
272
resolution: {integrity: sha512-qjHj01BGxjSjIFdPiAjSARnodJIIyKxnCMMEcXMESo9TAyND6XZQqrie5fia+LlYWVXdpsTds8uFQwc9jdKTig==}
273
274
+
'@atcute/util-text@1.1.0':
275
+
resolution: {integrity: sha512-34G9KD5Z9f7oEdFpZOmqrMnU86p8ne6LlxJowfZzKNszRcl1GH+FtEPh3N1woelJT2SkPXMK2anwT8DESTluwA==}
276
277
+
'@atcute/xrpc-server@0.1.9':
278
+
resolution: {integrity: sha512-sIgHeLIezIiaDT3eCwHpUfMOHoU2MP3izwmItqvXalMBGrR3qF35m2+3YDXOAxLqyTI1RSuQOk3SD3zLZx53gA==}
279
280
'@atlaskit/pragmatic-drag-and-drop-hitbox@1.0.3':
281
resolution: {integrity: sha512-/Sbu/HqN2VGLYBhnsG7SbRNg98XKkbF6L7XDdBi+izRybfaK1FeMfodPpm/xnBHPJzwYMdkE0qtLyv6afhgMUA==}
···
319
peerDependencies:
320
'@babel/core': ^7.0.0
321
322
+
'@babel/helper-define-polyfill-provider@0.6.6':
323
+
resolution: {integrity: sha512-mOAsxeeKkUKayvZR3HeTYD/fICpCPLJrU5ZjelT/PA6WHtNDBOE436YiaEUvHN454bRM3CebhDsIpieCc4texA==}
324
peerDependencies:
325
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
326
···
796
resolution: {integrity: sha512-SIOD2DxrRRwQ+jgzlXCqoEFiKOFqaPjhnNTGKXSRLvp1HiOvapLaFG2kEr9dYQTYe8rKrd9uvDUzmAITeNyaHQ==}
797
engines: {node: '>=18.0.0'}
798
799
+
'@cloudflare/unenv-preset@2.12.0':
800
+
resolution: {integrity: sha512-NK4vN+2Z/GbfGS4BamtbbVk1rcu5RmqaYGiyHJQrA09AoxdZPHDF3W/EhgI0YSK8p3vRo/VNCtbSJFPON7FWMQ==}
801
peerDependencies:
802
unenv: 2.0.0-rc.24
803
+
workerd: ^1.20260115.0
804
peerDependenciesMeta:
805
workerd:
806
optional: true
807
808
+
'@cloudflare/vite-plugin@1.22.1':
809
+
resolution: {integrity: sha512-RDWc6WtrdjVDfpBeO3MYcgJIbq+Phg9qBXq1Ixl00qPqM8bgKp9oPLhg8oayynQs8udNnqkV0CjfojvIhhfZWg==}
810
peerDependencies:
811
vite: ^6.1.0 || ^7.0.0
812
+
wrangler: ^4.61.1
813
814
+
'@cloudflare/workerd-darwin-64@1.20260128.0':
815
+
resolution: {integrity: sha512-XJN8zWWNG3JwAUqqwMLNKJ9fZfdlQkx/zTTHW/BB8wHat9LjKD6AzxqCu432YmfjR+NxEKCzUOxMu1YOxlVxmg==}
816
engines: {node: '>=16'}
817
cpu: [x64]
818
os: [darwin]
819
820
+
'@cloudflare/workerd-darwin-arm64@1.20260128.0':
821
+
resolution: {integrity: sha512-vKnRcmnm402GQ5DOdfT5H34qeR2m07nhnTtky8mTkNWP+7xmkz32AMdclwMmfO/iX9ncyKwSqmml2wPG32eq/w==}
822
engines: {node: '>=16'}
823
cpu: [arm64]
824
os: [darwin]
825
826
+
'@cloudflare/workerd-linux-64@1.20260128.0':
827
+
resolution: {integrity: sha512-RiaR+Qugof/c6oI5SagD2J5wJmIfI8wQWaV2Y9905Raj6sAYOFaEKfzkKnoLLLNYb4NlXicBrffJi1j7R/ypUA==}
828
engines: {node: '>=16'}
829
cpu: [x64]
830
os: [linux]
831
832
+
'@cloudflare/workerd-linux-arm64@1.20260128.0':
833
+
resolution: {integrity: sha512-U39U9vcXLXYDbrJ112Q7D0LDUUnM54oXfAxPgrL2goBwio7Z6RnsM25TRvm+Q06F4+FeDOC4D51JXlFHb9t1OA==}
834
engines: {node: '>=16'}
835
cpu: [arm64]
836
os: [linux]
837
838
+
'@cloudflare/workerd-windows-64@1.20260128.0':
839
+
resolution: {integrity: sha512-fdJwSqRkJsAJFJ7+jy0th2uMO6fwaDA8Ny6+iFCssfzlNkc4dP/twXo+3F66FMLMe/6NIqjzVts0cpiv7ERYbQ==}
840
engines: {node: '>=16'}
841
cpu: [x64]
842
os: [win32]
···
1170
peerDependencies:
1171
solid-js: ^1.8.5
1172
1173
+
'@floating-ui/core@1.7.4':
1174
+
resolution: {integrity: sha512-C3HlIdsBxszvm5McXlB8PeOEWfBhcGBTZGkGlWc2U0KFY5IwG5OQEuQ8rq52DZmcHDlPLd+YFBK+cZcytwIFWg==}
1175
1176
+
'@floating-ui/dom@1.7.5':
1177
+
resolution: {integrity: sha512-N0bD2kIPInNHUHehXhMke1rBGs1dwqvC9O9KYMyyjK7iXt7GAhnro7UlcuYcGdS/yYOlq0MAVgrow8IbWJwyqg==}
1178
1179
'@floating-ui/utils@0.2.10':
1180
resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==}
···
1499
rollup:
1500
optional: true
1501
1502
+
'@rollup/rollup-android-arm-eabi@4.57.0':
1503
+
resolution: {integrity: sha512-tPgXB6cDTndIe1ah7u6amCI1T0SsnlOuKgg10Xh3uizJk4e5M1JGaUMk7J4ciuAUcFpbOiNhm2XIjP9ON0dUqA==}
1504
cpu: [arm]
1505
os: [android]
1506
1507
+
'@rollup/rollup-android-arm64@4.57.0':
1508
+
resolution: {integrity: sha512-sa4LyseLLXr1onr97StkU1Nb7fWcg6niokTwEVNOO7awaKaoRObQ54+V/hrF/BP1noMEaaAW6Fg2d/CfLiq3Mg==}
1509
cpu: [arm64]
1510
os: [android]
1511
1512
+
'@rollup/rollup-darwin-arm64@4.57.0':
1513
+
resolution: {integrity: sha512-/NNIj9A7yLjKdmkx5dC2XQ9DmjIECpGpwHoGmA5E1AhU0fuICSqSWScPhN1yLCkEdkCwJIDu2xIeLPs60MNIVg==}
1514
cpu: [arm64]
1515
os: [darwin]
1516
1517
+
'@rollup/rollup-darwin-x64@4.57.0':
1518
+
resolution: {integrity: sha512-xoh8abqgPrPYPr7pTYipqnUi1V3em56JzE/HgDgitTqZBZ3yKCWI+7KUkceM6tNweyUKYru1UMi7FC060RyKwA==}
1519
cpu: [x64]
1520
os: [darwin]
1521
1522
+
'@rollup/rollup-freebsd-arm64@4.57.0':
1523
+
resolution: {integrity: sha512-PCkMh7fNahWSbA0OTUQ2OpYHpjZZr0hPr8lId8twD7a7SeWrvT3xJVyza+dQwXSSq4yEQTMoXgNOfMCsn8584g==}
1524
cpu: [arm64]
1525
os: [freebsd]
1526
1527
+
'@rollup/rollup-freebsd-x64@4.57.0':
1528
+
resolution: {integrity: sha512-1j3stGx+qbhXql4OCDZhnK7b01s6rBKNybfsX+TNrEe9JNq4DLi1yGiR1xW+nL+FNVvI4D02PUnl6gJ/2y6WJA==}
1529
cpu: [x64]
1530
os: [freebsd]
1531
1532
+
'@rollup/rollup-linux-arm-gnueabihf@4.57.0':
1533
+
resolution: {integrity: sha512-eyrr5W08Ms9uM0mLcKfM/Uzx7hjhz2bcjv8P2uynfj0yU8GGPdz8iYrBPhiLOZqahoAMB8ZiolRZPbbU2MAi6Q==}
1534
cpu: [arm]
1535
os: [linux]
1536
1537
+
'@rollup/rollup-linux-arm-musleabihf@4.57.0':
1538
+
resolution: {integrity: sha512-Xds90ITXJCNyX9pDhqf85MKWUI4lqjiPAipJ8OLp8xqI2Ehk+TCVhF9rvOoN8xTbcafow3QOThkNnrM33uCFQA==}
1539
cpu: [arm]
1540
os: [linux]
1541
1542
+
'@rollup/rollup-linux-arm64-gnu@4.57.0':
1543
+
resolution: {integrity: sha512-Xws2KA4CLvZmXjy46SQaXSejuKPhwVdaNinldoYfqruZBaJHqVo6hnRa8SDo9z7PBW5x84SH64+izmldCgbezw==}
1544
cpu: [arm64]
1545
os: [linux]
1546
1547
+
'@rollup/rollup-linux-arm64-musl@4.57.0':
1548
+
resolution: {integrity: sha512-hrKXKbX5FdaRJj7lTMusmvKbhMJSGWJ+w++4KmjiDhpTgNlhYobMvKfDoIWecy4O60K6yA4SnztGuNTQF+Lplw==}
1549
cpu: [arm64]
1550
os: [linux]
1551
1552
+
'@rollup/rollup-linux-loong64-gnu@4.57.0':
1553
+
resolution: {integrity: sha512-6A+nccfSDGKsPm00d3xKcrsBcbqzCTAukjwWK6rbuAnB2bHaL3r9720HBVZ/no7+FhZLz/U3GwwZZEh6tOSI8Q==}
1554
cpu: [loong64]
1555
os: [linux]
1556
1557
+
'@rollup/rollup-linux-loong64-musl@4.57.0':
1558
+
resolution: {integrity: sha512-4P1VyYUe6XAJtQH1Hh99THxr0GKMMwIXsRNOceLrJnaHTDgk1FTcTimDgneRJPvB3LqDQxUmroBclQ1S0cIJwQ==}
1559
cpu: [loong64]
1560
os: [linux]
1561
1562
+
'@rollup/rollup-linux-ppc64-gnu@4.57.0':
1563
+
resolution: {integrity: sha512-8Vv6pLuIZCMcgXre6c3nOPhE0gjz1+nZP6T+hwWjr7sVH8k0jRkH+XnfjjOTglyMBdSKBPPz54/y1gToSKwrSQ==}
1564
cpu: [ppc64]
1565
os: [linux]
1566
1567
+
'@rollup/rollup-linux-ppc64-musl@4.57.0':
1568
+
resolution: {integrity: sha512-r1te1M0Sm2TBVD/RxBPC6RZVwNqUTwJTA7w+C/IW5v9Ssu6xmxWEi+iJQlpBhtUiT1raJ5b48pI8tBvEjEFnFA==}
1569
cpu: [ppc64]
1570
os: [linux]
1571
1572
+
'@rollup/rollup-linux-riscv64-gnu@4.57.0':
1573
+
resolution: {integrity: sha512-say0uMU/RaPm3CDQLxUUTF2oNWL8ysvHkAjcCzV2znxBr23kFfaxocS9qJm+NdkRhF8wtdEEAJuYcLPhSPbjuQ==}
1574
cpu: [riscv64]
1575
os: [linux]
1576
1577
+
'@rollup/rollup-linux-riscv64-musl@4.57.0':
1578
+
resolution: {integrity: sha512-/MU7/HizQGsnBREtRpcSbSV1zfkoxSTR7wLsRmBPQ8FwUj5sykrP1MyJTvsxP5KBq9SyE6kH8UQQQwa0ASeoQQ==}
1579
cpu: [riscv64]
1580
os: [linux]
1581
1582
+
'@rollup/rollup-linux-s390x-gnu@4.57.0':
1583
+
resolution: {integrity: sha512-Q9eh+gUGILIHEaJf66aF6a414jQbDnn29zeu0eX3dHMuysnhTvsUvZTCAyZ6tJhUjnvzBKE4FtuaYxutxRZpOg==}
1584
cpu: [s390x]
1585
os: [linux]
1586
1587
+
'@rollup/rollup-linux-x64-gnu@4.57.0':
1588
+
resolution: {integrity: sha512-OR5p5yG5OKSxHReWmwvM0P+VTPMwoBS45PXTMYaskKQqybkS3Kmugq1W+YbNWArF8/s7jQScgzXUhArzEQ7x0A==}
1589
cpu: [x64]
1590
os: [linux]
1591
1592
+
'@rollup/rollup-linux-x64-musl@4.57.0':
1593
+
resolution: {integrity: sha512-XeatKzo4lHDsVEbm1XDHZlhYZZSQYym6dg2X/Ko0kSFgio+KXLsxwJQprnR48GvdIKDOpqWqssC3iBCjoMcMpw==}
1594
cpu: [x64]
1595
os: [linux]
1596
1597
+
'@rollup/rollup-openbsd-x64@4.57.0':
1598
+
resolution: {integrity: sha512-Lu71y78F5qOfYmubYLHPcJm74GZLU6UJ4THkf/a1K7Tz2ycwC2VUbsqbJAXaR6Bx70SRdlVrt2+n5l7F0agTUw==}
1599
cpu: [x64]
1600
os: [openbsd]
1601
1602
+
'@rollup/rollup-openharmony-arm64@4.57.0':
1603
+
resolution: {integrity: sha512-v5xwKDWcu7qhAEcsUubiav7r+48Uk/ENWdr82MBZZRIm7zThSxCIVDfb3ZeRRq9yqk+oIzMdDo6fCcA5DHfMyA==}
1604
cpu: [arm64]
1605
os: [openharmony]
1606
1607
+
'@rollup/rollup-win32-arm64-msvc@4.57.0':
1608
+
resolution: {integrity: sha512-XnaaaSMGSI6Wk8F4KK3QP7GfuuhjGchElsVerCplUuxRIzdvZ7hRBpLR0omCmw+kI2RFJB80nenhOoGXlJ5TfQ==}
1609
cpu: [arm64]
1610
os: [win32]
1611
1612
+
'@rollup/rollup-win32-ia32-msvc@4.57.0':
1613
+
resolution: {integrity: sha512-3K1lP+3BXY4t4VihLw5MEg6IZD3ojSYzqzBG571W3kNQe4G4CcFpSUQVgurYgib5d+YaCjeFow8QivWp8vuSvA==}
1614
cpu: [ia32]
1615
os: [win32]
1616
1617
+
'@rollup/rollup-win32-x64-gnu@4.57.0':
1618
+
resolution: {integrity: sha512-MDk610P/vJGc5L5ImE4k5s+GZT3en0KoK1MKPXCRgzmksAMk79j4h3k1IerxTNqwDLxsGxStEZVBqG0gIqZqoA==}
1619
cpu: [x64]
1620
os: [win32]
1621
1622
+
'@rollup/rollup-win32-x64-msvc@4.57.0':
1623
+
resolution: {integrity: sha512-Zv7v6q6aV+VslnpwzqKAmrk5JdVkLUzok2208ZXGipjb+msxBr/fJPZyeEXiFgH7k62Ak0SLIfxQRZQvTuf7rQ==}
1624
cpu: [x64]
1625
os: [win32]
1626
···
1652
'@types/babel__traverse@7.28.0':
1653
resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==}
1654
1655
+
'@types/bun@1.3.8':
1656
+
resolution: {integrity: sha512-3LvWJ2q5GerAXYxO2mffLTqOzEu5qnhEAlh48Vnu8WQfnmSwbgagjGZV6BoHKJztENYEDn6QmVd949W4uESRJA==}
1657
1658
'@types/dom-close-watcher@1.0.0':
1659
resolution: {integrity: sha512-7pL0By56sVVGMSJ3HdSY+u08Id0ljStCaf1VnGFxwfpuNdA0HMz0sl2J24eSi9M6ptl9ySkVK35jF75Fn8trUg==}
···
1735
peerDependencies:
1736
'@babel/core': ^7.20.12
1737
1738
+
babel-plugin-polyfill-corejs2@0.4.15:
1739
+
resolution: {integrity: sha512-hR3GwrRwHUfYwGfrisXPIDP3JcYfBrW7wKE7+Au6wDYl7fm/ka1NEII6kORzxNU556JjfidZeBsO10kYvtV1aw==}
1740
peerDependencies:
1741
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
1742
···
1745
peerDependencies:
1746
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
1747
1748
+
babel-plugin-polyfill-regenerator@0.6.6:
1749
+
resolution: {integrity: sha512-hYm+XLYRMvupxiQzrvXUj7YyvFFVfv5gI0R71AJzudg1g2AI2vyCPPIFEBjk162/wFzti3inBHo7isWFuEVS/A==}
1750
peerDependencies:
1751
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
1752
···
1767
balanced-match@1.0.2:
1768
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
1769
1770
+
baseline-browser-mapping@2.9.19:
1771
+
resolution: {integrity: sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==}
1772
hasBin: true
1773
1774
binary-extensions@2.3.0:
···
1796
buffer-from@1.1.2:
1797
resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
1798
1799
+
bun-types@1.3.8:
1800
+
resolution: {integrity: sha512-fL99nxdOWvV4LqjmC+8Q9kW3M4QTtTR1eePs94v5ctGqU8OeceWrSUaRw3JYb7tU3FkMIAjkueehrHPPPGKi5Q==}
1801
1802
camelcase-css@2.0.1:
1803
resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
1804
engines: {node: '>= 6'}
1805
1806
+
caniuse-lite@1.0.30001766:
1807
+
resolution: {integrity: sha512-4C0lfJ0/YPjJQHagaE9x2Elb69CIqEPZeG0anQt9SIvIoOH4a4uaRl73IavyO+0qZh6MDLH//DrXThEYKHkmYA==}
1808
1809
chokidar@3.6.0:
1810
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
···
1838
resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==}
1839
engines: {node: '>=18'}
1840
1841
+
core-js-compat@3.48.0:
1842
+
resolution: {integrity: sha512-OM4cAF3D6VtH/WkLtWvyNC56EZVXsZdU3iqaMG2B4WvYrlqU831pc4UtG5yp0sE9z8Y02wVN7PjW5Zf9Gt0f1Q==}
1843
1844
cross-spawn@7.0.6:
1845
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
···
1888
engines: {node: '>=0.10.0'}
1889
hasBin: true
1890
1891
+
electron-to-chromium@1.5.282:
1892
+
resolution: {integrity: sha512-FCPkJtpst28UmFzd903iU7PdeVTfY0KAeJy+Lk0GLZRwgwYHn/irRcaCbQQOmr5Vytc/7rcavsYLvTM8RiHYhQ==}
1893
1894
emoji-regex@8.0.0:
1895
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
···
2113
lodash.sortby@4.7.0:
2114
resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==}
2115
2116
+
lodash@4.17.23:
2117
+
resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==}
2118
2119
+
lru-cache@11.2.5:
2120
+
resolution: {integrity: sha512-vFrFJkWtJvJnD5hg+hJvVE8Lh/TcMzKnTgCWmtBipwI5yLX/iX+5UB2tfuyODF5E7k9xEzMdYgGqaSb1c0c5Yw==}
2121
engines: {node: 20 || >=22}
2122
2123
lru-cache@5.1.1:
···
2126
magic-string@0.25.9:
2127
resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
2128
2129
+
mediabunny@1.31.0:
2130
+
resolution: {integrity: sha512-nqM+6cOpNC/aDxCAZKnZe7oXnGaCn4rlgprzAmiH6C8GRdOHFnB6bZC0+WXGTT6mtAxXQd+BXuZ2q2zkma7dWg==}
2131
2132
merge-anything@5.1.7:
2133
resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==}
···
2141
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
2142
engines: {node: '>=8.6'}
2143
2144
+
miniflare@4.20260128.0:
2145
+
resolution: {integrity: sha512-AVCn3vDRY+YXu1sP4mRn81ssno6VUqxo29uY2QVfgxXU2TMLvhRIoGwm7RglJ3Gzfuidit5R86CMQ6AvdFTGAw==}
2146
engines: {node: '>=18.0.0'}
2147
hasBin: true
2148
···
2287
resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
2288
engines: {node: ^10 || ^12 || >=14}
2289
2290
+
prettier@3.8.1:
2291
+
resolution: {integrity: sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==}
2292
engines: {node: '>=14'}
2293
hasBin: true
2294
···
2356
engines: {node: '>=10.0.0'}
2357
hasBin: true
2358
2359
+
rollup@4.57.0:
2360
+
resolution: {integrity: sha512-e5lPJi/aui4TO1LpAXIRLySmwXSE8k3b9zoGfd42p67wzxog4WHjiZF3M2uheQih4DGyc25QEV4yRBbpueNiUA==}
2361
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
2362
hasBin: true
2363
···
2376
serialize-javascript@6.0.2:
2377
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
2378
2379
+
seroval-plugins@1.5.0:
2380
+
resolution: {integrity: sha512-EAHqADIQondwRZIdeW2I636zgsODzoBDwb3PT/+7TLDWyw1Dy/Xv7iGUIEXXav7usHDE9HVhOU61irI3EnyyHA==}
2381
engines: {node: '>=10'}
2382
peerDependencies:
2383
seroval: ^1.0
2384
2385
+
seroval@1.5.0:
2386
+
resolution: {integrity: sha512-OE4cvmJ1uSPrKorFIH9/w/Qwuvi/IMcGbv5RKgcJ/zjA/IohDLU6SVaxFN9FwajbP7nsX0dQqMDes1whk3y+yw==}
2387
engines: {node: '>=10'}
2388
2389
sharp@0.34.5:
···
2412
'@floating-ui/dom': ^1.0
2413
solid-js: ^1.3
2414
2415
+
solid-js@1.9.11:
2416
+
resolution: {integrity: sha512-WEJtcc5mkh/BnHA6Yrg4whlF8g6QwpmXXRg4P2ztPmcKeHHlH4+djYecBLhSpecZY2RRECXYUwIc/C2r3yzQ4Q==}
2417
2418
solid-refresh@0.6.3:
2419
resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==}
···
2535
undici-types@7.16.0:
2536
resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==}
2537
2538
+
undici@7.18.2:
2539
+
resolution: {integrity: sha512-y+8YjDFzWdQlSE9N5nzKMT3g4a5UBX1HKowfdXh0uvAnTaqqwqB92Jt4UXBAeKekDs5IaDKyJFR4X1gYVCgXcw==}
2540
engines: {node: '>=20.18.1'}
2541
2542
unenv@2.0.0-rc.24:
···
2710
workbox-window@7.4.0:
2711
resolution: {integrity: sha512-/bIYdBLAVsNR3v7gYGaV4pQW3M3kEPx5E8vDxGvxo6khTrGtSSCS7QiFKv9ogzBgZiy0OXLP9zO28U/1nF1mfw==}
2712
2713
+
workerd@1.20260128.0:
2714
+
resolution: {integrity: sha512-EhLJGptSGFi8AEErLiamO3PoGpbRqL+v4Ve36H2B38VxmDgFOSmDhfepBnA14sCQzGf1AEaoZX2DCwZsmO74yQ==}
2715
engines: {node: '>=16'}
2716
hasBin: true
2717
2718
+
wrangler@4.61.1:
2719
+
resolution: {integrity: sha512-hfYQ16VLPkNi8xE1/V3052S2stM5e+vq3Idpt83sXoDC3R7R1CLgMkK6M6+Qp3G+9GVDNyHCkvohMPdfFTaD4Q==}
2720
engines: {node: '>=20.0.0'}
2721
hasBin: true
2722
peerDependencies:
2723
+
'@cloudflare/workers-types': ^4.20260128.0
2724
peerDependenciesMeta:
2725
'@cloudflare/workers-types':
2726
optional: true
···
2754
youch@4.1.0-beta.10:
2755
resolution: {integrity: sha512-rLfVLB4FgQneDr0dv1oddCVZmKjcJ6yX6mS4pU82Mq/Dt9a3cLZQ62pDBL4AUO+uVrCvtWz3ZFUL2HFAFJ/BXQ==}
2756
0
0
0
2757
snapshots:
2758
2759
'@alloc/quick-lru@5.2.0': {}
···
2767
2768
'@atcute/atproto@3.1.10':
2769
dependencies:
2770
+
'@atcute/lexicons': 1.2.7
2771
2772
'@atcute/bluemoji@3.1.3':
2773
dependencies:
2774
'@atcute/atproto': 3.1.10
2775
+
'@atcute/bluesky': 3.2.16
2776
+
'@atcute/lexicons': 1.2.7
2777
2778
'@atcute/bluesky-richtext-parser@1.0.7': {}
2779
···
2781
2782
'@atcute/bluesky-search-parser@0.1.1': {}
2783
2784
+
'@atcute/bluesky@3.2.16':
2785
dependencies:
2786
'@atcute/atproto': 3.1.10
2787
+
'@atcute/lexicons': 1.2.7
2788
2789
'@atcute/cbor@2.3.0':
2790
dependencies:
2791
'@atcute/cid': 2.4.0
2792
+
'@atcute/multibase': 1.1.7
2793
+
'@atcute/uint8array': 1.1.0
2794
2795
'@atcute/cid@2.4.0':
2796
dependencies:
2797
+
'@atcute/multibase': 1.1.7
2798
+
'@atcute/uint8array': 1.1.0
2799
2800
'@atcute/client@4.2.1':
2801
dependencies:
2802
'@atcute/identity': 1.1.3
2803
+
'@atcute/lexicons': 1.2.7
2804
2805
'@atcute/crypto@2.3.0':
2806
dependencies:
2807
+
'@atcute/multibase': 1.1.7
2808
+
'@atcute/uint8array': 1.1.0
2809
'@noble/secp256k1': 3.0.0
2810
2811
'@atcute/identity-resolver@1.2.2(@atcute/identity@1.1.3)':
2812
dependencies:
2813
'@atcute/identity': 1.1.3
2814
+
'@atcute/lexicons': 1.2.7
2815
'@atcute/util-fetch': 1.0.5
2816
'@badrap/valita': 0.4.6
2817
2818
'@atcute/identity@1.1.3':
2819
dependencies:
2820
+
'@atcute/lexicons': 1.2.7
2821
'@badrap/valita': 0.4.6
2822
2823
+
'@atcute/lexicons@1.2.7':
2824
dependencies:
2825
+
'@atcute/uint8array': 1.1.0
2826
+
'@atcute/util-text': 1.1.0
2827
'@standard-schema/spec': 1.1.0
2828
esm-env: 1.2.2
2829
2830
+
'@atcute/multibase@1.1.7':
2831
dependencies:
2832
+
'@atcute/uint8array': 1.1.0
2833
2834
+
'@atcute/oauth-browser-client@3.0.0(@atcute/identity@1.1.3)':
2835
dependencies:
2836
'@atcute/client': 4.2.1
2837
'@atcute/identity-resolver': 1.2.2(@atcute/identity@1.1.3)
2838
+
'@atcute/lexicons': 1.2.7
2839
+
'@atcute/multibase': 1.1.7
2840
+
'@atcute/oauth-crypto': 0.1.0
2841
+
'@atcute/oauth-types': 0.1.0
2842
nanoid: 5.1.6
2843
transitivePeerDependencies:
2844
- '@atcute/identity'
2845
2846
+
'@atcute/oauth-crypto@0.1.0':
2847
+
dependencies:
2848
+
'@atcute/multibase': 1.1.7
2849
+
'@atcute/uint8array': 1.1.0
2850
+
'@badrap/valita': 0.4.6
2851
+
nanoid: 5.1.6
2852
+
2853
+
'@atcute/oauth-keyset@0.1.0':
2854
+
dependencies:
2855
+
'@atcute/oauth-crypto': 0.1.0
2856
+
2857
+
'@atcute/oauth-types@0.1.0':
2858
+
dependencies:
2859
+
'@atcute/identity': 1.1.3
2860
+
'@atcute/lexicons': 1.2.7
2861
+
'@atcute/oauth-keyset': 0.1.0
2862
+
'@badrap/valita': 0.4.6
2863
+
2864
'@atcute/tid@1.1.1':
2865
dependencies:
2866
'@atcute/time-ms': 1.2.0
2867
2868
'@atcute/time-ms@1.2.0':
2869
dependencies:
2870
+
'@types/bun': 1.3.8
2871
node-gyp-build: 4.8.4
2872
2873
+
'@atcute/uint8array@1.1.0': {}
2874
2875
'@atcute/util-fetch@1.0.5':
2876
dependencies:
2877
'@badrap/valita': 0.4.6
2878
2879
+
'@atcute/util-text@1.1.0':
2880
dependencies:
2881
unicode-segmenter: 0.14.5
2882
2883
+
'@atcute/xrpc-server@0.1.9':
2884
dependencies:
2885
'@atcute/cbor': 2.3.0
2886
'@atcute/crypto': 2.3.0
2887
'@atcute/identity': 1.1.3
2888
'@atcute/identity-resolver': 1.2.2(@atcute/identity@1.1.3)
2889
+
'@atcute/lexicons': 1.2.7
2890
+
'@atcute/multibase': 1.1.7
2891
+
'@atcute/uint8array': 1.1.0
2892
'@badrap/valita': 0.4.6
2893
nanoid: 5.1.6
2894
···
2971
regexpu-core: 6.4.0
2972
semver: 6.3.1
2973
2974
+
'@babel/helper-define-polyfill-provider@0.6.6(@babel/core@7.28.6)':
2975
dependencies:
2976
'@babel/core': 7.28.6
2977
'@babel/helper-compilation-targets': 7.28.6
···
3526
'@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.6)
3527
'@babel/plugin-transform-unicode-sets-regex': 7.28.6(@babel/core@7.28.6)
3528
'@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.6)
3529
+
babel-plugin-polyfill-corejs2: 0.4.15(@babel/core@7.28.6)
3530
babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.6)
3531
+
babel-plugin-polyfill-regenerator: 0.6.6(@babel/core@7.28.6)
3532
+
core-js-compat: 3.48.0
3533
semver: 6.3.1
3534
transitivePeerDependencies:
3535
- supports-color
···
3570
3571
'@cloudflare/kv-asset-handler@0.4.2': {}
3572
3573
+
'@cloudflare/unenv-preset@2.12.0(unenv@2.0.0-rc.24)(workerd@1.20260128.0)':
3574
dependencies:
3575
unenv: 2.0.0-rc.24
3576
optionalDependencies:
3577
+
workerd: 1.20260128.0
3578
3579
+
'@cloudflare/vite-plugin@1.22.1(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))(workerd@1.20260128.0)(wrangler@4.61.1)':
3580
dependencies:
3581
+
'@cloudflare/unenv-preset': 2.12.0(unenv@2.0.0-rc.24)(workerd@1.20260128.0)
3582
+
miniflare: 4.20260128.0
3583
unenv: 2.0.0-rc.24
3584
vite: 7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0)
3585
+
wrangler: 4.61.1
3586
ws: 8.18.0
3587
transitivePeerDependencies:
3588
- bufferutil
3589
- utf-8-validate
3590
- workerd
3591
3592
+
'@cloudflare/workerd-darwin-64@1.20260128.0':
3593
optional: true
3594
3595
+
'@cloudflare/workerd-darwin-arm64@1.20260128.0':
3596
optional: true
3597
3598
+
'@cloudflare/workerd-linux-64@1.20260128.0':
3599
optional: true
3600
3601
+
'@cloudflare/workerd-linux-arm64@1.20260128.0':
3602
optional: true
3603
3604
+
'@cloudflare/workerd-windows-64@1.20260128.0':
3605
optional: true
3606
3607
'@cspotcode/source-map-support@0.8.1':
···
3769
'@esbuild/win32-x64@0.27.2':
3770
optional: true
3771
3772
+
'@externdefs/solid-freeze@0.1.1(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))':
3773
dependencies:
3774
+
solid-js: 1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
3775
3776
+
'@externdefs/solid-query@0.1.5(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))':
3777
dependencies:
3778
'@tanstack/query-core': 5.17.19(patch_hash=0b06407b66b7af88765fb6e01e112677a8c09ce518cb4f547cee8a0044471acd)
3779
+
solid-js: 1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
3780
3781
+
'@floating-ui/core@1.7.4':
3782
dependencies:
3783
'@floating-ui/utils': 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)
3784
3785
+
'@floating-ui/dom@1.7.5':
3786
dependencies:
3787
+
'@floating-ui/core': 1.7.4
3788
'@floating-ui/utils': 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)
3789
3790
'@floating-ui/utils@0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)': {}
···
3943
3944
'@kelinci/basa-lexicons@1.0.0':
3945
dependencies:
3946
+
'@atcute/lexicons': 1.2.7
3947
3948
'@noble/secp256k1@3.0.0': {}
3949
···
4055
optionalDependencies:
4056
rollup: 2.79.2
4057
4058
+
'@rollup/rollup-android-arm-eabi@4.57.0':
4059
optional: true
4060
4061
+
'@rollup/rollup-android-arm64@4.57.0':
4062
optional: true
4063
4064
+
'@rollup/rollup-darwin-arm64@4.57.0':
4065
optional: true
4066
4067
+
'@rollup/rollup-darwin-x64@4.57.0':
4068
optional: true
4069
4070
+
'@rollup/rollup-freebsd-arm64@4.57.0':
4071
optional: true
4072
4073
+
'@rollup/rollup-freebsd-x64@4.57.0':
4074
optional: true
4075
4076
+
'@rollup/rollup-linux-arm-gnueabihf@4.57.0':
4077
optional: true
4078
4079
+
'@rollup/rollup-linux-arm-musleabihf@4.57.0':
4080
optional: true
4081
4082
+
'@rollup/rollup-linux-arm64-gnu@4.57.0':
4083
optional: true
4084
4085
+
'@rollup/rollup-linux-arm64-musl@4.57.0':
4086
optional: true
4087
4088
+
'@rollup/rollup-linux-loong64-gnu@4.57.0':
4089
optional: true
4090
4091
+
'@rollup/rollup-linux-loong64-musl@4.57.0':
4092
optional: true
4093
4094
+
'@rollup/rollup-linux-ppc64-gnu@4.57.0':
4095
optional: true
4096
4097
+
'@rollup/rollup-linux-ppc64-musl@4.57.0':
4098
optional: true
4099
4100
+
'@rollup/rollup-linux-riscv64-gnu@4.57.0':
4101
optional: true
4102
4103
+
'@rollup/rollup-linux-riscv64-musl@4.57.0':
4104
optional: true
4105
4106
+
'@rollup/rollup-linux-s390x-gnu@4.57.0':
4107
optional: true
4108
4109
+
'@rollup/rollup-linux-x64-gnu@4.57.0':
4110
optional: true
4111
4112
+
'@rollup/rollup-linux-x64-musl@4.57.0':
4113
optional: true
4114
4115
+
'@rollup/rollup-openbsd-x64@4.57.0':
4116
optional: true
4117
4118
+
'@rollup/rollup-openharmony-arm64@4.57.0':
4119
optional: true
4120
4121
+
'@rollup/rollup-win32-arm64-msvc@4.57.0':
4122
optional: true
4123
4124
+
'@rollup/rollup-win32-ia32-msvc@4.57.0':
4125
optional: true
4126
4127
+
'@rollup/rollup-win32-x64-gnu@4.57.0':
4128
optional: true
4129
4130
+
'@rollup/rollup-win32-x64-msvc@4.57.0':
4131
optional: true
4132
4133
'@sindresorhus/is@7.2.0': {}
···
4166
dependencies:
4167
'@babel/types': 7.28.6
4168
4169
+
'@types/bun@1.3.8':
4170
dependencies:
4171
+
bun-types: 1.3.8
4172
4173
'@types/dom-close-watcher@1.0.0': {}
4174
···
4227
autoprefixer@10.4.23(postcss@8.5.6):
4228
dependencies:
4229
browserslist: 4.28.1
4230
+
caniuse-lite: 1.0.30001766
4231
fraction.js: 5.3.4
4232
picocolors: 1.1.1
4233
postcss: 8.5.6
···
4242
html-entities: 2.3.3
4243
parse5: 7.3.0
4244
4245
+
babel-plugin-polyfill-corejs2@0.4.15(@babel/core@7.28.6):
4246
dependencies:
4247
'@babel/compat-data': 7.28.6
4248
'@babel/core': 7.28.6
4249
+
'@babel/helper-define-polyfill-provider': 0.6.6(@babel/core@7.28.6)
4250
semver: 6.3.1
4251
transitivePeerDependencies:
4252
- supports-color
···
4254
babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.28.6):
4255
dependencies:
4256
'@babel/core': 7.28.6
4257
+
'@babel/helper-define-polyfill-provider': 0.6.6(@babel/core@7.28.6)
4258
+
core-js-compat: 3.48.0
4259
transitivePeerDependencies:
4260
- supports-color
4261
4262
+
babel-plugin-polyfill-regenerator@0.6.6(@babel/core@7.28.6):
4263
dependencies:
4264
'@babel/core': 7.28.6
4265
+
'@babel/helper-define-polyfill-provider': 0.6.6(@babel/core@7.28.6)
4266
transitivePeerDependencies:
4267
- supports-color
4268
···
4272
'@babel/helper-plugin-utils': 7.28.6
4273
'@babel/types': 7.28.6
4274
4275
+
babel-preset-solid@1.9.10(@babel/core@7.28.6)(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)):
4276
dependencies:
4277
'@babel/core': 7.28.6
4278
babel-plugin-jsx-dom-expressions: 0.40.3(@babel/core@7.28.6)
4279
optionalDependencies:
4280
+
solid-js: 1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
4281
4282
balanced-match@1.0.2: {}
4283
4284
+
baseline-browser-mapping@2.9.19: {}
4285
4286
binary-extensions@2.3.0: {}
4287
···
4299
4300
browserslist@4.28.1:
4301
dependencies:
4302
+
baseline-browser-mapping: 2.9.19
4303
+
caniuse-lite: 1.0.30001766
4304
+
electron-to-chromium: 1.5.282
4305
node-releases: 2.0.27
4306
update-browserslist-db: 1.2.3(browserslist@4.28.1)
4307
4308
buffer-from@1.1.2: {}
4309
4310
+
bun-types@1.3.8:
4311
dependencies:
4312
'@types/node': 24.10.9
4313
4314
camelcase-css@2.0.1: {}
4315
4316
+
caniuse-lite@1.0.30001766: {}
4317
4318
chokidar@3.6.0:
4319
dependencies:
···
4345
4346
cookie@1.1.1: {}
4347
4348
+
core-js-compat@3.48.0:
4349
dependencies:
4350
browserslist: 4.28.1
4351
···
4379
dependencies:
4380
jake: 10.9.4
4381
4382
+
electron-to-chromium@1.5.282: {}
4383
4384
emoji-regex@8.0.0: {}
4385
···
4601
4602
lodash.sortby@4.7.0: {}
4603
4604
+
lodash@4.17.23: {}
4605
4606
+
lru-cache@11.2.5: {}
4607
4608
lru-cache@5.1.1:
4609
dependencies:
···
4613
dependencies:
4614
sourcemap-codec: 1.4.8
4615
4616
+
mediabunny@1.31.0:
4617
dependencies:
4618
'@types/dom-mediacapture-transform': 0.1.11
4619
'@types/dom-webcodecs': 0.1.13
···
4629
braces: 3.0.3
4630
picomatch: 2.3.1
4631
4632
+
miniflare@4.20260128.0:
4633
dependencies:
4634
'@cspotcode/source-map-support': 0.8.1
4635
sharp: 0.34.5
4636
+
undici: 7.18.2
4637
+
workerd: 1.20260128.0
4638
ws: 8.18.0
4639
youch: 4.1.0-beta.10
0
4640
transitivePeerDependencies:
4641
- bufferutil
4642
- utf-8-validate
···
4698
4699
path-scurry@2.0.1:
4700
dependencies:
4701
+
lru-cache: 11.2.5
4702
minipass: 7.1.2
4703
4704
path-to-regexp@6.3.0: {}
···
4752
picocolors: 1.1.1
4753
source-map-js: 1.2.1
4754
4755
+
prettier@3.8.1: {}
4756
4757
pretty-bytes@5.6.0: {}
4758
···
4811
optionalDependencies:
4812
fsevents: 2.3.3
4813
4814
+
rollup@4.57.0:
4815
dependencies:
4816
'@types/estree': 1.0.8
4817
optionalDependencies:
4818
+
'@rollup/rollup-android-arm-eabi': 4.57.0
4819
+
'@rollup/rollup-android-arm64': 4.57.0
4820
+
'@rollup/rollup-darwin-arm64': 4.57.0
4821
+
'@rollup/rollup-darwin-x64': 4.57.0
4822
+
'@rollup/rollup-freebsd-arm64': 4.57.0
4823
+
'@rollup/rollup-freebsd-x64': 4.57.0
4824
+
'@rollup/rollup-linux-arm-gnueabihf': 4.57.0
4825
+
'@rollup/rollup-linux-arm-musleabihf': 4.57.0
4826
+
'@rollup/rollup-linux-arm64-gnu': 4.57.0
4827
+
'@rollup/rollup-linux-arm64-musl': 4.57.0
4828
+
'@rollup/rollup-linux-loong64-gnu': 4.57.0
4829
+
'@rollup/rollup-linux-loong64-musl': 4.57.0
4830
+
'@rollup/rollup-linux-ppc64-gnu': 4.57.0
4831
+
'@rollup/rollup-linux-ppc64-musl': 4.57.0
4832
+
'@rollup/rollup-linux-riscv64-gnu': 4.57.0
4833
+
'@rollup/rollup-linux-riscv64-musl': 4.57.0
4834
+
'@rollup/rollup-linux-s390x-gnu': 4.57.0
4835
+
'@rollup/rollup-linux-x64-gnu': 4.57.0
4836
+
'@rollup/rollup-linux-x64-musl': 4.57.0
4837
+
'@rollup/rollup-openbsd-x64': 4.57.0
4838
+
'@rollup/rollup-openharmony-arm64': 4.57.0
4839
+
'@rollup/rollup-win32-arm64-msvc': 4.57.0
4840
+
'@rollup/rollup-win32-ia32-msvc': 4.57.0
4841
+
'@rollup/rollup-win32-x64-gnu': 4.57.0
4842
+
'@rollup/rollup-win32-x64-msvc': 4.57.0
4843
fsevents: 2.3.3
4844
4845
run-parallel@1.2.0:
···
4854
dependencies:
4855
randombytes: 2.1.0
4856
4857
+
seroval-plugins@1.5.0(seroval@1.5.0):
4858
dependencies:
4859
+
seroval: 1.5.0
4860
4861
+
seroval@1.5.0: {}
4862
4863
sharp@0.34.5:
4864
dependencies:
···
4901
4902
smob@1.5.0: {}
4903
4904
+
solid-floating-ui@0.2.1(@floating-ui/dom@1.7.5)(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)):
4905
dependencies:
4906
+
'@floating-ui/dom': 1.7.5
4907
+
solid-js: 1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
4908
4909
+
solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7):
4910
dependencies:
4911
csstype: 3.2.3
4912
+
seroval: 1.5.0
4913
+
seroval-plugins: 1.5.0(seroval@1.5.0)
4914
4915
+
solid-refresh@0.6.3(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)):
4916
dependencies:
4917
'@babel/generator': 7.28.6
4918
'@babel/helper-module-imports': 7.28.6
4919
'@babel/types': 7.28.6
4920
+
solid-js: 1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
4921
transitivePeerDependencies:
4922
- supports-color
4923
···
5056
5057
undici-types@7.16.0: {}
5058
5059
+
undici@7.18.2: {}
5060
5061
unenv@2.0.0-rc.24:
5062
dependencies:
···
5103
- '@types/babel__core'
5104
- supports-color
5105
5106
+
vite-plugin-solid@2.11.10(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0)):
5107
dependencies:
5108
'@babel/core': 7.28.6
5109
'@types/babel__core': 7.20.5
5110
+
babel-preset-solid: 1.9.10(@babel/core@7.28.6)(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))
5111
merge-anything: 5.1.7
5112
+
solid-js: 1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)
5113
+
solid-refresh: 0.6.3(solid-js@1.9.11(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))
5114
vite: 7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0)
5115
vitefu: 1.1.1(vite@7.3.1(@types/node@24.10.9)(jiti@1.21.7)(terser@5.46.0))
5116
transitivePeerDependencies:
···
5122
fdir: 6.5.0(picomatch@4.0.3)
5123
picomatch: 4.0.3
5124
postcss: 8.5.6
5125
+
rollup: 4.57.0
5126
tinyglobby: 0.2.15
5127
optionalDependencies:
5128
'@types/node': 24.10.9
···
5171
fast-json-stable-stringify: 2.1.0
5172
fs-extra: 9.1.0
5173
glob: 11.1.0
5174
+
lodash: 4.17.23
5175
pretty-bytes: 5.6.0
5176
rollup: 2.79.2
5177
source-map: 0.8.0-beta.0
···
5259
'@types/trusted-types': 2.0.7
5260
workbox-core: 7.4.0
5261
5262
+
workerd@1.20260128.0:
5263
optionalDependencies:
5264
+
'@cloudflare/workerd-darwin-64': 1.20260128.0
5265
+
'@cloudflare/workerd-darwin-arm64': 1.20260128.0
5266
+
'@cloudflare/workerd-linux-64': 1.20260128.0
5267
+
'@cloudflare/workerd-linux-arm64': 1.20260128.0
5268
+
'@cloudflare/workerd-windows-64': 1.20260128.0
5269
5270
+
wrangler@4.61.1:
5271
dependencies:
5272
'@cloudflare/kv-asset-handler': 0.4.2
5273
+
'@cloudflare/unenv-preset': 2.12.0(unenv@2.0.0-rc.24)(workerd@1.20260128.0)
5274
blake3-wasm: 2.1.5
5275
esbuild: 0.27.0
5276
+
miniflare: 4.20260128.0
5277
path-to-regexp: 6.3.0
5278
unenv: 2.0.0-rc.24
5279
+
workerd: 1.20260128.0
5280
optionalDependencies:
5281
fsevents: 2.3.3
5282
transitivePeerDependencies:
···
5311
'@speed-highlight/core': 1.2.14
5312
cookie: 1.1.1
5313
youch-core: 0.3.3
0
0
+8
-51
scripts/generate-oauth-keys.js
···
1
import * as fs from 'node:fs/promises';
2
3
-
import * as v from '@badrap/valita';
4
-
5
import * as TID from '@atcute/tid';
6
7
-
const jwksSchema = v.object({
8
-
keys: v.array(
9
-
v.object({
10
-
privateKey: v.unknown(),
11
-
publicKey: v.unknown(),
12
-
}),
13
-
),
14
-
});
15
-
16
-
/** @type {v.Infer<typeof jwksSchema> | undefined} */
17
-
let jwks;
18
try {
19
const raw = await fs.readFile('./oauth-credentials.local.json', 'utf-8');
20
-
const json = JSON.parse(raw);
21
-
22
-
jwks = jwksSchema.parse(json, { mode: 'passthrough' });
23
} catch (err) {
24
if (err.code !== 'ENOENT') {
25
throw err;
26
}
27
28
-
jwks = {
29
-
keys: [],
30
-
};
31
}
32
33
-
const { publicKey, privateKey } = await crypto.subtle.generateKey(
34
-
{
35
-
name: 'ECDSA',
36
-
namedCurve: 'P-256',
37
-
},
38
-
true,
39
-
['sign', 'verify'],
40
-
);
41
-
42
const kid = `aglais-${TID.now()}`;
43
-
const privateJWK = await crypto.subtle.exportKey('jwk', privateKey);
44
-
const publicJWK = await crypto.subtle.exportKey('jwk', publicKey);
45
46
-
jwks = {
47
-
keys: [
48
-
{
49
-
privateKey: {
50
-
...privateJWK,
51
-
kid: kid,
52
-
},
53
-
publicKey: {
54
-
kty: publicJWK.kty,
55
-
crv: publicJWK.crv,
56
-
x: publicJWK.x,
57
-
y: publicJWK.y,
58
-
use: 'sig',
59
-
alg: 'ES256',
60
-
kid: kid,
61
-
},
62
-
},
63
-
...jwks.keys,
64
-
],
65
-
};
66
67
-
await fs.writeFile('./oauth-credentials.local.json', JSON.stringify(jwks, null, '\t') + '\n');
···
1
import * as fs from 'node:fs/promises';
2
3
+
import { generateClientAssertionKey } from '@atcute/oauth-crypto';
0
4
import * as TID from '@atcute/tid';
5
6
+
/** @type {import('@atcute/oauth-crypto').ClientAssertionPrivateJwk[]} */
7
+
let keys;
0
0
0
0
0
0
0
0
0
8
try {
9
const raw = await fs.readFile('./oauth-credentials.local.json', 'utf-8');
10
+
keys = JSON.parse(raw);
0
0
11
} catch (err) {
12
if (err.code !== 'ENOENT') {
13
throw err;
14
}
15
16
+
keys = [];
0
0
17
}
18
0
0
0
0
0
0
0
0
0
19
const kid = `aglais-${TID.now()}`;
20
+
const privateKey = await generateClientAssertionKey(kid, 'ES256');
0
21
22
+
keys = [privateKey, ...keys];
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
23
24
+
await fs.writeFile('./oauth-credentials.local.json', JSON.stringify(keys, null, '\t') + '\n');
+21
-20
server/index.ts
···
14
WellKnownHandleResolver,
15
} from '@atcute/identity-resolver';
16
import { type Did, type Handle, type ResourceUri, isDid } from '@atcute/lexicons/syntax';
0
0
0
0
0
0
0
17
import { AuthRequiredError, InvalidRequestError, XRPCRouter, json } from '@atcute/xrpc-server';
18
19
-
import * as jwks from '../oauth-credentials.local.json' with { type: 'json' };
20
21
-
import { InvalidDPoPError, createClientAssertion, verifyDPoP } from './jwt';
22
import { requestAssertionSchema, resolveIdentitySchema } from './lexicons';
23
24
-
const privateKeyId = jwks.keys[0].privateKey.kid;
25
-
const privateKey = await crypto.subtle.importKey(
26
-
'jwk',
27
-
jwks.keys[0].privateKey,
28
-
{ name: 'ECDSA', namedCurve: 'P-256' },
29
-
false,
30
-
['sign'],
31
-
);
32
33
const handleResolver = new CompositeHandleResolver({
34
methods: {
···
74
});
75
76
router.addProcedure(requestAssertionSchema, {
77
-
async handler({ input: { jkt, aud }, request }) {
78
if (request.headers.get('sec-fetch-site') !== 'same-origin') {
79
throw new AuthRequiredError({ description: 'invalid origin' });
80
}
81
82
-
const dpop = request.headers.get('dpop');
83
try {
84
-
await verifyDPoP(dpop, jkt);
0
0
0
0
0
85
} catch (err) {
86
-
if (err instanceof InvalidDPoPError) {
87
throw new AuthRequiredError({ description: err.message });
88
}
89
···
92
93
const url = new URL(request.url);
94
const assertion = await createClientAssertion({
95
-
privateKey: privateKey,
96
-
97
client_id: `https://${url.host}/oauth-client-metadata.json`,
98
-
kid: privateKeyId,
99
aud: aud,
100
jkt: jkt,
0
101
});
102
103
return json({
···
203
}
204
205
if (url.pathname === '/oauth-jwks.json') {
206
-
return Response.json({
207
-
keys: jwks.keys.map((key) => key.publicKey),
208
-
});
209
}
210
211
contexts.set(request, ctx);
···
14
WellKnownHandleResolver,
15
} from '@atcute/identity-resolver';
16
import { type Did, type Handle, type ResourceUri, isDid } from '@atcute/lexicons/syntax';
17
+
import {
18
+
type ClientAssertionPrivateJwk,
19
+
DpopVerifyError,
20
+
createClientAssertion,
21
+
derivePublicJwk,
22
+
verifyDpopProof,
23
+
} from '@atcute/oauth-crypto';
24
import { AuthRequiredError, InvalidRequestError, XRPCRouter, json } from '@atcute/xrpc-server';
25
26
+
import keys from '../oauth-credentials.local.json' with { type: 'json' };
27
0
28
import { requestAssertionSchema, resolveIdentitySchema } from './lexicons';
29
30
+
const privateKeys = keys as ClientAssertionPrivateJwk[];
31
+
const publicKeys = privateKeys.map((key) => derivePublicJwk(key));
0
0
0
0
0
0
32
33
const handleResolver = new CompositeHandleResolver({
34
methods: {
···
74
});
75
76
router.addProcedure(requestAssertionSchema, {
77
+
async handler({ input: { aud }, request }) {
78
if (request.headers.get('sec-fetch-site') !== 'same-origin') {
79
throw new AuthRequiredError({ description: 'invalid origin' });
80
}
81
82
+
let jkt: string;
83
try {
84
+
const result = await verifyDpopProof(request.headers.get('dpop'), {
85
+
method: request.method,
86
+
url: request.url,
87
+
});
88
+
89
+
jkt = result.jkt;
90
} catch (err) {
91
+
if (err instanceof DpopVerifyError) {
92
throw new AuthRequiredError({ description: err.message });
93
}
94
···
97
98
const url = new URL(request.url);
99
const assertion = await createClientAssertion({
0
0
100
client_id: `https://${url.host}/oauth-client-metadata.json`,
0
101
aud: aud,
102
jkt: jkt,
103
+
key: privateKeys[0],
104
});
105
106
return json({
···
206
}
207
208
if (url.pathname === '/oauth-jwks.json') {
209
+
return Response.json({ keys: publicKeys });
0
0
210
}
211
212
contexts.set(request, ctx);
-208
server/jwt.ts
···
1
-
import * as v from '@badrap/valita';
2
-
3
-
import { fromBase64Url, toBase64Url } from '@atcute/multibase';
4
-
import { decodeUtf8From, encodeUtf8 } from '@atcute/uint8array';
5
-
6
-
export class MalformedJwtError extends Error {
7
-
name = 'MalformedJwtError';
8
-
9
-
constructor(options?: ErrorOptions) {
10
-
super(`malformed JWT`, options);
11
-
}
12
-
}
13
-
14
-
export interface DecodedJwt<THeader, TPayload> {
15
-
header: THeader;
16
-
payload: TPayload;
17
-
message: Uint8Array<ArrayBuffer>;
18
-
signature: Uint8Array<ArrayBuffer>;
19
-
}
20
-
21
-
const decodeJwt = <THeader, TPayload>(
22
-
input: string,
23
-
schemas: { header: v.Type<THeader>; payload: v.Type<TPayload> },
24
-
): DecodedJwt<THeader, TPayload> => {
25
-
const parts = input.split('.');
26
-
if (parts.length !== 3) {
27
-
throw new MalformedJwtError();
28
-
}
29
-
30
-
const [headerString, payloadString, signatureString] = parts;
31
-
32
-
const header = decodeJwtPortion(schemas.header, headerString);
33
-
const payload = decodeJwtPortion(schemas.payload, payloadString);
34
-
const signature = decodeJwtSignature(signatureString);
35
-
36
-
return {
37
-
header: header,
38
-
payload: payload,
39
-
message: encodeUtf8(`${headerString}.${payloadString}`),
40
-
signature: signature,
41
-
};
42
-
};
43
-
44
-
const decodeJwtPortion = <T>(schema: v.Type<T>, input: string): T => {
45
-
try {
46
-
const raw = decodeUtf8From(fromBase64Url(input));
47
-
const json = JSON.parse(raw);
48
-
49
-
return schema.parse(json, { mode: 'passthrough' });
50
-
} catch (err) {
51
-
throw new MalformedJwtError({ cause: err });
52
-
}
53
-
};
54
-
55
-
const decodeJwtSignature = (input: string): Uint8Array<ArrayBuffer> => {
56
-
try {
57
-
return fromBase64Url(input);
58
-
} catch (err) {
59
-
throw new MalformedJwtError({ cause: err });
60
-
}
61
-
};
62
-
63
-
const encodeJwtPortion = (data: unknown): string => {
64
-
return toBase64Url(encodeUtf8(JSON.stringify(data)));
65
-
};
66
-
67
-
const encodeJwtSignature = (data: Uint8Array): string => {
68
-
return toBase64Url(data);
69
-
};
70
-
71
-
// #region DPoP
72
-
export class InvalidDPoPError extends Error {
73
-
name = 'InvalidDPoPError';
74
-
}
75
-
76
-
const dpopHeaderSchema = v.object({
77
-
typ: v.literal('dpop+jwt'),
78
-
alg: v.literal('ES256'),
79
-
jwk: v.object({
80
-
kty: v.literal('EC'),
81
-
crv: v.literal('P-256'),
82
-
x: v.string(),
83
-
y: v.string(),
84
-
}),
85
-
});
86
-
87
-
const dpopPayloadSchema = v.object({
88
-
htm: v.string(),
89
-
htu: v.string(),
90
-
iat: v.number(),
91
-
jti: v.string(),
92
-
});
93
-
94
-
const calculateJwkThumbprint = async (jwk: JsonWebKey): Promise<string> => {
95
-
// For EC keys, thumbprint is SHA-256 of canonical JSON
96
-
// Members must be in lexicographic order
97
-
const canonical = JSON.stringify({
98
-
crv: jwk.crv,
99
-
kty: jwk.kty,
100
-
x: jwk.x,
101
-
y: jwk.y,
102
-
});
103
-
104
-
const hash = await crypto.subtle.digest('SHA-256', encodeUtf8(canonical));
105
-
return toBase64Url(new Uint8Array(hash));
106
-
};
107
-
108
-
export const verifyDPoP = async (dpop: string | null, jkt: string): Promise<void> => {
109
-
if (!dpop) {
110
-
throw new InvalidDPoPError(`missing DPoP header`);
111
-
}
112
-
113
-
// Decode the DPoP JWT
114
-
let decoded;
115
-
try {
116
-
decoded = decodeJwt(dpop, {
117
-
header: dpopHeaderSchema,
118
-
payload: dpopPayloadSchema,
119
-
});
120
-
} catch (err) {
121
-
throw new InvalidDPoPError(`malformed JWT`, { cause: err });
122
-
}
123
-
124
-
const { header, message, signature } = decoded;
125
-
126
-
// Verify JWK thumbprint matches jkt
127
-
const thumbprint = await calculateJwkThumbprint(header.jwk);
128
-
if (thumbprint !== jkt) {
129
-
throw new InvalidDPoPError(`JWK thumbprint mismatch`);
130
-
}
131
-
132
-
// Import the public key for signature verification
133
-
let publicKey: CryptoKey;
134
-
try {
135
-
publicKey = await crypto.subtle.importKey(
136
-
'jwk',
137
-
header.jwk,
138
-
{ name: 'ECDSA', namedCurve: 'P-256' },
139
-
false,
140
-
['verify'],
141
-
);
142
-
} catch (err) {
143
-
throw new InvalidDPoPError(`failed to import JWK`, { cause: err });
144
-
}
145
-
146
-
// Verify the signature
147
-
const isValid = await crypto.subtle.verify(
148
-
{ name: 'ECDSA', hash: 'SHA-256' },
149
-
publicKey,
150
-
signature,
151
-
message,
152
-
);
153
-
154
-
if (!isValid) {
155
-
throw new InvalidDPoPError(`invalid DPoP signature`);
156
-
}
157
-
};
158
-
159
-
// #endregion
160
-
161
-
// #region Client assertions
162
-
163
-
export const createClientAssertion = async (options: {
164
-
kid: string;
165
-
client_id: string;
166
-
aud: string;
167
-
jkt: string;
168
-
privateKey: CryptoKey;
169
-
}): Promise<string> => {
170
-
const { kid, client_id, aud, jkt, privateKey } = options;
171
-
172
-
const now = Math.floor(Date.now() / 1000);
173
-
174
-
const header = {
175
-
alg: 'ES256',
176
-
typ: 'JWT',
177
-
kid: kid,
178
-
};
179
-
180
-
const payload = {
181
-
iss: client_id,
182
-
sub: client_id,
183
-
aud: aud,
184
-
jti: crypto.randomUUID(),
185
-
iat: now,
186
-
exp: now + 60,
187
-
cnf: { jkt },
188
-
};
189
-
190
-
const message = `${encodeJwtPortion(header)}.${encodeJwtPortion(payload)}`;
191
-
192
-
const signature = encodeJwtSignature(
193
-
new Uint8Array(
194
-
await crypto.subtle.sign(
195
-
{
196
-
name: 'ECDSA',
197
-
hash: 'SHA-256',
198
-
},
199
-
privateKey,
200
-
encodeUtf8(message),
201
-
),
202
-
),
203
-
);
204
-
205
-
return `${message}.${signature}`;
206
-
};
207
-
208
-
// #endregion
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
server/lexicons.ts
···
6
input: {
7
type: 'lex',
8
schema: v.object({
9
-
jkt: v.string(),
10
aud: v.string(),
11
}),
12
},
···
6
input: {
7
type: 'lex',
8
schema: v.object({
0
9
aud: v.string(),
10
}),
11
},
+1
-2
src/main.tsx
···
44
handler: simpleFetchHandler({ service: location.origin }),
45
});
46
47
-
const fetchClientAssertion: ClientAssertionFetcher = async ({ aud, jkt, createDpopProof }) => {
48
const dpop = await createDpopProof(`${location.origin}/xrpc/x.aglais.requestAssertion`);
49
50
const data = await ok(
51
host.post('x.aglais.requestAssertion', {
52
input: {
53
aud: aud,
54
-
jkt: jkt,
55
},
56
headers: {
57
dpop: dpop,
···
44
handler: simpleFetchHandler({ service: location.origin }),
45
});
46
47
+
const fetchClientAssertion: ClientAssertionFetcher = async ({ aud, createDpopProof }) => {
48
const dpop = await createDpopProof(`${location.origin}/xrpc/x.aglais.requestAssertion`);
49
50
const data = await ok(
51
host.post('x.aglais.requestAssertion', {
52
input: {
53
aud: aud,
0
54
},
55
headers: {
56
dpop: dpop,