diff --git a/.changeset/angry-cobras-confess.md b/.changeset/angry-cobras-confess.md new file mode 100644 index 00000000000..f54b852658e --- /dev/null +++ b/.changeset/angry-cobras-confess.md @@ -0,0 +1,5 @@ +--- +"@clerk/nextjs": patch +--- + +Resolve path module import error in keyless telemetry diff --git a/packages/nextjs/src/server/keyless-telemetry.ts b/packages/nextjs/src/server/keyless-telemetry.ts index 21b497bfdb3..4995924255c 100644 --- a/packages/nextjs/src/server/keyless-telemetry.ts +++ b/packages/nextjs/src/server/keyless-telemetry.ts @@ -1,9 +1,8 @@ import type { TelemetryEventRaw } from '@clerk/types'; -import { dirname, join } from 'path'; import { canUseKeyless } from '../utils/feature-flags'; import { createClerkClientWithOptions } from './createClerkClient'; -import { nodeFsOrThrow } from './fs/utils'; +import { nodeFsOrThrow, nodePathOrThrow } from './fs/utils'; const EVENT_KEYLESS_ENV_DRIFT_DETECTED = 'KEYLESS_ENV_DRIFT_DETECTED'; const EVENT_SAMPLING_RATE = 1; // 100% sampling rate @@ -27,7 +26,8 @@ type EventKeylessEnvDriftPayload = { * @returns The absolute path to the telemetry flag file in the project's .clerk/.tmp directory */ function getTelemetryFlagFilePath(): string { - return join(process.cwd(), TELEMETRY_FLAG_FILE); + const path = nodePathOrThrow(); + return path.join(process.cwd(), TELEMETRY_FLAG_FILE); } /** @@ -45,8 +45,9 @@ function tryMarkTelemetryEventAsFired(): boolean { try { if (canUseKeyless) { const { mkdirSync, writeFileSync } = nodeFsOrThrow(); + const path = nodePathOrThrow(); const flagFilePath = getTelemetryFlagFilePath(); - const flagDirectory = dirname(flagFilePath); + const flagDirectory = path.dirname(flagFilePath); // Ensure the directory exists before attempting to write the file mkdirSync(flagDirectory, { recursive: true });