a tool for shared writing and social publishing

Merge branch 'main' of https://github.com/hyperlink-academy/minilink into update/reader

+626 -412
+10
app/api/inngest/client.ts
··· 51 51 documentUris?: string[]; 52 52 }; 53 53 }; 54 + "user/write-records-to-pds": { 55 + data: { 56 + did: string; 57 + records: Array<{ 58 + collection: string; 59 + rkey: string; 60 + record: unknown; 61 + }>; 62 + }; 63 + }; 54 64 }; 55 65 56 66 // Create a client to send and receive events
+12 -3
app/api/inngest/functions/index_post_mention.ts
··· 3 3 import { AtpAgent, AtUri } from "@atproto/api"; 4 4 import { Json } from "supabase/database.types"; 5 5 import { ids } from "lexicons/api/lexicons"; 6 - import { Notification, pingIdentityToUpdateNotification } from "src/notifications"; 6 + import { 7 + Notification, 8 + pingIdentityToUpdateNotification, 9 + } from "src/notifications"; 7 10 import { v7 } from "uuid"; 8 11 import { idResolver } from "app/(home-pages)/reader/idResolver"; 9 12 import { documentUriFilter } from "src/utils/uriHelpers"; ··· 60 63 let { data: pub, error } = await supabaseServerClient 61 64 .from("publications") 62 65 .select("*") 63 - .or(`record->>base_path.eq.${url.host},record->>url.eq.https://${url.host}`) 66 + .or( 67 + `record->>base_path.eq.${url.host},record->>url.eq.https://${url.host}`, 68 + ) 69 + .order("uri", { ascending: false }) 70 + .limit(1) 64 71 .single(); 65 72 66 73 if (!pub) { ··· 80 87 const docData = docDataArr?.[0]; 81 88 82 89 if (!docData) { 83 - return { message: `No document found for publication ${url.host}/${path[0]}` }; 90 + return { 91 + message: `No document found for publication ${url.host}/${path[0]}`, 92 + }; 84 93 } 85 94 86 95 documentUri = docData.uri;
+70
app/api/inngest/functions/write_records_to_pds.ts
··· 1 + import { inngest } from "../client"; 2 + import { restoreOAuthSession } from "src/atproto-oauth"; 3 + import { AtpBaseClient } from "lexicons/api"; 4 + 5 + // Batch size to avoid Inngest payload limits and PDS rate limits 6 + const BATCH_SIZE = 50; 7 + 8 + // Helper to create authenticated agent - must be called fresh in each step 9 + // (OAuth sessions cannot be serialized across Inngest steps) 10 + async function createAuthenticatedAgent(did: string): Promise<AtpBaseClient> { 11 + const result = await restoreOAuthSession(did); 12 + if (!result.ok) { 13 + throw new Error(`Failed to restore OAuth session: ${result.error.message}`); 14 + } 15 + return new AtpBaseClient(result.value.fetchHandler.bind(result.value)); 16 + } 17 + 18 + export const write_records_to_pds = inngest.createFunction( 19 + { id: "write-records-to-pds" }, 20 + { event: "user/write-records-to-pds" }, 21 + async ({ event, step }) => { 22 + const { did, records } = event.data; 23 + 24 + // Step 1: Verify OAuth session is valid before proceeding 25 + await step.run("verify-oauth-session", async () => { 26 + const result = await restoreOAuthSession(did); 27 + if (!result.ok) { 28 + throw new Error(`OAuth restore failed: ${result.error.message}`); 29 + } 30 + return { success: true }; 31 + }); 32 + 33 + // Step 2: Write records to PDS in batches 34 + // Split records into batches to avoid payload limits and rate limiting 35 + const batches: typeof records[] = []; 36 + for (let i = 0; i < records.length; i += BATCH_SIZE) { 37 + batches.push(records.slice(i, i + BATCH_SIZE)); 38 + } 39 + 40 + let totalWritten = 0; 41 + for (let batchIndex = 0; batchIndex < batches.length; batchIndex++) { 42 + const batch = batches[batchIndex]; 43 + const batchWritten = await step.run( 44 + `write-batch-${batchIndex}`, 45 + async () => { 46 + const agent = await createAuthenticatedAgent(did); 47 + let written = 0; 48 + for (const rec of batch) { 49 + await agent.com.atproto.repo.putRecord({ 50 + repo: did, 51 + collection: rec.collection, 52 + rkey: rec.rkey, 53 + record: rec.record as Record<string, unknown>, 54 + validate: false, 55 + }); 56 + written++; 57 + } 58 + return written; 59 + }, 60 + ); 61 + totalWritten += batchWritten; 62 + } 63 + 64 + return { 65 + success: true, 66 + recordsWritten: totalWritten, 67 + batchCount: batches.length, 68 + }; 69 + }, 70 + );
+2
app/api/inngest/route.tsx
··· 12 12 cleanup_expired_oauth_sessions, 13 13 check_oauth_session, 14 14 } from "./functions/cleanup_expired_oauth_sessions"; 15 + import { write_records_to_pds } from "./functions/write_records_to_pds"; 15 16 16 17 export const { GET, POST, PUT } = serve({ 17 18 client: inngest, ··· 26 27 fix_standard_document_postref, 27 28 cleanup_expired_oauth_sessions, 28 29 check_oauth_session, 30 + write_records_to_pds, 29 31 ], 30 32 });
+1 -1
app/lish/[did]/[publication]/[rkey]/BskyPostContent.tsx
··· 114 114 {showBlueskyLink && ( 115 115 <> 116 116 <a 117 - className="text-tertiary hover:text-accent-contrast" 117 + className="text-tertiary relative hover:text-accent-contrast" 118 118 target="_blank" 119 119 href={url} 120 120 >
+2 -1
app/lish/[did]/[publication]/[rkey]/PostContent.tsx
··· 32 32 import { PublishedPollBlock } from "./Blocks/PublishedPollBlock"; 33 33 import { PollData } from "./fetchPollData"; 34 34 import { ButtonPrimary } from "components/Buttons"; 35 + import { PostNotAvailable } from "components/Blocks/BlueskyPostBlock/BlueskyEmbed"; 35 36 36 37 export function PostContent({ 37 38 blocks, ··· 170 171 case PubLeafletBlocksBskyPost.isMain(b.block): { 171 172 let uri = b.block.postRef.uri; 172 173 let post = bskyPostData.find((p) => p.uri === uri); 173 - if (!post) return <div>no prefetched post rip</div>; 174 + if (!post) return <PostNotAvailable />; 174 175 return ( 175 176 <PubBlueskyPostBlock 176 177 post={post}
+1 -1
app/lish/[did]/[publication]/[rkey]/QuoteHandler.tsx
··· 172 172 <div className="">Share via</div> 173 173 174 174 <a 175 - className="flex gap-1 items-center hover:font-bold px-1 hover:no-underline!" 175 + className="flex relative gap-1 items-center hover:font-bold px-1 hover:no-underline!" 176 176 role="link" 177 177 href={`https://bsky.app/intent/compose?text=${encodeURIComponent(url)}`} 178 178 target="_blank"
+4 -1
appview/index.ts
··· 378 378 379 379 // Now validate the record since we know it contains our quote param 380 380 let record = AppBskyFeedPost.validateRecord(evt.record); 381 - if (!record.success) return; 381 + if (!record.success) { 382 + console.log(record.error); 383 + return; 384 + } 382 385 383 386 let embed: string | null = null; 384 387 if (
+8 -5
components/ActionBar/ActionButton.tsx
··· 7 7 8 8 type ButtonProps = Omit<JSX.IntrinsicElements["button"], "content">; 9 9 10 - export const ActionButton = ( 11 - _props: ButtonProps & { 10 + export const ActionButton = forwardRef< 11 + HTMLButtonElement, 12 + ButtonProps & { 12 13 id?: string; 13 14 icon: React.ReactNode; 14 15 label: React.ReactNode; ··· 20 21 labelOnMobile?: boolean; 21 22 smallOnMobile?: boolean; 22 23 z?: boolean; 23 - }, 24 - ) => { 24 + } 25 + >((_props, ref) => { 25 26 let { 26 27 id, 27 28 icon, ··· 52 53 return ( 53 54 <button 54 55 {...buttonProps} 56 + ref={ref} 55 57 className={` 56 58 actionButton relative font-bold 57 59 rounded-md border ··· 85 87 </div> 86 88 </button> 87 89 ); 88 - }; 90 + }); 91 + ActionButton.displayName = "ActionButton";
+22 -11
components/ActionBar/Publications.tsx
··· 70 70 </> 71 71 )} 72 72 73 - {identity.publications?.map((d) => { 74 - return ( 75 - <PublicationOption 76 - {...d} 77 - key={d.uri} 78 - record={d.record} 79 - current={d.uri === props.currentPubUri} 80 - className={props.optionClassName} 81 - /> 82 - ); 83 - })} 73 + {identity.publications 74 + ?.filter((p) => { 75 + let record = p.record as any; 76 + if (record.preferences?.greengale) return false; 77 + if ( 78 + record.theme && 79 + record.theme.$type && 80 + record.theme.$type !== "pub.leaflet.publication#theme" 81 + ) 82 + return false; 83 + return true; 84 + }) 85 + .map((d) => { 86 + return ( 87 + <PublicationOption 88 + {...d} 89 + key={d.uri} 90 + record={d.record} 91 + current={d.uri === props.currentPubUri} 92 + /> 93 + ); 94 + })} 84 95 <Link 85 96 href={"/lish/createPub"} 86 97 className={`pubListCreateNew group/new-pub text-tertiary hover:text-accent-contrast flex gap-2 items-center p-1 no-underline! ${props.optionClassName}`}
+19 -23
components/Blocks/TextBlock/mountProsemirror.ts
··· 80 80 handlePaste, 81 81 handleClickOn: (_view, _pos, node, _nodePos, _event, direct) => { 82 82 if (!direct) return; 83 + 84 + // Check for didMention inline nodes 85 + if (node?.type === schema.nodes.didMention) { 86 + window.open( 87 + didToBlueskyUrl(node.attrs.did), 88 + "_blank", 89 + "noopener,noreferrer", 90 + ); 91 + return; 92 + } 93 + 94 + // Check for atMention inline nodes 95 + if (node?.type === schema.nodes.atMention) { 96 + const url = atUriToUrl(node.attrs.atURI); 97 + window.open(url, "_blank", "noopener,noreferrer"); 98 + return; 99 + } 83 100 if (node.nodeSize - 2 <= _pos) return; 84 101 85 102 // Check for marks at the clicked position ··· 87 104 const nodeAt2 = node.nodeAt(Math.max(_pos - 2, 0)); 88 105 89 106 // Check for link marks 90 - let linkMark = nodeAt1?.marks.find((f) => f.type === schema.marks.link) || 107 + let linkMark = 108 + nodeAt1?.marks.find((f) => f.type === schema.marks.link) || 91 109 nodeAt2?.marks.find((f) => f.type === schema.marks.link); 92 110 if (linkMark) { 93 111 window.open(linkMark.attrs.href, "_blank"); 94 - return; 95 - } 96 - 97 - // Check for didMention inline nodes 98 - if (nodeAt1?.type === schema.nodes.didMention) { 99 - window.open(didToBlueskyUrl(nodeAt1.attrs.did), "_blank", "noopener,noreferrer"); 100 - return; 101 - } 102 - if (nodeAt2?.type === schema.nodes.didMention) { 103 - window.open(didToBlueskyUrl(nodeAt2.attrs.did), "_blank", "noopener,noreferrer"); 104 - return; 105 - } 106 - 107 - // Check for atMention inline nodes 108 - if (nodeAt1?.type === schema.nodes.atMention) { 109 - const url = atUriToUrl(nodeAt1.attrs.atURI); 110 - window.open(url, "_blank", "noopener,noreferrer"); 111 - return; 112 - } 113 - if (nodeAt2?.type === schema.nodes.atMention) { 114 - const url = atUriToUrl(nodeAt2.attrs.atURI); 115 - window.open(url, "_blank", "noopener,noreferrer"); 116 112 return; 117 113 } 118 114 },
+1 -1
components/ProfilePopover.tsx
··· 33 33 className="max-w-sm p-0! text-center" 34 34 trigger={ 35 35 <div 36 - className="no-underline" 36 + className="no-underline relative" 37 37 onPointerEnter={(e) => { 38 38 if (hoverTimeout.current) { 39 39 window.clearTimeout(hoverTimeout.current);
+469 -358
package-lock.json
··· 12 12 "@atproto/api": "^0.16.9", 13 13 "@atproto/common": "^0.4.8", 14 14 "@atproto/identity": "^0.4.6", 15 - "@atproto/lexicon": "^0.5.1", 15 + "@atproto/lexicon": "^0.6.1", 16 16 "@atproto/oauth-client-node": "^0.3.8", 17 17 "@atproto/sync": "^0.1.34", 18 18 "@atproto/syntax": "^0.3.3", ··· 236 236 } 237 237 }, 238 238 "node_modules/@atproto/api/node_modules/@atproto/syntax": { 239 - "version": "0.4.1", 240 - "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.1.tgz", 241 - "integrity": "sha512-CJdImtLAiFO+0z3BWTtxwk6aY5w4t8orHTMVJgkf++QRJWTxPbIFko/0hrkADB7n2EruDxDSeAgfUGehpH6ngw==", 242 - "license": "MIT" 239 + "version": "0.4.3", 240 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.3.tgz", 241 + "integrity": "sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==", 242 + "license": "MIT", 243 + "dependencies": { 244 + "tslib": "^2.8.1" 245 + } 243 246 }, 244 247 "node_modules/@atproto/api/node_modules/multiformats": { 245 248 "version": "9.9.0", ··· 265 268 } 266 269 }, 267 270 "node_modules/@atproto/common-web": { 268 - "version": "0.4.10", 269 - "resolved": "https://registry.npmjs.org/@atproto/common-web/-/common-web-0.4.10.tgz", 270 - "integrity": "sha512-TLDZSgSKzT8ZgOrBrTGK87J1CXve9TEuY6NVVUBRkOMzRRtQzpFb9/ih5WVS/hnaWVvE30CfuyaetRoma+WKNw==", 271 + "version": "0.4.15", 272 + "resolved": "https://registry.npmjs.org/@atproto/common-web/-/common-web-0.4.15.tgz", 273 + "integrity": "sha512-A4l9gyqUNez8CjZp/Trypz/D3WIQsNj8dN05WR6+RoBbvwc9JhWjKPrm+WoVYc/F16RPdXHLkE3BEJlGIyYIiA==", 271 274 "license": "MIT", 272 275 "dependencies": { 273 - "@atproto/lex-data": "0.0.6", 274 - "@atproto/lex-json": "0.0.6", 276 + "@atproto/lex-data": "^0.0.10", 277 + "@atproto/lex-json": "^0.0.10", 278 + "@atproto/syntax": "^0.4.3", 275 279 "zod": "^3.23.8" 276 280 } 277 281 }, 282 + "node_modules/@atproto/common-web/node_modules/@atproto/lex-data": { 283 + "version": "0.0.10", 284 + "resolved": "https://registry.npmjs.org/@atproto/lex-data/-/lex-data-0.0.10.tgz", 285 + "integrity": "sha512-FDbcy8VIUVzS9Mi1F8SMxbkL/jOUmRRpqbeM1xB4A0fMxeZJTxf6naAbFt4gYF3quu/+TPJGmio6/7cav05FqQ==", 286 + "license": "MIT", 287 + "dependencies": { 288 + "multiformats": "^9.9.0", 289 + "tslib": "^2.8.1", 290 + "uint8arrays": "3.0.0", 291 + "unicode-segmenter": "^0.14.0" 292 + } 293 + }, 294 + "node_modules/@atproto/common-web/node_modules/@atproto/lex-json": { 295 + "version": "0.0.10", 296 + "resolved": "https://registry.npmjs.org/@atproto/lex-json/-/lex-json-0.0.10.tgz", 297 + "integrity": "sha512-L6MyXU17C5ODMeob8myQ2F3xvgCTvJUtM0ew8qSApnN//iDasB/FDGgd7ty4UVNmx4NQ/rtvz8xV94YpG6kneQ==", 298 + "license": "MIT", 299 + "dependencies": { 300 + "@atproto/lex-data": "^0.0.10", 301 + "tslib": "^2.8.1" 302 + } 303 + }, 304 + "node_modules/@atproto/common-web/node_modules/@atproto/syntax": { 305 + "version": "0.4.3", 306 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.3.tgz", 307 + "integrity": "sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==", 308 + "license": "MIT", 309 + "dependencies": { 310 + "tslib": "^2.8.1" 311 + } 312 + }, 313 + "node_modules/@atproto/common-web/node_modules/multiformats": { 314 + "version": "9.9.0", 315 + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", 316 + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==", 317 + "license": "(Apache-2.0 AND MIT)" 318 + }, 278 319 "node_modules/@atproto/common/node_modules/multiformats": { 279 320 "version": "9.9.0", 280 321 "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", ··· 464 505 } 465 506 }, 466 507 "node_modules/@atproto/lex-cli/node_modules/@atproto/syntax": { 467 - "version": "0.4.1", 468 - "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.1.tgz", 469 - "integrity": "sha512-CJdImtLAiFO+0z3BWTtxwk6aY5w4t8orHTMVJgkf++QRJWTxPbIFko/0hrkADB7n2EruDxDSeAgfUGehpH6ngw==", 508 + "version": "0.4.3", 509 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.3.tgz", 510 + "integrity": "sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==", 470 511 "dev": true, 471 - "license": "MIT" 512 + "license": "MIT", 513 + "dependencies": { 514 + "tslib": "^2.8.1" 515 + } 472 516 }, 473 517 "node_modules/@atproto/lex-client": { 474 518 "version": "0.0.7", ··· 614 658 "license": "MIT" 615 659 }, 616 660 "node_modules/@atproto/lexicon": { 617 - "version": "0.5.1", 618 - "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.5.1.tgz", 619 - "integrity": "sha512-y8AEtYmfgVl4fqFxqXAeGvhesiGkxiy3CWoJIfsFDDdTlZUC8DFnZrYhcqkIop3OlCkkljvpSJi1hbeC1tbi8A==", 661 + "version": "0.6.1", 662 + "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.6.1.tgz", 663 + "integrity": "sha512-/vI1kVlY50Si+5MXpvOucelnYwb0UJ6Qto5mCp+7Q5C+Jtp+SoSykAPVvjVtTnQUH2vrKOFOwpb3C375vSKzXw==", 620 664 "license": "MIT", 621 665 "dependencies": { 622 - "@atproto/common-web": "^0.4.3", 623 - "@atproto/syntax": "^0.4.1", 666 + "@atproto/common-web": "^0.4.13", 667 + "@atproto/syntax": "^0.4.3", 624 668 "iso-datestring-validator": "^2.2.2", 625 669 "multiformats": "^9.9.0", 626 670 "zod": "^3.23.8" 627 671 } 628 672 }, 629 673 "node_modules/@atproto/lexicon/node_modules/@atproto/syntax": { 630 - "version": "0.4.1", 631 - "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.1.tgz", 632 - "integrity": "sha512-CJdImtLAiFO+0z3BWTtxwk6aY5w4t8orHTMVJgkf++QRJWTxPbIFko/0hrkADB7n2EruDxDSeAgfUGehpH6ngw==", 633 - "license": "MIT" 674 + "version": "0.4.3", 675 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.3.tgz", 676 + "integrity": "sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==", 677 + "license": "MIT", 678 + "dependencies": { 679 + "tslib": "^2.8.1" 680 + } 634 681 }, 635 682 "node_modules/@atproto/lexicon/node_modules/multiformats": { 636 683 "version": "9.9.0", ··· 715 762 } 716 763 }, 717 764 "node_modules/@atproto/repo/node_modules/@atproto/common": { 718 - "version": "0.5.6", 719 - "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.5.6.tgz", 720 - "integrity": "sha512-rbWoZwHQNP8jcwjCREVecchw8aaoM5A1NCONyb9PVDWOJLRLCzojYMeIS8IbFqXo6NyIByOGddupADkkLeVBGQ==", 765 + "version": "0.5.10", 766 + "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.5.10.tgz", 767 + "integrity": "sha512-A1+4W3JmjZIgmtJFLJBAaoVruZhRL0ANtyjZ91aJR4rjHcZuaQ+v4IFR1UcE6yyTATacLdBk6ADy8OtxXzq14g==", 721 768 "license": "MIT", 722 769 "dependencies": { 723 - "@atproto/common-web": "^0.4.10", 724 - "@atproto/lex-cbor": "0.0.6", 725 - "@atproto/lex-data": "0.0.6", 770 + "@atproto/common-web": "^0.4.15", 771 + "@atproto/lex-cbor": "^0.0.10", 772 + "@atproto/lex-data": "^0.0.10", 726 773 "iso-datestring-validator": "^2.2.2", 727 774 "multiformats": "^9.9.0", 728 775 "pino": "^8.21.0" ··· 731 778 "node": ">=18.7.0" 732 779 } 733 780 }, 734 - "node_modules/@atproto/repo/node_modules/@atproto/lexicon": { 735 - "version": "0.6.0", 736 - "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.6.0.tgz", 737 - "integrity": "sha512-5veb8aD+J5M0qszLJ+73KSFsFrJBgAY/nM1TSAJvGY7fNc9ZAT+PSUlmIyrdye9YznAZ07yktalls/TwNV7cHQ==", 781 + "node_modules/@atproto/repo/node_modules/@atproto/lex-cbor": { 782 + "version": "0.0.10", 783 + "resolved": "https://registry.npmjs.org/@atproto/lex-cbor/-/lex-cbor-0.0.10.tgz", 784 + "integrity": "sha512-5RtV90iIhRNCXXvvETd3KlraV8XGAAAgOmiszUb+l8GySDU/sGk7AlVvArFfXnj/S/GXJq8DP6IaUxCw/sPASA==", 738 785 "license": "MIT", 739 786 "dependencies": { 740 - "@atproto/common-web": "^0.4.7", 741 - "@atproto/syntax": "^0.4.2", 742 - "iso-datestring-validator": "^2.2.2", 743 - "multiformats": "^9.9.0", 744 - "zod": "^3.23.8" 787 + "@atproto/lex-data": "^0.0.10", 788 + "tslib": "^2.8.1" 745 789 } 746 790 }, 747 - "node_modules/@atproto/repo/node_modules/@atproto/syntax": { 748 - "version": "0.4.2", 749 - "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.2.tgz", 750 - "integrity": "sha512-X9XSRPinBy/0VQ677j8VXlBsYSsUXaiqxWVpGGxJYsAhugdQRb0jqaVKJFtm6RskeNkV6y9xclSUi9UYG/COrA==", 751 - "license": "MIT" 791 + "node_modules/@atproto/repo/node_modules/@atproto/lex-data": { 792 + "version": "0.0.10", 793 + "resolved": "https://registry.npmjs.org/@atproto/lex-data/-/lex-data-0.0.10.tgz", 794 + "integrity": "sha512-FDbcy8VIUVzS9Mi1F8SMxbkL/jOUmRRpqbeM1xB4A0fMxeZJTxf6naAbFt4gYF3quu/+TPJGmio6/7cav05FqQ==", 795 + "license": "MIT", 796 + "dependencies": { 797 + "multiformats": "^9.9.0", 798 + "tslib": "^2.8.1", 799 + "uint8arrays": "3.0.0", 800 + "unicode-segmenter": "^0.14.0" 801 + } 752 802 }, 753 803 "node_modules/@atproto/repo/node_modules/multiformats": { 754 804 "version": "9.9.0", ··· 777 827 } 778 828 }, 779 829 "node_modules/@atproto/sync/node_modules/@atproto/syntax": { 780 - "version": "0.4.1", 781 - "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.1.tgz", 782 - "integrity": "sha512-CJdImtLAiFO+0z3BWTtxwk6aY5w4t8orHTMVJgkf++QRJWTxPbIFko/0hrkADB7n2EruDxDSeAgfUGehpH6ngw==", 783 - "license": "MIT" 830 + "version": "0.4.3", 831 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.3.tgz", 832 + "integrity": "sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==", 833 + "license": "MIT", 834 + "dependencies": { 835 + "tslib": "^2.8.1" 836 + } 784 837 }, 785 838 "node_modules/@atproto/sync/node_modules/multiformats": { 786 839 "version": "9.9.0", ··· 812 865 } 813 866 }, 814 867 "node_modules/@atproto/tap/node_modules/@atproto/common": { 815 - "version": "0.5.6", 816 - "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.5.6.tgz", 817 - "integrity": "sha512-rbWoZwHQNP8jcwjCREVecchw8aaoM5A1NCONyb9PVDWOJLRLCzojYMeIS8IbFqXo6NyIByOGddupADkkLeVBGQ==", 868 + "version": "0.5.10", 869 + "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.5.10.tgz", 870 + "integrity": "sha512-A1+4W3JmjZIgmtJFLJBAaoVruZhRL0ANtyjZ91aJR4rjHcZuaQ+v4IFR1UcE6yyTATacLdBk6ADy8OtxXzq14g==", 818 871 "license": "MIT", 819 872 "dependencies": { 820 - "@atproto/common-web": "^0.4.10", 821 - "@atproto/lex-cbor": "0.0.6", 822 - "@atproto/lex-data": "0.0.6", 873 + "@atproto/common-web": "^0.4.15", 874 + "@atproto/lex-cbor": "^0.0.10", 875 + "@atproto/lex-data": "^0.0.10", 823 876 "iso-datestring-validator": "^2.2.2", 824 877 "multiformats": "^9.9.0", 825 878 "pino": "^8.21.0" ··· 828 881 "node": ">=18.7.0" 829 882 } 830 883 }, 884 + "node_modules/@atproto/tap/node_modules/@atproto/lex-cbor": { 885 + "version": "0.0.10", 886 + "resolved": "https://registry.npmjs.org/@atproto/lex-cbor/-/lex-cbor-0.0.10.tgz", 887 + "integrity": "sha512-5RtV90iIhRNCXXvvETd3KlraV8XGAAAgOmiszUb+l8GySDU/sGk7AlVvArFfXnj/S/GXJq8DP6IaUxCw/sPASA==", 888 + "license": "MIT", 889 + "dependencies": { 890 + "@atproto/lex-data": "^0.0.10", 891 + "tslib": "^2.8.1" 892 + } 893 + }, 894 + "node_modules/@atproto/tap/node_modules/@atproto/lex-data": { 895 + "version": "0.0.10", 896 + "resolved": "https://registry.npmjs.org/@atproto/lex-data/-/lex-data-0.0.10.tgz", 897 + "integrity": "sha512-FDbcy8VIUVzS9Mi1F8SMxbkL/jOUmRRpqbeM1xB4A0fMxeZJTxf6naAbFt4gYF3quu/+TPJGmio6/7cav05FqQ==", 898 + "license": "MIT", 899 + "dependencies": { 900 + "multiformats": "^9.9.0", 901 + "tslib": "^2.8.1", 902 + "uint8arrays": "3.0.0", 903 + "unicode-segmenter": "^0.14.0" 904 + } 905 + }, 831 906 "node_modules/@atproto/tap/node_modules/@atproto/syntax": { 832 - "version": "0.4.2", 833 - "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.2.tgz", 834 - "integrity": "sha512-X9XSRPinBy/0VQ677j8VXlBsYSsUXaiqxWVpGGxJYsAhugdQRb0jqaVKJFtm6RskeNkV6y9xclSUi9UYG/COrA==", 835 - "license": "MIT" 907 + "version": "0.4.3", 908 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.3.tgz", 909 + "integrity": "sha512-YoZUz40YAJr5nPwvCDWgodEOlt5IftZqPJvA0JDWjuZKD8yXddTwSzXSaKQAzGOpuM+/A3uXRtPzJJqlScc+iA==", 910 + "license": "MIT", 911 + "dependencies": { 912 + "tslib": "^2.8.1" 913 + } 836 914 }, 837 915 "node_modules/@atproto/tap/node_modules/multiformats": { 838 916 "version": "9.9.0", ··· 854 932 } 855 933 }, 856 934 "node_modules/@atproto/ws-client/node_modules/@atproto/common": { 857 - "version": "0.5.6", 858 - "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.5.6.tgz", 859 - "integrity": "sha512-rbWoZwHQNP8jcwjCREVecchw8aaoM5A1NCONyb9PVDWOJLRLCzojYMeIS8IbFqXo6NyIByOGddupADkkLeVBGQ==", 935 + "version": "0.5.10", 936 + "resolved": "https://registry.npmjs.org/@atproto/common/-/common-0.5.10.tgz", 937 + "integrity": "sha512-A1+4W3JmjZIgmtJFLJBAaoVruZhRL0ANtyjZ91aJR4rjHcZuaQ+v4IFR1UcE6yyTATacLdBk6ADy8OtxXzq14g==", 860 938 "license": "MIT", 861 939 "dependencies": { 862 - "@atproto/common-web": "^0.4.10", 863 - "@atproto/lex-cbor": "0.0.6", 864 - "@atproto/lex-data": "0.0.6", 940 + "@atproto/common-web": "^0.4.15", 941 + "@atproto/lex-cbor": "^0.0.10", 942 + "@atproto/lex-data": "^0.0.10", 865 943 "iso-datestring-validator": "^2.2.2", 866 944 "multiformats": "^9.9.0", 867 945 "pino": "^8.21.0" ··· 870 948 "node": ">=18.7.0" 871 949 } 872 950 }, 951 + "node_modules/@atproto/ws-client/node_modules/@atproto/lex-cbor": { 952 + "version": "0.0.10", 953 + "resolved": "https://registry.npmjs.org/@atproto/lex-cbor/-/lex-cbor-0.0.10.tgz", 954 + "integrity": "sha512-5RtV90iIhRNCXXvvETd3KlraV8XGAAAgOmiszUb+l8GySDU/sGk7AlVvArFfXnj/S/GXJq8DP6IaUxCw/sPASA==", 955 + "license": "MIT", 956 + "dependencies": { 957 + "@atproto/lex-data": "^0.0.10", 958 + "tslib": "^2.8.1" 959 + } 960 + }, 961 + "node_modules/@atproto/ws-client/node_modules/@atproto/lex-data": { 962 + "version": "0.0.10", 963 + "resolved": "https://registry.npmjs.org/@atproto/lex-data/-/lex-data-0.0.10.tgz", 964 + "integrity": "sha512-FDbcy8VIUVzS9Mi1F8SMxbkL/jOUmRRpqbeM1xB4A0fMxeZJTxf6naAbFt4gYF3quu/+TPJGmio6/7cav05FqQ==", 965 + "license": "MIT", 966 + "dependencies": { 967 + "multiformats": "^9.9.0", 968 + "tslib": "^2.8.1", 969 + "uint8arrays": "3.0.0", 970 + "unicode-segmenter": "^0.14.0" 971 + } 972 + }, 873 973 "node_modules/@atproto/ws-client/node_modules/multiformats": { 874 974 "version": "9.9.0", 875 975 "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", ··· 1714 1814 } 1715 1815 }, 1716 1816 "node_modules/@esbuild/aix-ppc64": { 1717 - "version": "0.25.4", 1718 - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", 1719 - "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", 1817 + "version": "0.25.12", 1818 + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", 1819 + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", 1720 1820 "cpu": [ 1721 1821 "ppc64" 1722 1822 ], 1723 1823 "dev": true, 1824 + "license": "MIT", 1724 1825 "optional": true, 1725 1826 "os": [ 1726 1827 "aix" ··· 1730 1831 } 1731 1832 }, 1732 1833 "node_modules/@esbuild/android-arm": { 1733 - "version": "0.25.4", 1734 - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", 1735 - "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", 1834 + "version": "0.25.12", 1835 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", 1836 + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", 1736 1837 "cpu": [ 1737 1838 "arm" 1738 1839 ], 1739 1840 "dev": true, 1841 + "license": "MIT", 1740 1842 "optional": true, 1741 1843 "os": [ 1742 1844 "android" ··· 1746 1848 } 1747 1849 }, 1748 1850 "node_modules/@esbuild/android-arm64": { 1749 - "version": "0.25.4", 1750 - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", 1751 - "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", 1851 + "version": "0.25.12", 1852 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", 1853 + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", 1752 1854 "cpu": [ 1753 1855 "arm64" 1754 1856 ], 1755 1857 "dev": true, 1858 + "license": "MIT", 1756 1859 "optional": true, 1757 1860 "os": [ 1758 1861 "android" ··· 1762 1865 } 1763 1866 }, 1764 1867 "node_modules/@esbuild/android-x64": { 1765 - "version": "0.25.4", 1766 - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", 1767 - "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", 1868 + "version": "0.25.12", 1869 + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", 1870 + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", 1768 1871 "cpu": [ 1769 1872 "x64" 1770 1873 ], 1771 1874 "dev": true, 1875 + "license": "MIT", 1772 1876 "optional": true, 1773 1877 "os": [ 1774 1878 "android" ··· 1777 1881 "node": ">=18" 1778 1882 } 1779 1883 }, 1884 + "node_modules/@esbuild/darwin-arm64": { 1885 + "version": "0.25.12", 1886 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", 1887 + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", 1888 + "cpu": [ 1889 + "arm64" 1890 + ], 1891 + "dev": true, 1892 + "license": "MIT", 1893 + "optional": true, 1894 + "os": [ 1895 + "darwin" 1896 + ], 1897 + "engines": { 1898 + "node": ">=18" 1899 + } 1900 + }, 1780 1901 "node_modules/@esbuild/darwin-x64": { 1781 - "version": "0.25.4", 1782 - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", 1783 - "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", 1902 + "version": "0.25.12", 1903 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", 1904 + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", 1784 1905 "cpu": [ 1785 1906 "x64" 1786 1907 ], 1787 1908 "dev": true, 1909 + "license": "MIT", 1788 1910 "optional": true, 1789 1911 "os": [ 1790 1912 "darwin" ··· 1794 1916 } 1795 1917 }, 1796 1918 "node_modules/@esbuild/freebsd-arm64": { 1797 - "version": "0.25.4", 1798 - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", 1799 - "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", 1919 + "version": "0.25.12", 1920 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", 1921 + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", 1800 1922 "cpu": [ 1801 1923 "arm64" 1802 1924 ], 1803 1925 "dev": true, 1926 + "license": "MIT", 1804 1927 "optional": true, 1805 1928 "os": [ 1806 1929 "freebsd" ··· 1810 1933 } 1811 1934 }, 1812 1935 "node_modules/@esbuild/freebsd-x64": { 1813 - "version": "0.25.4", 1814 - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", 1815 - "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", 1936 + "version": "0.25.12", 1937 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", 1938 + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", 1816 1939 "cpu": [ 1817 1940 "x64" 1818 1941 ], 1819 1942 "dev": true, 1943 + "license": "MIT", 1820 1944 "optional": true, 1821 1945 "os": [ 1822 1946 "freebsd" ··· 1826 1950 } 1827 1951 }, 1828 1952 "node_modules/@esbuild/linux-arm": { 1829 - "version": "0.25.4", 1830 - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", 1831 - "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", 1953 + "version": "0.25.12", 1954 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", 1955 + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", 1832 1956 "cpu": [ 1833 1957 "arm" 1834 1958 ], 1835 1959 "dev": true, 1960 + "license": "MIT", 1836 1961 "optional": true, 1837 1962 "os": [ 1838 1963 "linux" ··· 1842 1967 } 1843 1968 }, 1844 1969 "node_modules/@esbuild/linux-arm64": { 1845 - "version": "0.25.4", 1846 - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", 1847 - "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", 1970 + "version": "0.25.12", 1971 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", 1972 + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", 1848 1973 "cpu": [ 1849 1974 "arm64" 1850 1975 ], 1851 1976 "dev": true, 1977 + "license": "MIT", 1852 1978 "optional": true, 1853 1979 "os": [ 1854 1980 "linux" ··· 1858 1984 } 1859 1985 }, 1860 1986 "node_modules/@esbuild/linux-ia32": { 1861 - "version": "0.25.4", 1862 - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", 1863 - "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", 1987 + "version": "0.25.12", 1988 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", 1989 + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", 1864 1990 "cpu": [ 1865 1991 "ia32" 1866 1992 ], 1867 1993 "dev": true, 1994 + "license": "MIT", 1868 1995 "optional": true, 1869 1996 "os": [ 1870 1997 "linux" ··· 1874 2001 } 1875 2002 }, 1876 2003 "node_modules/@esbuild/linux-loong64": { 1877 - "version": "0.25.4", 1878 - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", 1879 - "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", 2004 + "version": "0.25.12", 2005 + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", 2006 + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", 1880 2007 "cpu": [ 1881 2008 "loong64" 1882 2009 ], 1883 2010 "dev": true, 2011 + "license": "MIT", 1884 2012 "optional": true, 1885 2013 "os": [ 1886 2014 "linux" ··· 1890 2018 } 1891 2019 }, 1892 2020 "node_modules/@esbuild/linux-mips64el": { 1893 - "version": "0.25.4", 1894 - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", 1895 - "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", 2021 + "version": "0.25.12", 2022 + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", 2023 + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", 1896 2024 "cpu": [ 1897 2025 "mips64el" 1898 2026 ], 1899 2027 "dev": true, 2028 + "license": "MIT", 1900 2029 "optional": true, 1901 2030 "os": [ 1902 2031 "linux" ··· 1906 2035 } 1907 2036 }, 1908 2037 "node_modules/@esbuild/linux-ppc64": { 1909 - "version": "0.25.4", 1910 - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", 1911 - "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", 2038 + "version": "0.25.12", 2039 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", 2040 + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", 1912 2041 "cpu": [ 1913 2042 "ppc64" 1914 2043 ], 1915 2044 "dev": true, 2045 + "license": "MIT", 1916 2046 "optional": true, 1917 2047 "os": [ 1918 2048 "linux" ··· 1922 2052 } 1923 2053 }, 1924 2054 "node_modules/@esbuild/linux-riscv64": { 1925 - "version": "0.25.4", 1926 - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", 1927 - "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", 2055 + "version": "0.25.12", 2056 + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", 2057 + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", 1928 2058 "cpu": [ 1929 2059 "riscv64" 1930 2060 ], 1931 2061 "dev": true, 2062 + "license": "MIT", 1932 2063 "optional": true, 1933 2064 "os": [ 1934 2065 "linux" ··· 1938 2069 } 1939 2070 }, 1940 2071 "node_modules/@esbuild/linux-s390x": { 1941 - "version": "0.25.4", 1942 - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", 1943 - "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", 2072 + "version": "0.25.12", 2073 + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", 2074 + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", 1944 2075 "cpu": [ 1945 2076 "s390x" 1946 2077 ], 1947 2078 "dev": true, 2079 + "license": "MIT", 1948 2080 "optional": true, 1949 2081 "os": [ 1950 2082 "linux" ··· 1954 2086 } 1955 2087 }, 1956 2088 "node_modules/@esbuild/linux-x64": { 1957 - "version": "0.25.4", 1958 - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", 1959 - "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", 2089 + "version": "0.25.12", 2090 + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", 2091 + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", 1960 2092 "cpu": [ 1961 2093 "x64" 1962 2094 ], ··· 1971 2103 } 1972 2104 }, 1973 2105 "node_modules/@esbuild/netbsd-arm64": { 1974 - "version": "0.25.4", 1975 - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", 1976 - "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", 2106 + "version": "0.25.12", 2107 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", 2108 + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", 1977 2109 "cpu": [ 1978 2110 "arm64" 1979 2111 ], 1980 2112 "dev": true, 2113 + "license": "MIT", 1981 2114 "optional": true, 1982 2115 "os": [ 1983 2116 "netbsd" ··· 1987 2120 } 1988 2121 }, 1989 2122 "node_modules/@esbuild/netbsd-x64": { 1990 - "version": "0.25.4", 1991 - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", 1992 - "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", 2123 + "version": "0.25.12", 2124 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", 2125 + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", 1993 2126 "cpu": [ 1994 2127 "x64" 1995 2128 ], 1996 2129 "dev": true, 2130 + "license": "MIT", 1997 2131 "optional": true, 1998 2132 "os": [ 1999 2133 "netbsd" ··· 2003 2137 } 2004 2138 }, 2005 2139 "node_modules/@esbuild/openbsd-arm64": { 2006 - "version": "0.25.4", 2007 - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", 2008 - "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", 2140 + "version": "0.25.12", 2141 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", 2142 + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", 2009 2143 "cpu": [ 2010 2144 "arm64" 2011 2145 ], 2012 2146 "dev": true, 2147 + "license": "MIT", 2013 2148 "optional": true, 2014 2149 "os": [ 2015 2150 "openbsd" ··· 2019 2154 } 2020 2155 }, 2021 2156 "node_modules/@esbuild/openbsd-x64": { 2022 - "version": "0.25.4", 2023 - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", 2024 - "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", 2157 + "version": "0.25.12", 2158 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", 2159 + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", 2025 2160 "cpu": [ 2026 2161 "x64" 2027 2162 ], 2028 2163 "dev": true, 2164 + "license": "MIT", 2029 2165 "optional": true, 2030 2166 "os": [ 2031 2167 "openbsd" ··· 2034 2170 "node": ">=18" 2035 2171 } 2036 2172 }, 2173 + "node_modules/@esbuild/openharmony-arm64": { 2174 + "version": "0.25.12", 2175 + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", 2176 + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", 2177 + "cpu": [ 2178 + "arm64" 2179 + ], 2180 + "dev": true, 2181 + "license": "MIT", 2182 + "optional": true, 2183 + "os": [ 2184 + "openharmony" 2185 + ], 2186 + "engines": { 2187 + "node": ">=18" 2188 + } 2189 + }, 2037 2190 "node_modules/@esbuild/sunos-x64": { 2038 - "version": "0.25.4", 2039 - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", 2040 - "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", 2191 + "version": "0.25.12", 2192 + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", 2193 + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", 2041 2194 "cpu": [ 2042 2195 "x64" 2043 2196 ], 2044 2197 "dev": true, 2198 + "license": "MIT", 2045 2199 "optional": true, 2046 2200 "os": [ 2047 2201 "sunos" ··· 2051 2205 } 2052 2206 }, 2053 2207 "node_modules/@esbuild/win32-arm64": { 2054 - "version": "0.25.4", 2055 - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", 2056 - "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", 2208 + "version": "0.25.12", 2209 + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", 2210 + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", 2057 2211 "cpu": [ 2058 2212 "arm64" 2059 2213 ], 2060 2214 "dev": true, 2215 + "license": "MIT", 2061 2216 "optional": true, 2062 2217 "os": [ 2063 2218 "win32" ··· 2067 2222 } 2068 2223 }, 2069 2224 "node_modules/@esbuild/win32-ia32": { 2070 - "version": "0.25.4", 2071 - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", 2072 - "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", 2225 + "version": "0.25.12", 2226 + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", 2227 + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", 2073 2228 "cpu": [ 2074 2229 "ia32" 2075 2230 ], 2076 2231 "dev": true, 2232 + "license": "MIT", 2077 2233 "optional": true, 2078 2234 "os": [ 2079 2235 "win32" ··· 2083 2239 } 2084 2240 }, 2085 2241 "node_modules/@esbuild/win32-x64": { 2086 - "version": "0.25.4", 2087 - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", 2088 - "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", 2242 + "version": "0.25.12", 2243 + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", 2244 + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", 2089 2245 "cpu": [ 2090 2246 "x64" 2091 2247 ], 2092 2248 "dev": true, 2249 + "license": "MIT", 2093 2250 "optional": true, 2094 2251 "os": [ 2095 2252 "win32" ··· 3014 3171 } 3015 3172 }, 3016 3173 "node_modules/@mdx-js/loader/node_modules/source-map": { 3017 - "version": "0.7.4", 3018 - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", 3019 - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", 3174 + "version": "0.7.6", 3175 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", 3176 + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", 3177 + "license": "BSD-3-Clause", 3020 3178 "engines": { 3021 - "node": ">= 8" 3179 + "node": ">= 12" 3022 3180 } 3023 3181 }, 3024 3182 "node_modules/@mdx-js/mdx": { ··· 3065 3223 } 3066 3224 }, 3067 3225 "node_modules/@mdx-js/mdx/node_modules/source-map": { 3068 - "version": "0.7.4", 3069 - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", 3070 - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", 3226 + "version": "0.7.6", 3227 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", 3228 + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", 3229 + "license": "BSD-3-Clause", 3071 3230 "engines": { 3072 - "node": ">= 8" 3231 + "node": ">= 12" 3073 3232 } 3074 3233 }, 3075 3234 "node_modules/@mdx-js/react": { ··· 3160 3319 } 3161 3320 }, 3162 3321 "node_modules/@next/mdx/node_modules/source-map": { 3163 - "version": "0.7.4", 3164 - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", 3165 - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", 3322 + "version": "0.7.6", 3323 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", 3324 + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", 3325 + "license": "BSD-3-Clause", 3166 3326 "engines": { 3167 - "node": ">= 8" 3327 + "node": ">= 12" 3168 3328 } 3169 3329 }, 3170 3330 "node_modules/@next/swc-darwin-arm64": { ··· 7549 7709 } 7550 7710 }, 7551 7711 "node_modules/@tailwindcss/node/node_modules/magic-string": { 7552 - "version": "0.30.19", 7553 - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz", 7554 - "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==", 7712 + "version": "0.30.21", 7713 + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", 7714 + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", 7555 7715 "dev": true, 7556 7716 "license": "MIT", 7557 7717 "dependencies": { ··· 7805 7965 } 7806 7966 }, 7807 7967 "node_modules/@tailwindcss/oxide/node_modules/tar": { 7808 - "version": "7.5.1", 7809 - "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.1.tgz", 7810 - "integrity": "sha512-nlGpxf+hv0v7GkWBK2V9spgactGOp0qvfWRxUMjqHyzrt3SgwE48DIv/FhqPHJYLHpgW1opq3nERbz5Anq7n1g==", 7968 + "version": "7.5.7", 7969 + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.7.tgz", 7970 + "integrity": "sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==", 7811 7971 "dev": true, 7812 - "license": "ISC", 7972 + "license": "BlueOak-1.0.0", 7813 7973 "dependencies": { 7814 7974 "@isaacs/fs-minipass": "^4.0.0", 7815 7975 "chownr": "^3.0.0", ··· 8142 8302 } 8143 8303 }, 8144 8304 "node_modules/@types/unist": { 8145 - "version": "3.0.2", 8146 - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", 8147 - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" 8305 + "version": "3.0.3", 8306 + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", 8307 + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", 8308 + "license": "MIT" 8148 8309 }, 8149 8310 "node_modules/@types/uuid": { 8150 8311 "version": "10.0.0", ··· 8563 8724 } 8564 8725 }, 8565 8726 "node_modules/agent-base": { 8566 - "version": "7.1.1", 8567 - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", 8568 - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", 8569 - "dependencies": { 8570 - "debug": "^4.3.4" 8571 - }, 8727 + "version": "7.1.4", 8728 + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", 8729 + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", 8730 + "license": "MIT", 8572 8731 "engines": { 8573 8732 "node": ">= 14" 8574 8733 } ··· 9047 9206 "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", 9048 9207 "license": "MIT" 9049 9208 }, 9050 - "node_modules/body-parser/node_modules/qs": { 9051 - "version": "6.13.0", 9052 - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", 9053 - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", 9054 - "license": "BSD-3-Clause", 9055 - "dependencies": { 9056 - "side-channel": "^1.0.6" 9057 - }, 9058 - "engines": { 9059 - "node": ">=0.6" 9060 - }, 9061 - "funding": { 9062 - "url": "https://github.com/sponsors/ljharb" 9063 - } 9064 - }, 9065 9209 "node_modules/brace-expansion": { 9066 - "version": "1.1.11", 9067 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 9068 - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 9210 + "version": "1.1.12", 9211 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", 9212 + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", 9069 9213 "dev": true, 9214 + "license": "MIT", 9070 9215 "dependencies": { 9071 9216 "balanced-match": "^1.0.0", 9072 9217 "concat-map": "0.0.1" ··· 9748 9893 "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==" 9749 9894 }, 9750 9895 "node_modules/debug": { 9751 - "version": "4.4.1", 9752 - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", 9753 - "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", 9896 + "version": "4.4.3", 9897 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", 9898 + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", 9754 9899 "license": "MIT", 9755 9900 "dependencies": { 9756 9901 "ms": "^2.1.3" ··· 9904 10049 "node": "*" 9905 10050 } 9906 10051 }, 10052 + "node_modules/doctrine": { 10053 + "version": "2.1.0", 10054 + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", 10055 + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", 10056 + "dev": true, 10057 + "license": "Apache-2.0", 10058 + "dependencies": { 10059 + "esutils": "^2.0.2" 10060 + }, 10061 + "engines": { 10062 + "node": ">=0.10.0" 10063 + } 10064 + }, 9907 10065 "node_modules/dreamopt": { 9908 10066 "version": "0.8.0", 9909 10067 "resolved": "https://registry.npmjs.org/dreamopt/-/dreamopt-0.8.0.tgz", ··· 10800 10958 } 10801 10959 }, 10802 10960 "node_modules/esbuild": { 10803 - "version": "0.25.4", 10804 - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", 10805 - "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", 10961 + "version": "0.25.12", 10962 + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", 10963 + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", 10806 10964 "dev": true, 10807 10965 "hasInstallScript": true, 10808 10966 "license": "MIT", ··· 10813 10971 "node": ">=18" 10814 10972 }, 10815 10973 "optionalDependencies": { 10816 - "@esbuild/aix-ppc64": "0.25.4", 10817 - "@esbuild/android-arm": "0.25.4", 10818 - "@esbuild/android-arm64": "0.25.4", 10819 - "@esbuild/android-x64": "0.25.4", 10820 - "@esbuild/darwin-arm64": "0.25.4", 10821 - "@esbuild/darwin-x64": "0.25.4", 10822 - "@esbuild/freebsd-arm64": "0.25.4", 10823 - "@esbuild/freebsd-x64": "0.25.4", 10824 - "@esbuild/linux-arm": "0.25.4", 10825 - "@esbuild/linux-arm64": "0.25.4", 10826 - "@esbuild/linux-ia32": "0.25.4", 10827 - "@esbuild/linux-loong64": "0.25.4", 10828 - "@esbuild/linux-mips64el": "0.25.4", 10829 - "@esbuild/linux-ppc64": "0.25.4", 10830 - "@esbuild/linux-riscv64": "0.25.4", 10831 - "@esbuild/linux-s390x": "0.25.4", 10832 - "@esbuild/linux-x64": "0.25.4", 10833 - "@esbuild/netbsd-arm64": "0.25.4", 10834 - "@esbuild/netbsd-x64": "0.25.4", 10835 - "@esbuild/openbsd-arm64": "0.25.4", 10836 - "@esbuild/openbsd-x64": "0.25.4", 10837 - "@esbuild/sunos-x64": "0.25.4", 10838 - "@esbuild/win32-arm64": "0.25.4", 10839 - "@esbuild/win32-ia32": "0.25.4", 10840 - "@esbuild/win32-x64": "0.25.4" 10974 + "@esbuild/aix-ppc64": "0.25.12", 10975 + "@esbuild/android-arm": "0.25.12", 10976 + "@esbuild/android-arm64": "0.25.12", 10977 + "@esbuild/android-x64": "0.25.12", 10978 + "@esbuild/darwin-arm64": "0.25.12", 10979 + "@esbuild/darwin-x64": "0.25.12", 10980 + "@esbuild/freebsd-arm64": "0.25.12", 10981 + "@esbuild/freebsd-x64": "0.25.12", 10982 + "@esbuild/linux-arm": "0.25.12", 10983 + "@esbuild/linux-arm64": "0.25.12", 10984 + "@esbuild/linux-ia32": "0.25.12", 10985 + "@esbuild/linux-loong64": "0.25.12", 10986 + "@esbuild/linux-mips64el": "0.25.12", 10987 + "@esbuild/linux-ppc64": "0.25.12", 10988 + "@esbuild/linux-riscv64": "0.25.12", 10989 + "@esbuild/linux-s390x": "0.25.12", 10990 + "@esbuild/linux-x64": "0.25.12", 10991 + "@esbuild/netbsd-arm64": "0.25.12", 10992 + "@esbuild/netbsd-x64": "0.25.12", 10993 + "@esbuild/openbsd-arm64": "0.25.12", 10994 + "@esbuild/openbsd-x64": "0.25.12", 10995 + "@esbuild/openharmony-arm64": "0.25.12", 10996 + "@esbuild/sunos-x64": "0.25.12", 10997 + "@esbuild/win32-arm64": "0.25.12", 10998 + "@esbuild/win32-ia32": "0.25.12", 10999 + "@esbuild/win32-x64": "0.25.12" 10841 11000 } 10842 11001 }, 10843 11002 "node_modules/esbuild-register": { ··· 10850 11009 }, 10851 11010 "peerDependencies": { 10852 11011 "esbuild": ">=0.12 <1" 10853 - } 10854 - }, 10855 - "node_modules/esbuild/node_modules/@esbuild/darwin-arm64": { 10856 - "version": "0.25.4", 10857 - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", 10858 - "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", 10859 - "cpu": [ 10860 - "arm64" 10861 - ], 10862 - "dev": true, 10863 - "optional": true, 10864 - "os": [ 10865 - "darwin" 10866 - ], 10867 - "engines": { 10868 - "node": ">=18" 10869 11012 } 10870 11013 }, 10871 11014 "node_modules/escalade": { ··· 11103 11246 "ms": "^2.1.1" 11104 11247 } 11105 11248 }, 11106 - "node_modules/eslint-plugin-import/node_modules/doctrine": { 11107 - "version": "2.1.0", 11108 - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", 11109 - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", 11110 - "dev": true, 11111 - "dependencies": { 11112 - "esutils": "^2.0.2" 11113 - }, 11114 - "engines": { 11115 - "node": ">=0.10.0" 11116 - } 11117 - }, 11118 11249 "node_modules/eslint-plugin-import/node_modules/semver": { 11119 11250 "version": "6.3.1", 11120 11251 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", ··· 11206 11337 "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" 11207 11338 } 11208 11339 }, 11209 - "node_modules/eslint-plugin-react-hooks/node_modules/zod": { 11210 - "version": "4.1.12", 11211 - "resolved": "https://registry.npmjs.org/zod/-/zod-4.1.12.tgz", 11212 - "integrity": "sha512-JInaHOamG8pt5+Ey8kGmdcAcg3OL9reK8ltczgHTAwNhMys/6ThXHityHxVV2p3fkw/c+MAvBHFVYHFZDmjMCQ==", 11213 - "dev": true, 11214 - "funding": { 11215 - "url": "https://github.com/sponsors/colinhacks" 11216 - } 11217 - }, 11218 11340 "node_modules/eslint-plugin-react-hooks/node_modules/zod-validation-error": { 11219 11341 "version": "4.0.2", 11220 11342 "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz", ··· 11227 11349 "zod": "^3.25.0 || ^4.0.0" 11228 11350 } 11229 11351 }, 11230 - "node_modules/eslint-plugin-react/node_modules/doctrine": { 11231 - "version": "2.1.0", 11232 - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", 11233 - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", 11234 - "dev": true, 11235 - "license": "Apache-2.0", 11236 - "dependencies": { 11237 - "esutils": "^2.0.2" 11238 - }, 11239 - "engines": { 11240 - "node": ">=0.10.0" 11241 - } 11242 - }, 11243 11352 "node_modules/eslint-plugin-react/node_modules/resolve": { 11244 11353 "version": "2.0.0-next.5", 11245 11354 "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", ··· 11433 11542 } 11434 11543 }, 11435 11544 "node_modules/estree-util-to-js/node_modules/source-map": { 11436 - "version": "0.7.4", 11437 - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", 11438 - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", 11545 + "version": "0.7.6", 11546 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", 11547 + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", 11548 + "license": "BSD-3-Clause", 11439 11549 "engines": { 11440 - "node": ">= 8" 11550 + "node": ">= 12" 11441 11551 } 11442 11552 }, 11443 11553 "node_modules/estree-util-visit": { ··· 11599 11709 "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", 11600 11710 "license": "MIT" 11601 11711 }, 11602 - "node_modules/express/node_modules/qs": { 11603 - "version": "6.13.0", 11604 - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", 11605 - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", 11606 - "license": "BSD-3-Clause", 11607 - "dependencies": { 11608 - "side-channel": "^1.0.6" 11609 - }, 11610 - "engines": { 11611 - "node": ">=0.6" 11612 - }, 11613 - "funding": { 11614 - "url": "https://github.com/sponsors/ljharb" 11615 - } 11616 - }, 11617 11712 "node_modules/ext": { 11618 11713 "version": "1.7.0", 11619 11714 "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", ··· 11635 11730 "dev": true 11636 11731 }, 11637 11732 "node_modules/fast-glob": { 11638 - "version": "3.3.2", 11639 - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", 11640 - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", 11733 + "version": "3.3.3", 11734 + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", 11735 + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", 11641 11736 "dev": true, 11737 + "license": "MIT", 11642 11738 "dependencies": { 11643 11739 "@nodelib/fs.stat": "^2.0.2", 11644 11740 "@nodelib/fs.walk": "^1.2.3", 11645 11741 "glob-parent": "^5.1.2", 11646 11742 "merge2": "^1.3.0", 11647 - "micromatch": "^4.0.4" 11743 + "micromatch": "^4.0.8" 11648 11744 }, 11649 11745 "engines": { 11650 11746 "node": ">=8.6.0" ··· 11928 12024 "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", 11929 12025 "dev": true 11930 12026 }, 12027 + "node_modules/fsevents": { 12028 + "version": "2.3.3", 12029 + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", 12030 + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", 12031 + "dev": true, 12032 + "hasInstallScript": true, 12033 + "license": "MIT", 12034 + "optional": true, 12035 + "os": [ 12036 + "darwin" 12037 + ], 12038 + "engines": { 12039 + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 12040 + } 12041 + }, 11931 12042 "node_modules/function-bind": { 11932 12043 "version": "1.1.2", 11933 12044 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", ··· 12178 12289 "dev": true 12179 12290 }, 12180 12291 "node_modules/glob/node_modules/brace-expansion": { 12181 - "version": "2.0.1", 12182 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", 12183 - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", 12292 + "version": "2.0.2", 12293 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 12294 + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 12184 12295 "dev": true, 12296 + "license": "MIT", 12185 12297 "dependencies": { 12186 12298 "balanced-match": "^1.0.0" 12187 12299 } ··· 12721 12833 } 12722 12834 }, 12723 12835 "node_modules/https-proxy-agent": { 12724 - "version": "7.0.4", 12725 - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", 12726 - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", 12836 + "version": "7.0.6", 12837 + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", 12838 + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", 12839 + "license": "MIT", 12727 12840 "dependencies": { 12728 - "agent-base": "^7.0.2", 12841 + "agent-base": "^7.1.2", 12729 12842 "debug": "4" 12730 12843 }, 12731 12844 "engines": { ··· 12765 12878 "license": "BSD-3-Clause" 12766 12879 }, 12767 12880 "node_modules/ignore": { 12768 - "version": "5.3.1", 12769 - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", 12770 - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", 12881 + "version": "5.3.2", 12882 + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", 12883 + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", 12771 12884 "dev": true, 12885 + "license": "MIT", 12772 12886 "engines": { 12773 12887 "node": ">= 4" 12774 12888 } ··· 12837 12951 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 12838 12952 }, 12839 12953 "node_modules/inline-style-parser": { 12840 - "version": "0.2.4", 12841 - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", 12842 - "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==" 12954 + "version": "0.2.7", 12955 + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.7.tgz", 12956 + "integrity": "sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA==", 12957 + "license": "MIT" 12843 12958 }, 12844 12959 "node_modules/inngest": { 12845 12960 "version": "3.40.1", ··· 13000 13115 } 13001 13116 }, 13002 13117 "node_modules/ipaddr.js": { 13003 - "version": "2.2.0", 13004 - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", 13005 - "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", 13118 + "version": "2.3.0", 13119 + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.3.0.tgz", 13120 + "integrity": "sha512-Zv/pA+ciVFbCSBBjGfaKUya/CcGmUHzTydLMaTwrUUEM2DIEO3iZvueGxmacvmN50fGpGVKeTXpb2LcYQxeVdg==", 13006 13121 "license": "MIT", 13007 13122 "engines": { 13008 13123 "node": ">= 10" ··· 14173 14288 } 14174 14289 }, 14175 14290 "node_modules/lru-cache": { 14176 - "version": "10.2.2", 14177 - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", 14178 - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", 14179 - "engines": { 14180 - "node": "14 || >=16.14" 14181 - } 14291 + "version": "10.4.3", 14292 + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", 14293 + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", 14294 + "license": "ISC" 14182 14295 }, 14183 14296 "node_modules/lru-queue": { 14184 14297 "version": "0.1.0", ··· 15282 15395 ] 15283 15396 }, 15284 15397 "node_modules/micromatch": { 15285 - "version": "4.0.7", 15286 - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", 15287 - "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", 15398 + "version": "4.0.8", 15399 + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", 15400 + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", 15288 15401 "dev": true, 15402 + "license": "MIT", 15289 15403 "dependencies": { 15290 15404 "braces": "^3.0.3", 15291 15405 "picomatch": "^2.3.1" ··· 15352 15466 } 15353 15467 }, 15354 15468 "node_modules/miniflare/node_modules/undici": { 15355 - "version": "5.28.4", 15356 - "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz", 15357 - "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==", 15469 + "version": "5.29.0", 15470 + "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", 15471 + "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", 15358 15472 "dev": true, 15473 + "license": "MIT", 15359 15474 "dependencies": { 15360 15475 "@fastify/busboy": "^2.0.0" 15361 15476 }, ··· 15449 15564 "license": "MIT" 15450 15565 }, 15451 15566 "node_modules/multiformats": { 15452 - "version": "13.3.2", 15453 - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.3.2.tgz", 15454 - "integrity": "sha512-qbB0CQDt3QKfiAzZ5ZYjLFOs+zW43vA4uyM8g27PeEuXZybUOFyjrVdP93HPBHMoglibwfkdVwbzfUq8qGcH6g==", 15567 + "version": "13.4.2", 15568 + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.4.2.tgz", 15569 + "integrity": "sha512-eh6eHCrRi1+POZ3dA+Dq1C6jhP1GNtr9CRINMb67OKzqW9I5DUuZM/3jLPlzhgpGeiNUlEGEbkCYChXMCc/8DQ==", 15455 15570 "license": "Apache-2.0 OR MIT" 15456 15571 }, 15457 15572 "node_modules/mustache": { ··· 16037 16152 "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" 16038 16153 }, 16039 16154 "node_modules/path-to-regexp": { 16040 - "version": "6.2.2", 16041 - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz", 16042 - "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==", 16043 - "dev": true 16155 + "version": "6.3.0", 16156 + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", 16157 + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", 16158 + "dev": true, 16159 + "license": "MIT" 16044 16160 }, 16045 16161 "node_modules/pg": { 16046 16162 "version": "8.16.3", ··· 16510 16626 "prosemirror-view": "^1.37.2" 16511 16627 } 16512 16628 }, 16513 - "node_modules/prosemirror-tables/node_modules/prosemirror-view": { 16514 - "version": "1.39.2", 16515 - "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.39.2.tgz", 16516 - "integrity": "sha512-BmOkml0QWNob165gyUxXi5K5CVUgVPpqMEAAml/qzgKn9boLUWVPzQ6LtzXw8Cn1GtRQX4ELumPxqtLTDaAKtg==", 16517 - "license": "MIT", 16518 - "peer": true, 16519 - "dependencies": { 16520 - "prosemirror-model": "^1.20.0", 16521 - "prosemirror-state": "^1.0.0", 16522 - "prosemirror-transform": "^1.1.0" 16523 - } 16524 - }, 16525 16629 "node_modules/prosemirror-trailing-node": { 16526 16630 "version": "3.0.0", 16527 16631 "resolved": "https://registry.npmjs.org/prosemirror-trailing-node/-/prosemirror-trailing-node-3.0.0.tgz", ··· 16548 16652 } 16549 16653 }, 16550 16654 "node_modules/prosemirror-view": { 16551 - "version": "1.37.1", 16552 - "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.37.1.tgz", 16553 - "integrity": "sha512-MEAnjOdXU1InxEmhjgmEzQAikaS6lF3hD64MveTPpjOGNTl87iRLA1HupC/DEV6YuK7m4Q9DHFNTjwIVtqz5NA==", 16655 + "version": "1.41.5", 16656 + "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.41.5.tgz", 16657 + "integrity": "sha512-UDQbIPnDrjE8tqUBbPmCOZgtd75htE6W3r0JCmY9bL6W1iemDM37MZEKC49d+tdQ0v/CKx4gjxLoLsfkD2NiZA==", 16554 16658 "license": "MIT", 16555 16659 "dependencies": { 16556 16660 "prosemirror-model": "^1.20.0", ··· 16629 16733 } 16630 16734 }, 16631 16735 "node_modules/qs": { 16632 - "version": "6.13.1", 16633 - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.1.tgz", 16634 - "integrity": "sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==", 16736 + "version": "6.13.0", 16737 + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", 16738 + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", 16635 16739 "license": "BSD-3-Clause", 16636 16740 "dependencies": { 16637 16741 "side-channel": "^1.0.6" ··· 17371 17475 } 17372 17476 }, 17373 17477 "node_modules/resolve": { 17374 - "version": "1.22.8", 17375 - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", 17376 - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", 17478 + "version": "1.22.11", 17479 + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", 17480 + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", 17481 + "license": "MIT", 17377 17482 "dependencies": { 17378 - "is-core-module": "^2.13.0", 17483 + "is-core-module": "^2.16.1", 17379 17484 "path-parse": "^1.0.7", 17380 17485 "supports-preserve-symlinks-flag": "^1.0.0" 17381 17486 }, 17382 17487 "bin": { 17383 17488 "resolve": "bin/resolve" 17384 17489 }, 17490 + "engines": { 17491 + "node": ">= 0.4" 17492 + }, 17385 17493 "funding": { 17386 17494 "url": "https://github.com/sponsors/ljharb" 17387 17495 } ··· 17604 17712 } 17605 17713 }, 17606 17714 "node_modules/semver": { 17607 - "version": "7.7.2", 17608 - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", 17609 - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", 17715 + "version": "7.7.3", 17716 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 17717 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 17610 17718 "license": "ISC", 17611 17719 "bin": { 17612 17720 "semver": "bin/semver.js" ··· 18235 18343 } 18236 18344 }, 18237 18345 "node_modules/style-to-object": { 18238 - "version": "1.0.8", 18239 - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.8.tgz", 18240 - "integrity": "sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==", 18346 + "version": "1.0.14", 18347 + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.14.tgz", 18348 + "integrity": "sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw==", 18349 + "license": "MIT", 18241 18350 "dependencies": { 18242 - "inline-style-parser": "0.2.4" 18351 + "inline-style-parser": "0.2.7" 18243 18352 } 18244 18353 }, 18245 18354 "node_modules/styled-jsx": { ··· 18805 18914 } 18806 18915 }, 18807 18916 "node_modules/undici": { 18808 - "version": "6.21.3", 18809 - "resolved": "https://registry.npmjs.org/undici/-/undici-6.21.3.tgz", 18810 - "integrity": "sha512-gBLkYIlEnSp8pFbT64yFgGE6UIB9tAkhukC23PmMDCe5Nd+cRqKxSjw5y54MK2AZMgZfJWMaNE4nYUHgi1XEOw==", 18917 + "version": "6.23.0", 18918 + "resolved": "https://registry.npmjs.org/undici/-/undici-6.23.0.tgz", 18919 + "integrity": "sha512-VfQPToRA5FZs/qJxLIinmU59u0r7LXqoJkCzinq3ckNJp3vKEh7jTWN589YQ5+aoAC/TGRLyJLCPKcLQbM8r9g==", 18811 18920 "license": "MIT", 18812 18921 "engines": { 18813 18922 "node": ">=18.17" ··· 19805 19914 } 19806 19915 }, 19807 19916 "node_modules/ws": { 19808 - "version": "8.17.0", 19809 - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.0.tgz", 19810 - "integrity": "sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==", 19917 + "version": "8.19.0", 19918 + "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", 19919 + "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", 19920 + "license": "MIT", 19811 19921 "engines": { 19812 19922 "node": ">=10.0.0" 19813 19923 }, ··· 19995 20105 } 19996 20106 }, 19997 20107 "node_modules/zod": { 19998 - "version": "3.23.8", 19999 - "resolved": "https://registry.npmjs.org/zod/-/zod-3.23.8.tgz", 20000 - "integrity": "sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==", 20108 + "version": "3.25.76", 20109 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 20110 + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 20111 + "license": "MIT", 20001 20112 "funding": { 20002 20113 "url": "https://github.com/sponsors/colinhacks" 20003 20114 }
+3 -2
package.json
··· 23 23 "@atproto/api": "^0.16.9", 24 24 "@atproto/common": "^0.4.8", 25 25 "@atproto/identity": "^0.4.6", 26 - "@atproto/lexicon": "^0.5.1", 26 + "@atproto/lexicon": "^0.6.1", 27 27 "@atproto/oauth-client-node": "^0.3.8", 28 28 "@atproto/sync": "^0.1.34", 29 29 "@atproto/syntax": "^0.3.3", ··· 124 124 "ajv": "^8.17.1", 125 125 "whatwg-url": "^14.0.0", 126 126 "@types/react": "19.2.6", 127 - "@types/react-dom": "19.2.3" 127 + "@types/react-dom": "19.2.3", 128 + "@atproto/lexicon": "^0.6.1" 128 129 } 129 130 }
+2 -5
src/utils/mentionUtils.ts
··· 19 19 const uri = new AtUri(atUri); 20 20 21 21 if (isPublicationCollection(uri.collection)) { 22 - // Publication URL: /lish/{did}/{rkey} 23 - return `/lish/${uri.host}/${uri.rkey}`; 22 + return `/lish/uri/${encodeURIComponent(atUri)}`; 24 23 } else if (isDocumentCollection(uri.collection)) { 25 - // Document URL - we need to resolve this via the API 26 - // For now, create a redirect route that will handle it 27 24 return `/lish/uri/${encodeURIComponent(atUri)}`; 28 25 } 29 26 ··· 42 39 export function handleMentionClick( 43 40 e: MouseEvent | React.MouseEvent, 44 41 type: "did" | "at-uri", 45 - value: string 42 + value: string, 46 43 ) { 47 44 e.preventDefault(); 48 45 e.stopPropagation();