An HTML-only Bluesky frontend

nightmare nightmare nightmare

+14 -2
+3 -1
deno.lock
··· 179 179 "remote": { 180 180 "https://esm.sh/preact@10.22.0/jsx-runtime": "c6185b52c1673f9d309dd6046051e9b6c034f14858bef62ea2a9fe9ef1ea2201", 181 181 "https://esm.sh/stable/preact@10.22.0/denonext/jsx-runtime.js": "de60943799b1cbe6066c4f83f4ca71ef37011d7f5be7bef58ed980e8ff3f996a", 182 - "https://esm.sh/stable/preact@10.22.0/denonext/preact.mjs": "20c9563e051dd66e053d3afb450f61b48f2fa0d0ce4f69f8f0a2f23c1ef090da" 182 + "https://esm.sh/stable/preact@10.22.0/denonext/preact.mjs": "20c9563e051dd66e053d3afb450f61b48f2fa0d0ce4f69f8f0a2f23c1ef090da", 183 + "https://esm.sh/stable/preact@10.22.0/denonext/src.js": "8674e09926d897489892eae52e43d0ce884adbadc31b3042817fdba381241be1", 184 + "https://esm.sh/v128/preact@10.22.0/src/index.js": "563764be8932b6b9526f92768de869b17d6ad66f189aa16ddccb343bd600ea34" 183 185 } 184 186 }
+11 -1
pages/actor/index.tsx
··· 1 1 import { AppBskyActorDefs /*AppBskyFeedDefs*/ } from "npm:@atproto/api"; 2 2 import sanitizeHtml from "npm:sanitize-html"; 3 + import { render } from "npm:preact-render-to-string"; 3 4 4 5 import { GetDescriptionFacets } from "../../facets.ts"; 5 6 ··· 34 35 </small> 35 36 </small> 36 37 <h1> 37 - {actor.displayName ? actor.displayName : actor.handle} 38 + <span 39 + dangerouslySetInnerHTML={{ 40 + __html: actor.displayName 41 + ? actor.displayName.replaceAll(" ", " <wbr>")!.match( 42 + /.{1,7}/g, 43 + )!.join("<wbr>") 44 + : actor.handle.replaceAll(".", ".<wbr>"), 45 + }} 46 + > 47 + </span> 38 48 <br /> 39 49 <small> 40 50 <small>