skuba 13.0.0-custom-conditions-exports-20250729025733 → 13.0.0-custom-conditions-exports-20250729033509

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -152,9 +152,9 @@ const replaceTsconfig = (contents, repoName) => {
152
152
  const tryConfigureTsConfigForESM = async ({
153
153
  mode
154
154
  }) => {
155
- const packageJsonPatterns = ["**/package.json", "**/package.*.json"];
156
- const tsconfigJsonPatterns = ["**/tsconfig.json", "**/tsconfig.*.json"];
157
- const jestConfigPatterns = ["**/jest.config.ts", "**/jest.config.*.ts"];
155
+ const packageJsonPatterns = ["**/package.*json"];
156
+ const tsconfigJsonPatterns = ["**/tsconfig.*json"];
157
+ const jestConfigPatterns = ["**/jest.config.*ts"];
158
158
  const globOptions = {
159
159
  ignore: ["**/node_modules/**", "**/tsconfig.build.json"]
160
160
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/cli/lint/internalLints/upgrade/patches/12.0.2/configureTsConfigForESM.ts"],
4
- "sourcesContent": ["import { inspect } from 'util';\n\nimport { glob } from 'fast-glob';\nimport fs from 'fs-extra';\nimport { z } from 'zod';\n\nimport { Git } from '../../../../../../index.js';\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nconst packageJsonSchema = z\n .object({\n imports: z.record(z.record(z.string())).optional(),\n })\n .passthrough();\n\nconst tsConfigSchema = z\n .object({\n compilerOptions: z\n .object({\n customConditions: z.array(z.string()).optional(),\n rootDir: z.string().optional(),\n paths: z.record(z.unknown()).optional(),\n })\n .passthrough()\n .optional(),\n })\n .passthrough();\n\nconst getRepoName = async (): Promise<string | undefined> => {\n try {\n const dir = process.cwd();\n const { repo } = await Git.getOwnerAndRepo({ dir });\n\n return repo;\n } catch (error) {\n log.warn(`Error getting repository information: ${String(error)}`);\n throw error;\n }\n};\n\nconst fetchFiles = async (files: string[]) =>\n Promise.all(\n files.map(async (file) => {\n const contents = await fs.promises.readFile(file, 'utf8');\n\n return {\n file,\n contents,\n };\n }),\n );\n\nconst formatModuleNameMapper = (subfolderPaths: string[]) =>\n subfolderPaths.map((subfolderPath) => `<rootDir>/${subfolderPath}/src`);\n\nexport const addJestModuleNameMapper = (\n contents: string,\n subfolderPaths: string[],\n) => {\n const parseResult = packageJsonSchema.safeParse(JSON.parse(contents));\n\n if (!parseResult.success) {\n log.warn(`Failed to parse package.json: ${parseResult.error.message}`);\n return contents;\n }\n\n const jestConfig = parseResult.data;\n const formattedNames = formatModuleNameMapper(subfolderPaths);\n const formattedNamesWithPath = formattedNames.map((name) => `${name}/$1`);\n\n const moduleNameMapper = {\n '^(\\\\.{1,2}/.*)\\\\.js$': '$1',\n '^#src$': formattedNames,\n '^#src/(.*)\\\\.js$': formattedNamesWithPath,\n '^#src\\/(.*)$': formattedNamesWithPath,\n };\n\n jestConfig.moduleNameMapper = {\n '#src/*': {\n moduleNameMapper,\n },\n };\n\n return JSON.stringify(jestConfig, null, 2);\n};\n\nexport const replacePackageJson = (contents: string, repoName: string) => {\n try {\n const parseResult = packageJsonSchema.safeParse(JSON.parse(contents));\n\n if (!parseResult.success) {\n log.warn(`Failed to parse package.json: ${parseResult.error.message}`);\n return contents;\n }\n\n const packageJson = parseResult.data;\n\n packageJson.imports = {\n '#src/*': {\n [`@seek/${repoName}/source`]: './src/*',\n default: './lib/*',\n },\n };\n\n return JSON.stringify(packageJson, null, 2);\n } catch (error) {\n log.warn(`Failed to parse package.json as JSON: ${String(error)}`);\n return contents;\n }\n};\n\nexport const replaceTsconfig = (contents: string, repoName: string) => {\n try {\n const parseResult = tsConfigSchema.safeParse(JSON.parse(contents));\n\n if (!parseResult.success) {\n log.warn(`Failed to parse tsconfig.json: ${parseResult.error.message}`);\n return contents;\n }\n\n const tsconfigJson = parseResult.data;\n\n if (\n typeof tsconfigJson.extends === 'string' &&\n !tsconfigJson.extends.startsWith('skuba/')\n ) {\n log.subtle(\n 'Skipping tsconfig.json that does not extend skuba/config/tsconfig.json',\n );\n return contents;\n }\n\n if (\n !tsconfigJson.compilerOptions ||\n typeof tsconfigJson.compilerOptions !== 'object'\n ) {\n tsconfigJson.compilerOptions = {};\n }\n\n const compilerOptions = tsconfigJson.compilerOptions;\n\n if (compilerOptions.paths !== undefined) {\n delete compilerOptions.paths;\n }\n\n compilerOptions.customConditions ??= [];\n\n if (compilerOptions.customConditions.includes(`@seek/${repoName}/source`)) {\n log.subtle(\n 'Custom condition mapping already exists in tsconfig.json, skipping',\n );\n return contents;\n }\n\n compilerOptions.customConditions = [`@seek/${repoName}/source`];\n\n compilerOptions.rootDir ??= '.';\n\n return JSON.stringify(tsconfigJson, null, 2);\n } catch (error) {\n log.warn(`Failed to parse tsconfig.json as JSON: ${String(error)}`);\n return contents;\n }\n};\n\nexport const tryConfigureTsConfigForESM: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n const packageJsonPatterns = ['**/package.json', '**/package.*.json'];\n const tsconfigJsonPatterns = ['**/tsconfig.json', '**/tsconfig.*.json'];\n const jestConfigPatterns = ['**/jest.config.ts', '**/jest.config.*.ts'];\n\n const globOptions = {\n ignore: ['**/node_modules/**', '**/tsconfig.build.json'],\n };\n\n const [packageJsonFiles, tsconfigJsonFiles, jestConfigFiles] =\n await Promise.all([\n fetchFiles(await glob(packageJsonPatterns, globOptions)),\n fetchFiles(await glob(tsconfigJsonPatterns, globOptions)),\n fetchFiles(await glob(jestConfigPatterns, globOptions)),\n ]);\n\n const subfolderPaths = packageJsonFiles\n .map(({ file }) => file.split('/').slice(0, -1).join('/'))\n .filter((path) => path !== '');\n\n const repoName = await getRepoName();\n if (!repoName) {\n return { result: 'skip', reason: 'no repository name found' };\n }\n\n const replacedPackageJsonFiles = packageJsonFiles.map(\n ({ file, contents }) => ({\n file,\n before: contents,\n after: replacePackageJson(contents, repoName),\n }),\n );\n\n const replacedTsconfigJsonFiles = tsconfigJsonFiles.map(\n ({ file, contents }) => ({\n file,\n before: contents,\n after: replaceTsconfig(contents, repoName),\n }),\n );\n\n const replacedJestConfigFiles =\n subfolderPaths.length > 0\n ? jestConfigFiles.map(({ file, contents }) => ({\n file,\n before: contents,\n after: addJestModuleNameMapper(contents, subfolderPaths),\n }))\n : [];\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n await Promise.all(\n [\n ...replacedPackageJsonFiles,\n ...replacedTsconfigJsonFiles.filter(\n ({ after }) => typeof after === 'string',\n ),\n ...replacedJestConfigFiles,\n ].map(async ({ file, after }) => {\n await fs.promises.writeFile(file, after);\n }),\n );\n\n return { result: 'apply' };\n};\n\nexport const configureTsConfigForESM: PatchFunction = async (config) => {\n try {\n return await tryConfigureTsConfigForESM(config);\n } catch (err) {\n log.warn('Failed to write configure `tsconfig.json` and `package.json`');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { inspect } from 'util';\n\nimport { glob } from 'fast-glob';\nimport fs from 'fs-extra';\nimport { z } from 'zod';\n\nimport { Git } from '../../../../../../index.js';\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nconst packageJsonSchema = z\n .object({\n imports: z.record(z.record(z.string())).optional(),\n })\n .passthrough();\n\nconst tsConfigSchema = z\n .object({\n compilerOptions: z\n .object({\n customConditions: z.array(z.string()).optional(),\n rootDir: z.string().optional(),\n paths: z.record(z.unknown()).optional(),\n })\n .passthrough()\n .optional(),\n })\n .passthrough();\n\nconst getRepoName = async (): Promise<string | undefined> => {\n try {\n const dir = process.cwd();\n const { repo } = await Git.getOwnerAndRepo({ dir });\n\n return repo;\n } catch (error) {\n log.warn(`Error getting repository information: ${String(error)}`);\n throw error;\n }\n};\n\nconst fetchFiles = async (files: string[]) =>\n Promise.all(\n files.map(async (file) => {\n const contents = await fs.promises.readFile(file, 'utf8');\n\n return {\n file,\n contents,\n };\n }),\n );\n\nconst formatModuleNameMapper = (subfolderPaths: string[]) =>\n subfolderPaths.map((subfolderPath) => `<rootDir>/${subfolderPath}/src`);\n\nexport const addJestModuleNameMapper = (\n contents: string,\n subfolderPaths: string[],\n) => {\n const parseResult = packageJsonSchema.safeParse(JSON.parse(contents));\n\n if (!parseResult.success) {\n log.warn(`Failed to parse package.json: ${parseResult.error.message}`);\n return contents;\n }\n\n const jestConfig = parseResult.data;\n const formattedNames = formatModuleNameMapper(subfolderPaths);\n const formattedNamesWithPath = formattedNames.map((name) => `${name}/$1`);\n\n const moduleNameMapper = {\n '^(\\\\.{1,2}/.*)\\\\.js$': '$1',\n '^#src$': formattedNames,\n '^#src/(.*)\\\\.js$': formattedNamesWithPath,\n '^#src\\/(.*)$': formattedNamesWithPath,\n };\n\n jestConfig.moduleNameMapper = {\n '#src/*': {\n moduleNameMapper,\n },\n };\n\n return JSON.stringify(jestConfig, null, 2);\n};\n\nexport const replacePackageJson = (contents: string, repoName: string) => {\n try {\n const parseResult = packageJsonSchema.safeParse(JSON.parse(contents));\n\n if (!parseResult.success) {\n log.warn(`Failed to parse package.json: ${parseResult.error.message}`);\n return contents;\n }\n\n const packageJson = parseResult.data;\n\n packageJson.imports = {\n '#src/*': {\n [`@seek/${repoName}/source`]: './src/*',\n default: './lib/*',\n },\n };\n\n return JSON.stringify(packageJson, null, 2);\n } catch (error) {\n log.warn(`Failed to parse package.json as JSON: ${String(error)}`);\n return contents;\n }\n};\n\nexport const replaceTsconfig = (contents: string, repoName: string) => {\n try {\n const parseResult = tsConfigSchema.safeParse(JSON.parse(contents));\n\n if (!parseResult.success) {\n log.warn(`Failed to parse tsconfig.json: ${parseResult.error.message}`);\n return contents;\n }\n\n const tsconfigJson = parseResult.data;\n\n if (\n typeof tsconfigJson.extends === 'string' &&\n !tsconfigJson.extends.startsWith('skuba/')\n ) {\n log.subtle(\n 'Skipping tsconfig.json that does not extend skuba/config/tsconfig.json',\n );\n return contents;\n }\n\n if (\n !tsconfigJson.compilerOptions ||\n typeof tsconfigJson.compilerOptions !== 'object'\n ) {\n tsconfigJson.compilerOptions = {};\n }\n\n const compilerOptions = tsconfigJson.compilerOptions;\n\n if (compilerOptions.paths !== undefined) {\n delete compilerOptions.paths;\n }\n\n compilerOptions.customConditions ??= [];\n\n if (compilerOptions.customConditions.includes(`@seek/${repoName}/source`)) {\n log.subtle(\n 'Custom condition mapping already exists in tsconfig.json, skipping',\n );\n return contents;\n }\n\n compilerOptions.customConditions = [`@seek/${repoName}/source`];\n\n compilerOptions.rootDir ??= '.';\n\n return JSON.stringify(tsconfigJson, null, 2);\n } catch (error) {\n log.warn(`Failed to parse tsconfig.json as JSON: ${String(error)}`);\n return contents;\n }\n};\n\nexport const tryConfigureTsConfigForESM: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n const packageJsonPatterns = ['**/package.*json'];\n const tsconfigJsonPatterns = ['**/tsconfig.*json'];\n const jestConfigPatterns = ['**/jest.config.*ts'];\n\n const globOptions = {\n ignore: ['**/node_modules/**', '**/tsconfig.build.json'],\n };\n\n const [packageJsonFiles, tsconfigJsonFiles, jestConfigFiles] =\n await Promise.all([\n fetchFiles(await glob(packageJsonPatterns, globOptions)),\n fetchFiles(await glob(tsconfigJsonPatterns, globOptions)),\n fetchFiles(await glob(jestConfigPatterns, globOptions)),\n ]);\n\n const subfolderPaths = packageJsonFiles\n .map(({ file }) => file.split('/').slice(0, -1).join('/'))\n .filter((path) => path !== '');\n\n const repoName = await getRepoName();\n if (!repoName) {\n return { result: 'skip', reason: 'no repository name found' };\n }\n\n const replacedPackageJsonFiles = packageJsonFiles.map(\n ({ file, contents }) => ({\n file,\n before: contents,\n after: replacePackageJson(contents, repoName),\n }),\n );\n\n const replacedTsconfigJsonFiles = tsconfigJsonFiles.map(\n ({ file, contents }) => ({\n file,\n before: contents,\n after: replaceTsconfig(contents, repoName),\n }),\n );\n\n const replacedJestConfigFiles =\n subfolderPaths.length > 0\n ? jestConfigFiles.map(({ file, contents }) => ({\n file,\n before: contents,\n after: addJestModuleNameMapper(contents, subfolderPaths),\n }))\n : [];\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n await Promise.all(\n [\n ...replacedPackageJsonFiles,\n ...replacedTsconfigJsonFiles.filter(\n ({ after }) => typeof after === 'string',\n ),\n ...replacedJestConfigFiles,\n ].map(async ({ file, after }) => {\n await fs.promises.writeFile(file, after);\n }),\n );\n\n return { result: 'apply' };\n};\n\nexport const configureTsConfigForESM: PatchFunction = async (config) => {\n try {\n return await tryConfigureTsConfigForESM(config);\n } catch (err) {\n log.warn('Failed to write configure `tsconfig.json` and `package.json`');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
+ "mappings": "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",
6
6
  "names": ["fs"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "skuba",
3
- "version": "13.0.0-custom-conditions-exports-20250729025733",
3
+ "version": "13.0.0-custom-conditions-exports-20250729033509",
4
4
  "private": false,
5
5
  "description": "SEEK development toolkit for backend applications and packages",
6
6
  "homepage": "https://github.com/seek-oss/skuba#readme",
@@ -23,7 +23,7 @@
23
23
  },
24
24
  "devDependencies": {
25
25
  "@types/node": "^22.13.10",
26
- "skuba": "13.0.0-custom-conditions-exports-20250729025733"
26
+ "skuba": "13.0.0-custom-conditions-exports-20250729033509"
27
27
  },
28
28
  "packageManager": "pnpm@10.12.4",
29
29
  "engines": {
@@ -43,7 +43,7 @@
43
43
  "constructs": "^10.0.17",
44
44
  "datadog-cdk-constructs-v2": "^2.0.0",
45
45
  "pino-pretty": "^13.0.0",
46
- "skuba": "13.0.0-custom-conditions-exports-20250729025733"
46
+ "skuba": "13.0.0-custom-conditions-exports-20250729033509"
47
47
  },
48
48
  "packageManager": "pnpm@10.12.4",
49
49
  "engines": {