From d186915227c8f1046705a90dd289efc4042e90fc Mon Sep 17 00:00:00 2001 From: Andrew Jiang Date: Thu, 12 Sep 2024 19:06:40 -0400 Subject: [PATCH] fix: refactor getDocsPageProps --- .../fdr-sdk/src/navigation/NodeCollector.ts | 4 - packages/ui/docs-bundle/package.json | 7 +- packages/ui/docs-bundle/src/utils/events.ts | 11 ++ .../docs-bundle/src/utils/getDocsPageProps.ts | 61 ++++----- pnpm-lock.yaml | 117 +++++++++--------- 5 files changed, 99 insertions(+), 101 deletions(-) create mode 100644 packages/ui/docs-bundle/src/utils/events.ts diff --git a/packages/fdr-sdk/src/navigation/NodeCollector.ts b/packages/fdr-sdk/src/navigation/NodeCollector.ts index 6186735387..6b5a42044b 100644 --- a/packages/fdr-sdk/src/navigation/NodeCollector.ts +++ b/packages/fdr-sdk/src/navigation/NodeCollector.ts @@ -112,10 +112,6 @@ export class NodeCollector { this.orphanedNodes.push(existing.node); this.#setNode(node.slug, node, parents); } else { - if (isPage(existing.node)) { - // eslint-disable-next-line no-console - console.warn(`Duplicate slug found: ${node.slug}`, node.title); - } this.orphanedNodes.push(node); } } diff --git a/packages/ui/docs-bundle/package.json b/packages/ui/docs-bundle/package.json index 571dd08a89..d8b19c0db7 100644 --- a/packages/ui/docs-bundle/package.json +++ b/packages/ui/docs-bundle/package.json @@ -51,6 +51,7 @@ "@fern-ui/search-utils": "workspace:*", "@fern-ui/ui": "workspace:*", "@sentry/nextjs": "^7.105.0", + "@vercel/analytics": "^1.3.1", "@vercel/edge-config": "^1.1.0", "@vercel/kv": "^2.0.0", "@workos-inc/node": "^6.1.0", @@ -96,9 +97,9 @@ "vitest": "^1.5.0" }, "optionalDependencies": { - "@next/swc-linux-x64-gnu": "14.2.9", - "@next/swc-win32-x64-msvc": "14.2.9", + "@next/swc-darwin-arm64": "14.2.9", "@next/swc-darwin-x64": "14.2.9", - "@next/swc-darwin-arm64": "14.2.9" + "@next/swc-linux-x64-gnu": "14.2.9", + "@next/swc-win32-x64-msvc": "14.2.9" } } diff --git a/packages/ui/docs-bundle/src/utils/events.ts b/packages/ui/docs-bundle/src/utils/events.ts new file mode 100644 index 0000000000..516b31c6fa --- /dev/null +++ b/packages/ui/docs-bundle/src/utils/events.ts @@ -0,0 +1,11 @@ +import { track } from "@vercel/analytics/server"; + +export async function trackPromiseDuration(promise: Promise, eventName: string, url: string): Promise { + const start = Date.now(); + try { + return await promise; + } finally { + const duration = Date.now() - start; + await track(eventName, { url, duration }); + } +} diff --git a/packages/ui/docs-bundle/src/utils/getDocsPageProps.ts b/packages/ui/docs-bundle/src/utils/getDocsPageProps.ts index 6b837bf549..96b1eee12e 100644 --- a/packages/ui/docs-bundle/src/utils/getDocsPageProps.ts +++ b/packages/ui/docs-bundle/src/utils/getDocsPageProps.ts @@ -31,6 +31,7 @@ import { getCustomerAnalytics } from "./analytics"; import { getAuthorizationUrl } from "./auth"; import { convertStaticToServerSidePropsResult } from "./convertStaticToServerSidePropsResult"; import { getSeoDisabled } from "./disabledSeo"; +import { trackPromiseDuration } from "./events"; import { conformTrailingSlash, isTrailingSlashEnabled } from "./trailingSlash"; type GetStaticDocsPagePropsResult = GetStaticPropsResult>; @@ -62,31 +63,28 @@ export async function getDocsPageProps( const pathname = decodeURI(slug != null ? slug.join("/") : ""); const url = buildUrl({ host: xFernHost, pathname }); - // eslint-disable-next-line no-console - console.log("[getDocsPageProps] Loading docs for", url); - const start = Date.now(); - const docs = await provideRegistryService().docs.v2.read.getDocsForUrl({ url }); - const end = Date.now(); - // eslint-disable-next-line no-console - console.log(`[getDocsPageProps] Fetch completed in ${end - start}ms for ${url}`); + + const docs = await trackPromiseDuration( + provideRegistryService().docs.v2.read.getDocsForUrl({ url }), + "load-docs-for-url", + url, + ); + if (!docs.ok) { if ((docs.error as any).content.statusCode === 401) { return { redirect: await getUnauthenticatedRedirect(xFernHost, `/${slug.join("/")}`), revalidate: true }; } else if ((docs.error as any).content.statusCode === 404) { return { notFound: true, revalidate: true }; } - - // eslint-disable-next-line no-console - console.error(`[getDocsPageProps] Failed to fetch docs for ${url}`, docs.error); - throw new Error("Failed to fetch docs"); + throw new Error("Failed to fetch docs for ${url}", { cause: docs.error }); } - const start2 = Date.now(); - const toRet = convertDocsToDocsPageProps({ docs: docs.body, slug, url, xFernHost }); - const end2 = Date.now(); + const toRet = await trackPromiseDuration( + convertDocsToDocsPageProps({ docs: docs.body, slug, xFernHost }), + "serialize-mdx", + url, + ); - // eslint-disable-next-line no-console - console.log(`[getDocsPageProps] serializeMdx completed in ${end2 - start2}ms for ${url}`); return toRet; } @@ -109,27 +107,21 @@ export async function getDynamicDocsPageProps( if (user.partner === "workos") { const registryService = getRegistryServiceWithToken(`workos_${cookies.fern_token}`); - // eslint-disable-next-line no-console - console.log("[getDynamicDocsPageProps] Loading docs for", url); - const start = Date.now(); - const docs = await registryService.docs.v2.read.getPrivateDocsForUrl({ url }); - const end = Date.now(); - // eslint-disable-next-line no-console - console.log(`[getDynamicDocsPageProps] Fetch completed in ${end - start}ms for ${url}`); + const docs = await trackPromiseDuration( + registryService.docs.v2.read.getPrivateDocsForUrl({ url }), + "load-private-docs-for-url", + url, + ); if (!docs.ok) { if (docs.error.error === "UnauthorizedError") { - return { - redirect: await getUnauthenticatedRedirect(xFernHost, `/${slug.join("/")}`), - }; + return { redirect: await getUnauthenticatedRedirect(xFernHost, `/${slug.join("/")}`) }; } - // eslint-disable-next-line no-console - console.error(`[getDynamicDocsPageProps] Failed to fetch docs for ${url}`, docs.error); - throw new Error("Failed to fetch private docs"); + throw new Error("Failed to fetch private docs for ${url}", { cause: docs.error }); } - return convertDocsToDocsPageProps({ docs: docs.body, slug, url, xFernHost }); + return convertDocsToDocsPageProps({ docs: docs.body, slug, xFernHost }); } else if (user.partner === "ory" || user.partner === "custom") { // rightbrain's api key injection const docs = await provideRegistryService().docs.v2.read.getDocsForUrl({ url }); @@ -146,7 +138,6 @@ export async function getDynamicDocsPageProps( await convertDocsToDocsPageProps({ docs: docs.body, slug, - url, xFernHost, user, cookies, @@ -155,7 +146,7 @@ export async function getDynamicDocsPageProps( } } catch (error) { // eslint-disable-next-line no-console - console.log(error); + console.error(error); } // fallback to public docs @@ -165,14 +156,12 @@ export async function getDynamicDocsPageProps( async function convertDocsToDocsPageProps({ docs, slug: slugArray, - url, xFernHost, user, cookies, }: { docs: DocsV2Read.LoadDocsForUrlResponse; slug: string[]; - url: string; xFernHost: string; user?: FernUser; cookies?: NextApiRequestCookies; @@ -221,8 +210,6 @@ async function convertDocsToDocsPageProps({ // however, we should consider rendering a custom 404 page in the future using the customer's branding. // see: https://nextjs.org/docs/app/api-reference/file-conventions/not-found - // eslint-disable-next-line no-console - console.error(`Failed to resolve navigation for ${url}`); if (featureFlags.is404PageHidden && node.redirect != null) { return { // urljoin is bizarre: urljoin("/", "") === "", urljoin("/", "/") === "/", urljoin("/", "/a") === "/a" @@ -262,8 +249,6 @@ async function convertDocsToDocsPageProps({ }); if (content == null) { - // eslint-disable-next-line no-console - console.error(`Failed to resolve path for ${url}`); return { notFound: true, revalidate: true }; } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5636e34051..134363fd31 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -449,7 +449,7 @@ importers: version: 3.3.2 simple-git: specifier: ^3.24.0 - version: 3.24.0 + version: 3.24.0(supports-color@8.1.1) stylelint: specifier: ^16.1.0 version: 16.5.0(typescript@5.4.3) @@ -1760,6 +1760,9 @@ importers: '@sentry/nextjs': specifier: ^7.105.0 version: 7.119.0(@fern-api/next@14.2.9-fork.0(@babel/core@7.24.5)(@opentelemetry/api@1.9.0)(@playwright/test@1.44.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(react@18.3.1)(webpack@5.91.0(@swc/core@1.5.7)(esbuild@0.20.2)) + '@vercel/analytics': + specifier: ^1.3.1 + version: 1.3.1(@fern-api/next@14.2.9-fork.0(@babel/core@7.24.5)(@opentelemetry/api@1.9.0)(@playwright/test@1.44.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(react@18.3.1) '@vercel/edge-config': specifier: ^1.1.0 version: 1.1.0(@opentelemetry/api@1.9.0)(typescript@5.4.3) @@ -2563,7 +2566,7 @@ importers: version: 3.21.0(serverless@3.38.0) simple-git: specifier: ^3.24.0 - version: 3.24.0 + version: 3.24.0(supports-color@8.1.1) tmp-promise: specifier: ^3.0.3 version: 3.0.3 @@ -7306,6 +7309,17 @@ packages: '@upstash/redis@1.34.0': resolution: {integrity: sha512-TrXNoJLkysIl8SBc4u9bNnyoFYoILpCcFJcLyWCccb/QSUmaVKdvY0m5diZqc3btExsapcMbaw/s/wh9Sf1pJw==} + '@vercel/analytics@1.3.1': + resolution: {integrity: sha512-xhSlYgAuJ6Q4WQGkzYTLmXwhYl39sWjoMA3nHxfkvG+WdBT25c563a7QhwwKivEOZtPJXifYHR1m2ihoisbWyA==} + peerDependencies: + next: '>= 13' + react: ^18 || ^19 + peerDependenciesMeta: + next: + optional: true + react: + optional: true + '@vercel/edge-config-fs@0.1.0': resolution: {integrity: sha512-NRIBwfcS0bUoUbRWlNGetqjvLSwgYH/BqKqDN7vK1g32p7dN96k0712COgaz6VFizAm9b0g6IG6hR6+hc0KCPg==} @@ -14290,6 +14304,9 @@ packages: resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} engines: {node: '>= 0.8.0'} + server-only@0.0.1: + resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} + serverless-esbuild@1.52.1: resolution: {integrity: sha512-sTEVoJMFO213SJyEEvW4yf3FbxRkn3jZgp/bA2zOguVXv2veNptVzo3Cmn7pZVIrjv8HKH6uEq/E65bJhOO5yA==} engines: {node: '>=14.18.0'} @@ -17281,7 +17298,7 @@ snapshots: '@babel/traverse': 7.24.5 '@babel/types': 7.24.5 convert-source-map: 2.0.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -18092,7 +18109,7 @@ snapshots: '@babel/helper-split-export-declaration': 7.24.5 '@babel/parser': 7.24.5 '@babel/types': 7.24.5 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -18107,7 +18124,7 @@ snapshots: '@babel/helper-split-export-declaration': 7.24.5 '@babel/parser': 7.24.5 '@babel/types': 7.24.5 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -18221,7 +18238,7 @@ snapshots: '@esbuild-plugins/node-resolve@0.2.2(esbuild@0.20.2)': dependencies: '@types/resolve': 1.20.6 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) esbuild: 0.20.2 escape-string-regexp: 4.0.0 resolve: 1.22.8 @@ -18307,7 +18324,7 @@ snapshots: '@eslint/eslintrc@2.1.4': dependencies: ajv: 6.12.6 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) espree: 9.6.1 globals: 13.24.0 ignore: 5.3.1 @@ -18535,7 +18552,7 @@ snapshots: '@humanwhocodes/config-array@0.11.14': dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -18966,12 +18983,6 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@kwsites/file-exists@1.1.1': - dependencies: - debug: 4.3.4(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color - '@kwsites/file-exists@1.1.1(supports-color@8.1.1)': dependencies: debug: 4.3.4(supports-color@8.1.1) @@ -20537,7 +20548,7 @@ snapshots: '@sentry/cli@1.77.3': dependencies: - https-proxy-agent: 5.0.1 + https-proxy-agent: 5.0.1(supports-color@8.1.1) mkdirp: 0.5.6 node-fetch: 2.7.0 progress: 2.0.3 @@ -20549,7 +20560,7 @@ snapshots: '@sentry/cli@2.31.2': dependencies: - https-proxy-agent: 5.0.1 + https-proxy-agent: 5.0.1(supports-color@8.1.1) node-fetch: 2.7.0 progress: 2.0.3 proxy-from-env: 1.1.0 @@ -23225,7 +23236,7 @@ snapshots: '@typescript-eslint/type-utils': 7.3.1(eslint@8.57.0)(typescript@5.4.3) '@typescript-eslint/utils': 7.3.1(eslint@8.57.0)(typescript@5.4.3) '@typescript-eslint/visitor-keys': 7.3.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 graphemer: 1.4.0 ignore: 5.3.1 @@ -23243,7 +23254,7 @@ snapshots: '@typescript-eslint/types': 7.17.0 '@typescript-eslint/typescript-estree': 7.17.0(typescript@5.4.3) '@typescript-eslint/visitor-keys': 7.17.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 optionalDependencies: typescript: 5.4.3 @@ -23256,7 +23267,7 @@ snapshots: '@typescript-eslint/types': 7.2.0 '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.4.3) '@typescript-eslint/visitor-keys': 7.2.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 optionalDependencies: typescript: 5.4.3 @@ -23269,7 +23280,7 @@ snapshots: '@typescript-eslint/types': 7.3.1 '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3) '@typescript-eslint/visitor-keys': 7.3.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 optionalDependencies: typescript: 5.4.3 @@ -23310,7 +23321,7 @@ snapshots: dependencies: '@typescript-eslint/typescript-estree': 7.17.0(typescript@5.4.3) '@typescript-eslint/utils': 7.17.0(eslint@8.57.0)(typescript@5.4.3) - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 ts-api-utils: 1.3.0(typescript@5.4.3) optionalDependencies: @@ -23322,7 +23333,7 @@ snapshots: dependencies: '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3) '@typescript-eslint/utils': 7.3.1(eslint@8.57.0)(typescript@5.4.3) - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) eslint: 8.57.0 ts-api-utils: 1.3.0(typescript@5.4.3) optionalDependencies: @@ -23360,7 +23371,7 @@ snapshots: dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 @@ -23375,7 +23386,7 @@ snapshots: dependencies: '@typescript-eslint/types': 7.17.0 '@typescript-eslint/visitor-keys': 7.17.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.4 @@ -23405,7 +23416,7 @@ snapshots: dependencies: '@typescript-eslint/types': 7.3.1 '@typescript-eslint/visitor-keys': 7.3.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 @@ -23420,7 +23431,7 @@ snapshots: dependencies: '@typescript-eslint/types': 7.8.0 '@typescript-eslint/visitor-keys': 7.8.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.4 @@ -23537,6 +23548,13 @@ snapshots: dependencies: crypto-js: 4.2.0 + '@vercel/analytics@1.3.1(@fern-api/next@14.2.9-fork.0(@babel/core@7.24.5)(@opentelemetry/api@1.9.0)(@playwright/test@1.44.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0))(react@18.3.1)': + dependencies: + server-only: 0.0.1 + optionalDependencies: + next: '@fern-api/next@14.2.9-fork.0(@babel/core@7.24.5)(@opentelemetry/api@1.9.0)(@playwright/test@1.44.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.77.0)' + react: 18.3.1 + '@vercel/edge-config-fs@0.1.0': {} '@vercel/edge-config@1.1.0(@opentelemetry/api@1.9.0)(typescript@5.4.3)': @@ -26555,7 +26573,7 @@ snapshots: callsite: 1.0.0 camelcase: 6.3.0 cosmiconfig: 7.1.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) deps-regex: 0.2.0 findup-sync: 5.0.0 ignore: 5.3.1 @@ -27060,7 +27078,7 @@ snapshots: eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0): dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) enhanced-resolve: 5.16.1 eslint: 8.57.0 eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.4.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) @@ -27274,7 +27292,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 @@ -28645,7 +28663,7 @@ snapshots: http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -28656,13 +28674,6 @@ snapshots: https-browserify@1.0.0: {} - https-proxy-agent@5.0.1: - dependencies: - agent-base: 6.0.2(supports-color@8.1.1) - debug: 4.3.4(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color - https-proxy-agent@5.0.1(supports-color@8.1.1): dependencies: agent-base: 6.0.2(supports-color@8.1.1) @@ -28673,7 +28684,7 @@ snapshots: https-proxy-agent@7.0.4: dependencies: agent-base: 7.1.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -28837,7 +28848,7 @@ snapshots: dependencies: '@ioredis/commands': 1.2.0 cluster-key-slot: 1.1.2 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) denque: 2.1.0 lodash.defaults: 4.2.0 lodash.isarguments: 3.1.0 @@ -29802,7 +29813,7 @@ snapshots: dependencies: chalk: 5.3.0 commander: 11.0.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) execa: 7.2.0 lilconfig: 2.1.0 listr2: 6.6.1 @@ -30742,7 +30753,7 @@ snapshots: micromark@4.0.0: dependencies: '@types/debug': 4.1.12 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) decode-named-character-reference: 1.0.2 devlop: 1.1.0 micromark-core-commonmark: 2.0.1 @@ -33035,6 +33046,8 @@ snapshots: transitivePeerDependencies: - supports-color + server-only@0.0.1: {} + serverless-esbuild@1.52.1(esbuild@0.20.2): dependencies: acorn: 8.11.3 @@ -33244,14 +33257,6 @@ snapshots: once: 1.4.0 simple-concat: 1.0.1 - simple-git@3.24.0: - dependencies: - '@kwsites/file-exists': 1.1.1 - '@kwsites/promise-deferred': 1.1.1 - debug: 4.3.4(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color - simple-git@3.24.0(supports-color@8.1.1): dependencies: '@kwsites/file-exists': 1.1.1(supports-color@8.1.1) @@ -33701,7 +33706,7 @@ snapshots: cosmiconfig: 9.0.0(typescript@5.4.3) css-functions-list: 3.2.2 css-tree: 2.3.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) fast-glob: 3.3.2 fastest-levenshtein: 1.0.16 file-entry-cache: 8.0.0 @@ -33739,7 +33744,7 @@ snapshots: stylus@0.62.0: dependencies: '@adobe/css-tools': 4.3.3 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) glob: 7.2.3 sax: 1.3.0 source-map: 0.7.4 @@ -34323,7 +34328,7 @@ snapshots: bundle-require: 4.1.0(esbuild@0.20.2) cac: 6.7.14 chokidar: 3.6.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) esbuild: 0.20.2 execa: 5.1.1 globby: 11.1.0 @@ -34860,7 +34865,7 @@ snapshots: vite-node@1.6.0(@types/node@18.19.33)(less@4.2.0)(sass@1.77.0)(stylus@0.62.0)(terser@5.31.0): dependencies: cac: 6.7.14 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) pathe: 1.1.2 picocolors: 1.0.0 vite: 5.2.11(@types/node@18.19.33)(less@4.2.0)(sass@1.77.0)(stylus@0.62.0)(terser@5.31.0) @@ -34877,7 +34882,7 @@ snapshots: vite-node@1.6.0(@types/node@20.12.12)(less@4.2.0)(sass@1.77.0)(stylus@0.62.0)(terser@5.31.0): dependencies: cac: 6.7.14 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) pathe: 1.1.2 picocolors: 1.0.0 vite: 5.2.11(@types/node@20.12.12)(less@4.2.0)(sass@1.77.0)(stylus@0.62.0)(terser@5.31.0) @@ -34971,7 +34976,7 @@ snapshots: '@vitest/utils': 1.6.0 acorn-walk: 8.3.2 chai: 4.4.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) execa: 8.0.1 local-pkg: 0.5.0 magic-string: 0.30.10 @@ -35005,7 +35010,7 @@ snapshots: '@vitest/utils': 1.6.0 acorn-walk: 8.3.2 chai: 4.4.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) execa: 8.0.1 local-pkg: 0.5.0 magic-string: 0.30.10