a|wWS;17&P%#X^dKcq4ynTBZ;QpSlc)*wCzt^L1!}ex{qv*MBz$XJQE3`#f!XmYv#Pa56DdJsRvn#AEjg
zLq8H{P~K>>BNx3{m8wFMm!1pYcKvX?8hzRNP8*W=W(a*>8h1Ue6mNV@485t+?w;o~
z{IU;pFroeyjF>2}I}a!-0Zy6QKXj0swV(?C9(6iw7MehAhl&IXm3To>+Ue+q;f8+}
z9w;h){>VXl;WaFyllg{LUPd{I-hBDA`4*
zZu$y+V;4U>$auXBg&VrP@|mdp7qc$9vn%QZ&!p;t{HI$w?_y>{O}QwZ@=oPu-_Uo@
z1En@VRl&o0I`IV?rA})hl+U-+Y&V?apZSmUyk4dkm#bGwzT|q|07w|UGieyua_7N{
zSUA0dN$O7R;_-xRZ@mj_Es*pi#Q!8CA@$Z8hJqKce>t|0OU>)MO70$)o2l^pUS%zQ
z77z#HY^UOuce_<8rx)Uql%9Lq`bXO^x6CIyy_`sQ?!-%9&-hbT_IEp(u*T
z+9aqt(ZOu#RNEm$A*e#ecH{ahZ@f&e0NqQEvF|L{(=!P!)l*t|$%VW_xR6?}X;WE!
zz|%LPl2>=U%zYl^Lg(#gPnvK@$4G)kG^T#?yzB
zY_y9s|L~zTArfD;^^N^r`0{|X@pZx<3k-T8jF*wnbc$y-{o~$`4|MAqg-}^2~|viK&HmlZzuGQmKe}XMMY=;)Y#jC!PolY%w6I
zL}8q3MSCkj^IzbKz4<1J=*!8Kth9Pzk$`tG6E2}M7JWu2UJ
z6Jc9dq31E#Rk@Dm$*{x&*qjNwYNKkJP%LQ2@95-BvgyQ02wi1+?lBxU&E&M_<|eLh
zV%~c;?_+)Ymv6Z4Ntac#wYG8ZHM)>@{??=a2fDs7R{#J2
literal 0
HcmV?d00001
From cb66b6b6355f3b18b7d93dd6bd4d83869efac4cf Mon Sep 17 00:00:00 2001
From: Steve Chavez
Date: Tue, 30 Sep 2025 14:37:07 -0500
Subject: [PATCH 4/5] feat: blog post postgrest 13 (#38840)
* add CodeTabs component to www
* add to www mdx components
---
.../_blog/2025-09-30-postgrest-13-release.mdx | 204 ++++++
apps/www/app/blog/[slug]/page.tsx | 6 +-
apps/www/components/CodeBlock/CodeBlock.tsx | 23 +-
.../components/CodeBlock/CodeBlock.utils.js | 233 +++++++
.../CodeTabs/CodeTabs.components.tsx | 21 +
apps/www/components/CodeTabs/index.ts | 2 +
.../components/CodeTabs/simple-transform.ts | 48 ++
apps/www/components/CodeTabs/utils.ts | 13 +
apps/www/components/Tabs/Tabs.tsx | 77 +++
apps/www/components/Tabs/index.ts | 2 +
apps/www/lib/authors.json | 8 +
apps/www/lib/mdx/mdxComponents.tsx | 20 +-
apps/www/lib/mdx/mdxSerialize.ts | 16 +-
apps/www/package.json | 12 +-
.../postgrest-13-release.png | Bin 0 -> 22666 bytes
apps/www/public/sitemap_www.xml | 12 +
pnpm-lock.yaml | 598 ++++++++----------
17 files changed, 958 insertions(+), 337 deletions(-)
create mode 100644 apps/www/_blog/2025-09-30-postgrest-13-release.mdx
create mode 100644 apps/www/components/CodeTabs/CodeTabs.components.tsx
create mode 100644 apps/www/components/CodeTabs/index.ts
create mode 100644 apps/www/components/CodeTabs/simple-transform.ts
create mode 100644 apps/www/components/CodeTabs/utils.ts
create mode 100644 apps/www/components/Tabs/Tabs.tsx
create mode 100644 apps/www/components/Tabs/index.ts
create mode 100644 apps/www/public/images/blog/2025-09-30-postgrest-13-release/postgrest-13-release.png
diff --git a/apps/www/_blog/2025-09-30-postgrest-13-release.mdx b/apps/www/_blog/2025-09-30-postgrest-13-release.mdx
new file mode 100644
index 0000000000000..d729893ebfc36
--- /dev/null
+++ b/apps/www/_blog/2025-09-30-postgrest-13-release.mdx
@@ -0,0 +1,204 @@
+---
+title: PostgREST 13
+description: New features and changes in PostgREST version 13.
+author: steve_chavez,laurenceisla,avallete
+image: 2025-09-30-postgrest-13-release/postgrest-13-release.png
+thumb: 2025-09-30-postgrest-13-release/postgrest-13-release.png
+categories:
+ - postgres
+tags:
+ - postgres
+ - postgrest
+ - release-notes
+date: '2025-09-30'
+---
+
+PostgREST 13 is out! It comes with API and Observabilty improvements. In this post, we'll see what's new.
+
+## Spread To-Many relationships
+
+This new feature allows you to represent one-to-many and many-to-many relationships as flat JSON arrays.
+
+For example, if you have database similar to IMDB and you’d like to represent it as a hierarchical JSON structure for your frontend, like so:
+
+```json
+[
+ {
+ "title": "The Shawshank Redemption",
+ "actors": ["Tim Robbins", "Morgan Freeman"],
+ "genres": ["Drama"]
+ },
+ {
+ "title": "The Godfather",
+ "actors": ["Marlon Brando", "Al Pacino"],
+ "genres": ["Drama", "Crime"]
+ },
+ {
+ "title": "The Dark Knight",
+ "actors": ["Christian Bale", "Heath Ledger"],
+ "genres": ["Drama", "Crime", "Action"]
+ }
+]
+```
+
+You can now do it this way:
+
+<$CodeTabs>
+
+```js name=JavaScript
+const { data, error } = await supabase.from('titles').select(`
+ title:primary_title,
+ ...people(actors:primary_name),
+ ...genres(genres:name)
+`)
+```
+
+```bash name=Bash
+curl --get 'https:///titles'
+ -d "select=title:primary_title,...people(actors:primary_name),...genres(genres:name)"
+ -H "Authorization: Bearer "
+```
+
+```swift name=Swift
+try await supabase.from("titles").select(
+"""
+ title:primary_title,
+ ...people(actors:primary_name),
+ ...genres(genres:name)
+""")
+```
+
+$CodeTabs>
+
+The above `...people` is “spreading” the many-to-many relationship between `titles` and `people`, forming a flat array only consisting of the `primary_name` column. This flat array is then renamed to `actors`. We do a similar process for `genres` , which also forms a many-to-many relationship with `people`.
+
+You can see the data model used for this example on this [gist](https://gist.github.com/steve-chavez/93f7ae04b4323e1952710af7129b32cf). There are more details about this feature on the [official docs](https://docs.postgrest.org/en/v13/references/api/resource_embedding.html#spread-to-many-relationships).
+
+## Automatic tsvector convertion
+
+Previously you could only use the full text search operator on `tsvector` columns, now you can do it on `text` and `json/jsonb` columns too:
+
+<$CodeTabs>
+
+```js name=JavaScript
+const { data, error } = await supabase.from('titles').textSearch('primary_name', `'god' & 'father'`)
+```
+
+```bash name=Bash
+curl --get 'https:///titles'
+ -d "primary_name=fts.'god'%26'father"
+ -H "Authorization: Bearer "
+```
+
+```swift name=Swift
+try await supabase
+ .from("titles")
+ .fts("primary_name",value: "'god' & 'father'")
+```
+
+$CodeTabs>
+
+This works because `text` and `json/jsonb` columns will be automatically converted with `to_tsvector`.
+
+To ensure this operation is fast, add an index:
+
+```sql
+create index idx_titles on people
+using gin (to_tsvector('english', primary_name));
+```
+
+## Max Affected
+
+You can now limit to the amount of rows affected by an `update` or `delete` operation with `maxAffected`:
+
+<$CodeTabs>
+
+```js name=JavaScript
+const { data, error } = await supabase
+ .from('people')
+ .update({ primary_name: 'Marlon Brando Jr.' })
+ .eq('nconst', 'nm0000008')
+ .maxAffected(1)
+
+// This is available starting from supabase-js version 2.56.0
+```
+
+```bash name=Bash
+curl -X PATCH 'https:///people' \
+ -d "nconst=eq.nm0000008" \
+ -H "Authorization: Bearer " \
+ -H "Prefer: handling=strict, max-affected=1" \
+ -H "Content-Type: application/json" \
+ -d @- <
+
+If the rows affected by the operation surpass the limit in `maxAffected`, an error will be thrown.
+
+This also works with `rpc()`, given that it modifies rows and returns the affected rows. More on details on the [official docs](https://docs.postgrest.org/en/v13/references/api/preferences.html#max-affected).
+
+## Content-Length header
+
+For observability, you can now verify the response body size in bytes in the `Content-Length` header.
+
+```bash
+HTTP/1.1 200 OK
+Content-Length: 104
+Content-Location: /items
+```
+
+This helps in cases where you want to know which requests consume the most traffic to avoid exceeding egress limits.
+
+## Proxy-Status header
+
+The PostgREST error code is now present in the `Proxy-Status` header.
+
+```bash
+HTTP/1.1 406 Not Acceptable
+Proxy-Status: PostgREST; error=PGRST116
+```
+
+You can check the `Proxy-Status` and `Content-Length` headers in the Supabase Logs Explorer.
+
+## Breaking Changes
+
+### JWT `kid` validation
+
+PostgREST now validates the JWT `kid` claim. If your JWT contains a Key ID (`kid`), it will try to match this with one of the `kid`'s in the configured JSON Web Key Set. Check the [official docs](https://docs.postgrest.org/en/v13/references/auth.html#jwk-kid-validation) for more details.
+
+If you use Supabase Auth or the CLI to create JSON Web Keys, you shouldn’t worry about this change as both systems will ensure `kid`'s are present in the JSON Web Key Set.
+
+For users that integrate with other Auth systems, make sure that both your JWT and JWKS follow the above rules.
+
+### Schema validation in PostgREST search path
+
+The schemas inside `db-schemas` and `db-extra-search-path` are now validated. This means you cannot put a nonexistent schema there, if you do PostgREST will fail with an error message.
+
+If you drop a schema during a migration, you should make sure this is synced with the PostgREST search path, which is possible thanks to postgres transactional DDL:
+
+```sql
+begin;
+drop schema old_schema;
+alter role authenticator set pgrst.db_schemas = 'public, pg_graphql, others'; -- make sure old_schema is not present here
+commit;
+```
+
+## Try it out
+
+PostgREST v13 is now available for all new projects on the Supabase platform, old projects can upgrade to get this new version.
+
+You can look at the full changelog on the [release notes](https://github.com/PostgREST/postgrest/releases/tag/v13.0.0).
diff --git a/apps/www/app/blog/[slug]/page.tsx b/apps/www/app/blog/[slug]/page.tsx
index dd3ce29f66fab..d5f50513a30f5 100644
--- a/apps/www/app/blog/[slug]/page.tsx
+++ b/apps/www/app/blog/[slug]/page.tsx
@@ -39,7 +39,7 @@ async function getCMSPostFromAPI(
const response = await fetch(url.toString(), fetchOptions)
if (!response.ok) {
- console.error('[getCMSPostFromAPI] Non-OK response:', response.status)
+ console.warn('[getCMSPostFromAPI] Non-OK response:', response.status)
return null
}
@@ -47,7 +47,7 @@ async function getCMSPostFromAPI(
return data.success ? data.post : null
} catch (error) {
- console.error('[getCMSPostFromAPI] Error:', error)
+ console.warn('[getCMSPostFromAPI] Error:', error)
return null
}
}
@@ -295,7 +295,7 @@ export default async function BlogPostPage({ params }: { params: Promise
try {
processedContent = await processCMSContent(cmsPost.richContent || cmsPost.content, tocDepth)
} catch (error) {
- console.error('Error processing CMS content, falling back to legacy processing:', error)
+ console.warn('Error processing CMS content, falling back to legacy processing:', error)
// Fallback to legacy processing
const mdxSource = await mdxSerialize(cmsPost.content || '', { tocDepth })
processedContent = {
diff --git a/apps/www/components/CodeBlock/CodeBlock.tsx b/apps/www/components/CodeBlock/CodeBlock.tsx
index 7e333ab0d4b19..e411aec300f6f 100644
--- a/apps/www/components/CodeBlock/CodeBlock.tsx
+++ b/apps/www/components/CodeBlock/CodeBlock.tsx
@@ -13,9 +13,10 @@ import sql from 'react-syntax-highlighter/dist/cjs/languages/hljs/sql'
import yaml from 'react-syntax-highlighter/dist/cjs/languages/hljs/yaml'
import json from 'react-syntax-highlighter/dist/cjs/languages/hljs/json'
import { Button, cn } from 'ui'
-import monokaiCustomTheme from './CodeBlock.utils'
+import monokaiCustomTheme, { codeHikeTheme } from './CodeBlock.utils'
export type LANG = 'js' | 'sql' | 'py' | 'bash' | 'ts' | 'tsx' | 'kotlin' | 'yaml' | 'json'
+
export interface CodeBlockProps {
lang: LANG
startingLineNumber?: number
@@ -25,11 +26,13 @@ export interface CodeBlockProps {
children?: string
size?: 'small' | 'medium' | 'large'
background?: string
+ filename?: string
+ theme?: 'monokai' | 'code-hike'
}
function CodeBlock(props: CodeBlockProps) {
const { resolvedTheme } = useTheme()
- const isDarkTheme = resolvedTheme?.includes('dark')!
+ const isDarkTheme = resolvedTheme?.includes('dark') ?? false
const [copied, setCopied] = useState(false)
const [mounted, setMounted] = useState(false)
@@ -51,6 +54,8 @@ function CodeBlock(props: CodeBlockProps) {
}, 1000)
}
+ const isCodeHikeTheme = props.theme === 'code-hike'
+
let lang = props.lang
? props.lang
: props.className
@@ -111,7 +116,15 @@ function CodeBlock(props: CodeBlockProps) {
{/* @ts-ignore */}
diff --git a/apps/www/components/CodeBlock/CodeBlock.utils.js b/apps/www/components/CodeBlock/CodeBlock.utils.js
index 7eea1da69cec3..4a3da382c6529 100644
--- a/apps/www/components/CodeBlock/CodeBlock.utils.js
+++ b/apps/www/components/CodeBlock/CodeBlock.utils.js
@@ -229,4 +229,237 @@ const monokaiCustomTheme = {
},
}
+// CodeHike theme based on the colors from code-hike.scss
+const codeHikeTheme = {
+ dark: {
+ hljs: {
+ display: 'block',
+ overflowX: 'auto',
+ padding: '0.5em',
+ background: '#2a2929', // --ch-16 dark
+ color: '#f8f8f2', // --ch-4
+ },
+ 'hljs-tag': {
+ color: '#79c0ff', // --ch-2
+ },
+ 'hljs-keyword': {
+ color: '#79c0ff', // --ch-2
+ fontWeight: 'normal',
+ },
+ 'hljs-selector-tag': {
+ color: '#79c0ff', // --ch-2
+ fontWeight: 'normal',
+ },
+ 'hljs-literal': {
+ color: '#79c0ff', // --ch-2
+ fontWeight: 'normal',
+ },
+ 'hljs-strong': {
+ color: '#79c0ff', // --ch-2
+ },
+ 'hljs-name': {
+ color: '#79c0ff', // --ch-2
+ },
+ 'hljs-code': {
+ color: '#569cd6', // --ch-7
+ },
+ 'hljs-class .hljs-title': {
+ color: '#8b949e', // --ch-1
+ },
+ 'hljs-attribute': {
+ color: '#bda4ff', // --ch-5
+ },
+ 'hljs-symbol': {
+ color: '#bda4ff', // --ch-5
+ },
+ 'hljs-regexp': {
+ color: '#bda4ff', // --ch-5
+ },
+ 'hljs-link': {
+ color: '#bda4ff', // --ch-5
+ },
+ 'hljs-string': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-bullet': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-subst': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-title': {
+ color: '#ffcda1', // --ch-3
+ fontWeight: 'normal',
+ },
+ 'hljs-section': {
+ color: '#ffcda1', // --ch-3
+ fontWeight: 'normal',
+ },
+ 'hljs-emphasis': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-type': {
+ color: '#ffcda1', // --ch-3
+ fontWeight: 'normal',
+ },
+ 'hljs-built_in': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-builtin-name': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-selector-attr': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-selector-pseudo': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-addition': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-variable': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-template-tag': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-template-variable': {
+ color: '#ffcda1', // --ch-3
+ },
+ 'hljs-comment': {
+ color: '#8b949e', // --ch-1
+ },
+ 'hljs-quote': {
+ color: '#8b949e', // --ch-1
+ },
+ 'hljs-deletion': {
+ color: '#8b949e', // --ch-1
+ },
+ 'hljs-meta': {
+ color: '#8b949e', // --ch-1
+ },
+ 'hljs-doctag': {
+ fontWeight: 'normal',
+ },
+ 'hljs-selector-id': {
+ fontWeight: 'normal',
+ },
+ },
+ light: {
+ hljs: {
+ display: 'block',
+ overflowX: 'auto',
+ padding: '0.5em',
+ background: '#eeeeee', // --ch-16 light
+ color: '#24292f', // --ch-4
+ },
+ 'hljs-tag': {
+ color: '#0550ae', // --ch-2
+ },
+ 'hljs-keyword': {
+ color: '#0550ae', // --ch-2
+ fontWeight: 'normal',
+ },
+ 'hljs-selector-tag': {
+ color: '#0550ae', // --ch-2
+ fontWeight: 'normal',
+ },
+ 'hljs-literal': {
+ color: '#0550ae', // --ch-2
+ fontWeight: 'normal',
+ },
+ 'hljs-strong': {
+ color: '#0550ae', // --ch-2
+ },
+ 'hljs-name': {
+ color: '#0550ae', // --ch-2
+ },
+ 'hljs-code': {
+ color: '#cf222e', // --ch-7
+ },
+ 'hljs-class .hljs-title': {
+ color: '#6e7781', // --ch-1
+ },
+ 'hljs-attribute': {
+ color: '#8250df', // --ch-5
+ },
+ 'hljs-symbol': {
+ color: '#8250df', // --ch-5
+ },
+ 'hljs-regexp': {
+ color: '#8250df', // --ch-5
+ },
+ 'hljs-link': {
+ color: '#8250df', // --ch-5
+ },
+ 'hljs-string': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-bullet': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-subst': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-title': {
+ color: '#953800', // --ch-3
+ fontWeight: 'normal',
+ },
+ 'hljs-section': {
+ color: '#953800', // --ch-3
+ fontWeight: 'normal',
+ },
+ 'hljs-emphasis': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-type': {
+ color: '#953800', // --ch-3
+ fontWeight: 'normal',
+ },
+ 'hljs-built_in': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-builtin-name': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-selector-attr': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-selector-pseudo': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-addition': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-variable': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-template-tag': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-template-variable': {
+ color: '#953800', // --ch-3
+ },
+ 'hljs-comment': {
+ color: '#6e7781', // --ch-1
+ },
+ 'hljs-quote': {
+ color: '#6e7781', // --ch-1
+ },
+ 'hljs-deletion': {
+ color: '#6e7781', // --ch-1
+ },
+ 'hljs-meta': {
+ color: '#6e7781', // --ch-1
+ },
+ 'hljs-doctag': {
+ fontWeight: 'normal',
+ },
+ 'hljs-selector-id': {
+ fontWeight: 'normal',
+ },
+ },
+}
+
+export { codeHikeTheme }
export default monokaiCustomTheme
diff --git a/apps/www/components/CodeTabs/CodeTabs.components.tsx b/apps/www/components/CodeTabs/CodeTabs.components.tsx
new file mode 100644
index 0000000000000..b15f0d9ba745c
--- /dev/null
+++ b/apps/www/components/CodeTabs/CodeTabs.components.tsx
@@ -0,0 +1,21 @@
+import type { PropsWithChildren } from 'react'
+
+import { cn } from 'ui'
+
+export function NamedCodeBlock({ name, children }: PropsWithChildren<{ name: string }>) {
+ return (
+
+
+ {name}
+
+ {children}
+
+ )
+}
diff --git a/apps/www/components/CodeTabs/index.ts b/apps/www/components/CodeTabs/index.ts
new file mode 100644
index 0000000000000..3366febfa064d
--- /dev/null
+++ b/apps/www/components/CodeTabs/index.ts
@@ -0,0 +1,2 @@
+export { NamedCodeBlock } from './CodeTabs.components'
+export { preprocessMdxWithCodeTabs } from './utils'
diff --git a/apps/www/components/CodeTabs/simple-transform.ts b/apps/www/components/CodeTabs/simple-transform.ts
new file mode 100644
index 0000000000000..8b85b9fb042fd
--- /dev/null
+++ b/apps/www/components/CodeTabs/simple-transform.ts
@@ -0,0 +1,48 @@
+/**
+ * Simple string-based transformation for CodeTabs
+ * This avoids the complex AST manipulation that's causing issues
+ */
+
+export function transformCodeTabs(mdx: string): string {
+ // Pattern to match <$CodeTabs>...$CodeTabs> blocks
+ const codeTabsPattern = /<\$CodeTabs>([\s\S]*?)<\/\$CodeTabs>/g
+
+ return mdx.replace(codeTabsPattern, (match, content) => {
+ // Extract code blocks from the content
+ const codeBlockPattern = /```(\w+)(?:\s+name=([^\s]+))?\s*\n([\s\S]*?)\n```/g
+ const codeBlocks: Array<{ lang: string; name?: string; content: string }> = []
+
+ let blockMatch: RegExpExecArray | null
+ // biome-ignore lint/suspicious/noAssignInExpressions: required for regex loop
+ while ((blockMatch = codeBlockPattern.exec(content)) !== null) {
+ const [, lang, name, blockContent] = blockMatch
+ codeBlocks.push({
+ lang,
+ name: name || `${lang}.${lang === 'bash' ? 'sh' : lang}`,
+ content: blockContent.trim(),
+ })
+ }
+
+ if (codeBlocks.length === 0) {
+ return match // Return original if no code blocks found
+ }
+
+ // Generate the Tabs structure
+ const tabPanels = codeBlocks
+ .map(
+ (block) => `
+
+
+\`\`\`${block.lang}
+${block.content}
+\`\`\`
+
+ `
+ )
+ .join('')
+
+ return `
+${tabPanels}
+`
+ })
+}
diff --git a/apps/www/components/CodeTabs/utils.ts b/apps/www/components/CodeTabs/utils.ts
new file mode 100644
index 0000000000000..e5befcfc12eea
--- /dev/null
+++ b/apps/www/components/CodeTabs/utils.ts
@@ -0,0 +1,13 @@
+import { transformCodeTabs } from './simple-transform'
+
+export function preprocessMdxWithCodeTabs(mdx: string) {
+ try {
+ // Use simple string-based transformation
+ const transformed = transformCodeTabs(mdx)
+ return Promise.resolve(transformed)
+ } catch (error) {
+ console.error('preprocessMdxWithCodeTabs error:', error)
+ // Fallback to returning the original MDX
+ return Promise.resolve(mdx)
+ }
+}
diff --git a/apps/www/components/Tabs/Tabs.tsx b/apps/www/components/Tabs/Tabs.tsx
new file mode 100644
index 0000000000000..4811f9fca94ab
--- /dev/null
+++ b/apps/www/components/Tabs/Tabs.tsx
@@ -0,0 +1,77 @@
+'use client'
+
+import { useState, useEffect } from 'react'
+import { cn, Tabs_Shadcn_, TabsList_Shadcn_, TabsTrigger_Shadcn_, TabsContent_Shadcn_ } from 'ui'
+
+export interface TabsProps {
+ children: React.ReactNode
+ className?: string
+ defaultActiveId?: string
+ listClassNames?: string
+}
+
+export interface TabPanelProps {
+ children: React.ReactNode
+ id: string
+ label: string
+ className?: string
+}
+
+function Tabs({ children, className, defaultActiveId, listClassNames }: TabsProps) {
+ const [mounted, setMounted] = useState(false)
+ const [activeTab, setActiveTab] = useState(defaultActiveId)
+
+ useEffect(() => {
+ setMounted(true)
+ }, [])
+
+ if (!mounted) return null
+
+ // Extract tab panels from children
+ const tabPanels = Array.isArray(children) ? children : [children]
+ const validTabPanels = tabPanels.filter(
+ (child) => child && typeof child === 'object' && 'props' in child && child.props.id
+ )
+
+ if (validTabPanels.length === 0) return null
+
+ const currentActiveTab = activeTab || validTabPanels[0]?.props?.id
+
+ return (
+
+
+
+ {validTabPanels.map((panel) => (
+
+ {panel.props.label}
+
+ ))}
+
+ {validTabPanels.map((panel) => (
+
+ {panel.props.children}
+
+ ))}
+
+
+ )
+}
+
+function TabPanel({ children, id, label, className }: TabPanelProps) {
+ return (
+
+ {children}
+
+ )
+}
+
+export { Tabs, TabPanel }
+export default Tabs
diff --git a/apps/www/components/Tabs/index.ts b/apps/www/components/Tabs/index.ts
new file mode 100644
index 0000000000000..2b7eec56a135c
--- /dev/null
+++ b/apps/www/components/Tabs/index.ts
@@ -0,0 +1,2 @@
+export { Tabs, TabPanel } from './Tabs'
+export type { TabsProps, TabPanelProps } from './Tabs'
diff --git a/apps/www/lib/authors.json b/apps/www/lib/authors.json
index 4940276eb0c25..6e5af52174d17 100644
--- a/apps/www/lib/authors.json
+++ b/apps/www/lib/authors.json
@@ -106,6 +106,14 @@
"author_url": "https://github.com/laurenceisla",
"author_image_url": "https://github.com/laurenceisla.png"
},
+ {
+ "author_id": "avallete",
+ "author": "Andrew Valleteau",
+ "username": "avallete",
+ "position": "Engineering",
+ "author_url": "https://github.com/avallete",
+ "author_image_url": "https://github.com/avallete.png"
+ },
{
"author_id": "supabase",
"author": "Supabase",
diff --git a/apps/www/lib/mdx/mdxComponents.tsx b/apps/www/lib/mdx/mdxComponents.tsx
index 90a00a1908cdc..2e391394b8a04 100644
--- a/apps/www/lib/mdx/mdxComponents.tsx
+++ b/apps/www/lib/mdx/mdxComponents.tsx
@@ -1,6 +1,5 @@
'use client'
-import { PropsWithChildren } from 'react'
import { CH } from '@code-hike/mdx/components'
import dynamic from 'next/dynamic'
import { ArrowUpRight, Triangle } from 'lucide-react'
@@ -14,11 +13,26 @@ import {
Image,
} from 'ui'
import { Admonition } from 'ui-patterns/admonition'
+import type { PropsWithChildren } from 'react'
import type { ImageProps } from 'ui/src/components/Image/Image'
const Avatar = dynamic(() => import('~/components/Avatar'))
const Chart = dynamic(() => import('~/components/Charts/PGCharts'))
const CodeBlock = dynamic(() => import('~/components/CodeBlock/CodeBlock'))
+const Tabs = dynamic(() => import('~/components/Tabs/Tabs'), { ssr: false })
+const TabPanel = dynamic(
+ () => import('~/components/Tabs/Tabs').then((mod) => ({ default: mod.TabPanel })),
+ { ssr: false }
+)
+const NamedCodeBlock = dynamic(
+ () =>
+ import('~/components/CodeTabs').then((mod) => ({
+ default: mod.NamedCodeBlock,
+ })),
+ {
+ ssr: false,
+ }
+)
const ImageFadeStack = dynamic(() => import('~/components/ImageFadeStack'))
const ImageGrid = dynamic(() => import('~/components/ImageGrid'))
const InlineCodeTag = dynamic(() => import('~/components/InlineCode'))
@@ -73,6 +87,9 @@ const BlogCollapsible = ({
export default function mdxComponents(type?: 'blog' | 'lp' | undefined) {
const components = {
CodeBlock,
+ Tabs,
+ TabPanel,
+ NamedCodeBlock,
CH,
h1: (props: any) => ,
h2: (props: any) => ,
@@ -110,6 +127,7 @@ export default function mdxComponents(type?: 'blog' | 'lp' | undefined) {
/>
)
}
+ // biome-ignore lint/a11y/useAltText: provided in props
return
},
Img: ({ zoomable = true, className, ...props }: ImageProps & { wide?: boolean }) => (
diff --git a/apps/www/lib/mdx/mdxSerialize.ts b/apps/www/lib/mdx/mdxSerialize.ts
index 35a43940b50ae..7e4b6d7cd297a 100644
--- a/apps/www/lib/mdx/mdxSerialize.ts
+++ b/apps/www/lib/mdx/mdxSerialize.ts
@@ -2,8 +2,9 @@ import { serialize } from 'next-mdx-remote/serialize'
import rehypeSlug from 'rehype-slug'
import remarkGfm from 'remark-gfm'
-import { CodeHikeConfig, remarkCodeHike } from '@code-hike/mdx'
+import { type CodeHikeConfig, remarkCodeHike } from '@code-hike/mdx'
import codeHikeTheme from 'config/code-hike.theme.json' with { type: 'json' }
+import { preprocessMdxWithCodeTabs } from '~/components/CodeTabs'
// mdx2 needs self-closing tags.
// dragging an image onto a GitHub discussion creates an
@@ -64,13 +65,18 @@ function createRemarkCollectToc(maxDepth: number) {
walk(tree)
// Attach to tree data for retrieval post-serialize
- ;(tree.data || (tree.data = {})).__collectedToc = items
+ if (!tree.data) {
+ tree.data = {}
+ }
+ tree.data.__collectedToc = items
}
}
}
export async function mdxSerialize(source: string, options?: { tocDepth?: number }) {
const formattedSource = addSelfClosingTags(source)
+ // Preprocess MDX to handle CodeTabs transformation
+ const preprocessedSource = await preprocessMdxWithCodeTabs(formattedSource)
const codeHikeOptions: CodeHikeConfig = {
theme: codeHikeTheme,
lineNumbers: true,
@@ -82,7 +88,7 @@ export async function mdxSerialize(source: string, options?: { tocDepth?: number
const tocDepth = options?.tocDepth ?? 2
let collectedToc: TocItem[] = []
- const mdxSource: any = await serialize(formattedSource, {
+ const mdxSource = await serialize(preprocessedSource, {
scope: {
chCodeConfig: codeHikeOptions,
},
@@ -91,10 +97,10 @@ export async function mdxSerialize(source: string, options?: { tocDepth?: number
[remarkCodeHike, codeHikeOptions],
remarkGfm,
// Collect headings into a simple TOC structure
- function () {
+ () => {
const plugin = createRemarkCollectToc(tocDepth)
const transformer = (plugin as any)()
- return function (tree: any) {
+ return (tree: any) => {
transformer(tree)
if (tree?.data?.__collectedToc) {
collectedToc = tree.data.__collectedToc as TocItem[]
diff --git a/apps/www/package.json b/apps/www/package.json
index 45fbe5561ab8b..ad034c28b758e 100644
--- a/apps/www/package.json
+++ b/apps/www/package.json
@@ -26,11 +26,11 @@
"@next/bundle-analyzer": "15.3.1",
"@next/mdx": "15.3.1",
"@octokit/auth-app": "^7.0.0",
- "@payloadcms/live-preview-react": "^3.0.0",
"@octokit/core": "^6.0.0",
"@octokit/graphql": "^8.0.0",
"@octokit/plugin-paginate-graphql": "^4.0.0",
"@octokit/rest": "^21.0.0",
+ "@payloadcms/live-preview-react": "^3.0.0",
"@radix-ui/react-dialog": "^1.0.5",
"@sentry/nextjs": "^10",
"@supabase/supabase-js": "catalog:",
@@ -52,6 +52,13 @@
"icons": "workspace:*",
"lucide-react": "*",
"markdown-toc": "^1.2.0",
+ "mdast-util-from-markdown": "^2.0.2",
+ "mdast-util-gfm": "^2.0.2",
+ "mdast-util-mdx": "^2.0.1",
+ "mdast-util-mdx-jsx": "^2.1.4",
+ "mdast-util-to-markdown": "^1.5.0",
+ "micromark-extension-gfm": "^2.0.3",
+ "micromark-extension-mdxjs": "^1.0.1",
"next": "catalog:",
"next-mdx-remote": "^4.4.1",
"next-seo": "^6.5.0",
@@ -86,6 +93,7 @@
"@types/animejs": "^3.1.12",
"@types/classnames": "^2.3.1",
"@types/common-tags": "^1.8.4",
+ "@types/mdast": "^4.0.4",
"@types/mdx-js__react": "^1.5.6",
"@types/parse-numeric-range": "^0.0.1",
"@types/react": "catalog:",
@@ -97,7 +105,9 @@
"api-types": "workspace:*",
"postcss": "^8.5.3",
"react-hook-form": "^7.45.0",
+ "tailwindcss": "^3.4.1",
"tsconfig": "workspace:*",
+ "unist-util-visit-parents": "5.1.3",
"uuid": "^9.0.1",
"zod": "catalog:"
},
diff --git a/apps/www/public/images/blog/2025-09-30-postgrest-13-release/postgrest-13-release.png b/apps/www/public/images/blog/2025-09-30-postgrest-13-release/postgrest-13-release.png
new file mode 100644
index 0000000000000000000000000000000000000000..12d899045e44a6cbe326b09fb2bc6445844880ca
GIT binary patch
literal 22666
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
ZDdo6Qs2jl4{LII)G`BlhYUX+Ke*nVarnLY7
literal 0
HcmV?d00001
diff --git a/apps/www/public/sitemap_www.xml b/apps/www/public/sitemap_www.xml
index 944e53e64b632..b27b565864822 100644
--- a/apps/www/public/sitemap_www.xml
+++ b/apps/www/public/sitemap_www.xml
@@ -2162,6 +2162,18 @@
0.5
+
+ https://supabase.com/blog/defense-in-depth-mcp
+ weekly
+ 0.5
+
+
+
+ https://supabase.com/blog/postgrest-13-release
+ weekly
+ 0.5
+
+
https://supabase.com/customers/asap-work
weekly
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index d39f21839390c..41bbae33039ce 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -237,10 +237,10 @@ importers:
version: 1.2.0
next:
specifier: 'catalog:'
- version: 15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
+ version: 15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
next-contentlayer2:
specifier: 0.4.6
- version: 0.4.6(contentlayer2@0.4.6(esbuild@0.25.2)(markdown-wasm@1.2.0)(supports-color@8.1.1))(esbuild@0.25.2)(markdown-wasm@1.2.0)(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(supports-color@8.1.1)
+ version: 0.4.6(contentlayer2@0.4.6(esbuild@0.25.2)(markdown-wasm@1.2.0)(supports-color@8.1.1))(esbuild@0.25.2)(markdown-wasm@1.2.0)(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(supports-color@8.1.1)
next-themes:
specifier: ^0.3.0
version: 0.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -382,13 +382,13 @@ importers:
version: 1.0.3(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@sentry/nextjs':
specifier: ^10.3.0
- version: 10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)
+ version: 10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)
'@supabase/supabase-js':
specifier: 'catalog:'
version: 2.49.3
'@tailwindcss/container-queries':
specifier: ^0.1.1
- version: 0.1.1(tailwindcss@3.4.1(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2)))
+ version: 0.1.1(tailwindcss@4.1.13)
'@tanstack/react-query':
specifier: ^5.13.4
version: 5.13.4(react@18.3.1)
@@ -797,7 +797,7 @@ importers:
version: 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@sentry/nextjs':
specifier: ^10.3.0
- version: 10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)
+ version: 10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)
'@std/path':
specifier: npm:@jsr/std__path@^1.0.8
version: '@jsr/std__path@1.0.8'
@@ -932,13 +932,13 @@ importers:
version: 0.52.2
next:
specifier: 'catalog:'
- version: 15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
+ version: 15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
next-themes:
specifier: ^0.3.0
version: 0.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
nuqs:
specifier: ^2.4.1
- version: 2.4.1(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-router@7.5.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
+ version: 2.4.1(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-router@7.5.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
openai:
specifier: ^4.75.1
version: 4.104.0(encoding@0.1.13)(ws@8.18.3)(zod@3.25.76)
@@ -1209,7 +1209,7 @@ importers:
version: 2.4.11(typescript@5.9.2)
next-router-mock:
specifier: ^0.9.13
- version: 0.9.13(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)
+ version: 0.9.13(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)
node-mocks-http:
specifier: ^1.17.2
version: 1.17.2(@types/node@22.13.14)
@@ -1573,7 +1573,7 @@ importers:
version: 1.0.5(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@sentry/nextjs':
specifier: ^10
- version: 10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)
+ version: 10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)
'@supabase/supabase-js':
specifier: 'catalog:'
version: 2.49.3
@@ -1631,6 +1631,27 @@ importers:
markdown-toc:
specifier: ^1.2.0
version: 1.2.0
+ mdast-util-from-markdown:
+ specifier: ^2.0.2
+ version: 2.0.2(supports-color@8.1.1)
+ mdast-util-gfm:
+ specifier: ^2.0.2
+ version: 2.0.2(supports-color@8.1.1)
+ mdast-util-mdx:
+ specifier: ^2.0.1
+ version: 2.0.1(supports-color@8.1.1)
+ mdast-util-mdx-jsx:
+ specifier: ^2.1.4
+ version: 2.1.4(supports-color@8.1.1)
+ mdast-util-to-markdown:
+ specifier: ^1.5.0
+ version: 1.5.0
+ micromark-extension-gfm:
+ specifier: ^2.0.3
+ version: 2.0.3
+ micromark-extension-mdxjs:
+ specifier: ^1.0.1
+ version: 1.0.1
next:
specifier: 'catalog:'
version: 15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
@@ -1728,6 +1749,9 @@ importers:
'@types/common-tags':
specifier: ^1.8.4
version: 1.8.4
+ '@types/mdast':
+ specifier: ^4.0.4
+ version: 4.0.4
'@types/mdx-js__react':
specifier: ^1.5.6
version: 1.5.6
@@ -1761,9 +1785,15 @@ importers:
react-hook-form:
specifier: ^7.45.0
version: 7.47.0(react@18.3.1)
+ tailwindcss:
+ specifier: ^3.4.1
+ version: 3.4.1(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2))
tsconfig:
specifier: workspace:*
version: link:../../packages/tsconfig
+ unist-util-visit-parents:
+ specifier: 5.1.3
+ version: 5.1.3
uuid:
specifier: ^9.0.1
version: 9.0.1
@@ -2514,7 +2544,7 @@ importers:
version: link:../api-types
next-router-mock:
specifier: ^0.9.13
- version: 0.9.13(next@15.5.2(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)
+ version: 0.9.13(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)
tsx:
specifier: ^4.19.3
version: 4.19.3
@@ -4125,6 +4155,7 @@ packages:
'@graphql-tools/prisma-loader@8.0.17':
resolution: {integrity: sha512-fnuTLeQhqRbA156pAyzJYN0KxCjKYRU5bz1q/SKOwElSnAU4k7/G1kyVsWLh7fneY78LoMNH5n+KlFV8iQlnyg==}
engines: {node: '>=16.0.0'}
+ deprecated: 'This package was intended to be used with an older versions of Prisma.\nThe newer versions of Prisma has a different approach to GraphQL integration.\nTherefore, this package is no longer needed and has been deprecated and removed.\nLearn more: https://www.prisma.io/graphql'
peerDependencies:
graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0
@@ -9452,6 +9483,9 @@ packages:
'@types/mdast@4.0.1':
resolution: {integrity: sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==}
+ '@types/mdast@4.0.4':
+ resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
+
'@types/mdx-js__react@1.5.6':
resolution: {integrity: sha512-NPQSvm0NiUzagIWkqY8wcHILt61dI/FerbX5ZIilFpCmDBtRii20CtGdzXrbAZXOk49BziT69xBlOzOuROAAEw==}
@@ -10633,9 +10667,6 @@ packages:
caniuse-api@3.0.0:
resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==}
- caniuse-lite@1.0.30001695:
- resolution: {integrity: sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==}
-
caniuse-lite@1.0.30001743:
resolution: {integrity: sha512-e6Ojr7RV14Un7dz6ASD0aZDmQPT/A+eZU+nuTNfjqmRrmkmQlnTNWH0SKmqagx9PeW87UVqapSurtAXifmtdmw==}
@@ -12565,14 +12596,6 @@ packages:
fbjs@3.0.5:
resolution: {integrity: sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==}
- fdir@6.4.6:
- resolution: {integrity: sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==}
- peerDependencies:
- picomatch: ^3 || ^4
- peerDependenciesMeta:
- picomatch:
- optional: true
-
fdir@6.5.0:
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
engines: {node: '>=12.0.0'}
@@ -14027,10 +14050,6 @@ packages:
resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==}
hasBin: true
- jiti@2.4.2:
- resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==}
- hasBin: true
-
jiti@2.5.1:
resolution: {integrity: sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==}
hasBin: true
@@ -16145,10 +16164,6 @@ packages:
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
engines: {node: '>=8.6'}
- picomatch@4.0.2:
- resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==}
- engines: {node: '>=12'}
-
picomatch@4.0.3:
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
engines: {node: '>=12'}
@@ -18348,6 +18363,9 @@ packages:
engines: {node: '>=14.0.0'}
hasBin: true
+ tailwindcss@4.1.13:
+ resolution: {integrity: sha512-i+zidfmTqtwquj4hMEwdjshYYgMbOrPzb9a0M3ZgNa0JMoZeFC6bxZvO8yr8ozS6ix2SDz0+mvryPeBs2TFE+w==}
+
tapable@2.2.1:
resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
engines: {node: '>=6'}
@@ -20021,8 +20039,8 @@ snapshots:
'@ampproject/remapping@2.3.0':
dependencies:
- '@jridgewell/gen-mapping': 0.3.8
- '@jridgewell/trace-mapping': 0.3.25
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
'@antfu/ni@23.3.1': {}
@@ -20035,7 +20053,7 @@ snapshots:
'@ardatan/relay-compiler@12.0.3(encoding@0.1.13)(graphql@16.11.0)':
dependencies:
'@babel/generator': 7.27.0
- '@babel/parser': 7.27.0
+ '@babel/parser': 7.28.4
'@babel/runtime': 7.26.10
chalk: 4.1.2
fb-watchman: 2.0.2
@@ -21334,7 +21352,7 @@ snapshots:
'@babel/traverse': 7.27.0(supports-color@8.1.1)
'@babel/types': 7.27.0
convert-source-map: 2.0.0
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -21354,7 +21372,7 @@ snapshots:
'@babel/types': 7.28.4
'@jridgewell/remapping': 2.3.5
convert-source-map: 2.0.0
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -21379,7 +21397,7 @@ snapshots:
'@babel/helper-annotate-as-pure@7.25.9':
dependencies:
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@babel/helper-annotate-as-pure@7.27.3':
dependencies:
@@ -21429,23 +21447,23 @@ snapshots:
'@babel/helper-environment-visitor@7.24.7':
dependencies:
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@babel/helper-function-name@7.24.7':
dependencies:
'@babel/template': 7.27.0
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@babel/helper-globals@7.28.0': {}
'@babel/helper-hoist-variables@7.24.7':
dependencies:
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@babel/helper-member-expression-to-functions@7.25.9(supports-color@8.1.1)':
dependencies:
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
transitivePeerDependencies:
- supports-color
@@ -21459,7 +21477,7 @@ snapshots:
'@babel/helper-module-imports@7.25.9(supports-color@8.1.1)':
dependencies:
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
transitivePeerDependencies:
- supports-color
@@ -21490,7 +21508,7 @@ snapshots:
'@babel/helper-optimise-call-expression@7.25.9':
dependencies:
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@babel/helper-optimise-call-expression@7.27.1':
dependencies:
@@ -21521,7 +21539,7 @@ snapshots:
'@babel/helper-skip-transparent-expression-wrappers@7.25.9(supports-color@8.1.1)':
dependencies:
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
transitivePeerDependencies:
- supports-color
@@ -21534,7 +21552,7 @@ snapshots:
'@babel/helper-split-export-declaration@7.24.7':
dependencies:
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@babel/helper-string-parser@7.24.7': {}
@@ -21555,7 +21573,7 @@ snapshots:
'@babel/helpers@7.26.10':
dependencies:
'@babel/template': 7.27.0
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@babel/helpers@7.28.4':
dependencies:
@@ -21685,7 +21703,7 @@ snapshots:
'@babel/helper-split-export-declaration': 7.24.7
'@babel/parser': 7.27.0
'@babel/types': 7.27.0
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -21697,7 +21715,7 @@ snapshots:
'@babel/parser': 7.27.0
'@babel/template': 7.27.0
'@babel/types': 7.27.0
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -21710,7 +21728,7 @@ snapshots:
'@babel/parser': 7.28.4
'@babel/template': 7.27.2
'@babel/types': 7.28.4
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -22198,7 +22216,7 @@ snapshots:
'@esbuild-plugins/node-resolve@0.2.2(esbuild@0.25.2)(supports-color@8.1.1)':
dependencies:
'@types/resolve': 1.20.6
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
esbuild: 0.25.2
escape-string-regexp: 4.0.0
resolve: 1.22.10
@@ -22297,7 +22315,7 @@ snapshots:
'@eslint/eslintrc@2.1.4(supports-color@8.1.1)':
dependencies:
ajv: 6.12.6
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
espree: 9.6.1
globals: 13.24.0
ignore: 5.2.4
@@ -22857,10 +22875,10 @@ snapshots:
'@graphql-tools/graphql-tag-pluck@8.3.19(graphql@16.11.0)(supports-color@8.1.1)':
dependencies:
'@babel/core': 7.26.10(supports-color@8.1.1)
- '@babel/parser': 7.27.0
+ '@babel/parser': 7.28.4
'@babel/plugin-syntax-import-assertions': 7.26.0(@babel/core@7.26.10(supports-color@8.1.1))
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@graphql-tools/utils': 10.8.6(graphql@16.11.0)
graphql: 16.11.0
tslib: 2.8.1
@@ -23079,7 +23097,7 @@ snapshots:
'@humanwhocodes/config-array@0.11.14(supports-color@8.1.1)':
dependencies:
'@humanwhocodes/object-schema': 2.0.2
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
minimatch: 3.1.2
transitivePeerDependencies:
- supports-color
@@ -23257,19 +23275,19 @@ snapshots:
'@jridgewell/gen-mapping@0.3.13':
dependencies:
- '@jridgewell/sourcemap-codec': 1.5.0
+ '@jridgewell/sourcemap-codec': 1.5.5
'@jridgewell/trace-mapping': 0.3.31
'@jridgewell/gen-mapping@0.3.8':
dependencies:
'@jridgewell/set-array': 1.2.1
- '@jridgewell/sourcemap-codec': 1.5.0
- '@jridgewell/trace-mapping': 0.3.25
+ '@jridgewell/sourcemap-codec': 1.5.5
+ '@jridgewell/trace-mapping': 0.3.31
'@jridgewell/remapping@2.3.5':
dependencies:
- '@jridgewell/gen-mapping': 0.3.8
- '@jridgewell/trace-mapping': 0.3.25
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
'@jridgewell/resolve-uri@3.1.2': {}
@@ -23277,8 +23295,8 @@ snapshots:
'@jridgewell/source-map@0.3.6':
dependencies:
- '@jridgewell/gen-mapping': 0.3.8
- '@jridgewell/trace-mapping': 0.3.25
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
'@jridgewell/sourcemap-codec@1.5.0': {}
@@ -23287,12 +23305,12 @@ snapshots:
'@jridgewell/trace-mapping@0.3.25':
dependencies:
'@jridgewell/resolve-uri': 3.1.2
- '@jridgewell/sourcemap-codec': 1.5.0
+ '@jridgewell/sourcemap-codec': 1.5.5
'@jridgewell/trace-mapping@0.3.31':
dependencies:
'@jridgewell/resolve-uri': 3.1.2
- '@jridgewell/sourcemap-codec': 1.5.0
+ '@jridgewell/sourcemap-codec': 1.5.5
'@jridgewell/trace-mapping@0.3.9':
dependencies:
@@ -27425,10 +27443,6 @@ snapshots:
'@rolldown/pluginutils@1.0.0-beta.9-commit.d91dfb5': {}
- '@rollup/plugin-alias@5.1.1(rollup@4.38.0)':
- optionalDependencies:
- rollup: 4.38.0
-
'@rollup/plugin-alias@5.1.1(rollup@4.50.2)':
optionalDependencies:
rollup: 4.50.2
@@ -27438,45 +27452,37 @@ snapshots:
'@rollup/pluginutils': 5.1.4(rollup@4.38.0)
commondir: 1.0.1
estree-walker: 2.0.2
- fdir: 6.4.6(picomatch@4.0.2)
+ fdir: 6.5.0(picomatch@4.0.3)
is-reference: 1.2.1
- magic-string: 0.30.17
- picomatch: 4.0.2
+ magic-string: 0.30.19
+ picomatch: 4.0.3
optionalDependencies:
rollup: 4.38.0
- '@rollup/plugin-commonjs@28.0.3(rollup@4.38.0)':
+ '@rollup/plugin-commonjs@28.0.3(rollup@4.50.2)':
dependencies:
- '@rollup/pluginutils': 5.1.4(rollup@4.38.0)
+ '@rollup/pluginutils': 5.1.4(rollup@4.50.2)
commondir: 1.0.1
estree-walker: 2.0.2
- fdir: 6.4.6(picomatch@4.0.2)
+ fdir: 6.5.0(picomatch@4.0.3)
is-reference: 1.2.1
- magic-string: 0.30.17
- picomatch: 4.0.2
+ magic-string: 0.30.19
+ picomatch: 4.0.3
optionalDependencies:
- rollup: 4.38.0
+ rollup: 4.50.2
'@rollup/plugin-commonjs@28.0.6(rollup@4.50.2)':
dependencies:
'@rollup/pluginutils': 5.1.4(rollup@4.50.2)
commondir: 1.0.1
estree-walker: 2.0.2
- fdir: 6.4.6(picomatch@4.0.2)
+ fdir: 6.5.0(picomatch@4.0.3)
is-reference: 1.2.1
magic-string: 0.30.19
- picomatch: 4.0.2
+ picomatch: 4.0.3
optionalDependencies:
rollup: 4.50.2
- '@rollup/plugin-inject@5.0.5(rollup@4.38.0)':
- dependencies:
- '@rollup/pluginutils': 5.1.4(rollup@4.38.0)
- estree-walker: 2.0.2
- magic-string: 0.30.19
- optionalDependencies:
- rollup: 4.38.0
-
'@rollup/plugin-inject@5.0.5(rollup@4.50.2)':
dependencies:
'@rollup/pluginutils': 5.1.4(rollup@4.50.2)
@@ -27485,28 +27491,12 @@ snapshots:
optionalDependencies:
rollup: 4.50.2
- '@rollup/plugin-json@6.1.0(rollup@4.38.0)':
- dependencies:
- '@rollup/pluginutils': 5.1.4(rollup@4.38.0)
- optionalDependencies:
- rollup: 4.38.0
-
'@rollup/plugin-json@6.1.0(rollup@4.50.2)':
dependencies:
'@rollup/pluginutils': 5.1.4(rollup@4.50.2)
optionalDependencies:
rollup: 4.50.2
- '@rollup/plugin-node-resolve@16.0.1(rollup@4.38.0)':
- dependencies:
- '@rollup/pluginutils': 5.1.4(rollup@4.38.0)
- '@types/resolve': 1.20.2
- deepmerge: 4.3.1
- is-module: 1.0.0
- resolve: 1.22.10
- optionalDependencies:
- rollup: 4.38.0
-
'@rollup/plugin-node-resolve@16.0.1(rollup@4.50.2)':
dependencies:
'@rollup/pluginutils': 5.1.4(rollup@4.50.2)
@@ -27517,13 +27507,6 @@ snapshots:
optionalDependencies:
rollup: 4.50.2
- '@rollup/plugin-replace@6.0.2(rollup@4.38.0)':
- dependencies:
- '@rollup/pluginutils': 5.1.4(rollup@4.38.0)
- magic-string: 0.30.19
- optionalDependencies:
- rollup: 4.38.0
-
'@rollup/plugin-replace@6.0.2(rollup@4.50.2)':
dependencies:
'@rollup/pluginutils': 5.1.4(rollup@4.50.2)
@@ -27531,14 +27514,6 @@ snapshots:
optionalDependencies:
rollup: 4.50.2
- '@rollup/plugin-terser@0.4.4(rollup@4.38.0)':
- dependencies:
- serialize-javascript: 6.0.2
- smob: 1.5.0
- terser: 5.39.0
- optionalDependencies:
- rollup: 4.38.0
-
'@rollup/plugin-terser@0.4.4(rollup@4.50.2)':
dependencies:
serialize-javascript: 6.0.2
@@ -27551,7 +27526,7 @@ snapshots:
dependencies:
'@types/estree': 1.0.5
estree-walker: 2.0.2
- picomatch: 4.0.2
+ picomatch: 4.0.3
optionalDependencies:
rollup: 4.38.0
@@ -27559,7 +27534,7 @@ snapshots:
dependencies:
'@types/estree': 1.0.5
estree-walker: 2.0.2
- picomatch: 4.0.2
+ picomatch: 4.0.3
optionalDependencies:
rollup: 4.50.2
@@ -27778,33 +27753,7 @@ snapshots:
'@sentry/core@10.3.0': {}
- '@sentry/nextjs@10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)':
- dependencies:
- '@opentelemetry/api': 1.9.0
- '@opentelemetry/semantic-conventions': 1.36.0
- '@rollup/plugin-commonjs': 28.0.1(rollup@4.38.0)
- '@sentry-internal/browser-utils': 10.3.0
- '@sentry/core': 10.3.0
- '@sentry/node': 10.3.0(supports-color@8.1.1)
- '@sentry/opentelemetry': 10.3.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.36.0)
- '@sentry/react': 10.3.0(react@18.3.1)
- '@sentry/vercel-edge': 10.3.0
- '@sentry/webpack-plugin': 4.0.2(encoding@0.1.13)(supports-color@8.1.1)(webpack@5.94.0)
- chalk: 3.0.0
- next: 15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
- resolve: 1.22.8
- rollup: 4.38.0
- stacktrace-parser: 0.1.10
- transitivePeerDependencies:
- - '@opentelemetry/context-async-hooks'
- - '@opentelemetry/core'
- - '@opentelemetry/sdk-trace-base'
- - encoding
- - react
- - supports-color
- - webpack
-
- '@sentry/nextjs@10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)':
+ '@sentry/nextjs@10.3.0(@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0))(encoding@0.1.13)(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1)(supports-color@8.1.1)(webpack@5.94.0)':
dependencies:
'@opentelemetry/api': 1.9.0
'@opentelemetry/semantic-conventions': 1.36.0
@@ -28745,6 +28694,10 @@ snapshots:
dependencies:
tailwindcss: 3.4.1(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2))
+ '@tailwindcss/container-queries@0.1.1(tailwindcss@4.1.13)':
+ dependencies:
+ tailwindcss: 4.1.13
+
'@tailwindcss/forms@0.5.6(tailwindcss@3.4.1(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2)))':
dependencies:
mini-svg-data-uri: 1.4.4
@@ -28766,7 +28719,7 @@ snapshots:
'@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10(supports-color@8.1.1))
'@babel/template': 7.27.0
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@tanstack/router-utils': 1.114.12
babel-dead-code-elimination: 1.0.9(supports-color@8.1.1)
dedent: 1.5.3(babel-plugin-macros@3.1.0)
@@ -28965,7 +28918,7 @@ snapshots:
'@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10(supports-color@8.1.1))
'@babel/template': 7.27.0
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@tanstack/router-utils': 1.114.12
babel-dead-code-elimination: 1.0.9(supports-color@8.1.1)
tiny-invariant: 1.3.3
@@ -29150,7 +29103,7 @@ snapshots:
'@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10(supports-color@8.1.1))
'@babel/template': 7.27.0
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@tanstack/router-core': 1.114.25
'@tanstack/router-generator': 1.114.27(@tanstack/react-router@1.114.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1))
'@tanstack/router-utils': 1.114.12
@@ -29172,7 +29125,7 @@ snapshots:
'@tanstack/router-utils@1.114.12':
dependencies:
'@babel/generator': 7.27.0
- '@babel/parser': 7.27.0
+ '@babel/parser': 7.28.4
ansis: 3.17.0
diff: 7.0.0
@@ -29184,7 +29137,7 @@ snapshots:
'@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10(supports-color@8.1.1))
'@babel/template': 7.27.0
'@babel/traverse': 7.27.0(supports-color@8.1.1)
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@tanstack/directive-functions-plugin': 1.114.12(@types/node@22.13.14)(babel-plugin-macros@3.1.0)(jiti@2.5.1)(sass@1.77.4)(supports-color@8.1.1)(terser@5.39.0)(tsx@4.19.3)(yaml@2.8.1)
babel-dead-code-elimination: 1.0.9(supports-color@8.1.1)
dedent: 1.5.3(babel-plugin-macros@3.1.0)
@@ -29472,17 +29425,17 @@ snapshots:
'@types/babel__generator@7.6.5':
dependencies:
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@types/babel__template@7.4.2':
dependencies:
- '@babel/parser': 7.27.0
- '@babel/types': 7.27.0
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
'@types/babel__template@7.4.4':
dependencies:
- '@babel/parser': 7.27.0
- '@babel/types': 7.27.0
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
'@types/babel__traverse@7.20.2':
dependencies:
@@ -29490,7 +29443,7 @@ snapshots:
'@types/babel__traverse@7.20.6':
dependencies:
- '@babel/types': 7.27.0
+ '@babel/types': 7.28.4
'@types/braces@3.0.5': {}
@@ -29745,6 +29698,10 @@ snapshots:
dependencies:
'@types/unist': 2.0.8
+ '@types/mdast@4.0.4':
+ dependencies:
+ '@types/unist': 2.0.8
+
'@types/mdx-js__react@1.5.6':
dependencies:
'@types/react': 18.3.3
@@ -29974,7 +29931,7 @@ snapshots:
'@typescript-eslint/types': 7.2.0
'@typescript-eslint/typescript-estree': 7.2.0(supports-color@8.1.1)(typescript@5.9.2)
'@typescript-eslint/visitor-keys': 7.2.0
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
eslint: 8.57.0(supports-color@8.1.1)
optionalDependencies:
typescript: 5.9.2
@@ -29985,7 +29942,7 @@ snapshots:
dependencies:
'@typescript-eslint/tsconfig-utils': 8.34.1(typescript@5.9.2)
'@typescript-eslint/types': 8.34.1
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
typescript: 5.9.2
transitivePeerDependencies:
- supports-color
@@ -30008,7 +29965,7 @@ snapshots:
dependencies:
'@typescript-eslint/typescript-estree': 8.34.1(supports-color@8.1.1)(typescript@5.9.2)
'@typescript-eslint/utils': 8.34.1(eslint@8.57.0(supports-color@8.1.1))(supports-color@8.1.1)(typescript@5.9.2)
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
eslint: 8.57.0(supports-color@8.1.1)
ts-api-utils: 2.1.0(typescript@5.9.2)
typescript: 5.9.2
@@ -30023,7 +29980,7 @@ snapshots:
dependencies:
'@typescript-eslint/types': 7.2.0
'@typescript-eslint/visitor-keys': 7.2.0
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
globby: 11.1.0
is-glob: 4.0.3
minimatch: 9.0.3
@@ -30040,7 +29997,7 @@ snapshots:
'@typescript-eslint/tsconfig-utils': 8.34.1(typescript@5.9.2)
'@typescript-eslint/types': 8.34.1
'@typescript-eslint/visitor-keys': 8.34.1
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
fast-glob: 3.3.3
is-glob: 4.0.3
minimatch: 9.0.5
@@ -30105,10 +30062,10 @@ snapshots:
optionalDependencies:
'@aws-sdk/credential-provider-web-identity': 3.830.0
- '@vercel/nft@0.29.2(rollup@4.38.0)(supports-color@8.1.1)':
+ '@vercel/nft@0.29.2(rollup@4.50.2)(supports-color@8.1.1)':
dependencies:
'@mapbox/node-pre-gyp': 2.0.0(encoding@0.1.13)(supports-color@8.1.1)
- '@rollup/pluginutils': 5.1.4(rollup@4.38.0)
+ '@rollup/pluginutils': 5.1.4(rollup@4.50.2)
acorn: 8.14.1
acorn-import-attributes: 1.9.5(acorn@8.14.1)
async-sema: 3.1.1
@@ -30117,7 +30074,7 @@ snapshots:
glob: 10.4.5
graceful-fs: 4.2.11
node-gyp-build: 4.8.4
- picomatch: 4.0.2
+ picomatch: 4.0.3
resolve-from: 5.0.0
transitivePeerDependencies:
- encoding
@@ -30136,7 +30093,7 @@ snapshots:
glob: 10.4.5
graceful-fs: 4.2.11
node-gyp-build: 4.8.4
- picomatch: 4.0.2
+ picomatch: 4.0.3
resolve-from: 5.0.0
transitivePeerDependencies:
- encoding
@@ -30164,7 +30121,7 @@ snapshots:
mlly: 1.7.4
node-forge: 1.3.1
pathe: 1.1.2
- std-env: 3.8.1
+ std-env: 3.9.0
ufo: 1.5.4
untun: 0.1.3
uqr: 0.1.2
@@ -30202,14 +30159,14 @@ snapshots:
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 1.0.2
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
istanbul-lib-coverage: 3.2.2
istanbul-lib-report: 3.0.1
istanbul-lib-source-maps: 5.0.6(supports-color@8.1.1)
istanbul-reports: 3.1.7
- magic-string: 0.30.17
+ magic-string: 0.30.19
magicast: 0.3.5
- std-env: 3.8.1
+ std-env: 3.9.0
test-exclude: 7.0.1
tinyrainbow: 2.0.0
vitest: 3.0.9(@types/node@22.13.14)(jiti@2.5.1)(jsdom@20.0.3(supports-color@8.1.1))(msw@2.7.3(@types/node@22.13.14)(typescript@5.9.2))(sass@1.77.4)(supports-color@8.1.1)(terser@5.39.0)(tsx@4.19.3)(yaml@2.8.1)
@@ -30220,14 +30177,14 @@ snapshots:
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 1.0.2
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
istanbul-lib-coverage: 3.2.2
istanbul-lib-report: 3.0.1
istanbul-lib-source-maps: 5.0.6(supports-color@8.1.1)
istanbul-reports: 3.1.7
- magic-string: 0.30.17
+ magic-string: 0.30.19
magicast: 0.3.5
- std-env: 3.8.1
+ std-env: 3.9.0
test-exclude: 7.0.1
tinyrainbow: 2.0.0
vitest: 3.0.9(@types/node@22.13.14)(@vitest/ui@3.0.4)(jiti@2.5.1)(jsdom@20.0.3(supports-color@8.1.1))(msw@2.7.3(@types/node@22.13.14)(typescript@5.9.2))(sass@1.77.4)(supports-color@8.1.1)(terser@5.39.0)(tsx@4.20.3)(yaml@2.8.1)
@@ -30238,14 +30195,14 @@ snapshots:
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 1.0.2
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
istanbul-lib-coverage: 3.2.2
istanbul-lib-report: 3.0.1
istanbul-lib-source-maps: 5.0.6(supports-color@8.1.1)
istanbul-reports: 3.1.7
- magic-string: 0.30.17
+ magic-string: 0.30.19
magicast: 0.3.5
- std-env: 3.8.1
+ std-env: 3.9.0
test-exclude: 7.0.1
tinyrainbow: 2.0.0
vitest: 3.0.9(@types/node@22.13.14)(@vitest/ui@3.0.4)(jiti@2.5.1)(jsdom@20.0.3(supports-color@8.1.1))(msw@2.4.11(typescript@5.9.2))(sass@1.77.4)(supports-color@8.1.1)(terser@5.39.0)(tsx@4.19.3)(yaml@2.8.1)
@@ -30632,10 +30589,6 @@ snapshots:
dependencies:
acorn: 8.15.0
- acorn-jsx@5.3.2(acorn@8.11.3):
- dependencies:
- acorn: 8.11.3
-
acorn-jsx@5.3.2(acorn@8.14.1):
dependencies:
acorn: 8.14.1
@@ -30658,7 +30611,7 @@ snapshots:
agent-base@6.0.2(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -31128,7 +31081,7 @@ snapshots:
dependencies:
bytes: 3.1.2
content-type: 1.0.5
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
http-errors: 2.0.0
iconv-lite: 0.6.3
on-finished: 2.4.1
@@ -31170,7 +31123,7 @@ snapshots:
browserslist@4.24.4:
dependencies:
- caniuse-lite: 1.0.30001695
+ caniuse-lite: 1.0.30001743
electron-to-chromium: 1.5.88
node-releases: 2.0.19
update-browserslist-db: 1.1.2(browserslist@4.24.4)
@@ -31232,7 +31185,7 @@ snapshots:
dotenv: 16.5.0
exsolve: 1.0.4
giget: 2.0.0
- jiti: 2.4.2
+ jiti: 2.5.1
ohash: 2.0.11
pathe: 2.0.3
perfect-debounce: 1.0.0
@@ -31341,12 +31294,10 @@ snapshots:
caniuse-api@3.0.0:
dependencies:
browserslist: 4.26.2
- caniuse-lite: 1.0.30001695
+ caniuse-lite: 1.0.30001743
lodash.memoize: 4.1.2
lodash.uniq: 4.5.0
- caniuse-lite@1.0.30001695: {}
-
caniuse-lite@1.0.30001743: {}
capital-case@1.0.4:
@@ -32201,17 +32152,17 @@ snapshots:
optionalDependencies:
supports-color: 8.1.1
- debug@4.4.0(supports-color@9.4.0):
+ debug@4.4.3(supports-color@8.1.1):
dependencies:
ms: 2.1.3
optionalDependencies:
- supports-color: 9.4.0
+ supports-color: 8.1.1
- debug@4.4.3(supports-color@8.1.1):
+ debug@4.4.3(supports-color@9.4.0):
dependencies:
ms: 2.1.3
optionalDependencies:
- supports-color: 8.1.1
+ supports-color: 9.4.0
decimal.js-light@2.5.1: {}
@@ -32694,7 +32645,7 @@ snapshots:
esbuild-register@3.6.0(esbuild@0.25.2)(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
esbuild: 0.25.2
transitivePeerDependencies:
- supports-color
@@ -32841,7 +32792,7 @@ snapshots:
eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0(supports-color@8.1.1))(supports-color@8.1.1)(typescript@5.9.2))(eslint-import-resolver-node@0.3.9(supports-color@8.1.1))(eslint-plugin-import@2.31.0)(eslint@8.57.0(supports-color@8.1.1))(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
enhanced-resolve: 5.18.1
eslint: 8.57.0(supports-color@8.1.1)
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0(supports-color@8.1.1))(supports-color@8.1.1)(typescript@5.9.2))(eslint-import-resolver-node@0.3.9(supports-color@8.1.1))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0(supports-color@8.1.1))(supports-color@8.1.1)
@@ -33193,7 +33144,7 @@ snapshots:
content-type: 1.0.5
cookie: 0.7.2
cookie-signature: 1.2.2
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
encodeurl: 2.0.0
escape-html: 1.0.3
etag: 1.8.1
@@ -33384,10 +33335,6 @@ snapshots:
transitivePeerDependencies:
- encoding
- fdir@6.4.6(picomatch@4.0.2):
- optionalDependencies:
- picomatch: 4.0.2
-
fdir@6.5.0(picomatch@4.0.3):
optionalDependencies:
picomatch: 4.0.3
@@ -33443,7 +33390,7 @@ snapshots:
finalhandler@2.1.0(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
encodeurl: 2.0.0
escape-html: 1.0.3
on-finished: 2.4.1
@@ -33917,7 +33864,7 @@ snapshots:
'@graphql-tools/utils': 10.8.6(graphql@16.11.0)
cosmiconfig: 9.0.0(typescript@5.9.2)
graphql: 16.11.0
- jiti: 2.4.2
+ jiti: 2.5.1
minimatch: 10.0.1
string-env-interpolation: 1.0.1
tslib: 2.8.1
@@ -34391,7 +34338,7 @@ snapshots:
dependencies:
'@tootallnate/once': 1.1.2
agent-base: 6.0.2(supports-color@8.1.1)
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -34407,7 +34354,7 @@ snapshots:
http-proxy-agent@7.0.2(supports-color@8.1.1):
dependencies:
agent-base: 7.1.3
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -34428,35 +34375,35 @@ snapshots:
https-proxy-agent@5.0.1(supports-color@8.1.1):
dependencies:
agent-base: 6.0.2(supports-color@8.1.1)
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
https-proxy-agent@6.2.1(supports-color@8.1.1):
dependencies:
agent-base: 7.1.3
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
https-proxy-agent@7.0.4(supports-color@8.1.1):
dependencies:
agent-base: 7.1.3
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
https-proxy-agent@7.0.6(supports-color@8.1.1):
dependencies:
agent-base: 7.1.3
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
https-proxy-agent@7.0.6(supports-color@9.4.0):
dependencies:
agent-base: 7.1.3
- debug: 4.4.0(supports-color@9.4.0)
+ debug: 4.4.3(supports-color@9.4.0)
transitivePeerDependencies:
- supports-color
@@ -34619,7 +34566,7 @@ snapshots:
dependencies:
'@ioredis/commands': 1.2.0
cluster-key-slot: 1.1.2
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
denque: 2.1.0
lodash.defaults: 4.2.0
lodash.isarguments: 3.1.0
@@ -34633,7 +34580,7 @@ snapshots:
dependencies:
'@ioredis/commands': 1.4.0
cluster-key-slot: 1.1.2
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
denque: 2.1.0
lodash.defaults: 4.2.0
lodash.isarguments: 3.1.0
@@ -34856,7 +34803,7 @@ snapshots:
is-reference@3.0.3:
dependencies:
- '@types/estree': 1.0.7
+ '@types/estree': 1.0.8
is-regex@1.1.4:
dependencies:
@@ -35014,8 +34961,8 @@ snapshots:
istanbul-lib-source-maps@5.0.6(supports-color@8.1.1):
dependencies:
- '@jridgewell/trace-mapping': 0.3.25
- debug: 4.4.0(supports-color@8.1.1)
+ '@jridgewell/trace-mapping': 0.3.31
+ debug: 4.4.3(supports-color@8.1.1)
istanbul-lib-coverage: 3.2.2
transitivePeerDependencies:
- supports-color
@@ -35075,8 +35022,6 @@ snapshots:
jiti@1.21.7: {}
- jiti@2.4.2: {}
-
jiti@2.5.1: {}
jose@5.9.6: {}
@@ -35186,7 +35131,7 @@ snapshots:
json-schema-resolver@2.0.0(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
rfdc: 1.4.1
uri-js: 4.4.1
transitivePeerDependencies:
@@ -35581,12 +35526,12 @@ snapshots:
magic-string@0.30.8:
dependencies:
- '@jridgewell/sourcemap-codec': 1.5.0
+ '@jridgewell/sourcemap-codec': 1.5.5
magicast@0.3.5:
dependencies:
- '@babel/parser': 7.27.0
- '@babel/types': 7.27.0
+ '@babel/parser': 7.28.4
+ '@babel/types': 7.28.4
source-map-js: 1.2.1
make-dir@3.1.0:
@@ -35712,7 +35657,7 @@ snapshots:
mdast-util-find-and-replace@3.0.1:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
escape-string-regexp: 5.0.0
unist-util-is: 6.0.0
unist-util-visit-parents: 6.0.1
@@ -35736,7 +35681,7 @@ snapshots:
mdast-util-from-markdown@2.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
'@types/unist': 3.0.3
decode-named-character-reference: 1.0.2
devlop: 1.1.0
@@ -35753,7 +35698,7 @@ snapshots:
mdast-util-from-markdown@2.0.2(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
'@types/unist': 3.0.3
decode-named-character-reference: 1.0.2
devlop: 1.1.0
@@ -35770,7 +35715,7 @@ snapshots:
mdast-util-frontmatter@2.0.1(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
devlop: 1.1.0
escape-string-regexp: 5.0.0
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
@@ -35788,7 +35733,7 @@ snapshots:
mdast-util-gfm-autolink-literal@2.0.0:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
ccount: 2.0.1
devlop: 1.1.0
mdast-util-find-and-replace: 3.0.1
@@ -35802,7 +35747,7 @@ snapshots:
mdast-util-gfm-footnote@2.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
devlop: 1.1.0
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
mdast-util-to-markdown: 2.1.0
@@ -35817,7 +35762,7 @@ snapshots:
mdast-util-gfm-strikethrough@2.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
mdast-util-to-markdown: 2.1.0
transitivePeerDependencies:
@@ -35834,7 +35779,7 @@ snapshots:
mdast-util-gfm-table@2.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
devlop: 1.1.0
markdown-table: 3.0.3
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
@@ -35849,7 +35794,7 @@ snapshots:
mdast-util-gfm-task-list-item@2.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
devlop: 1.1.0
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
mdast-util-to-markdown: 2.1.0
@@ -35883,7 +35828,7 @@ snapshots:
mdast-util-math@3.0.0(supports-color@8.1.1):
dependencies:
'@types/hast': 3.0.4
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
devlop: 1.1.0
longest-streak: 3.1.0
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
@@ -35906,7 +35851,7 @@ snapshots:
dependencies:
'@types/estree-jsx': 1.0.1
'@types/hast': 3.0.4
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
devlop: 1.1.0
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
mdast-util-to-markdown: 2.1.0
@@ -35934,7 +35879,7 @@ snapshots:
dependencies:
'@types/estree-jsx': 1.0.1
'@types/hast': 3.0.4
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
'@types/unist': 3.0.3
ccount: 2.0.1
devlop: 1.1.0
@@ -35981,7 +35926,7 @@ snapshots:
dependencies:
'@types/estree-jsx': 1.0.1
'@types/hast': 3.0.4
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
devlop: 1.1.0
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
mdast-util-to-markdown: 2.1.0
@@ -35995,7 +35940,7 @@ snapshots:
mdast-util-phrasing@4.1.0:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
unist-util-is: 6.0.0
mdast-util-to-hast@12.3.0:
@@ -36012,7 +35957,7 @@ snapshots:
mdast-util-to-hast@13.2.0:
dependencies:
'@types/hast': 3.0.4
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
'@ungap/structured-clone': 1.2.0
devlop: 1.1.0
micromark-util-sanitize-uri: 2.0.1
@@ -36034,7 +35979,7 @@ snapshots:
mdast-util-to-markdown@2.1.0:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
'@types/unist': 3.0.3
longest-streak: 3.1.0
mdast-util-phrasing: 4.1.0
@@ -36049,7 +35994,7 @@ snapshots:
mdast-util-to-string@4.0.0:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-toc@6.1.1:
dependencies:
@@ -36377,8 +36322,8 @@ snapshots:
micromark-extension-mdxjs@1.0.1:
dependencies:
- acorn: 8.11.3
- acorn-jsx: 5.3.2(acorn@8.11.3)
+ acorn: 8.14.1
+ acorn-jsx: 5.3.2(acorn@8.14.1)
micromark-extension-mdx-expression: 1.0.8
micromark-extension-mdx-jsx: 1.0.5
micromark-extension-mdx-md: 1.0.1
@@ -36628,7 +36573,7 @@ snapshots:
micromark@3.2.0(supports-color@8.1.1):
dependencies:
'@types/debug': 4.1.9
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
decode-named-character-reference: 1.0.2
micromark-core-commonmark: 1.1.0
micromark-factory-space: 1.1.0
@@ -36650,7 +36595,7 @@ snapshots:
micromark@4.0.0(supports-color@8.1.1):
dependencies:
'@types/debug': 4.1.9
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
decode-named-character-reference: 1.0.2
devlop: 1.1.0
micromark-core-commonmark: 2.0.1
@@ -36967,6 +36912,20 @@ snapshots:
neo-async@2.6.2: {}
+ next-contentlayer2@0.4.6(contentlayer2@0.4.6(esbuild@0.25.2)(markdown-wasm@1.2.0)(supports-color@8.1.1))(esbuild@0.25.2)(markdown-wasm@1.2.0)(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(supports-color@8.1.1):
+ dependencies:
+ '@contentlayer2/core': 0.4.3(esbuild@0.25.2)(markdown-wasm@1.2.0)(supports-color@8.1.1)
+ '@contentlayer2/utils': 0.4.3
+ contentlayer2: 0.4.6(esbuild@0.25.2)(markdown-wasm@1.2.0)(supports-color@8.1.1)
+ next: 15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ transitivePeerDependencies:
+ - '@effect-ts/otel-node'
+ - esbuild
+ - markdown-wasm
+ - supports-color
+
next-contentlayer2@0.4.6(contentlayer2@0.4.6(esbuild@0.25.2)(markdown-wasm@1.2.0)(supports-color@8.1.1))(esbuild@0.25.2)(markdown-wasm@1.2.0)(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(supports-color@8.1.1):
dependencies:
'@contentlayer2/core': 0.4.3(esbuild@0.25.2)(markdown-wasm@1.2.0)(supports-color@8.1.1)
@@ -36996,12 +36955,7 @@ snapshots:
dependencies:
js-yaml-loader: 1.2.2
- next-router-mock@0.9.13(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1):
- dependencies:
- next: 15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
- react: 18.3.1
-
- next-router-mock@0.9.13(next@15.5.2(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1):
+ next-router-mock@0.9.13(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react@18.3.1):
dependencies:
next: 15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
react: 18.3.1
@@ -37023,7 +36977,7 @@ snapshots:
dependencies:
'@next/env': 15.5.2
'@swc/helpers': 0.5.15
- caniuse-lite: 1.0.30001695
+ caniuse-lite: 1.0.30001743
postcss: 8.4.31
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
@@ -37049,7 +37003,7 @@ snapshots:
dependencies:
'@next/env': 15.5.2
'@swc/helpers': 0.5.15
- caniuse-lite: 1.0.30001695
+ caniuse-lite: 1.0.30001743
postcss: 8.4.31
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
@@ -37077,14 +37031,14 @@ snapshots:
dependencies:
'@cloudflare/kv-asset-handler': 0.4.0
'@netlify/functions': 3.0.4
- '@rollup/plugin-alias': 5.1.1(rollup@4.38.0)
- '@rollup/plugin-commonjs': 28.0.3(rollup@4.38.0)
- '@rollup/plugin-inject': 5.0.5(rollup@4.38.0)
- '@rollup/plugin-json': 6.1.0(rollup@4.38.0)
- '@rollup/plugin-node-resolve': 16.0.1(rollup@4.38.0)
- '@rollup/plugin-replace': 6.0.2(rollup@4.38.0)
- '@rollup/plugin-terser': 0.4.4(rollup@4.38.0)
- '@vercel/nft': 0.29.2(rollup@4.38.0)(supports-color@8.1.1)
+ '@rollup/plugin-alias': 5.1.1(rollup@4.50.2)
+ '@rollup/plugin-commonjs': 28.0.3(rollup@4.50.2)
+ '@rollup/plugin-inject': 5.0.5(rollup@4.50.2)
+ '@rollup/plugin-json': 6.1.0(rollup@4.50.2)
+ '@rollup/plugin-node-resolve': 16.0.1(rollup@4.50.2)
+ '@rollup/plugin-replace': 6.0.2(rollup@4.50.2)
+ '@rollup/plugin-terser': 0.4.4(rollup@4.50.2)
+ '@vercel/nft': 0.29.2(rollup@4.50.2)(supports-color@8.1.1)
archiver: 7.0.1
c12: 3.0.2(magicast@0.3.5)
chokidar: 4.0.3
@@ -37109,11 +37063,11 @@ snapshots:
hookable: 5.5.3
httpxy: 0.1.7
ioredis: 5.6.0(supports-color@8.1.1)
- jiti: 2.4.2
+ jiti: 2.5.1
klona: 2.0.6
knitwork: 1.2.0
listhen: 1.9.0
- magic-string: 0.30.17
+ magic-string: 0.30.19
magicast: 0.3.5
mime: 4.0.6
mlly: 1.7.4
@@ -37127,14 +37081,14 @@ snapshots:
pkg-types: 2.1.0
pretty-bytes: 6.1.1
radix3: 1.1.2
- rollup: 4.38.0
- rollup-plugin-visualizer: 5.14.0(rollup@4.38.0)
+ rollup: 4.50.2
+ rollup-plugin-visualizer: 5.14.0(rollup@4.50.2)
scule: 1.3.0
semver: 7.7.2
serve-placeholder: 2.0.2
serve-static: 1.16.2(supports-color@8.1.1)
source-map: 0.7.4
- std-env: 3.8.1
+ std-env: 3.9.0
ufo: 1.5.4
ultrahtml: 1.5.3
uncrypto: 0.1.3
@@ -37497,12 +37451,12 @@ snapshots:
mitt: 3.0.1
next: 15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
- nuqs@2.4.1(next@15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-router@7.5.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1):
+ nuqs@2.4.1(next@15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4))(react-router@7.5.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1):
dependencies:
mitt: 3.0.1
react: 18.3.1
optionalDependencies:
- next: 15.5.2(@babel/core@7.26.10(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
+ next: 15.5.2(@babel/core@7.28.4(supports-color@8.1.1))(@opentelemetry/api@1.9.0)(@playwright/test@1.53.0)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.4)
react-router: 7.5.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
nuxt@4.1.2(@electric-sql/pglite@0.2.15)(@parcel/watcher@2.5.1)(@types/node@22.13.14)(@vue/compiler-sfc@3.5.21)(aws4fetch@1.0.20)(db0@0.3.2(@electric-sql/pglite@0.2.15)(drizzle-orm@0.44.2(@electric-sql/pglite@0.2.15)(@opentelemetry/api@1.9.0)(@types/pg@8.15.4)(pg@8.16.3)))(drizzle-orm@0.44.2(@electric-sql/pglite@0.2.15)(@opentelemetry/api@1.9.0)(@types/pg@8.15.4)(pg@8.16.3))(encoding@0.1.13)(eslint@8.57.0(supports-color@8.1.1))(ioredis@5.7.0(supports-color@8.1.1))(magicast@0.3.5)(rollup@4.50.2)(sass@1.77.4)(supports-color@8.1.1)(terser@5.39.0)(tsx@4.20.3)(typescript@5.9.2)(vite@6.3.5(@types/node@22.13.14)(jiti@2.5.1)(sass@1.77.4)(terser@5.39.0)(tsx@4.20.3)(yaml@2.8.1))(yaml@2.8.1):
@@ -38294,8 +38248,6 @@ snapshots:
picomatch@2.3.1: {}
- picomatch@4.0.2: {}
-
picomatch@4.0.3: {}
pidtree@0.3.1: {}
@@ -38457,24 +38409,24 @@ snapshots:
dependencies:
postcss: 8.5.6
- postcss-import@15.1.0(postcss@8.5.3):
+ postcss-import@15.1.0(postcss@8.5.6):
dependencies:
- postcss: 8.5.3
+ postcss: 8.5.6
postcss-value-parser: 4.2.0
read-cache: 1.0.0
resolve: 1.22.10
- postcss-js@4.0.1(postcss@8.5.3):
+ postcss-js@4.0.1(postcss@8.5.6):
dependencies:
camelcase-css: 2.0.1
- postcss: 8.5.3
+ postcss: 8.5.6
- postcss-load-config@4.0.1(postcss@8.5.3)(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2)):
+ postcss-load-config@4.0.1(postcss@8.5.6)(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2)):
dependencies:
lilconfig: 2.1.0
- yaml: 2.4.5
+ yaml: 2.8.1
optionalDependencies:
- postcss: 8.5.3
+ postcss: 8.5.6
ts-node: 10.9.2(@types/node@22.13.14)(typescript@5.9.2)
postcss-merge-longhand@7.0.5(postcss@8.5.6):
@@ -38516,9 +38468,9 @@ snapshots:
postcss: 8.5.6
postcss-selector-parser: 7.1.0
- postcss-nested@6.0.1(postcss@8.5.3):
+ postcss-nested@6.0.1(postcss@8.5.6):
dependencies:
- postcss: 8.5.3
+ postcss: 8.5.6
postcss-selector-parser: 6.0.13
postcss-normalize-charset@7.0.1(postcss@8.5.6):
@@ -38613,7 +38565,7 @@ snapshots:
postcss@8.4.31:
dependencies:
- nanoid: 3.3.8
+ nanoid: 3.3.11
picocolors: 1.1.1
source-map-js: 1.2.1
@@ -39086,7 +39038,7 @@ snapshots:
react-markdown@10.1.0(@types/react@18.3.3)(react@18.3.1)(supports-color@8.1.1):
dependencies:
'@types/hast': 3.0.4
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
'@types/react': 18.3.3
devlop: 1.1.0
hast-util-to-jsx-runtime: 2.3.6(supports-color@8.1.1)
@@ -39628,7 +39580,7 @@ snapshots:
remark-frontmatter@5.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-frontmatter: 2.0.1(supports-color@8.1.1)
micromark-extension-frontmatter: 2.0.0
unified: 11.0.5
@@ -39646,7 +39598,7 @@ snapshots:
remark-gfm@4.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-gfm: 3.0.0(supports-color@8.1.1)
micromark-extension-gfm: 3.0.0
remark-parse: 11.0.0(supports-color@8.1.1)
@@ -39657,7 +39609,7 @@ snapshots:
remark-html@16.0.1:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
hast-util-sanitize: 5.0.0
hast-util-to-html: 9.0.0
mdast-util-to-hast: 13.2.0
@@ -39665,7 +39617,7 @@ snapshots:
remark-math@6.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-math: 3.0.0(supports-color@8.1.1)
micromark-extension-math: 3.0.0
unified: 11.0.5
@@ -39674,12 +39626,12 @@ snapshots:
remark-mdx-frontmatter@4.0.0:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
estree-util-is-identifier-name: 3.0.0
estree-util-value-to-estree: 3.3.3
toml: 3.0.0
unified: 11.0.5
- yaml: 2.4.5
+ yaml: 2.8.1
remark-mdx@2.3.0(supports-color@8.1.1):
dependencies:
@@ -39705,7 +39657,7 @@ snapshots:
remark-parse@11.0.0(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-from-markdown: 2.0.2(supports-color@8.1.1)
micromark-util-types: 2.0.0
unified: 11.0.5
@@ -39722,7 +39674,7 @@ snapshots:
remark-rehype@11.1.1:
dependencies:
'@types/hast': 3.0.4
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-to-hast: 13.2.0
unified: 11.0.5
vfile: 6.0.3
@@ -39735,7 +39687,7 @@ snapshots:
remark-stringify@11.0.0:
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
mdast-util-to-markdown: 2.1.0
unified: 11.0.5
@@ -39750,7 +39702,7 @@ snapshots:
remark@15.0.1(supports-color@8.1.1):
dependencies:
- '@types/mdast': 4.0.1
+ '@types/mdast': 4.0.4
remark-parse: 11.0.0(supports-color@8.1.1)
remark-stringify: 11.0.0
unified: 11.0.5
@@ -39871,19 +39823,19 @@ snapshots:
glob: 11.0.0
package-json-from-dist: 1.0.1
- rollup-plugin-visualizer@5.14.0(rollup@4.38.0):
+ rollup-plugin-visualizer@5.14.0(rollup@4.50.2):
dependencies:
open: 8.4.2
- picomatch: 4.0.2
+ picomatch: 4.0.3
source-map: 0.7.4
yargs: 17.7.2
optionalDependencies:
- rollup: 4.38.0
+ rollup: 4.50.2
rollup-plugin-visualizer@6.0.3(rollup@4.50.2):
dependencies:
open: 8.4.2
- picomatch: 4.0.2
+ picomatch: 4.0.3
source-map: 0.7.6
yargs: 17.7.2
optionalDependencies:
@@ -39944,7 +39896,7 @@ snapshots:
router@2.2.0(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
depd: 2.0.0
is-promise: 4.0.0
parseurl: 1.3.3
@@ -40118,7 +40070,7 @@ snapshots:
send@1.2.0(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
encodeurl: 2.0.0
escape-html: 1.0.3
etag: 1.8.1
@@ -40411,7 +40363,7 @@ snapshots:
dependencies:
'@kwsites/file-exists': 1.1.1(supports-color@8.1.1)
'@kwsites/promise-deferred': 1.1.1
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
transitivePeerDependencies:
- supports-color
@@ -40423,7 +40375,7 @@ snapshots:
simple-websocket@9.1.0(supports-color@8.1.1):
dependencies:
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
queue-microtask: 1.2.3
randombytes: 2.1.0
readable-stream: 3.6.2
@@ -40489,7 +40441,7 @@ snapshots:
socks-proxy-agent@6.2.1(supports-color@8.1.1):
dependencies:
agent-base: 6.0.2(supports-color@8.1.1)
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
socks: 2.8.3
transitivePeerDependencies:
- supports-color
@@ -40497,7 +40449,7 @@ snapshots:
socks-proxy-agent@8.0.3(supports-color@8.1.1):
dependencies:
agent-base: 7.1.3
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
socks: 2.8.3
transitivePeerDependencies:
- supports-color
@@ -40903,7 +40855,7 @@ snapshots:
sucrase@3.34.0:
dependencies:
- '@jridgewell/gen-mapping': 0.3.8
+ '@jridgewell/gen-mapping': 0.3.13
commander: 4.1.1
glob: 7.1.6
lines-and-columns: 1.2.4
@@ -41026,17 +40978,19 @@ snapshots:
normalize-path: 3.0.0
object-hash: 3.0.0
picocolors: 1.1.1
- postcss: 8.5.3
- postcss-import: 15.1.0(postcss@8.5.3)
- postcss-js: 4.0.1(postcss@8.5.3)
- postcss-load-config: 4.0.1(postcss@8.5.3)(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2))
- postcss-nested: 6.0.1(postcss@8.5.3)
+ postcss: 8.5.6
+ postcss-import: 15.1.0(postcss@8.5.6)
+ postcss-js: 4.0.1(postcss@8.5.6)
+ postcss-load-config: 4.0.1(postcss@8.5.6)(ts-node@10.9.2(@types/node@22.13.14)(typescript@5.9.2))
+ postcss-nested: 6.0.1(postcss@8.5.6)
postcss-selector-parser: 6.0.13
resolve: 1.22.10
sucrase: 3.34.0
transitivePeerDependencies:
- ts-node
+ tailwindcss@4.1.13: {}
+
tapable@2.2.1: {}
tar-fs@2.1.3:
@@ -41183,8 +41137,8 @@ snapshots:
tinyglobby@0.2.14:
dependencies:
- fdir: 6.4.6(picomatch@4.0.2)
- picomatch: 4.0.2
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
tinyglobby@0.2.15:
dependencies:
@@ -41652,14 +41606,14 @@ snapshots:
escape-string-regexp: 5.0.0
estree-walker: 3.0.3
local-pkg: 1.1.1
- magic-string: 0.30.17
+ magic-string: 0.30.19
mlly: 1.7.4
pathe: 2.0.3
- picomatch: 4.0.2
+ picomatch: 4.0.3
pkg-types: 1.3.1
scule: 1.3.0
strip-literal: 3.0.0
- tinyglobby: 0.2.14
+ tinyglobby: 0.2.15
unplugin: 2.2.2
unplugin-utils: 0.2.4
@@ -41802,7 +41756,7 @@ snapshots:
unplugin-utils@0.2.4:
dependencies:
pathe: 2.0.3
- picomatch: 4.0.2
+ picomatch: 4.0.3
unplugin-utils@0.3.0:
dependencies:
@@ -41914,7 +41868,7 @@ snapshots:
unwasm@0.3.9:
dependencies:
knitwork: 1.2.0
- magic-string: 0.30.17
+ magic-string: 0.30.19
mlly: 1.7.4
pathe: 1.1.2
pkg-types: 1.3.1
@@ -42220,7 +42174,7 @@ snapshots:
vite-node@3.0.0-beta.2(@types/node@22.13.14)(jiti@2.5.1)(sass@1.77.4)(supports-color@8.1.1)(terser@5.39.0)(tsx@4.19.3)(yaml@2.8.1):
dependencies:
cac: 6.7.14
- debug: 4.4.0(supports-color@8.1.1)
+ debug: 4.4.3(supports-color@8.1.1)
es-module-lexer: 1.6.0
pathe: 1.1.2
vite: 6.3.5(@types/node@22.13.14)(jiti@2.5.1)(sass@1.77.4)(terser@5.39.0)(tsx@4.19.3)(yaml@2.8.1)
@@ -42390,11 +42344,11 @@ snapshots:
vite@6.3.5(@types/node@22.13.14)(jiti@2.5.1)(sass@1.77.4)(terser@5.39.0)(tsx@4.19.3)(yaml@2.4.5):
dependencies:
esbuild: 0.25.2
- fdir: 6.4.6(picomatch@4.0.2)
- picomatch: 4.0.2
- postcss: 8.5.3
- rollup: 4.38.0
- tinyglobby: 0.2.14
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
+ postcss: 8.5.6
+ rollup: 4.50.2
+ tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 22.13.14
fsevents: 2.3.3
@@ -42407,11 +42361,11 @@ snapshots:
vite@6.3.5(@types/node@22.13.14)(jiti@2.5.1)(sass@1.77.4)(terser@5.39.0)(tsx@4.19.3)(yaml@2.8.1):
dependencies:
esbuild: 0.25.2
- fdir: 6.4.6(picomatch@4.0.2)
- picomatch: 4.0.2
- postcss: 8.5.3
- rollup: 4.38.0
- tinyglobby: 0.2.14
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
+ postcss: 8.5.6
+ rollup: 4.50.2
+ tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 22.13.14
fsevents: 2.3.3
@@ -42424,11 +42378,11 @@ snapshots:
vite@6.3.5(@types/node@22.13.14)(jiti@2.5.1)(sass@1.77.4)(terser@5.39.0)(tsx@4.20.3)(yaml@2.8.1):
dependencies:
esbuild: 0.25.2
- fdir: 6.4.6(picomatch@4.0.2)
- picomatch: 4.0.2
- postcss: 8.5.3
- rollup: 4.38.0
- tinyglobby: 0.2.14
+ fdir: 6.5.0(picomatch@4.0.3)
+ picomatch: 4.0.3
+ postcss: 8.5.6
+ rollup: 4.50.2
+ tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 22.13.14
fsevents: 2.3.3
From b08baacb272fd92bb107288cc3db71873eaaccf1 Mon Sep 17 00:00:00 2001
From: Yorvi <56038241+YorviArias@users.noreply.github.com>
Date: Tue, 30 Sep 2025 18:09:40 -0400
Subject: [PATCH 5/5] add myself to humans.txt (#39130)
Co-authored-by: Yorvi Arias
---
apps/docs/public/humans.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/apps/docs/public/humans.txt b/apps/docs/public/humans.txt
index 7c7cfb3d29884..7aed925d2dbd5 100644
--- a/apps/docs/public/humans.txt
+++ b/apps/docs/public/humans.txt
@@ -140,6 +140,7 @@ Tyler Fontaine
Tyler Shukert
TzeYiing L
Wen Bo Xie
+Yorvi Arias
Yuliya Marinova
Yuri Santana
____________