+3
-1
deno.json
+3
-1
deno.json
···
19
19
"tasks": {
20
20
"start": "deno run -A ./src/main.tsx",
21
21
"dev": "deno run \"dev:*\"",
22
-
"build": "deno task build:static && deno task build:tailwind",
22
+
"build": "deno task build:static && deno task build:tailwind && deno task build:fonts",
23
23
"build:static": "deno run -A jsr:@bigmoves/bff-cli@0.3.0-beta.37 build src/static/mod.ts",
24
24
"build:tailwind": "deno run -A --node-modules-dir npm:@tailwindcss/cli -i ./src/input.css -o ./build/styles.css --minify",
25
+
"build:fonts": "rm -rf ./build/fonts && cp -r ./static/fonts/. ./build/fonts",
25
26
"dev:build": "DEV=true deno -A --watch=src/static/ jsr:@bigmoves/bff-cli@0.3.0-beta.37 build src/static/mod.ts",
26
27
"dev:server": "deno run -A --watch ./src/main.tsx",
27
28
"dev:tailwind": "deno run -A --node-modules-dir npm:@tailwindcss/cli -i ./src/input.css -o ./build/styles.css --watch",
29
+
"dev:fonts": "rm -rf ./build/fonts && cp -r ./static/fonts/. ./build/fonts",
28
30
"sync": "deno run -A --env=.env jsr:@bigmoves/bff-cli@0.3.0-beta.37 sync --collections=social.grain.gallery,social.grain.actor.profile,social.grain.photo,social.grain.favorite,social.grain.gallery.item,social.grain.graph.follow --external-collections=app.bsky.actor.profile,app.bsky.graph.follow,sh.tangled.graph.follow,sh.tangled.actor.profile",
29
31
"codegen": "deno run -A jsr:@bigmoves/bff-cli@0.3.0-beta.37 lexgen"
30
32
},
+353
-6
deno.lock
+353
-6
deno.lock
···
3
3
"specifiers": {
4
4
"jsr:@bigmoves/atproto-oauth-client@0.2": "0.2.0",
5
5
"jsr:@bigmoves/bff@0.3.0-beta.37": "0.3.0-beta.37",
6
+
"jsr:@deno/gfm@0.10": "0.10.0",
7
+
"jsr:@denosaurs/emoji@0.3": "0.3.1",
8
+
"jsr:@luca/esbuild-deno-loader@~0.11.1": "0.11.1",
9
+
"jsr:@std/assert@^1.0.12": "1.0.13",
6
10
"jsr:@std/assert@^1.0.13": "1.0.13",
11
+
"jsr:@std/async@^1.0.12": "1.0.12",
12
+
"jsr:@std/bytes@^1.0.2": "1.0.6",
7
13
"jsr:@std/cache@0.2": "0.2.0",
14
+
"jsr:@std/cli@^1.0.16": "1.0.20",
8
15
"jsr:@std/cli@^1.0.20": "1.0.20",
16
+
"jsr:@std/data-structures@^1.0.6": "1.0.7",
9
17
"jsr:@std/encoding@^1.0.10": "1.0.10",
18
+
"jsr:@std/encoding@^1.0.5": "1.0.10",
10
19
"jsr:@std/fmt@^1.0.8": "1.0.8",
20
+
"jsr:@std/fs@^1.0.16": "1.0.18",
11
21
"jsr:@std/fs@^1.0.18": "1.0.18",
12
22
"jsr:@std/html@^1.0.4": "1.0.4",
13
23
"jsr:@std/http@^1.0.13": "1.0.18",
···
15
25
"jsr:@std/internal@^1.0.6": "1.0.8",
16
26
"jsr:@std/media-types@^1.1.0": "1.1.0",
17
27
"jsr:@std/net@^1.0.4": "1.0.4",
28
+
"jsr:@std/path@^1.0.6": "1.1.0",
18
29
"jsr:@std/path@^1.0.8": "1.1.0",
19
30
"jsr:@std/path@^1.0.9": "1.1.0",
20
31
"jsr:@std/path@^1.1.0": "1.1.0",
21
32
"jsr:@std/streams@^1.0.10": "1.0.10",
33
+
"jsr:@std/testing@^1.0.11": "1.0.11",
22
34
"npm:@atproto-labs/handle-resolver-node@~0.1.14": "0.1.16",
23
35
"npm:@atproto-labs/simple-store@~0.1.2": "0.1.2",
24
36
"npm:@atproto/api@~0.15.7": "0.15.14",
···
34
46
"npm:@atproto/xrpc-server@*": "0.7.19",
35
47
"npm:@atproto/xrpc-server@0.7.18": "0.7.18",
36
48
"npm:@tailwindcss/cli@*": "4.1.9",
49
+
"npm:@tailwindcss/cli@^4.0.12": "4.1.9",
50
+
"npm:@tailwindcss/cli@^4.1.3": "4.1.9",
37
51
"npm:@tailwindcss/cli@^4.1.4": "4.1.9",
38
52
"npm:@types/node@*": "22.15.15",
39
53
"npm:clsx@^2.1.1": "2.1.1",
40
54
"npm:date-fns@^4.1.0": "4.1.0",
55
+
"npm:esbuild@~0.25.5": "0.25.5",
41
56
"npm:exifr@^7.1.3": "7.1.3",
57
+
"npm:github-slugger@2": "2.0.0",
58
+
"npm:he@^1.2.0": "1.2.0",
42
59
"npm:htmx.org@^1.9.12": "1.9.12",
43
60
"npm:hyperscript.org@~0.9.14": "0.9.14",
44
61
"npm:jose@5.9.6": "5.9.6",
62
+
"npm:katex@0.16": "0.16.22",
63
+
"npm:marked-alert@2": "2.1.2_marked@12.0.2",
64
+
"npm:marked-footnote@^1.2.0": "1.2.4_marked@12.0.2",
65
+
"npm:marked-gfm-heading-id@^3.1.0": "3.2.0_marked@12.0.2",
66
+
"npm:marked@12": "12.0.2",
45
67
"npm:multiformats@*": "13.3.7",
46
68
"npm:multiformats@^13.3.2": "13.3.7",
47
69
"npm:popmotion@^11.0.5": "11.0.5",
48
70
"npm:preact-render-to-string@^6.5.13": "6.5.13_preact@10.26.9",
49
71
"npm:preact@^10.26.5": "10.26.9",
72
+
"npm:prismjs@^1.29.0": "1.30.0",
73
+
"npm:sanitize-html@^2.13.0": "2.17.0",
50
74
"npm:sortablejs@^1.15.6": "1.15.6",
51
75
"npm:tailwind-merge@^3.2.0": "3.3.1",
76
+
"npm:tailwindcss@^4.0.12": "4.1.9",
77
+
"npm:tailwindcss@^4.1.3": "4.1.9",
52
78
"npm:tailwindcss@^4.1.4": "4.1.9",
53
79
"npm:typed-htmx@~0.3.1": "0.3.1"
54
80
},
···
68
94
"integrity": "0b6203729c667642bfaa7481bf0fdddb55050b77db9dc6d3857f5a96548a6e3f",
69
95
"dependencies": [
70
96
"jsr:@bigmoves/atproto-oauth-client",
71
-
"jsr:@std/assert",
97
+
"jsr:@std/assert@^1.0.13",
72
98
"jsr:@std/cache",
73
99
"jsr:@std/fmt",
74
100
"jsr:@std/http@^1.0.13",
···
88
114
"npm:tailwind-merge"
89
115
]
90
116
},
117
+
"@deno/gfm@0.10.0": {
118
+
"integrity": "51708205e3559a4aeb6afb29d07c5bfafe7941f91bb360351ef6621de9a39527",
119
+
"dependencies": [
120
+
"jsr:@denosaurs/emoji",
121
+
"npm:github-slugger",
122
+
"npm:he",
123
+
"npm:katex",
124
+
"npm:marked",
125
+
"npm:marked-alert",
126
+
"npm:marked-footnote",
127
+
"npm:marked-gfm-heading-id",
128
+
"npm:prismjs",
129
+
"npm:sanitize-html"
130
+
]
131
+
},
132
+
"@denosaurs/emoji@0.3.1": {
133
+
"integrity": "b0aed5f55dec99e83da7c9637fe0a36d1d6252b7c99deaaa3fc5dea3fcf3da8b"
134
+
},
135
+
"@luca/esbuild-deno-loader@0.11.1": {
136
+
"integrity": "dc020d16d75b591f679f6b9288b10f38bdb4f24345edb2f5732affa1d9885267",
137
+
"dependencies": [
138
+
"jsr:@std/bytes",
139
+
"jsr:@std/encoding@^1.0.5",
140
+
"jsr:@std/path@^1.0.6"
141
+
]
142
+
},
91
143
"@std/assert@1.0.13": {
92
144
"integrity": "ae0d31e41919b12c656c742b22522c32fb26ed0cba32975cb0de2a273cb68b29",
93
145
"dependencies": [
94
146
"jsr:@std/internal"
95
147
]
96
148
},
149
+
"@std/async@1.0.12": {
150
+
"integrity": "d1bfcec459e8012846fe4e38dfc4241ab23240ecda3d8d6dfcf6d81a632e803d"
151
+
},
152
+
"@std/bytes@1.0.6": {
153
+
"integrity": "f6ac6adbd8ccd99314045f5703e23af0a68d7f7e58364b47d2c7f408aeb5820a"
154
+
},
97
155
"@std/cache@0.2.0": {
98
156
"integrity": "63a2ccd5a9e7c03e430f7d34dfcfd0d0cfc90731a1eaf8208f4c66e418fc3035"
99
157
},
100
158
"@std/cli@1.0.20": {
101
159
"integrity": "a8c384a2c98cec6ec6a2055c273a916e2772485eb784af0db004c5ab8ba52333"
102
160
},
161
+
"@std/data-structures@1.0.7": {
162
+
"integrity": "16932d2c8d281f65eaaa2209af2473209881e33b1ced54cd1b015e7b4cdbb0d2"
163
+
},
103
164
"@std/encoding@1.0.10": {
104
165
"integrity": "8783c6384a2d13abd5e9e87a7ae0520a30e9f56aeeaa3bdf910a3eaaf5c811a1"
105
166
},
···
107
168
"integrity": "71e1fc498787e4434d213647a6e43e794af4fd393ef8f52062246e06f7e372b7"
108
169
},
109
170
"@std/fs@1.0.18": {
110
-
"integrity": "24bcad99eab1af4fde75e05da6e9ed0e0dce5edb71b7e34baacf86ffe3969f3a"
171
+
"integrity": "24bcad99eab1af4fde75e05da6e9ed0e0dce5edb71b7e34baacf86ffe3969f3a",
172
+
"dependencies": [
173
+
"jsr:@std/path@^1.1.0"
174
+
]
111
175
},
112
176
"@std/html@1.0.4": {
113
177
"integrity": "eff3497c08164e6ada49b7f81a28b5108087033823153d065e3f89467dd3d50e"
···
115
179
"@std/http@1.0.18": {
116
180
"integrity": "8d9546aa532c52a0cf318c74616db0638b4c1073405355d1b14f9e1591dccf20",
117
181
"dependencies": [
118
-
"jsr:@std/cli",
119
-
"jsr:@std/encoding",
182
+
"jsr:@std/cli@^1.0.20",
183
+
"jsr:@std/encoding@^1.0.10",
120
184
"jsr:@std/fmt",
121
-
"jsr:@std/fs",
185
+
"jsr:@std/fs@^1.0.18",
122
186
"jsr:@std/html",
123
187
"jsr:@std/media-types",
124
188
"jsr:@std/net",
···
140
204
},
141
205
"@std/streams@1.0.10": {
142
206
"integrity": "75c0b1431873cd0d8b3d679015220204d36d3c7420d93b60acfc379eb0dc30af"
207
+
},
208
+
"@std/testing@1.0.11": {
209
+
"integrity": "12b3db12d34f0f385a26248933bde766c0f8c5ad8b6ab34d4d38f528ab852f48",
210
+
"dependencies": [
211
+
"jsr:@std/assert@^1.0.12",
212
+
"jsr:@std/async",
213
+
"jsr:@std/data-structures",
214
+
"jsr:@std/fs@^1.0.16",
215
+
"jsr:@std/internal",
216
+
"jsr:@std/path@^1.0.8"
217
+
]
143
218
}
144
219
},
145
220
"npm": {
···
412
487
"tslib@2.8.1"
413
488
]
414
489
},
490
+
"@esbuild/aix-ppc64@0.25.5": {
491
+
"integrity": "sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==",
492
+
"os": ["aix"],
493
+
"cpu": ["ppc64"]
494
+
},
495
+
"@esbuild/android-arm64@0.25.5": {
496
+
"integrity": "sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==",
497
+
"os": ["android"],
498
+
"cpu": ["arm64"]
499
+
},
500
+
"@esbuild/android-arm@0.25.5": {
501
+
"integrity": "sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==",
502
+
"os": ["android"],
503
+
"cpu": ["arm"]
504
+
},
505
+
"@esbuild/android-x64@0.25.5": {
506
+
"integrity": "sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==",
507
+
"os": ["android"],
508
+
"cpu": ["x64"]
509
+
},
510
+
"@esbuild/darwin-arm64@0.25.5": {
511
+
"integrity": "sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==",
512
+
"os": ["darwin"],
513
+
"cpu": ["arm64"]
514
+
},
515
+
"@esbuild/darwin-x64@0.25.5": {
516
+
"integrity": "sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==",
517
+
"os": ["darwin"],
518
+
"cpu": ["x64"]
519
+
},
520
+
"@esbuild/freebsd-arm64@0.25.5": {
521
+
"integrity": "sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==",
522
+
"os": ["freebsd"],
523
+
"cpu": ["arm64"]
524
+
},
525
+
"@esbuild/freebsd-x64@0.25.5": {
526
+
"integrity": "sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==",
527
+
"os": ["freebsd"],
528
+
"cpu": ["x64"]
529
+
},
530
+
"@esbuild/linux-arm64@0.25.5": {
531
+
"integrity": "sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==",
532
+
"os": ["linux"],
533
+
"cpu": ["arm64"]
534
+
},
535
+
"@esbuild/linux-arm@0.25.5": {
536
+
"integrity": "sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==",
537
+
"os": ["linux"],
538
+
"cpu": ["arm"]
539
+
},
540
+
"@esbuild/linux-ia32@0.25.5": {
541
+
"integrity": "sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==",
542
+
"os": ["linux"],
543
+
"cpu": ["ia32"]
544
+
},
545
+
"@esbuild/linux-loong64@0.25.5": {
546
+
"integrity": "sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==",
547
+
"os": ["linux"],
548
+
"cpu": ["loong64"]
549
+
},
550
+
"@esbuild/linux-mips64el@0.25.5": {
551
+
"integrity": "sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==",
552
+
"os": ["linux"],
553
+
"cpu": ["mips64el"]
554
+
},
555
+
"@esbuild/linux-ppc64@0.25.5": {
556
+
"integrity": "sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==",
557
+
"os": ["linux"],
558
+
"cpu": ["ppc64"]
559
+
},
560
+
"@esbuild/linux-riscv64@0.25.5": {
561
+
"integrity": "sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==",
562
+
"os": ["linux"],
563
+
"cpu": ["riscv64"]
564
+
},
565
+
"@esbuild/linux-s390x@0.25.5": {
566
+
"integrity": "sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==",
567
+
"os": ["linux"],
568
+
"cpu": ["s390x"]
569
+
},
570
+
"@esbuild/linux-x64@0.25.5": {
571
+
"integrity": "sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==",
572
+
"os": ["linux"],
573
+
"cpu": ["x64"]
574
+
},
575
+
"@esbuild/netbsd-arm64@0.25.5": {
576
+
"integrity": "sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==",
577
+
"os": ["netbsd"],
578
+
"cpu": ["arm64"]
579
+
},
580
+
"@esbuild/netbsd-x64@0.25.5": {
581
+
"integrity": "sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==",
582
+
"os": ["netbsd"],
583
+
"cpu": ["x64"]
584
+
},
585
+
"@esbuild/openbsd-arm64@0.25.5": {
586
+
"integrity": "sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==",
587
+
"os": ["openbsd"],
588
+
"cpu": ["arm64"]
589
+
},
590
+
"@esbuild/openbsd-x64@0.25.5": {
591
+
"integrity": "sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==",
592
+
"os": ["openbsd"],
593
+
"cpu": ["x64"]
594
+
},
595
+
"@esbuild/sunos-x64@0.25.5": {
596
+
"integrity": "sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==",
597
+
"os": ["sunos"],
598
+
"cpu": ["x64"]
599
+
},
600
+
"@esbuild/win32-arm64@0.25.5": {
601
+
"integrity": "sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==",
602
+
"os": ["win32"],
603
+
"cpu": ["arm64"]
604
+
},
605
+
"@esbuild/win32-ia32@0.25.5": {
606
+
"integrity": "sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==",
607
+
"os": ["win32"],
608
+
"cpu": ["ia32"]
609
+
},
610
+
"@esbuild/win32-x64@0.25.5": {
611
+
"integrity": "sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==",
612
+
"os": ["win32"],
613
+
"cpu": ["x64"]
614
+
},
415
615
"@ipld/dag-cbor@7.0.3": {
416
616
"integrity": "sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==",
417
617
"dependencies": [
···
803
1003
"commander@2.20.3": {
804
1004
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
805
1005
},
1006
+
"commander@8.3.0": {
1007
+
"integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww=="
1008
+
},
806
1009
"content-disposition@0.5.4": {
807
1010
"integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
808
1011
"dependencies": [
···
827
1030
"ms@2.0.0"
828
1031
]
829
1032
},
1033
+
"deepmerge@4.3.1": {
1034
+
"integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A=="
1035
+
},
830
1036
"depd@2.0.0": {
831
1037
"integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="
832
1038
},
···
840
1046
"detect-libc@2.0.4": {
841
1047
"integrity": "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA=="
842
1048
},
1049
+
"dom-serializer@2.0.0": {
1050
+
"integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
1051
+
"dependencies": [
1052
+
"domelementtype",
1053
+
"domhandler",
1054
+
"entities"
1055
+
]
1056
+
},
1057
+
"domelementtype@2.3.0": {
1058
+
"integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw=="
1059
+
},
1060
+
"domhandler@5.0.3": {
1061
+
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
1062
+
"dependencies": [
1063
+
"domelementtype"
1064
+
]
1065
+
},
1066
+
"domutils@3.2.2": {
1067
+
"integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
1068
+
"dependencies": [
1069
+
"dom-serializer",
1070
+
"domelementtype",
1071
+
"domhandler"
1072
+
]
1073
+
},
843
1074
"dunder-proto@1.0.1": {
844
1075
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
845
1076
"dependencies": [
···
864
1095
"tapable"
865
1096
]
866
1097
},
1098
+
"entities@4.5.0": {
1099
+
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
1100
+
},
867
1101
"es-define-property@1.0.1": {
868
1102
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g=="
869
1103
},
···
876
1110
"es-errors"
877
1111
]
878
1112
},
1113
+
"esbuild@0.25.5": {
1114
+
"integrity": "sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==",
1115
+
"optionalDependencies": [
1116
+
"@esbuild/aix-ppc64",
1117
+
"@esbuild/android-arm",
1118
+
"@esbuild/android-arm64",
1119
+
"@esbuild/android-x64",
1120
+
"@esbuild/darwin-arm64",
1121
+
"@esbuild/darwin-x64",
1122
+
"@esbuild/freebsd-arm64",
1123
+
"@esbuild/freebsd-x64",
1124
+
"@esbuild/linux-arm",
1125
+
"@esbuild/linux-arm64",
1126
+
"@esbuild/linux-ia32",
1127
+
"@esbuild/linux-loong64",
1128
+
"@esbuild/linux-mips64el",
1129
+
"@esbuild/linux-ppc64",
1130
+
"@esbuild/linux-riscv64",
1131
+
"@esbuild/linux-s390x",
1132
+
"@esbuild/linux-x64",
1133
+
"@esbuild/netbsd-arm64",
1134
+
"@esbuild/netbsd-x64",
1135
+
"@esbuild/openbsd-arm64",
1136
+
"@esbuild/openbsd-x64",
1137
+
"@esbuild/sunos-x64",
1138
+
"@esbuild/win32-arm64",
1139
+
"@esbuild/win32-ia32",
1140
+
"@esbuild/win32-x64"
1141
+
],
1142
+
"scripts": true,
1143
+
"bin": true
1144
+
},
879
1145
"escape-html@1.0.3": {
880
1146
"integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
1147
+
},
1148
+
"escape-string-regexp@4.0.0": {
1149
+
"integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
881
1150
},
882
1151
"etag@1.8.1": {
883
1152
"integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg=="
···
985
1254
"es-object-atoms"
986
1255
]
987
1256
},
1257
+
"github-slugger@2.0.0": {
1258
+
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw=="
1259
+
},
988
1260
"gopd@1.2.0": {
989
1261
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg=="
990
1262
},
···
1003
1275
"function-bind"
1004
1276
]
1005
1277
},
1278
+
"he@1.2.0": {
1279
+
"integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
1280
+
"bin": true
1281
+
},
1006
1282
"hey-listen@1.0.8": {
1007
1283
"integrity": "sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q=="
1008
1284
},
1285
+
"htmlparser2@8.0.2": {
1286
+
"integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==",
1287
+
"dependencies": [
1288
+
"domelementtype",
1289
+
"domhandler",
1290
+
"domutils",
1291
+
"entities"
1292
+
]
1293
+
},
1009
1294
"htmx.org@1.9.12": {
1010
1295
"integrity": "sha512-VZAohXyF7xPGS52IM8d1T1283y+X4D+Owf3qY1NZ9RuBypyu9l8cGsxUMAG5fEAb/DhT7rDoJ9Hpu5/HxFD3cw=="
1011
1296
},
···
1057
1342
"is-number@7.0.0": {
1058
1343
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
1059
1344
},
1345
+
"is-plain-object@5.0.0": {
1346
+
"integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q=="
1347
+
},
1060
1348
"iso-datestring-validator@2.2.2": {
1061
1349
"integrity": "sha512-yLEMkBbLZTlVQqOnQ4FiMujR6T4DEcCb1xizmvXS+OxuhwcbtynoosRzdMA69zZCShCNAbi+gJ71FxZBBXx1SA=="
1062
1350
},
···
1067
1355
"jose@5.9.6": {
1068
1356
"integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ=="
1069
1357
},
1358
+
"katex@0.16.22": {
1359
+
"integrity": "sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==",
1360
+
"dependencies": [
1361
+
"commander@8.3.0"
1362
+
],
1363
+
"bin": true
1364
+
},
1070
1365
"lightningcss-darwin-arm64@1.30.1": {
1071
1366
"integrity": "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==",
1072
1367
"os": ["darwin"],
···
1147
1442
"markdown-it-deflist@2.1.0": {
1148
1443
"integrity": "sha512-3OuqoRUlSxJiuQYu0cWTLHNhhq2xtoSFqsZK8plANg91+RJQU1ziQ6lA2LzmFAEes18uPBsHZpcX6We5l76Nzg=="
1149
1444
},
1445
+
"marked-alert@2.1.2_marked@12.0.2": {
1446
+
"integrity": "sha512-EFNRZ08d8L/iEIPLTlQMDjvwIsj03gxWCczYTht6DCiHJIZhMk4NK5gtPY9UqAYb09eV5VGT+jD4lp396E0I+w==",
1447
+
"dependencies": [
1448
+
"marked"
1449
+
]
1450
+
},
1451
+
"marked-footnote@1.2.4_marked@12.0.2": {
1452
+
"integrity": "sha512-DB2Kl+wFh6YwZd70qABMY6WUkG1UuyqoNTFoDfGyG79Pz24neYtLBkB+45a7o72V7gkfvbC3CGzIYFobxfMT1Q==",
1453
+
"dependencies": [
1454
+
"marked"
1455
+
]
1456
+
},
1457
+
"marked-gfm-heading-id@3.2.0_marked@12.0.2": {
1458
+
"integrity": "sha512-Xfxpr5lXLDLY10XqzSCA9l2dDaiabQUgtYM9hw8yunyVsB/xYBRpiic6BOiY/EAJw1ik1eWr1ET1HKOAPZBhXg==",
1459
+
"dependencies": [
1460
+
"github-slugger",
1461
+
"marked"
1462
+
]
1463
+
},
1464
+
"marked@12.0.2": {
1465
+
"integrity": "sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q==",
1466
+
"bin": true
1467
+
},
1150
1468
"math-intrinsics@1.1.0": {
1151
1469
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="
1152
1470
},
···
1206
1524
},
1207
1525
"multiformats@9.9.0": {
1208
1526
"integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg=="
1527
+
},
1528
+
"nanoid@3.3.11": {
1529
+
"integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
1530
+
"bin": true
1209
1531
},
1210
1532
"negotiator@0.6.3": {
1211
1533
"integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg=="
···
1232
1554
"ee-first"
1233
1555
]
1234
1556
},
1557
+
"parse-srcset@1.0.2": {
1558
+
"integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q=="
1559
+
},
1235
1560
"parseurl@1.3.3": {
1236
1561
"integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ=="
1237
1562
},
···
1280
1605
"tslib@2.4.0"
1281
1606
]
1282
1607
},
1608
+
"postcss@8.5.3": {
1609
+
"integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==",
1610
+
"dependencies": [
1611
+
"nanoid",
1612
+
"picocolors",
1613
+
"source-map-js"
1614
+
]
1615
+
},
1283
1616
"preact-render-to-string@6.5.13_preact@10.26.9": {
1284
1617
"integrity": "sha512-iGPd+hKPMFKsfpR2vL4kJ6ZPcFIoWZEcBf0Dpm3zOpdVvj77aY8RlLiQji5OMrngEyaxGogeakTb54uS2FvA6w==",
1285
1618
"dependencies": [
···
1288
1621
},
1289
1622
"preact@10.26.9": {
1290
1623
"integrity": "sha512-SSjF9vcnF27mJK1XyFMNJzFd5u3pQiATFqoaDy03XuN00u4ziveVVEGt5RKJrDR8MHE/wJo9Nnad56RLzS2RMA=="
1624
+
},
1625
+
"prismjs@1.30.0": {
1626
+
"integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw=="
1291
1627
},
1292
1628
"process-warning@3.0.0": {
1293
1629
"integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ=="
···
1347
1683
},
1348
1684
"safer-buffer@2.1.2": {
1349
1685
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1686
+
},
1687
+
"sanitize-html@2.17.0": {
1688
+
"integrity": "sha512-dLAADUSS8rBwhaevT12yCezvioCA+bmUTPH/u57xKPT8d++voeYE6HeluA/bPbQ15TwDBG2ii+QZIEmYx8VdxA==",
1689
+
"dependencies": [
1690
+
"deepmerge",
1691
+
"escape-string-regexp",
1692
+
"htmlparser2",
1693
+
"is-plain-object",
1694
+
"parse-srcset",
1695
+
"postcss"
1696
+
]
1350
1697
},
1351
1698
"send@0.19.0": {
1352
1699
"integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
···
1480
1827
"dependencies": [
1481
1828
"@jridgewell/source-map",
1482
1829
"acorn",
1483
-
"commander",
1830
+
"commander@2.20.3",
1484
1831
"source-map-support"
1485
1832
],
1486
1833
"bin": true
-10
src/app.tsx
-10
src/app.tsx
···
31
31
props.ctx.fileFingerprints.get("styles.css")
32
32
}`}
33
33
/>
34
-
<link rel="preconnect" href="https://fonts.googleapis.com" />
35
-
<link
36
-
rel="preconnect"
37
-
href="https://fonts.gstatic.com"
38
-
crossOrigin="anonymous"
39
-
/>
40
-
<link
41
-
href="https://fonts.googleapis.com/css2?family=Jersey+20&display=swap"
42
-
rel="stylesheet"
43
-
/>
44
34
<link
45
35
rel="stylesheet"
46
36
href="https://unpkg.com/@fortawesome/fontawesome-free@6.7.2/css/all.min.css"
+8
src/input.css
+8
src/input.css
···
2
2
3
3
/* use to test light mode */
4
4
/* @custom-variant dark (&:where(.dark, .dark *)); */
5
+
6
+
@font-face {
7
+
font-family: "Jersey 20";
8
+
src: url("/build/fonts/Jersey20-Regular.ttf") format("truetype");
9
+
font-weight: normal;
10
+
font-style: normal;
11
+
font-display: swap;
12
+
}
+6
-1
src/routes/record.ts
+6
-1
src/routes/record.ts
···
10
10
import { galleryLink } from "../utils.ts";
11
11
12
12
export const handler: RouteHandler = (
13
-
_req,
13
+
req,
14
14
params,
15
15
ctx: BffContext<State>,
16
16
) => {
17
+
const url = new URL(req.url);
17
18
const { did, collection, rkey } = params;
19
+
20
+
if (url.pathname.includes("/build/")) {
21
+
return ctx.next(); // ignore build assets
22
+
}
18
23
19
24
if (!did || !collection || !rkey) {
20
25
throw new BadRequestError("Invalid parameters for record handler");
static/fonts/Jersey20-Regular.ttf
static/fonts/Jersey20-Regular.ttf
This is a binary file and will not be displayed.