From 0ade75716eb0c74cc5cdf11d5373c4d26ab96803 Mon Sep 17 00:00:00 2001 From: Jake Jarvis Date: Fri, 11 Apr 2025 14:22:06 -0400 Subject: [PATCH] do not double import site-wide opengraph-image.jpg --- .cursorrules | 125 ------------------ app/avatar.jpg | Bin 0 -> 40945 bytes app/layout.tsx | 9 +- app/notes/[slug]/opengraph-image.tsx | 7 +- app/selfie.jpg | Bin 53276 -> 0 bytes components/Header/Header.tsx | 2 +- lib/config/constants.ts | 2 +- package.json | 12 +- pnpm-lock.yaml | 190 +++++++++++++-------------- 9 files changed, 108 insertions(+), 239 deletions(-) delete mode 100644 .cursorrules create mode 100644 app/avatar.jpg delete mode 100644 app/selfie.jpg diff --git a/.cursorrules b/.cursorrules deleted file mode 100644 index f56f6448..00000000 --- a/.cursorrules +++ /dev/null @@ -1,125 +0,0 @@ -You are an expert full-stack TypeScript developer specializing in modern React applications. - -CORE EXPERTISE: -- TypeScript -- Next.js 15 with App Router -- React 19 -- Server Components -- Server Actions -- Parallel and Intercepting Routes -- CSS Modules -- Redis for KV storage -- MDX for blog content -- Zod for runtime type validation - -CODE ARCHITECTURE: -1. Directory Structure: - / - ├── app/ # Next.js App Router pages - ├── components/ # Reusable React components - ├── contexts/ # React contexts - ├── hooks/ # React hooks - ├── lib/ # Utility functions - │ ├── config/ # Configuration constants - │ ├── helpers/ # Utility functions - ├── notes/ # Blog posts in markdown/MDX format - └── public/ # Static files - -2. Component Organization: - - Keep reusable components in ./components/. - - Each component should have its own folder containing a `.tsx` file of the same name (e.g. `ComponentName/ComponentName.tsx`) - - Each of these folders should also have an index.ts file which exports the component for convenience (e.g. `ComponentName/index.tsx` contains `export * from "./ComponentName"` and `export { default } from "./ComponentName"`) - - Implement atomic design principles - -CODING STANDARDS: -1. TypeScript: - - Use strict type checking - - Use const assertions for literals - - Implement proper error handling - - Use discriminated unions for complex states - -2. React Patterns: - - Follow Next.js App Router conventions - - Default to Server Components - - Use `"use client"` only when necessary - - Implement proper error boundaries - - Use React.Suspense for loading states - -3. State Management: - - Use React Server Components for server state - - Implement local state with useState - - Use context sparingly and strategically - -4. Styling: - - Follow mobile-first responsive design - - Implement dark mode with CSS variables - - Use CSS modules for component-specific styles (e.g. `import styles from ./ComponentName.module.css`) - - Maintain consistent color schemes via existing CSS variables declared in ./app/themes.css - -5. Data Fetching & Mutations: - - Prefer Server Actions over API Routes - - Implement proper request caching and revalidation - - Use proper error handling for data fetching - - Implement optimistic updates where appropriate - - Use Zod for API input validation - -6. Security: - - Implement proper CSRF protection - - Use proper Content Security Policy (CSP) - - Sanitize user inputs - - Follow OWASP security guidelines - - Use environment variables for sensitive data - -PERFORMANCE OPTIMIZATION: -- Implement proper image optimization, namely with Next.js's Image component -- Minimize `use client`, `useEffect`, `setState`, etc; favor React Server Components (RSC). -- Prefer server-side rendering via Server Components -- Optimize Web Vitals (LCP, FID, CLS) -- Implement proper caching strategies -- Use proper lazy loading techniques -- Implement proper route segments -- Use parallel routes for complex layouts -- Implement proper streaming with Suspense -- Use partial prerendering (next/partial-prerendering) -- Implement proper ISR strategies -- Implement proper metadata for SEO - -TOOLING: -- ESLint with strict rules -- Prettier for code formatting -- TypeScript strict mode enabled -- CSS Modules for styling - -WHEN WRITING CODE: -1. Prioritize: - - Type safety - - Performance - - Accessibility - - Reusability - - Clean code principles - - SEO - -2. Avoid: - - `any` type assertions - - Class components - - Prop drilling - - Unnecessary client-side JavaScript - - Direct DOM manipulation - -3. Prefer: - - Arrow function expressions - - Server Components where possible - - CSS variables for theming - - Composition over inheritance - - Early returns for conditionals - - Environment variables for configuration - -DOCUMENTATION: -- Document any workarounds or gotchas - -ERROR HANDLING: -- Implement proper error boundaries -- Use typed error handling -- Provide meaningful error messages -- Log errors appropriately -- Implement fallback UI states diff --git a/app/avatar.jpg b/app/avatar.jpg new file mode 100644 index 0000000000000000000000000000000000000000..348c275ae657f4e7ac2157327222dc987ae895a3 GIT binary patch literal 40945 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%0DXF(%K-xRks=8vT6beHu=%v4okD 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 literal 0 HcmV?d00001 diff --git a/app/layout.tsx b/app/layout.tsx index abe061e0..3cc098cc 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -17,8 +17,6 @@ import "./themes.css"; import styles from "./layout.module.css"; -import ogImage from "./opengraph-image.jpg"; - export const metadata: Metadata = defaultMetadata; const RootLayout = ({ children }: Readonly<{ children: React.ReactNode }>) => { @@ -34,12 +32,7 @@ const RootLayout = ({ children }: Readonly<{ children: React.ReactNode }>) => { "@id": `${BASE_URL}/#person`, name: config.authorName, url: BASE_URL, - image: { - "@type": "ImageObject", - contentUrl: `${BASE_URL}${ogImage.src}`, - width: `${ogImage.width}`, - height: `${ogImage.height}`, - }, + image: [`${BASE_URL}/opengraph-image.jpg`], sameAs: [ `${BASE_URL}`, `https://${config.authorSocial?.mastodon}`, diff --git a/app/notes/[slug]/opengraph-image.tsx b/app/notes/[slug]/opengraph-image.tsx index 07f8540e..bb1c6852 100644 --- a/app/notes/[slug]/opengraph-image.tsx +++ b/app/notes/[slug]/opengraph-image.tsx @@ -42,13 +42,14 @@ const getLocalImage = async (src: string): Promise => { // return the raw image data as a buffer return Uint8Array.from(await readFile(imagePath)).buffer; } catch (error) { - // fail silently and return a 1x1 transparent gif instead of crashing console.error(`[og-image] found "${imagePath}" but couldn't read it:`, error); + + // fail silently and return a 1x1 transparent gif instead of crashing return NO_IMAGE; } }; -const Image = async ({ params }: { params: Promise<{ slug: string }> }) => { +const OpenGraphImage = async ({ params }: { params: Promise<{ slug: string }> }) => { try { const { slug } = await params; @@ -233,4 +234,4 @@ const Image = async ({ params }: { params: Promise<{ slug: string }> }) => { } }; -export default Image; +export default OpenGraphImage; diff --git a/app/selfie.jpg b/app/selfie.jpg deleted file mode 100644 index 4697bb36cb9b621e4c325279717b4c415078c17e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53276 zcmb4qRa6~K(Cr+Y009mX+ztd1+(XddPH=a3m*DPBaCaxTyA#~?;KAL3=jZz$?z(H; zr(69pv$|)sRCU$vT|NJn{%rynlA;o#00;yCptl12TLpvw#Q$56|NrG*4}ggTOZHX( zOaO!lz+eLZ`hhM0fPn?Q3Gjae1Op2PkAR2-0{*w+|E<9QK(KFZ5D?&z5aE$v{~P7o zD<+tn86Jz`8;iVxzP%p;HiT8sfKt)HKMqGIJ~ywX_JYmOv8Q)>22ofkV4Er-zpiiV z@(R~!b_erqjoSKGL$qVW8Q(Hwuz0Ym(aij*^#`KrpEjkcYykc2a!C=D7DwD#OA0cr%PL?}UlbD_!j` zd4Vk0xk7d1A??gJ>p^mS=ro~)ycse)x^VZpum|q3z9PUY*1@5gMvN*AXH@f8FP<{@ zYDzBsOH>xZ@{E{kKHO`Q^g~p%U#Zd4cL6}L_st>$Ut=)jAcux;0%d~z{P zV>cKP?SVlq+m!LRgR0COR%yA(tYd9vnIF}M?E^Hy7Ft=9!LF%ns3KjAS3tY4WGm7< zZ*!a{0>z%>+UG*ezH|vjSjNEU`V_bi+Ccp8UU{f{MTRdPXqT)e!}nEZ zQjZ#uUg^PR)f}CAeoO92&-eQ`VAEXlSbbnJS>K$R$Hck5OD7b4s4L{PKyj=}i76 z+(~AY?>Ffu*ENr9LqiFHUHCe9;qq+XOpJ*A`56f+q5GE7TMZh;upNt+K`JrL)TJHT z62DzC6+vHBvhIN#xP%lxKMZ{86u25Apa#j0ox-7{1Z=SjEDi&$nhFx|WT82(n&ys% zfF6the1a62FK%}~SWsdr?^jadVbB_J!sNn%VM%C=-`Rmnq%$2KX?+{lhQ)DC@o!z% zGDU>YFfl#ADB?yJR`cVPrapn!xuKLPLfHOg;N%QrP@jIK0KkaHMAQ?#`h2>YQF$V@g!g>NG@5mi|fj4E1Ds{v_@e;Cg z2tLqYL{5*`EmKpb59Z`ym@7!|reucx$*f(r)M^&9*>L+toH}L6f+4{KMSi#27wQ8- z+kVgYjrvEBc*>jw{(>J5839356HeH>thp9__*p>{G~!;P#JCn5whwM1XDZiUobj=f zY95Ni3A{&KHbj@N4E_0QJx|Xyp$(_4X!fb;$y66G5$T^T_b{Bje!;6`izf`oRn9yy zA}XJiwW>kK0^%Aml#TIiFlPL4X2(+D)SxyJbaay#@hJpcIba4nZfzc6bfic#aoVL+ zOoLH2=AU=62NbP)Kfq=d=1We@!wZQ>4s6Kg`gi~w3{s@90qcHASZ#FW+zk8j%06zL zl+=`poR5%7A~PrJb@al?KcM8sO3TXrn&C!*Nj_5C(q_rAoK`;c^nLsNie}^WjKE_R z^`}LXbD~K_+uqH2foh4|M^a-8E^9uA8y@MQ#(h8!>C?xk&{Ddn;l+=h6NGmo3x+i$ z!Us+wi)6IJ2{5q8WEY_%7|1PQ`sp#W$}w6|Cy&8LXB}eGYRSQ2;s^gl2$*-dWGDoo zB0{St*mpFZwl>dAjkhPep4^poevzSi-7vnG_yXZT&OIO9r_!gYF|f#hmH0aef>aaP zEn0*v#ibZc3bis-1Fc9K?1n1Qmn|La7K!&5GR;<>|Kh2TVP5TlNSXbW(EOX2OG

    WtXv|U7b_XLw`T(o_!ESIv-chmu8 ztP{)SB1S5|f;D#E?NATomGNHmE$^xrx%>Gz&RBcFuCv2nDwRkZMzLw;NH-z?w#)@t z6lv^zr?h1su|no6s0Emqx8Vp%V#}N$v_zlkl ze{C^h(t|0h>_>+CrbV$9sAC=`%Hql)HmjP81i@iCL=;b$p*FwXp+COY$^f#kGus9C{4PpuMesti_ebm2FDAd<=E_Y{sz~D%9e%P}w3B;P{g&jubX0(ek;A9bW z6P5Lnrh47n*I#5^p1~(c1^EM9WPpDOPdB|ykpjAXb;obFY~oexQ(i|d()Y(&WX1ps zEJ8jk83n$7D7KvcXS(QzAEd3C87@ZC#=^qVQ?xo48c28}IdE!8@ zG0b3Ys1$gY%)H9i9O>t9Gu?L!6FTI$L<@}CYr!_Z63S#@pp~Nt!sCCKXQ`POx%K(X z>I*9;Ra*_%4I?8;vOedA8^L;Ql=x9BV#OsZI_T84*Nss|YOq0STB`+F4pFB|BKee5 zF8?l@x8iTgX?&*U-!`9R zp+=@J&q_n^`Ian<+=^4|c`QDz@UvNx;K(|mU-oynFqU4zC||!Ee*sIp69&t+sR{dw zgw-i)8Yq@x3;N`fq0o`LhGls{iPOZLE1&GnVoafv(%Jo3#K$|)wOaD{p}`cH*z0+D zN)`jo`VCH!GN-=bzx6sh;mCSuwpxMuNaM900H7nv0#IEq;~o z=cSEUhYSZZ3ezrGf@1SGZlq-Pz@TOXNy;E&WlO?Pg=S2dD5@I9*S@-n!AiG`@HEre z_D5~rS2cOmVtouaVKn*_0+m@!qy?t1!ZVi-Ew*8onT_kS3-$NO1~cNnkpXgF7Fa+J z8#U)%G(6;tIZ}-thFz1QFxbqbJhrEm8%qNIU9{#c&Uf=(1vv~*n815+Rw+zMw?MD} zQb%(|g+fAdWau|DCD#VuPR?=G9a@~_q( z?t^Vyt>5y6X{m@Qw2{O49GtuYbQnw&*8t#){}}{lR)#8|h3ZI*V$9%R&?`Ylpn!Si zhpZ+UH#Ox;)7|A4iUKw&*!@`eh&vo-xkXd+sj%Q-`dI>nEpT zVS7hpg*djQx8HB3_fo$BtQhz-FxVr8q^W<7=&(F(cZ0`UIyKwjML&r$ zRTUC{`k=@tH1f?Br2azw4=|T2obix@RXt<*v@AvriCDtv(-U6{M^*#TU%{uL#)Dmm z1w1H|_TVH-hk<4oK+2AI7eQ*1K3>MccbOS9pMv==7lOrZ&K0*x?trh^A~hVzCnz5H z+q9-!Yi?>MbKW3<;BPV3hl(~=h0<|u1Cbz6Wa6O5IERf{bn_ZZoJ;%cth>E{!5g+k z;*qj^L)<$)6&3AsX4S^b4Ex(mT(%?okL5|0+p3m@lL`c$;PLx(_HTVi6lDy-3l{r7 zJ>p!N&J>T^xaCKz|L8WXGdj-cYxsF$;1hRuch`K0A6_pheT<=2)PsJ>`cbe!sCBF_ z!aAIZRPx6Mf`5b)P$^eCOBX{cUuBEJ(64k76HmfBuK6p$yWD{)(9L_q|e+nl3uo_j_p(q#T zLWd^~00;s`7EB08)q12zu8_NRe!@f?hfKDs+zK0iWTek6qB?rw`?F0hV#MbPGVN=& zauR_8f&OL|IRN|b&+*!VaIBO9Ww>BOoDsxO8ZaIJKhuq~y~||X!j7z`b^Yf)lp
      $3o$jY>`PLdw+)snl}l!(5t*%=`r&| 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

      yu$3y_M`@dubm|S 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 Wsd; diff --git a/lib/config/constants.ts b/lib/config/constants.ts index c373cf18..65793fb1 100644 --- a/lib/config/constants.ts +++ b/lib/config/constants.ts @@ -3,7 +3,7 @@ export const POSTS_DIR = "notes"; // path to an image used in various places to represent the site, relative to project root // IMPORTANT: must be included in next.config.ts under "outputFileTracingIncludes" -export const AVATAR_PATH = "app/selfie.jpg"; +export const AVATAR_PATH = "app/avatar.jpg"; // maximum width of content wrapper (e.g. for images) in pixels export const MAX_WIDTH = 865; diff --git a/package.json b/package.json index 62d74e6f..ff2c67ba 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,8 @@ "@giscus/react": "^3.1.0", "@mdx-js/loader": "^3.1.0", "@mdx-js/react": "^3.1.0", - "@next/bundle-analyzer": "15.3.1-canary.4", - "@next/mdx": "15.3.1-canary.4", + "@next/bundle-analyzer": "15.3.1-canary.5", + "@next/mdx": "15.3.1-canary.5", "@octokit/graphql": "^8.2.2", "@octokit/graphql-schema": "^15.26.0", "@t3-oss/env-nextjs": "^0.12.0", @@ -37,7 +37,7 @@ "geist": "^1.3.1", "html-entities": "^2.6.0", "lucide-react": "0.487.0", - "next": "15.3.1-canary.4", + "next": "15.3.1-canary.5", "polished": "^4.3.1", "prop-types": "^15.8.1", "react": "19.1.0", @@ -74,13 +74,13 @@ "@types/mdx": "^2.0.13", "@types/node": "^22.14.0", "@types/prop-types": "^15.7.14", - "@types/react": "^19.1.0", + "@types/react": "^19.1.1", "@types/react-dom": "^19.1.2", "@types/react-is": "^19.0.0", "babel-plugin-react-compiler": "19.0.0-beta-e993439-20250405", "cross-env": "^7.0.3", "eslint": "^9.24.0", - "eslint-config-next": "15.3.1-canary.4", + "eslint-config-next": "15.3.1-canary.5", "eslint-config-prettier": "^10.1.2", "eslint-plugin-css-modules": "^2.12.0", "eslint-plugin-import": "^2.31.0", @@ -91,7 +91,7 @@ "eslint-plugin-react-compiler": "19.0.0-beta-e993439-20250405", "eslint-plugin-react-hooks": "^5.2.0", "husky": "^9.1.7", - "lint-staged": "^15.5.0", + "lint-staged": "^15.5.1", "prettier": "^3.5.3", "schema-dts": "^1.1.5", "stylelint": "^16.18.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index afe8aade..90ea0dfc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -25,13 +25,13 @@ importers: version: 3.1.0(acorn@8.14.1) '@mdx-js/react': specifier: ^3.1.0 - version: 3.1.0(@types/react@19.1.0)(react@19.1.0) + version: 3.1.0(@types/react@19.1.1)(react@19.1.0) '@next/bundle-analyzer': - specifier: 15.3.1-canary.4 - version: 15.3.1-canary.4 + specifier: 15.3.1-canary.5 + version: 15.3.1-canary.5 '@next/mdx': - specifier: 15.3.1-canary.4 - version: 15.3.1-canary.4(@mdx-js/loader@3.1.0(acorn@8.14.1))(@mdx-js/react@3.1.0(@types/react@19.1.0)(react@19.1.0)) + specifier: 15.3.1-canary.5 + version: 15.3.1-canary.5(@mdx-js/loader@3.1.0(acorn@8.14.1))(@mdx-js/react@3.1.0(@types/react@19.1.1)(react@19.1.0)) '@octokit/graphql': specifier: ^8.2.2 version: 8.2.2 @@ -61,7 +61,7 @@ importers: version: 4.2.2 geist: specifier: ^1.3.1 - version: 1.3.1(next@15.3.1-canary.4(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)) + version: 1.3.1(next@15.3.1-canary.5(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)) html-entities: specifier: ^2.6.0 version: 2.6.0 @@ -69,8 +69,8 @@ importers: specifier: 0.487.0 version: 0.487.0(react@19.1.0) next: - specifier: 15.3.1-canary.4 - version: 15.3.1-canary.4(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + specifier: 15.3.1-canary.5 + version: 15.3.1-canary.5(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) polished: specifier: ^4.3.1 version: 4.3.1 @@ -88,7 +88,7 @@ importers: version: 19.1.0(react@19.1.0) react-innertext: specifier: ^1.1.5 - version: 1.1.5(@types/react@19.1.0)(react@19.1.0) + version: 1.1.5(@types/react@19.1.1)(react@19.1.0) react-is: specifier: 19.1.0 version: 19.1.0 @@ -100,7 +100,7 @@ importers: version: 2.0.0(react@19.1.0)(schema-dts@1.1.5)(typescript@5.8.3) react-textarea-autosize: specifier: ^8.5.9 - version: 8.5.9(@types/react@19.1.0)(react@19.1.0) + version: 8.5.9(@types/react@19.1.1)(react@19.1.0) react-timeago: specifier: ^8.0.0 version: 8.0.0(react@19.1.0) @@ -175,11 +175,11 @@ importers: specifier: ^15.7.14 version: 15.7.14 '@types/react': - specifier: ^19.1.0 - version: 19.1.0 + specifier: ^19.1.1 + version: 19.1.1 '@types/react-dom': specifier: ^19.1.2 - version: 19.1.2(@types/react@19.1.0) + version: 19.1.2(@types/react@19.1.1) '@types/react-is': specifier: ^19.0.0 version: 19.0.0 @@ -193,8 +193,8 @@ importers: specifier: ^9.24.0 version: 9.24.0 eslint-config-next: - specifier: 15.3.1-canary.4 - version: 15.3.1-canary.4(eslint@9.24.0)(typescript@5.8.3) + specifier: 15.3.1-canary.5 + version: 15.3.1-canary.5(eslint@9.24.0)(typescript@5.8.3) eslint-config-prettier: specifier: ^10.1.2 version: 10.1.2(eslint@9.24.0) @@ -226,8 +226,8 @@ importers: specifier: ^9.1.7 version: 9.1.7 lint-staged: - specifier: ^15.5.0 - version: 15.5.0 + specifier: ^15.5.1 + version: 15.5.1 prettier: specifier: ^3.5.3 version: 3.5.3 @@ -648,17 +648,17 @@ packages: '@napi-rs/wasm-runtime@0.2.8': resolution: {integrity: sha512-OBlgKdX7gin7OIq4fadsjpg+cp2ZphvAIKucHsNfTdJiqdOmOEwQd/bHi0VwNrcw5xpBJyUw6cK/QilCqy1BSg==} - '@next/bundle-analyzer@15.3.1-canary.4': - resolution: {integrity: sha512-q0iV+zSn8iyTWexikyO/Jwr/Of5Dc+MYFwJmCz201JcoL0hZsjSdF+Kk+KGf8XyzO7+KYGCPtmcQo7yb/P3EWw==} + '@next/bundle-analyzer@15.3.1-canary.5': + resolution: {integrity: sha512-zEw12HO8APi6FiBFk8PLIaiF15lWxZteo+fEB/uxHlW85VKV6pYjc8lnfzmZ8ErinozawwXXTGkfdywA4tEoGg==} - '@next/env@15.3.1-canary.4': - resolution: {integrity: sha512-Bw464vR3fVUrhHQOh0o0ilXQ6wg6OvsNn3afUTjm1a0n0JmJJ+n9M1041xmBHSBGWUfTe74HepSmy79sF8EDlA==} + '@next/env@15.3.1-canary.5': + resolution: {integrity: sha512-WpDbxklJSIcLoQIoA4IG+9SCkvf0utHigM4Wa2pwepwIORu1aTCSCFCXL5IVKLiA0yFmaBmMmwS4wiTRiy8j/g==} - '@next/eslint-plugin-next@15.3.1-canary.4': - resolution: {integrity: sha512-tnFDX05E25frvKDW3YIQFM2HKjBmeR6jD6dEhc1EiQknVNSc42Qc7XD0ViisYeBMKDvJJksExSLY9NYl4wXamQ==} + '@next/eslint-plugin-next@15.3.1-canary.5': + resolution: {integrity: sha512-nh0ouMASkbrIjAHt63BgOyldN+w0DTQKabr+WB+ZLfKePxWixVmtxPmAyYjeHeoQjPwDQiuf/cZZDMOVhXpstA==} - '@next/mdx@15.3.1-canary.4': - resolution: {integrity: sha512-p6tASLmthIoxLCmkJwCMrSfFGxH4Yn46pNsSV6iOqSOCfMEdErB54Qiik+hkjONze01QoR+0dsXeP0bXQSjdZQ==} + '@next/mdx@15.3.1-canary.5': + resolution: {integrity: sha512-VWK6Q6QtLzRq9D0qZSEIuY2KNalzh5xRuO4VZAVALHVTllAYU6Tl5h+6Rn0PqlWlMQdnpVyPVsK96vtejXGLJw==} peerDependencies: '@mdx-js/loader': '>=0.15.0' '@mdx-js/react': '>=0.15.0' @@ -668,50 +668,50 @@ packages: '@mdx-js/react': optional: true - '@next/swc-darwin-arm64@15.3.1-canary.4': - resolution: {integrity: sha512-ZR497D00W62Tf566uakD+VvA/2Cmagix3suVlB7TxLSPxXFAU5DeGQvaT9jkP+x1lEKggcZ+chI1CB9CcjvlTQ==} + '@next/swc-darwin-arm64@15.3.1-canary.5': + resolution: {integrity: sha512-KrfaIYP5Hk9tfhTkbSiw5x2zgkf8AymXOEmsbTEES5SHJspBQILz2E3+CHcv/nOX1KNtcLIw7CsKQJcjtbMp8A==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@next/swc-darwin-x64@15.3.1-canary.4': - resolution: {integrity: sha512-dX0X7NG6goshCgbKsSzn6wVzgkRlUqRXMjO9E46B6HqcV/L8l15rMVhWr8zBzDt/7gEmAylnlnML8Zqv9BiF1Q==} + '@next/swc-darwin-x64@15.3.1-canary.5': + resolution: {integrity: sha512-55wC4hK6eETWDLy92z21FUupfZSiLgDpKUmjq3kBcvUVo6g3SBdv6zGuarB7q6zUbSj/uHyfFTJJ0oQDbf/0Qw==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@next/swc-linux-arm64-gnu@15.3.1-canary.4': - resolution: {integrity: sha512-ehE8KbvyBa7grVzC+n+L9CHbainjg362coYObhak3Jktnvb0uPf/m2kqgfN3UBzGSAczvcAuEbsLulFifAnFrw==} + '@next/swc-linux-arm64-gnu@15.3.1-canary.5': + resolution: {integrity: sha512-AbWLET944TulFe7gTx8f0bNiCQHm1is+830KtE30dhc1g6wkDVcW3VZUdbzXSlw3UqX9kHw+RWWLCqQ84753Eg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@next/swc-linux-arm64-musl@15.3.1-canary.4': - resolution: {integrity: sha512-5NBstNVZeRP0OeRQGZqQGmrUdMVsMS556BekDeFqgwMqN/Ibq/EYwMMn1dkP26Dln9qIOj167Mde9CC2c3SQUg==} + '@next/swc-linux-arm64-musl@15.3.1-canary.5': + resolution: {integrity: sha512-STx1PweYLyRCbHr0SAkc1vFfPeWlkv+6oNPP2cqErLb1/XZxAoTbINod+a7mBo+YtsTWaXsOEkIg/+HdfnaZGg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@next/swc-linux-x64-gnu@15.3.1-canary.4': - resolution: {integrity: sha512-6CVq5yFWj2uZ3VgSl0OcCVVfH+EZhOqDocvCeXRaEvpVWq0s9zXPA6GgZghNY7Z5YSZXkB6z7Qi3xG+hzNLQ0A==} + '@next/swc-linux-x64-gnu@15.3.1-canary.5': + resolution: {integrity: sha512-hebj8KYW/kV/VtVKrblBOY6pcYdSmzaP3PDwN7DZtHi4w0VXzYw+kHrrT8gS5Vdh/tOXVopmczCSzeOZ08fkaQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@next/swc-linux-x64-musl@15.3.1-canary.4': - resolution: {integrity: sha512-3AiB/lUOa8QMsUM4KW0IYuMqvvMLQyANb13pGKihemtYUEjPS4/Jf5/vkz0qWF0AOP/1DNECdKpCIenU2C2pIA==} + '@next/swc-linux-x64-musl@15.3.1-canary.5': + resolution: {integrity: sha512-n61Fo2hy/fb2deq8F57S3aBjw83A+d38aHXFAIkagGKrp2p66+8mLJsK4jkIIcdzUDxwcofE/zTpmAZO3gWB4A==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@next/swc-win32-arm64-msvc@15.3.1-canary.4': - resolution: {integrity: sha512-WACNwz1q2DtYqZXj+IjGME3D6XxRkkyuynMyC6d4tH5IahnxiwkJtfaRE1DwWWbVUPQ6TtevSEgCOh3eFk5yFQ==} + '@next/swc-win32-arm64-msvc@15.3.1-canary.5': + resolution: {integrity: sha512-TYoCAjSMgok2sKuewfujwWwETAOdcrKCMBym+06bXG2B4699V8YQAQSNyHgvNWznJn7/cjKa/SnVWcyrbVKfCg==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@next/swc-win32-x64-msvc@15.3.1-canary.4': - resolution: {integrity: sha512-qbmYHxGD3MaI3OJ0NLRcBhfDoSnkvqqrZNmPIuPSlkOUlj+eIuyGtWMRocaYCGTEvQstlspymIsVzSfiyI+6ng==} + '@next/swc-win32-x64-msvc@15.3.1-canary.5': + resolution: {integrity: sha512-lW6MVQ3kcklXbiN/gHyJXbgihwBI4z+o7clOEv6ghvuMYTB7pgQ4tBKALKadadP8z+klM471+gXnmLKA5L8ObA==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -919,8 +919,8 @@ packages: '@types/react-is@19.0.0': resolution: {integrity: sha512-71dSZeeJ0t3aoPyY9x6i+JNSvg5m9EF2i2OlSZI5QoJuI8Ocgor610i+4A10TQmURR+0vLwcVCEYFpXdzM1Biw==} - '@types/react@19.1.0': - resolution: {integrity: sha512-UaicktuQI+9UKyA4njtDOGBD/67t8YEBt2xdfqu8+gP9hqPUPsiXlNPcpS2gVdjmis5GKPG3fCxbQLVgxsQZ8w==} + '@types/react@19.1.1': + resolution: {integrity: sha512-ePapxDL7qrgqSF67s0h9m412d9DbXyC1n59O2st+9rjuuamWsZuD2w55rqY12CbzsZ7uVXb5Nw0gEp9Z8MMutQ==} '@types/supports-color@8.1.3': resolution: {integrity: sha512-Hy6UMpxhE3j1tLpl27exp1XqHD7n8chAiNPzWfz16LPZoMMoSc4dzLl6w9qijkEb/r5O1ozdu1CWGA2L83ZeZg==} @@ -1560,8 +1560,8 @@ packages: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} engines: {node: '>=12'} - eslint-config-next@15.3.1-canary.4: - resolution: {integrity: sha512-p3T1P38jo07FCliTSl5AajjEN3MtXVwaK5wpAM63Ied3MYafGwL5S1COB8H73loIlW7yN9bVQM82VlHCswQUmg==} + eslint-config-next@15.3.1-canary.5: + resolution: {integrity: sha512-1KKbmoCHauAka8zqRH4lvTMqkPMHP57XkwVnhYSv26yH6c5XjgLQn8IxaE/SB0+P1BzyUsVqi1OLwisk2E0kuw==} peerDependencies: eslint: ^7.23.0 || ^8.0.0 || ^9.0.0 typescript: '>=3.3.1' @@ -2360,8 +2360,8 @@ packages: resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - lint-staged@15.5.0: - resolution: {integrity: sha512-WyCzSbfYGhK7cU+UuDDkzUiytbfbi0ZdPy2orwtM75P3WTtQBzmG40cCxIa8Ii2+XjfxzLH6Be46tUfWS85Xfg==} + lint-staged@15.5.1: + resolution: {integrity: sha512-6m7u8mue4Xn6wK6gZvSCQwBvMBR36xfY24nF5bMTf2MHDYG6S3yhJuOgdYVw99hsjyDt2d4z168b3naI8+NWtQ==} engines: {node: '>=18.12.0'} hasBin: true @@ -2651,8 +2651,8 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - next@15.3.1-canary.4: - resolution: {integrity: sha512-bVUdzmbfd3gEu30Riin463JNwTRbcOY/DlCY/+WhgwUR6Sfu1uJeyl3kGAjw58I+ZoNX2omJVpTd9AMluZ26qA==} + next@15.3.1-canary.5: + resolution: {integrity: sha512-wOhTDbhH3T3tHabR190vbHAZ7D/cGs9TV99ebcNYd54AxYYO1F0Lw29ymPp3rQkCVU6ongfwpC4YHGRJm5fl4g==} engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} hasBin: true peerDependencies: @@ -4169,10 +4169,10 @@ snapshots: - acorn - supports-color - '@mdx-js/react@3.1.0(@types/react@19.1.0)(react@19.1.0)': + '@mdx-js/react@3.1.0(@types/react@19.1.1)(react@19.1.0)': dependencies: '@types/mdx': 2.0.13 - '@types/react': 19.1.0 + '@types/react': 19.1.1 react: 19.1.0 '@napi-rs/wasm-runtime@0.2.8': @@ -4182,48 +4182,48 @@ snapshots: '@tybys/wasm-util': 0.9.0 optional: true - '@next/bundle-analyzer@15.3.1-canary.4': + '@next/bundle-analyzer@15.3.1-canary.5': dependencies: webpack-bundle-analyzer: 4.10.1 transitivePeerDependencies: - bufferutil - utf-8-validate - '@next/env@15.3.1-canary.4': {} + '@next/env@15.3.1-canary.5': {} - '@next/eslint-plugin-next@15.3.1-canary.4': + '@next/eslint-plugin-next@15.3.1-canary.5': dependencies: fast-glob: 3.3.1 - '@next/mdx@15.3.1-canary.4(@mdx-js/loader@3.1.0(acorn@8.14.1))(@mdx-js/react@3.1.0(@types/react@19.1.0)(react@19.1.0))': + '@next/mdx@15.3.1-canary.5(@mdx-js/loader@3.1.0(acorn@8.14.1))(@mdx-js/react@3.1.0(@types/react@19.1.1)(react@19.1.0))': dependencies: source-map: 0.7.4 optionalDependencies: '@mdx-js/loader': 3.1.0(acorn@8.14.1) - '@mdx-js/react': 3.1.0(@types/react@19.1.0)(react@19.1.0) + '@mdx-js/react': 3.1.0(@types/react@19.1.1)(react@19.1.0) - '@next/swc-darwin-arm64@15.3.1-canary.4': + '@next/swc-darwin-arm64@15.3.1-canary.5': optional: true - '@next/swc-darwin-x64@15.3.1-canary.4': + '@next/swc-darwin-x64@15.3.1-canary.5': optional: true - '@next/swc-linux-arm64-gnu@15.3.1-canary.4': + '@next/swc-linux-arm64-gnu@15.3.1-canary.5': optional: true - '@next/swc-linux-arm64-musl@15.3.1-canary.4': + '@next/swc-linux-arm64-musl@15.3.1-canary.5': optional: true - '@next/swc-linux-x64-gnu@15.3.1-canary.4': + '@next/swc-linux-x64-gnu@15.3.1-canary.5': optional: true - '@next/swc-linux-x64-musl@15.3.1-canary.4': + '@next/swc-linux-x64-musl@15.3.1-canary.5': optional: true - '@next/swc-win32-arm64-msvc@15.3.1-canary.4': + '@next/swc-win32-arm64-msvc@15.3.1-canary.5': optional: true - '@next/swc-win32-x64-msvc@15.3.1-canary.4': + '@next/swc-win32-x64-msvc@15.3.1-canary.5': optional: true '@nodelib/fs.scandir@2.1.5': @@ -4454,15 +4454,15 @@ snapshots: '@types/prop-types@15.7.14': {} - '@types/react-dom@19.1.2(@types/react@19.1.0)': + '@types/react-dom@19.1.2(@types/react@19.1.1)': dependencies: - '@types/react': 19.1.0 + '@types/react': 19.1.1 '@types/react-is@19.0.0': dependencies: - '@types/react': 19.1.0 + '@types/react': 19.1.1 - '@types/react@19.1.0': + '@types/react@19.1.1': dependencies: csstype: 3.1.3 @@ -5155,9 +5155,9 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-config-next@15.3.1-canary.4(eslint@9.24.0)(typescript@5.8.3): + eslint-config-next@15.3.1-canary.5(eslint@9.24.0)(typescript@5.8.3): dependencies: - '@next/eslint-plugin-next': 15.3.1-canary.4 + '@next/eslint-plugin-next': 15.3.1-canary.5 '@rushstack/eslint-patch': 1.11.0 '@typescript-eslint/eslint-plugin': 8.29.1(@typescript-eslint/parser@8.29.1(eslint@9.24.0)(typescript@5.8.3))(eslint@9.24.0)(typescript@5.8.3) '@typescript-eslint/parser': 8.29.1(eslint@9.24.0)(typescript@5.8.3) @@ -5576,9 +5576,9 @@ snapshots: functions-have-names@1.2.3: {} - geist@1.3.1(next@15.3.1-canary.4(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)): + geist@1.3.1(next@15.3.1-canary.5(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)): dependencies: - next: 15.3.1-canary.4(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + next: 15.3.1-canary.5(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) gensync@1.0.0-beta.2: {} @@ -6133,7 +6133,7 @@ snapshots: lines-and-columns@2.0.4: {} - lint-staged@15.5.0: + lint-staged@15.5.1: dependencies: chalk: 5.4.1 commander: 13.1.0 @@ -6709,9 +6709,9 @@ snapshots: natural-compare@1.4.0: {} - next@15.3.1-canary.4(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + next@15.3.1-canary.5(@babel/core@7.26.10)(babel-plugin-react-compiler@19.0.0-beta-e993439-20250405)(react-dom@19.1.0(react@19.1.0))(react@19.1.0): dependencies: - '@next/env': 15.3.1-canary.4 + '@next/env': 15.3.1-canary.5 '@swc/counter': 0.1.3 '@swc/helpers': 0.5.15 busboy: 1.6.0 @@ -6721,14 +6721,14 @@ snapshots: react-dom: 19.1.0(react@19.1.0) styled-jsx: 5.1.6(@babel/core@7.26.10)(react@19.1.0) optionalDependencies: - '@next/swc-darwin-arm64': 15.3.1-canary.4 - '@next/swc-darwin-x64': 15.3.1-canary.4 - '@next/swc-linux-arm64-gnu': 15.3.1-canary.4 - '@next/swc-linux-arm64-musl': 15.3.1-canary.4 - '@next/swc-linux-x64-gnu': 15.3.1-canary.4 - '@next/swc-linux-x64-musl': 15.3.1-canary.4 - '@next/swc-win32-arm64-msvc': 15.3.1-canary.4 - '@next/swc-win32-x64-msvc': 15.3.1-canary.4 + '@next/swc-darwin-arm64': 15.3.1-canary.5 + '@next/swc-darwin-x64': 15.3.1-canary.5 + '@next/swc-linux-arm64-gnu': 15.3.1-canary.5 + '@next/swc-linux-arm64-musl': 15.3.1-canary.5 + '@next/swc-linux-x64-gnu': 15.3.1-canary.5 + '@next/swc-linux-x64-musl': 15.3.1-canary.5 + '@next/swc-win32-arm64-msvc': 15.3.1-canary.5 + '@next/swc-win32-x64-msvc': 15.3.1-canary.5 babel-plugin-react-compiler: 19.0.0-beta-e993439-20250405 sharp: 0.34.1 transitivePeerDependencies: @@ -7014,9 +7014,9 @@ snapshots: react: 19.1.0 scheduler: 0.26.0 - react-innertext@1.1.5(@types/react@19.1.0)(react@19.1.0): + react-innertext@1.1.5(@types/react@19.1.1)(react@19.1.0): dependencies: - '@types/react': 19.1.0 + '@types/react': 19.1.1 react: 19.1.0 react-is@16.13.1: {} @@ -7038,12 +7038,12 @@ snapshots: schema-dts: 1.1.5 typescript: 5.8.3 - react-textarea-autosize@8.5.9(@types/react@19.1.0)(react@19.1.0): + react-textarea-autosize@8.5.9(@types/react@19.1.1)(react@19.1.0): dependencies: '@babel/runtime': 7.27.0 react: 19.1.0 - use-composed-ref: 1.4.0(@types/react@19.1.0)(react@19.1.0) - use-latest: 1.3.0(@types/react@19.1.0)(react@19.1.0) + use-composed-ref: 1.4.0(@types/react@19.1.1)(react@19.1.0) + use-latest: 1.3.0(@types/react@19.1.1)(react@19.1.0) transitivePeerDependencies: - '@types/react' @@ -7946,24 +7946,24 @@ snapshots: dependencies: punycode: 2.3.1 - use-composed-ref@1.4.0(@types/react@19.1.0)(react@19.1.0): + use-composed-ref@1.4.0(@types/react@19.1.1)(react@19.1.0): dependencies: react: 19.1.0 optionalDependencies: - '@types/react': 19.1.0 + '@types/react': 19.1.1 - use-isomorphic-layout-effect@1.2.0(@types/react@19.1.0)(react@19.1.0): + use-isomorphic-layout-effect@1.2.0(@types/react@19.1.1)(react@19.1.0): dependencies: react: 19.1.0 optionalDependencies: - '@types/react': 19.1.0 + '@types/react': 19.1.1 - use-latest@1.3.0(@types/react@19.1.0)(react@19.1.0): + use-latest@1.3.0(@types/react@19.1.1)(react@19.1.0): dependencies: react: 19.1.0 - use-isomorphic-layout-effect: 1.2.0(@types/react@19.1.0)(react@19.1.0) + use-isomorphic-layout-effect: 1.2.0(@types/react@19.1.1)(react@19.1.0) optionalDependencies: - '@types/react': 19.1.0 + '@types/react': 19.1.1 use-sync-external-store@1.5.0(react@19.1.0): dependencies: