diff --git a/packages/mdxe/bin/mdxe.js b/packages/mdxe/bin/mdxe.js index 3fd51e1..3eb106b 100755 --- a/packages/mdxe/bin/mdxe.js +++ b/packages/mdxe/bin/mdxe.js @@ -51,6 +51,9 @@ const runNextCommand = async (command, args = []) => { const readmePath = resolve(userCwd, 'README.md') const hasReadme = existsSync(readmePath) + const { tempDir, cleanup } = await createTempNextConfig(userCwd) + tempConfigInfo = { cleanup } + const localNextBin = resolve(userCwd, 'node_modules', '.bin', 'next') const mdxeNextBin = resolve(mdxeRoot, 'node_modules', '.bin', 'next') @@ -72,13 +75,17 @@ const runNextCommand = async (command, args = []) => { activeProcess = spawn(cmd, cmdArgs, { stdio: 'inherit', shell: true, - cwd: embeddedAppPath, + cwd: tempDir, // Use the temporary directory with proper App Router configuration env: { ...process.env, PAYLOAD_DB_PATH: resolve(userCwd, 'mdx.db'), NEXT_DIST_DIR: resolve(userCwd, '.next'), USER_CWD: userCwd, - README_PATH: hasReadme ? readmePath : '' + README_PATH: hasReadme ? readmePath : '', + MDXE_CONTENT_DIR: userCwd, + NEXT_PAGES_DIR: '', + NEXT_SKIP_PAGES_ROUTER: 'true', + NEXT_TELEMETRY_DISABLED: '1' } }) diff --git a/packages/mdxe/src/app/404.tsx b/packages/mdxe/src/app/404.tsx new file mode 100644 index 0000000..caa07ae --- /dev/null +++ b/packages/mdxe/src/app/404.tsx @@ -0,0 +1,23 @@ +import React from 'react' + +export default function NotFound() { + return ( +
+
+

404

+

Page Not Found

+

+ The page you are looking for does not exist or has been moved. +

+
+ + Go back home + +
+
+
+ ) +} diff --git a/packages/mdxe/src/app/mdx-components.tsx b/packages/mdxe/src/app/mdx-components.tsx index 5638594..61911cc 100644 --- a/packages/mdxe/src/app/mdx-components.tsx +++ b/packages/mdxe/src/app/mdx-components.tsx @@ -1,33 +1,38 @@ import React from 'react' -import type { ComponentType } from 'react' +import type { ComponentType, ReactNode } from 'react' -type MDXComponents = Record>> +interface MDXComponentProps { + children: ReactNode // Changed from optional to required + [key: string]: any +} + +type MDXComponents = Record> const layouts = { - ArticleLayout: ({ children }: { children: React.ReactNode }) =>
{children}
, - PostLayout: ({ children }: { children: React.ReactNode }) =>
{children}
, - DocsLayout: ({ children }: { children: React.ReactNode }) =>
{children}
, - ThingLayout: ({ children }: { children: React.ReactNode }) =>
{children}
, + ArticleLayout: ({ children }: MDXComponentProps) =>
{children}
, + PostLayout: ({ children }: MDXComponentProps) =>
{children}
, + DocsLayout: ({ children }: MDXComponentProps) =>
{children}
, + ThingLayout: ({ children }: MDXComponentProps) =>
{children}
, } -export function useMDXComponents(components: MDXComponents): MDXComponents { +export async function useMDXComponents(components: MDXComponents): Promise { let userComponents = {} try { - const userMdxComponents = require(process.cwd() + '/mdx-components.js') - if (userMdxComponents.default) { - userComponents = userMdxComponents.default - } else if (typeof userMdxComponents === 'function') { + const userMdxComponentsModule = await import(process.cwd() + '/mdx-components.js') + const userMdxComponents = userMdxComponentsModule.default || userMdxComponentsModule + + if (typeof userMdxComponents === 'function') { userComponents = userMdxComponents(components) } else if (typeof userMdxComponents === 'object') { userComponents = userMdxComponents } - } catch (_) { // Underscore indicates intentionally unused parameter + } catch (error) { } const defaultComponents = { - h1: ({ children }: { children: React.ReactNode }) =>

{children}

, - h2: ({ children }: { children: React.ReactNode }) =>

{children}

, - p: ({ children }: { children: React.ReactNode }) =>

{children}

, + h1: ({ children }: MDXComponentProps) =>

{children}

, + h2: ({ children }: MDXComponentProps) =>

{children}

, + p: ({ children }: MDXComponentProps) =>

{children}

, } return { diff --git a/packages/mdxe/src/app/not-found.tsx b/packages/mdxe/src/app/not-found.tsx new file mode 100644 index 0000000..caa07ae --- /dev/null +++ b/packages/mdxe/src/app/not-found.tsx @@ -0,0 +1,23 @@ +import React from 'react' + +export default function NotFound() { + return ( +
+
+

404

+

Page Not Found

+

+ The page you are looking for does not exist or has been moved. +

+ +
+
+ ) +} diff --git a/packages/mdxe/src/config/next.config.js b/packages/mdxe/src/config/next.config.js index f27d02f..75ba381 100644 --- a/packages/mdxe/src/config/next.config.js +++ b/packages/mdxe/src/config/next.config.js @@ -3,11 +3,9 @@ */ const nextConfig = { reactStrictMode: true, - experimental: { - turbo: { - resolveAlias: { - 'next-mdx-import-source-file': './mdx-components.js', - }, + turbopack: { + resolveAlias: { + 'next-mdx-import-source-file': './mdx-components.js', }, }, distDir: '.next', @@ -16,6 +14,10 @@ const nextConfig = { images: { domains: (process.env.NEXT_IMAGE_DOMAINS || '').split(',').filter(Boolean), }, + pageExtensions: ['js', 'jsx', 'ts', 'tsx', 'mdx'], + useFileSystemPublicRoutes: true, + skipMiddlewareUrlNormalize: true, + skipTrailingSlashRedirect: true } module.exports = nextConfig diff --git a/packages/mdxe/src/config/tailwind.config.js b/packages/mdxe/src/config/tailwind.config.js index 6073c69..d41c9f3 100644 --- a/packages/mdxe/src/config/tailwind.config.js +++ b/packages/mdxe/src/config/tailwind.config.js @@ -6,7 +6,6 @@ import { join } from 'path' export default { content: [ './app/**/*.{js,ts,jsx,tsx,md,mdx}', - './pages/**/*.{js,ts,jsx,tsx,md,mdx}', './components/**/*.{js,ts,jsx,tsx,md,mdx}', './content/**/*.{js,ts,jsx,tsx,md,mdx}', './src/**/*.{js,ts,jsx,tsx,md,mdx}', diff --git a/packages/mdxe/src/next.config.js b/packages/mdxe/src/next.config.js index c0d5057..f3c0d25 100644 --- a/packages/mdxe/src/next.config.js +++ b/packages/mdxe/src/next.config.js @@ -13,6 +13,7 @@ const nextConfig = { images: { domains: (process.env.NEXT_IMAGE_DOMAINS || '').split(',').filter(Boolean), }, + pageExtensions: ['js', 'jsx', 'ts', 'tsx', 'mdx'], webpack: (config) => { config.module.rules.push({ test: /\.(md|mdx)$/, diff --git a/packages/mdxe/src/tsconfig.json b/packages/mdxe/src/tsconfig.json index 59dc667..f14f578 100644 --- a/packages/mdxe/src/tsconfig.json +++ b/packages/mdxe/src/tsconfig.json @@ -26,9 +26,10 @@ "include": [ "**/*.ts", "**/*.tsx", - "/Users/nathanclevenger/Projects/mdx/examples/minimal/.next/types/**/*.ts", + "../../examples/minimal/.next/types/**/*.ts", + ".next/types/**/*.ts", "next-env.d.ts", - "/Users/nathanclevenger/Projects/mdx/packages/mdxe/.next/types/**/*.ts" + "/home/ubuntu/repos/mdx/examples/minimal/.next/types/**/*.ts" ], "exclude": [ "node_modules" diff --git a/packages/mdxe/src/utils/temp-config.js b/packages/mdxe/src/utils/temp-config.js index 6d44264..c10835e 100644 --- a/packages/mdxe/src/utils/temp-config.js +++ b/packages/mdxe/src/utils/temp-config.js @@ -54,111 +54,36 @@ export default function RootLayout({ children }) { ` ) - // Create the API route for content listing - await fs.writeFile( - join(contentApiDir, 'route.js'), - `import { readdir } from 'fs/promises' -import { join } from 'path' - -export async function GET() { - try { - const contentDir = process.env.MDXE_CONTENT_DIR || '.' - const filePaths = [] - - async function findMarkdownFiles(dir) { - const entries = await readdir(dir, { withFileTypes: true }) - - for (const entry of entries) { - const fullPath = join(dir, entry.name) - - if (entry.isDirectory()) { - await findMarkdownFiles(fullPath) - } else if (entry.name.endsWith('.md') || entry.name.endsWith('.mdx')) { - filePaths.push(fullPath) - } - } - } - - await findMarkdownFiles(contentDir) - - return Response.json({ files: filePaths }) - } catch (error) { - console.error('Error loading content:', error) - return Response.json({ files: [], error: error.message }, { status: 500 }) - } -} -` + // copy the not-found.tsx template to the app directory + const notFoundTemplatePath = resolve(__dirname, 'templates', 'not-found.tsx') + if (existsSync(notFoundTemplatePath)) { + await fs.copyFile(notFoundTemplatePath, join(appDir, 'not-found.tsx')) + } else { + await fs.writeFile( + join(appDir, 'not-found.tsx'), + `export default function NotFound() { + return ( +
+

404 - Page Not Found

+

The page you are looking for does not exist.

+ Go back home +
) +}` + ) + } // Create the client page component await fs.writeFile( join(appDir, 'page.tsx'), - `"use client" - -import { useEffect, useState } from 'react' - -export default function Page() { - const [contentPaths, setContentPaths] = useState([]) - const [isLoading, setIsLoading] = useState(true) - const [error, setError] = useState(null) - - useEffect(() => { - async function fetchContent() { - try { - setIsLoading(true) - const response = await fetch('/api/content') - - if (!response.ok) { - throw new Error('Failed to fetch content') - } - - const data = await response.json() - setContentPaths(data.files) - } catch (err) { - console.error('Error fetching content:', err) - setError(err.message) - } finally { - setIsLoading(false) - } - } - - fetchContent() - }, []) - - if (isLoading) { - return
Loading content...
- } - - if (error) { - return
Error: {error}
- } - - return ( -
-

MDXE Content

- {contentPaths.length === 0 ? ( -

No markdown content found.

- ) : ( - - )} -
- ) -}` + '"use client"\n\nimport { useEffect, useState } from \'react\'\n\nexport default function Page() {\n const [contentPaths, setContentPaths] = useState([])\n const [isLoading, setIsLoading] = useState(true)\n const [error, setError] = useState(null)\n \n useEffect(() => {\n async function fetchContent() {\n try {\n setIsLoading(true)\n const response = await fetch(\'/api/content\')\n \n if (!response.ok) {\n throw new Error(\'Failed to fetch content\')\n }\n \n const data = await response.json()\n setContentPaths(data.files || [])\n } catch (err) {\n console.error(\'Error fetching content:\', err)\n setError(err.message)\n } finally {\n setIsLoading(false)\n }\n }\n \n fetchContent()\n }, [])\n \n if (isLoading) {\n return
Loading content...
\n }\n \n if (error) {\n return
Error: {error}
\n }\n \n return (\n
\n

MDXE Content

\n {contentPaths.length === 0 ? (\n

No markdown content found.

\n ) : (\n \n )}\n
\n )\n}' ) const cleanup = async () => { try { await fs.rm(tempDir, { recursive: true, force: true }) } catch (error) { - console.warn(`Warning: Could not remove temporary directory ${tempDir}: ${error.message}`) + console.warn('Warning: Could not remove temporary directory ' + tempDir + ': ' + error.message) } } diff --git a/packages/mdxe/src/utils/templates/not-found.tsx b/packages/mdxe/src/utils/templates/not-found.tsx new file mode 100644 index 0000000..caa07ae --- /dev/null +++ b/packages/mdxe/src/utils/templates/not-found.tsx @@ -0,0 +1,23 @@ +import React from 'react' + +export default function NotFound() { + return ( +
+
+

404

+

Page Not Found

+

+ The page you are looking for does not exist or has been moved. +

+ +
+
+ ) +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bf74d26..d3136c9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -80,7 +80,7 @@ importers: version: 0.3.0(react@19.1.0) ai-workflows: specifier: ^1.1.0 - version: 1.1.0(@aws-sdk/credential-providers@3.804.0)(@mdx-js/mdx@3.1.0(acorn@8.14.1))(encoding@0.1.13)(socks@2.8.4)(ws@8.18.0) + version: 1.1.0(@aws-sdk/credential-providers@3.804.0)(@mdx-js/mdx@3.1.0(acorn@8.14.1))(encoding@0.1.13)(socks@2.8.4)(web-streams-polyfill@4.0.0-beta.3)(ws@8.18.0) apis.do: specifier: ^0.0.1 version: 0.0.1 @@ -239,7 +239,7 @@ importers: version: 0.3.0(react@19.1.0) ai-workflows: specifier: ^1.1.0 - version: 1.1.0(@aws-sdk/credential-providers@3.804.0)(@mdx-js/mdx@3.1.0(acorn@8.14.1))(encoding@0.1.13)(socks@2.8.4)(ws@8.18.0) + version: 1.1.0(@aws-sdk/credential-providers@3.804.0)(@mdx-js/mdx@3.1.0(acorn@8.14.1))(encoding@0.1.13)(socks@2.8.4)(web-streams-polyfill@4.0.0-beta.3)(ws@8.18.0) apis.do: specifier: ^0.0.1 version: 0.0.1 @@ -627,7 +627,7 @@ importers: version: 3.33.0(encoding@0.1.13)(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3)) '@payloadcms/richtext-lexical': specifier: 3.33.0 - version: 3.33.0(@faceless-ui/modal@3.0.0-beta.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.33.0(@types/react@19.1.0)(graphql@16.11.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3))(@types/react@19.1.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3)(yjs@13.6.26) + version: 3.33.0(@faceless-ui/modal@2.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.33.0(@types/react@19.1.0)(graphql@16.11.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3))(@types/react@19.1.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3)(yjs@13.6.26) graphql: specifier: ^16.8.1 version: 16.11.0 @@ -691,7 +691,7 @@ importers: version: 3.37.0(@types/react@19.1.0)(graphql@16.8.1)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2) '@payloadcms/richtext-lexical': specifier: ^3.37.0 - version: 3.37.0(@faceless-ui/modal@3.0.0-beta.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.37.0(@types/react@19.1.0)(graphql@16.8.1)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2))(@types/react@19.1.0)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2)(yjs@13.6.26) + version: 3.37.0(@faceless-ui/modal@2.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.37.0(@types/react@19.1.0)(graphql@16.8.1)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2))(@types/react@19.1.0)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2)(yjs@13.6.26) '@tailwindcss/typography': specifier: ^0.5.10 version: 0.5.16(tailwindcss@3.4.17(ts-node@10.9.2(@swc/core@1.6.1(@swc/helpers@0.5.17))(@types/node@22.15.14)(typescript@5.8.2))) @@ -776,7 +776,7 @@ importers: version: 2.2.3 jsonld: specifier: ^8.3.2 - version: 8.3.3(web-streams-polyfill@3.3.3) + version: 8.3.3(web-streams-polyfill@4.0.0-beta.3) mdast-util-to-string: specifier: ^4.0.0 version: 4.0.0 @@ -12303,10 +12303,10 @@ snapshots: optionalDependencies: date-fns: 2.30.0 - '@digitalbazaar/http-client@3.4.1(web-streams-polyfill@3.3.3)': + '@digitalbazaar/http-client@3.4.1(web-streams-polyfill@4.0.0-beta.3)': dependencies: ky: 0.33.3 - ky-universal: 0.11.0(ky@0.33.3)(web-streams-polyfill@3.3.3) + ky-universal: 0.11.0(ky@0.33.3)(web-streams-polyfill@4.0.0-beta.3) undici: 5.29.0 transitivePeerDependencies: - web-streams-polyfill @@ -13025,6 +13025,15 @@ snapshots: react-dom: 18.3.1(react@18.3.1) react-transition-group: 4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@faceless-ui/modal@2.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': + dependencies: + body-scroll-lock: 3.1.5 + focus-trap: 6.9.4 + qs: 6.14.0 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + react-transition-group: 4.4.5(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@faceless-ui/modal@3.0.0-beta.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': dependencies: body-scroll-lock: 4.0.0-beta.0 @@ -14138,9 +14147,9 @@ snapshots: - aws-crt - encoding - '@payloadcms/richtext-lexical@3.33.0(@faceless-ui/modal@3.0.0-beta.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.33.0(@types/react@19.1.0)(graphql@16.11.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3))(@types/react@19.1.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3)(yjs@13.6.26)': + '@payloadcms/richtext-lexical@3.33.0(@faceless-ui/modal@2.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.33.0(@types/react@19.1.0)(graphql@16.11.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3))(@types/react@19.1.0)(monaco-editor@0.52.2)(next@15.3.0(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@3.33.0(graphql@16.11.0)(typescript@5.7.3))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.7.3)(yjs@13.6.26)': dependencies: - '@faceless-ui/modal': 3.0.0-beta.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@faceless-ui/modal': 2.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@faceless-ui/scroll-info': 2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@lexical/headless': 0.28.0 '@lexical/html': 0.28.0 @@ -14180,9 +14189,9 @@ snapshots: - typescript - yjs - '@payloadcms/richtext-lexical@3.37.0(@faceless-ui/modal@3.0.0-beta.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.37.0(@types/react@19.1.0)(graphql@16.8.1)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2))(@types/react@19.1.0)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2)(yjs@13.6.26)': + '@payloadcms/richtext-lexical@3.37.0(@faceless-ui/modal@2.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@faceless-ui/scroll-info@2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(@payloadcms/next@3.37.0(@types/react@19.1.0)(graphql@16.8.1)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2))(@types/react@19.1.0)(monaco-editor@0.38.0)(next@15.3.2(@opentelemetry/api@1.9.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(sass@1.77.4))(payload@2.32.2(@swc/helpers@0.5.17)(@types/react@19.1.0)(encoding@0.1.13)(esbuild@0.19.12)(typescript@5.8.2)(webpack@5.99.8(@swc/core@1.6.1(@swc/helpers@0.5.17))(esbuild@0.19.12)))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.8.2)(yjs@13.6.26)': dependencies: - '@faceless-ui/modal': 3.0.0-beta.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + '@faceless-ui/modal': 2.0.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@faceless-ui/scroll-info': 2.0.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0) '@lexical/headless': 0.28.0 '@lexical/html': 0.28.0 @@ -15890,13 +15899,13 @@ snapshots: transitivePeerDependencies: - react - ai-workflows@1.1.0(@aws-sdk/credential-providers@3.804.0)(@mdx-js/mdx@3.1.0(acorn@8.14.1))(encoding@0.1.13)(socks@2.8.4)(ws@8.18.0): + ai-workflows@1.1.0(@aws-sdk/credential-providers@3.804.0)(@mdx-js/mdx@3.1.0(acorn@8.14.1))(encoding@0.1.13)(socks@2.8.4)(web-streams-polyfill@4.0.0-beta.3)(ws@8.18.0): dependencies: '@ai-sdk/openai': 1.3.22(zod@3.24.4) ai: 4.3.15(react@18.3.1)(zod@3.24.4) ai-functions: 0.2.19(@aws-sdk/credential-providers@3.804.0)(encoding@0.1.13)(socks@2.8.4)(ws@8.18.0)(zod@3.24.4) gray-matter: 4.0.3 - mdxld: 0.1.3(@mdx-js/mdx@3.1.0(acorn@8.14.1)) + mdxld: 0.1.3(@mdx-js/mdx@3.1.0(acorn@8.14.1))(web-streams-polyfill@4.0.0-beta.3) openai: 4.97.0(encoding@0.1.13)(ws@8.18.0)(zod@3.24.4) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -17581,8 +17590,8 @@ snapshots: '@typescript-eslint/parser': 8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3) eslint: 9.26.0(jiti@1.21.7) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.31.0)(eslint@9.26.0(jiti@1.21.7)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.26.0(jiti@1.21.7)) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.26.0(jiti@1.21.7)) eslint-plugin-react: 7.37.5(eslint@9.26.0(jiti@1.21.7)) eslint-plugin-react-hooks: 5.2.0(eslint@9.26.0(jiti@1.21.7)) @@ -17605,7 +17614,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)): + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0)(eslint@9.26.0(jiti@1.21.7)): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.0 @@ -17616,22 +17625,22 @@ snapshots: tinyglobby: 0.2.13 unrs-resolver: 1.7.2 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.26.0(jiti@1.21.7)) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0)(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3) eslint: 9.26.0(jiti@1.21.7) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.31.0)(eslint@9.26.0(jiti@1.21.7)) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.26.0(jiti@1.21.7)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -17642,7 +17651,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.26.0(jiti@1.21.7) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.32.0(eslint@9.26.0(jiti@1.21.7))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0)(eslint@9.26.0(jiti@1.21.7)))(eslint@9.26.0(jiti@1.21.7)) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -19242,9 +19251,9 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 - jsonld@8.3.3(web-streams-polyfill@3.3.3): + jsonld@8.3.3(web-streams-polyfill@4.0.0-beta.3): dependencies: - '@digitalbazaar/http-client': 3.4.1(web-streams-polyfill@3.3.3) + '@digitalbazaar/http-client': 3.4.1(web-streams-polyfill@4.0.0-beta.3) canonicalize: 1.0.8 lru-cache: 6.0.0 rdf-canonize: 3.4.0 @@ -19304,13 +19313,13 @@ snapshots: kolorist@1.8.0: {} - ky-universal@0.11.0(ky@0.33.3)(web-streams-polyfill@3.3.3): + ky-universal@0.11.0(ky@0.33.3)(web-streams-polyfill@4.0.0-beta.3): dependencies: abort-controller: 3.0.0 ky: 0.33.3 node-fetch: 3.3.2 optionalDependencies: - web-streams-polyfill: 3.3.3 + web-streams-polyfill: 4.0.0-beta.3 ky@0.33.3: {} @@ -19734,10 +19743,10 @@ snapshots: mdast@3.0.0: {} - mdxld@0.1.3(@mdx-js/mdx@3.1.0(acorn@8.14.1)): + mdxld@0.1.3(@mdx-js/mdx@3.1.0(acorn@8.14.1))(web-streams-polyfill@4.0.0-beta.3): dependencies: json5: 2.2.3 - jsonld: 8.3.3(web-streams-polyfill@3.3.3) + jsonld: 8.3.3(web-streams-polyfill@4.0.0-beta.3) remark-frontmatter: 5.0.0 remark-gfm: 4.0.1 remark-mdx: 3.1.0